Agile software development is now the de-facto standard for software development used by companies ranging from start-ups to large corporations. This class will make students familiar with the most important agile approaches and use exercises and projects to introduce the three roles in agile - development team, scrum master, and product owner - as well as the process and the most commonly used tools. The course will also introduce related concepts in software development such as design thinking, kanban, lean, and scaled agile.
|Instructor||Dr. Stan Kurkovsky, Professor of Computer Science|
|Office hours||MW 12:00 - 1:30 pm, TR 1:30 - 2:30 pm, or by appointment|
|Class meetings||TR 3:05 - 4:20pm @ EDB 111|
Course learning outcomes
At the end of the class students will be able to:
- Understand key principles of agile software development;
- Be an effective member of a scrum team;
- Apply modern software engineering techniques commonly used in agile software projects;
- Utilize principles of process improvement in software projects;
- Implement current enterprise-grade techniques for continuous development, testing, integration, and delivery.
Specific topics are listed on the live course syllabus on Trello
A project is the focal point of this course. Working in teams and following an agile software process, students must coordinate closely with the external product owner to design and develop a complex software system meeting the desired functional and non-functional requirements.
This course will utilize crowd-sourced homework assignments where each student will contribute one question per assignment. Each homework assignment will consist of 15-20 crowd-sourced questions. Students will receive credit both for contributing their questions and for answering questions on the assignments.
All students are expected to demonstrate integrity in the completion of their coursework. Academic integrity means doing one's own work and giving proper credit to the work and ideas of others. It is the responsibility of each student to become familiar with what constitutes academic dishonesty and plagiarism and to avoid all forms of cheating and plagiarism. Students who engage in plagiarism and other forms of academic misconduct will face academic and possibly disciplinary consequences. Academic sanctions can range from a reduced grade for the assignment to a failing grade for the course. From a disciplinary standpoint, an Academic Misconduct Report may be filed and a Faculty Hearing Board may impose sanctions such as probation, suspension or expulsion.
All students are expected to attend class sessions regularly. However, recognizing individual differences, each student is responsible for his/her own attendance and for making-up any missed study or work. Limited assistance will be offered to those with plausible reasons for absences; unexcused absences will result in the student being totally responsible for the make-up process.
Students with disabilities
Please contact me privately to discuss your specific needs if you believe you need course accommodations based on the impact of a disability, medical condition, or if you have emergency medical information to share. I will need a copy of the accommodation letter from Student Disability Services in order to arrange your class accommodations. Contact Student Disability Services if you are not already registered with them. Student Disability Services maintains the confidential documentation of your disability and assists you in coordinating reasonable accommodations with the faculty.
Grades and evaluation
Students will be evaluated regularly during the semester and should be aware of their progress continuously during the semester. The final course grade will be reported according to the stated University policy.
The final course grade will be calculated according to the following distribution of points:
|Homework assignments (4)||40|
Course letter grade will be determined as follows: