Advanced Software Engineering

CS 530 - Fall 2020

Catalog description:

Prerequisite: CS 510. Study of the software lifecycle including requirements analysis, specification, design, coding, testing, and maintenance. Includes proofs of correctness and techniques of formal specification.

Logistics

Instructor Dr. Stan Kurkovsky, Professor of Computer Science
Office MS 303-06
Phone (860) 832-2720
E-mail kurkovsky@ccsu.edu
Office hours TWR 1000-1140, booking info TBA
Class meetings MW 1505-1620 @ WebEx/online

Textbook and other things you will need

Course learning outcomes

Upon a successful completion of this course, the students will be able to:

  • CLO-1: Analyze a complex software problem and to apply modern software engineering techniques to identify solutions;
  • CLO-2: Design, implement, and evaluate a software solution to meet a given set of functional, non-functional, and domain requirements;
  • CLO-3: Communicate technical information orally and in writing;
  • CLO-4: Understand and follow professional, ethical, and social responsibilities of a software engineering professional;
  • CLO-5: Function effectively as a member or leader of a software development team;
  • CLO-6: Apply fundamental and advanced software engineering principles to produce software solutions.

Important: self-care

Please take care of yourselves and your loved ones. Your physical and mental well-being is the most important thing. It has always been (or should have been) so, even before the current pandemic and economic crisis. Some of you may be essential workers or live with essential workers. If you or someone you love gets sick or needs to work; if you have childcare or elder care responsibilities; if any essential technology such as wifi/power/laptop/etc is down, take care of those things first. Please email/message me to check in if I won’t see you or hear from you on a day we have class or an assignment is due. We can meet individually most any time on WebEx. I will work with you to make arrangements that would enable you to stay on top of things without jeopardizing your academic standing and other responsibilities. As long as you complete assignments and keep in touch with me, we will all be good here.

Tentative schedule

Reference: S - Sommerville, Software Engineering, 10th edition

Week 1: August 26 - August 28 (Introduction)

  • Introduction
    Project: Q&A with the product owner

Week 2: August 31 - September 4 (Inception)

Week 3: September 7 - September 11 (Inception)

Week 4: September 14 - September 18 (Sprint 1)

Week 5: September 21 - September 25 (Sprint 1)

Week 6: September 28 - October 2 (Sprint 2)

Week 7: October 5 - October 9 (Sprint 2)

Week 8: October 12 - October 16 (Midterm point)

  • Project: Sprint 2 review & retrospective
    Project: Sprint 2 report is due by EOD
  • Midterm

Week 9: October 19 - October 23 (Sprint 3)

Week 10: October 26 - October 30 (Sprint 3)

Week 11: November 2 - November 6 (Sprint 4)

Week 12: November 9 - November 13 (Sprint 4)

Week 13: November 16 - November 20 (Sprint 5)

Week 14: November 23 - November 27 (Sprint 5)

  • Project: Sprint 5 update
  • November 26-29 - Thanksgiving Recess

Week 15: November 30 - December 4 (Sprint 5)

  • Project: Sprint 5 update
  • Project: Sprint 5 review & retrospective

Week 16: December 7 (Release)

Week of final exams

  • Final exam: Monday, December 14, 1300-1500

Midterm and final exams

Each test will focus on the most recent material. However, each test will very likely include some questions aimed at the material covered by the earlier test(s). Make-up tests may only be given if a student can provide a written proof of a serious reason for missing a test (such as illness or accident).

Readings/discussions

During each discussion session, one students will present the paper from a trade publication identified in the corresponding reading section. All students are expected to actively participate in each discussion session by asking questions and expressing their opinions.

Course project

While working on the course project, students will use the knowledge and skills obtained in this course covering many if not all of the course topics. Working in teams, students will design, implement and document a software system.

Course project is described in detail in this document.

Academic conduct

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.

For further information on academic misconduct and its consequences, please consult the Student Code of Conduct and the Academic Misconduct Policy.

Attendance

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.

Other statements

Here's a link to a document containing information about other policies and resources.

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:

Discussions 15
Project 40
Midterm exam 20
Final exam 25
Total 100

Course letter grade will be determined as follows:

A A- B+ B B- C+ C C- D+ D D- F
94-100 90-93.99 87-89.99 84-86.99 80-83.99 77-79.99 74-76.99 70-73.99 67-69.99 64-66.99 60-63.99 0-59.99