Stan Kurkovsky, PhD
HomeTeaching › Software Engineering

Software Engineering

CS 410 - Fall 2016

Catalog description

Prerequisite: CS 253. An examination of the software development process from the initial requirement analysis to the operation and maintenance of the final system. The scope of the course includes the organization of software development projects, the verification and validation of systems, the problems of security and privacy, and the legal aspects of software development, including software protection and software liability.


Dr. Stan Kurkovsky, Professor of Computer Science
MS 303-08
(860) 832-2720
(860) 832-2712
Office hours
MW 12:00 noon - 1:00 pm, TR 1:00 pm - 2:30 pm, or by appointment
Class meetings
TR 3:05 - 4:20 pm @ MS 214

Textbook and other reference materials

Course learning outcomes

Program educational objectives and student outcomes are supported by the following course learning outcomes achieved by students upon a successful completion of this course:

  1. Identify, formulate, and solve software engineering problems, including the specification, design, implementation, and testing of software systems that meet specification, performance, maintenance and quality requirements (c);
  2. Use current software engineering techniques, such as iterative software processes to develop a software system (i);
  3. Apply knowledge and skills to analyze and specify software design and architecture documents (i);
  4. Use current tools such as UML design and version control in a practical setting (i);
  5. Apply design and development principles in the construction of software systems of varying complexity (k);
  6. Function effectively as a team member (d);
  7. Understand professional, ethical, and social responsibilities of a software engineering professional (e);
  8. Recognize the need for and be able to engage in continuing professional development (h);
  9. Be able to convey technical material through oral presentation and interaction with an audience and through written reports which satisfy accepted standards for writing style (f).

Tentative schedule

Please note that this schedule may change as we progress through the course material

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

Week 1: August 29 - September 2

Week 2: September 5 - September 9

Week 3: September 12 - September 16

  • Hands-on case study: Working in teams on a tight schedule, part 1
  • Hands-on case study: Working in teams on a tight schedule, part 2
    Project proposal is due

Week 4: September 19 - September 23

Week 5: September 26 - September 30

  • Hands-on case study (graded): Identifying and managing requirements
  • Lecture: System modeling
    Reading: S 5

Week 6: October 3 - October 7

Week 7: October 10 - October 14

Week 8: October 17 - October 21

Week 9: October 24 - October 28

  • Midterm
  • Lecture: Software evolution
    Reading: S 9
    Hands-on case study: Understanding refactoring

Week 10: October 31 - November 4

Week 11: November 7 - November 11

Week 12: November 14 - November 18

Week 13: November 21 - November 25

  • Hands-on case study (graded): TBA
  • November 23-27 - Thanksgiving Recess

Week 14: November 28 - December 2

  • TBA
  • TBA

Week 15: December 5 - December 8

Final: December 13

  • Final exam: Tuesday, December 13, 2:00 - 4:00 pm

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).

Hands-on case studies

Each case study will present students with a realistic problem or a plausible situation within a software development project. Working individually, in pairs, or in small teams, students will identify one or more solutions to the presented problem. Each individual student will complete a case study worksheet, which will be submitted for grading.

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 misconduct

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.


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.

Help with computers

The University offers some student assistants who may be of value in helping students with basic computer functionality only, not with program writing.

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, Willard Hall, 101-04 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 your 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:

Case studies (8 @ 3 pts each)         24
Project 30
Midterm exam 20
Final exam 26
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