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 21, 2017 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 27, 2017.

ItemDue date
I
t
e
r
a
t.
#1
1.   Proposal January 29
2.   First report   (Specification only)
      • Part 1 (Statement of Work & Requirements)
      • Part 2 (Functional Requirements Spec & UI)
      • Full Report #1
 
February 5
February 12
February 19
3.   Second report   (Design only)
      • Part 1 (Interaction Diagrams)
      • Part 2 (Class Diagram and System Architecture)
      • Full Report #2
 
February 26
March 5
March 12
4.   First demo March 24 ► 28
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 23
May 1
May 1
6.   Second demo April 25 ► 28
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
   17 (T)   Software Development Lifecycle  [slides] (Sections 1.1 to 1.3)
   20 (F)   Software Configuration Management [slides] (Section 2.1.3 and Chapters 16 in Chacon & Straub: Pro Git)
   24 (T)   Understanding the Problem and Dividing the Work  [slides]
   27 (F)   Requirements Engineering      [slides]   (Section 2.2)
   31 (T)   Software Architecture         [slides]   (Section 2.3)  and  Wikipedia

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

Mar
    3 (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]
    7 (T)   Specifying Systems            [slides]   (Section 3.2 remainder)
            UML State Diagrams | Object Constraint Language (OCL)
   10 (F)   Problem Frames - Decomposition  [slides] (Section 3.3)
        (Spring Recess: March 11 - 19)
   21 (T)   [ no class — demo preparation ]
   24 (F)   ******* DEMO #1 *******
   28 (T)   ******* DEMO #1 *******
   31 (F)   Software Measurement          [slides]   (Sections 4.1 and 4.2.2)
            Cyclomatic Complexity

Apr
    4 (T)   Design Patterns: Publisher-Subscriber  [slides] (Section 5.1)
    7 (F)   More Patterns: Command & Decorator  [slides]   (Section 5.2)
   11 (T)   More Patterns: State & Proxy
   14 (F)   Software Security - 1
   18 (T)   Software Security - 2
   21 (F)   [ no class — demo preparation ]
   25 (T)   ******* DEMO #2 *******
   28 (F)   ******* DEMO #2 *******

May
        (Regular Classes End: Mon May 1  ⋅  Spring Exams End: Wed May 10)

   10 (W) ******* FINAL EXAM *******
                Time      8:00AM - 11:00AM
                Location  SEC-118

^ 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: Wed Jan 27 12:23:35 EST 2016