CSCI 8700: Software Specification and Design

Fall 2019

Meeting time: TR 7:00-8:15PM
Classroom: PKI 160
Instructor: Dr. Harvey Siy
Office: PKI 281B
Phone: (402)554-2834
Email: hsiy at unomaha dot edu
Office Hours: By appointment (call or email ahead)
URL: https://hsiy.github.io
Prerequisites: CSCI 4830/8836 (Introduction to Software Engineering),
assumes a working understanding of SDLC, teamwork, project tracking, prototyping, requirements, design, testing and version control.
 
Textbook: Requirements Engineering: Fundamentals, Principles and Techniques by Pohl, 2010. Companion website
Textbook: Requirements Engineering: from System Goals to UML Models to Software Specifications by Lamsweerde, 2009. Companion website
Optional: Software Engineering (10th edition) by Ian Sommerville, Addison-Wesley, 2010. companion website, link to 9th edition, link to 8th Edition
Optional: Object-Oriented Software Engineering (3rd edition) by Bruegge and Dutoit, Prentice Hall 2009. Companion website
Optional: Software Requirements (3rd edition) by Wiegers and Beatty, 2013. Companion website
Optional: Requirements Engineering by Kotonya and Sommerville, 1998.

Description

A continuation of the study of software engineering with an emphasis on early phases of software development, namely requirements engineering/specification and design. Fundamentals of quality software design. In-depth study of various software requirements specification and design techniques.

Learning Objectives

Students who complete this course will:

Course content:

  1. Socio-technical context
  2. Requirements engineering process
  3. Requirements modeling (informal and formal notations)
  4. Requirements validation
  5. Software architecture and design
  6. Advanced topics

Lectures

The updated lecture slides will be posted on Canvas.

Evaluation

Midterm and Final Exams 40%
Project 20%
Research Paper 20%
Homeworks/Exercises: 20%

Exam dates

  1. Midterm - October 17
  2. Final - December 12 (in class)

Project

Students will work in teams on a software engineering project.

Research paper

Students are required to submit a 10-15 page, graduate-level research paper reviewing an area of requirements engineering research.

Homeworks/Exercises

There will be several exercises which will put into practice the principles and techniques from the course lectures.

Policy on late homeworks

Late homeworks will get a 20% deduction per day, for each day past the due date.

For online submissions, we will follow the time stamp as reported by Blackboard. For example, if the due date is Aug, 24, a submission on Aug. 25 12:01am will get a 20% deduction.

Paper submissions must be handed directly to me on the day it is due.

Academic Integrity

Cheating will not be tolerated for project assignments, exams and other assignments. For formal policies about cheating and plagiarism, consult the UNO Student Policies and Department of Computer Science Policies and Procedures.