CSSE 574 - Software Architecture and Design

Course Schedule - Fall 2013-14

 

 

Week

Date

Topics

Slides

Preparation

Homework

Deliverables

1

Mon Sep 16

Introductions & Course intro.

Introduction

Syllabus

 

 

 

 

Introduction to object-oriented analysis and design

Intro to OOA/D

Larman, Ch. 1, 3, and 8

 

 

 

Domain models: conceptual classes

Domain models 1

Ch. 9, through p. 148

 

 

 

 

project meetings with instructor

 

 

 

2

Mon Sep 23

 

Discuss HW and Milestone due today (Please bring to class or have on your laptop)

Revisit grading scheme, HW, Exams!

 

 

HW 1

Milestone 1

 

 

Domain models: attributes and associations

Domain models 2

Finish ch. 9

 

 

 

 

System sequence diagrams

SSDs

Ch. 10

 

 

 

Operation contracts

OCs

Ch. 11

 

 

 

 

Requirements to design

Logical architecture and UML package diagrams

On to object design

Layers

Ch. 12-14

 

 

 

 

project meetings with instructor

 

 

 

3

Mon Sep 30

Discuss HW and Milestone due today (Please bring to class or have on your laptop)

 

 

HW 2

Milestone 2

 

 

UML interaction diagrams

IaDs

Ch. 15

 

 

 

 

UML class diagrams

DCDs

Ch. 16

 

 

 

 

Responsibility driven design

Intro. to patterns

RDD

Ch. 17, through p. 290

 

 

 

 

GRASP, continued

GRASP Intro

Finish ch. 17

 

 

 

 

project meetings with instructor

 

 

 

 

4

Mon Oct 7

Discuss HW and Milestone due today (Please bring to class or have on your laptop)

 

 

HW 3

Omitted for this week! (And, well, other weeks, too.)

Milestone 3

 

 

Pre-break course evaluation results

Last GRASP (for now)

Use Case Realization

More GRASP

Ch. 18, through p. 348

 

 

 

 

Object design examples

Examples

Finish ch. 18, ch. 19

 

 

 

Visibility

Mapping designs to code

Visibility

Catch up on Ch. 19, 20

 

 

 

 

Object design examples, continued

More Examples & Exam review

Ch. 20

 

 

 

project meetings with instructor

 

 

 

 

5

Mon Oct 14

Discuss HW and Milestone due today (Please bring to class or have on your laptop). Show journals at end of class.

 

 

HW 4 - Omitted for this week!

Milestone 4 & Journals (bring to class for prof)

 

 

Test-driven development

Refactoring

More patterns

Analysis revisited

Potpourri

Ch. 21, 23, 24

None

Get Exam 1 (take home, Monday, Oct 21, 7 AM)  See last class's Exam 1 as an example.

 

 

More objects with responsibilities

Last GRASP

Ch. 25

 

 

 

 

Applying GoF design patterns

GoF 1

Ch. 26

 

 

 

 

More GoF

GoF 2

None

 

 

 

project meetings with instructor

 

 

 

 

6

Mon Oct 21

Discuss design issues related to Milestone due next week (be ready to discuss in class, etc.)

 

HW 5 - Omitted by class vote!

Exam 1 due (take home, Monday, Oct 21, 7 AM). And here's the key.

    A practitioner's view of "SOLID" - Intro See the additional short slide set: Intro to SOLID Ref - plumb Pablo's SOLID Software Development     

 

 

What's in iteration 3? -

UML activity diagrams and modeling

Act. Diag.

Ch. 27, 28

 

 

 

 

Relating use cases

Domain model refinement

Domain Models 3

Ch. 30, 31, through p. 515

 

 

 

 

Domain model refinement, continued

More SSDs and contracts

Domain Models 4

Finish ch. 31, ch. 32

 

 

 

Architectural analysis

Arch. Analysis

Ch. 33

 

 

 

 

project meetings with instructor

 

 

 

 

7

Mon Oct 28

Discuss Exam and feedback, HW and Milestone due today (Please bring to class or have on your laptop)

 

HW 6 - Omitted by class vote

Milestone 5

   

A second dose of SOLID

Please look before class More SOLID and at the Java coding examples

   

 

 

Logical architecture refinement

Package design

Package Design

Ch. 34, 35

 

 

 

 

More object design with GoF patterns

GoF 3

Ch. 36

 

 

 

 

Object design with GoF patterns, continued

Another GoF pattern: Template Method

GoF 4

Ch. 37

 

 

 

 

Two more GoF patterns:
Command and State

GoF 5

 

 

 

 

 

project meetings with instructor

 

 

 


8

Mon Nov 4

Discuss HW and Milestone due today (Please bring to class or have on your laptop)

 

HW 7 - Omitted by class vote

Milestone 6

 

 

UML deployment and component diagrams

Larman - Deployment Diagrams, wrap-up

Larman, Ch. 38

 

 

 

 

Now made changes to this material!

The Arch Business Cycle

Bass - Arch Bus Cycle 

Bass, Ch. 1 -4

 

 

 

 

What Makes Good Arch, Arch Structures & Views

What is software arch? 

 

 

 

 

 

Arch Styles & Patterns - We'll save discussing this for last, in case we run out of time!

What are arch styles? (part 1 & part 2

Garlan & Shaw article - just skim!

 

 

 

 

Sample Case Study (this is reference material from Bass)

Sample case study - A-7E 

See article here - skim as well!

 

 

 

 

Quality Attributes

Arch quality attributes

 

 

 

 

 

project meetings with instructor

 

 

 

 

9

Mon Nov 11

Discuss HW and Milestone due today (Please bring to class or have on your laptop)

 

 

HW 8 - Let's skip this one, too.

Milestone 7

 

 

Achieving Arch Qualities

Achieving Attributes in General

Bass Ch. 5 - 12 - skim

 

 Get Exam 2 (take home)

Note:  I cannot accept delays on this due date because it is so close to when grades are due.

Prior exam, as an example.

   

Achieving Arch Qualities - Availability in particular

Achieving Availability Attributes Ch. 5    

 

 

Achieving Arch Qualities - Performance in particular

Achieving Performance Attributes

Ch. 8

 

 

   

Achieving Arch Qualities - Usability in particular

Achieving Usability Attributes Ch 11 and ID book (we use it mainly in CSSE 571)    

 

 

Present Student Case Studies , and

Do Course evaluations this week! (This is the week they are available online.)

Your choice of Ch 5 - 12 (some or all)

 

1-page case study and 1-slide presentation on a QA.

 

 

project meetings with instructor

 

 

 

10
Mon Nov 18

Last Project Presentations

 

     Case study assignment

Milestone 8

Note:  I cannot accept delays on this due date because it is so close to when grades are due.

11

Thurs Nov 21

Second exam due

 

 

Exam 2 due 11:55 PM.

Note:  I cannot accept delays on this due date because it is so close to when grades are due.