RU ENG ECE 14:332:452 :
        Software Engineering

Lecture Schedule—subject to change


Project Deliverables at a Glance

Project work description  is available here.

Ideas for class projects  are available here.

All project teams must be formed before January 20, 2018 by notifying the instructor and TA by email about the team members and their emails. After this date, students without a team will be randomly assigned a team.
Students will not be allowed to switch the team after January 26, 2018.

ItemDue date
I
t
e
r
a
t.
#1
1.   Proposal January 28
2.   First report   (Specification only)
      • Part 1 (Statement of Work & Requirements)
      • Part 2 (Functional Requirements Spec & UI)
      • Full Report #1
 
February 4
February 11
February 18
3.   Second report   (Design only)
      • Part 1 (Interaction Diagrams)
      • Part 2 (Class Diagram and System Architecture)
      • Full Report #2
 
February 25
March 4
March 11
4.   First demo March 27 ► 30
I
t
e
r #2
5.   Third report   (All reports collated)
      • Part 1 (Sections 1, 2, 3, 4, 5, 6, 7, _ 9, 10, _ _ 13, 14) 
      • Full Report #3 (including Sections 8, 11, 12)
      • Reflective essay
 
April 22
April 30
April 26
6.   Second demo May 1 ► 2
7.   Electronic Project Archive May 3

Syllabus at a Glance

Topic 1 (3 lectures): Software Lifecycle and Team Projects
Topic 2 (2 lectures): Requirements Engineering and Use Cases
Topic 3 (1 lecture): Software Architecture
Topic 4 (3 lectures): Object-Oriented Analysis and Design
Topic 5 (2 lectures): Test-Driven Implementation
Topic 6 (2 lectures): System Specification
Topic 7 (2 lectures): Software Measurement and Estimation
Topic 8  (4 lectures):   Design Patterns
Topic 9  (2 lectures):   Software Security

The section numbers marked in red letterfont are referring to the Lecture Notes. These are the discussion topics for each lecture.Note #1
Some materials in the textbook will not be reviewed in the class, but are important for understanding other materials and may appear in the exams.
They are indicated in the syllabus below for the student to read on their own.

Jan
   16 (T)   Software Development Lifecycle  [slides] (Sections 1.1 to 1.3)
   19 (F)   Software Configuration Management [slides] (Section 2.1.3 and Chapters 16 in Chacon & Straub: Pro Git)
   23 (T)   Understanding the Problem and Dividing the Work  [slides]
   26 (F)   Requirements Engineering      [slides]   (Section 2.2)
   30 (T)   Software Architecture         [slides]   (Section 2.3)  and  Wikipedia

Feb
    2 (F)   Use Cases                     [slides]   (Section 2.4)
           Read on your own: Section 4.2.1 (Use Case Points)  [slides]
    6 (T)   Domain Model                  [slides]   (Section 2.5)
    9 (F)   Object-Oriented Design - 1    [slides]   (Section 2.6.1)
   13 (T)   Object-Oriented Design - 2               (Section 2.6 remainder)
   16 (F)   Testing - 1                   [slides]   (Sections 2.7.1 to 2.7.4)
   20 (T)   Testing - 2
   23 (F)   Relational Databases and SQL  [slides]   (Chapter 13 in Sebesta: Programming the WWW)
   27 (T)   Web Server Development in PHP [slides]   (Chapter 9 in Sebesta: Programming the WWW)

Mar
    2 (F)   Web Client Development (Chapters 46 in Sebesta: Programming the WWW)
           Read on your own: Sections 3.1 and 3.2.1 (Specifying Systems - Intro)  [slides]
    6 (T)   Specifying Systems            [slides]   (Section 3.2 remainder)
            UML State Diagrams | Object Constraint Language (OCL)
    9 (F)   Problem Frames - Decomposition  [slides] (Section 3.3)
        (Spring Recess: March 10 - 18)
   20 (T)   [ no class — demo preparation ]
   23 (F)   [ no class — demo preparation ]
   27 (T)   ******* DEMO #1 *******
   30 (F)   ******* DEMO #1 *******

Apr
    3 (T)   Software Measurement          [slides]   (Sections 4.1 and 4.2.2)
            Cyclomatic Complexity
    6 (F)   Design Patterns: Publisher-Subscriber  [slides] (Section 5.1)
   10 (T)   More Patterns: Command & Decorator  [slides]   (Section 5.2)
   13 (F)   More Patterns: State & Proxy
   17 (T)   Software Security - 1
   20 (F)   Software Security - 2
   24 (T)   [ no class — demo preparation ]
   27 (F)   [ no class — demo preparation ]

May
        (Regular Classes End: Mon Apr 30  ⋅  Spring Exams End: Wed May 9)

    1 (T)   ******* DEMO #2 *******
    2 (W)   ******* DEMO #2 *******

    9 (W) ******* FINAL EXAM *******
                Time      8:00AM - 11:00AM
                Location  HILL-114

^ Note #1: A comprehensive treatment of UML is available in Miles & Hamilton's Learning UML 2.0 and online http://www.uml.org. There will be no lectures exclusively covering UML. Rather, the symbols will be explained as they're introduced in the context of software development methodology. Miles & Hamilton and http://www.uml.org should serve as reference material.



Ivan Marsic
Created: December 29, 1997
Modified: Thu Jan 18 13:36:35 EST 2018