Course Title

Informatics 122

Software Design II

Winter 2014

Emily Navarro

Office Hours
By appointment (generally before or after class)

Mattias Giorgio

Office: DBH 5209

Location: DBH 1300
Day and time: Tuesday and Thursday, 5:00-6:20pm

Catalogue Description
122 Software Design II (4). Introduction to implementation design: designing the internals of a software application. Topics include design aesthetics, design implementation, design recovery, design patterns, and component reuse. Includes practice in designing and case studies of existing designs. Prerequisite: Informatics 121.

Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series, Hardcover), Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, 1995

All students enrolled in the course will earn a letter grade based upon: (a) class attendance and participation, (b) assignments, (c) the final class project, and (d) team evaluations.

Grade distribution will be as follows (as suitably adjusted with team evaluations):

Course Mailing List
To send mail:
To view the archive:

Students with Disabilities
Any student who feels he or she may need an accommodation based on the impact of a disability should contact me privately to discuss his or her specific needs. Please also contact the Disability Services Center at (949) 824-7494 as soon as possible to better ensure that such accommodations are implemented in a timely fashion.

The documents below are included to ensure timely dissemination of scholarly and technical work on a non-commercial basis and are for the sole use of students enrolled in Informatics 122. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author's copyright. These works may not be resposted without the explicit permission of the copyright holder.








January 7

Review and Preview

Lecture 1

January 9

Design Aesthetics

Lecture 2

Assignment 1, part 1 out (individual, moderate)


January 14

Design Aesthetics

Lecture 3

Assignment 1, part 1 due

Assignment 1, part 2 out (individual, moderate)

January 16

Design Aesthetics Reflection

Lecture 4

Assignment 1, part 2 due

Assignment 1, part 3 out


January 21

Design Aesthetics Reflection

Lecture 5

Assignment 1, part 3 due

Assignment 2 out (individual, heavy)

January 23

Design Aesthetics

Lecture 6


January 28

Design Patterns

Lecture 7

sample code

January 30

Design Patterns

Lecture 8

sample code


February 4

Design Patterns

Lecture 9

sample code

Assignment 2 due

Assignment 3, part 1 out (individual, moderate)

February 6


Lecture 10

Assignment 3, part 2 out (individual, moderate)


February 11

Design Recovery

Lecture 11

Assignment 3 (parts 1 and 2) due

Assignment 4 out (team, heavy)

Assignment 4 team evaluation

February 13

Design Recovery



February 18

Design Recovery Presentations


Assignment 4 due

February 20


Lecture 12

Assignment 5 out (team, moderate)

Assignment 5 team evaluation


February 25

Design in the Large

Lecture 13

February 27

Reuse Presentations

Lecture 14

Assignment 5 due

Final Design Project out (team, heavy)


March 4

Final Design Project

"Plan of attack" presentations (15 min. per team)

March 6

Final Design Project

Preliminary design presentations (20 min. per team)

Preliminary design documents due


March 11

Final Design Project

Detailed design presentations (20 min. per team)

Detailed design documents due

March 13

Final Design Project

First demos (20 min. per team)

Lecture 15

Updated design documents due

Finals week

March 20, 4:00 - 6:00pm

Final Design Project

Final design and retrospective on design presentation (15 min. per team)

Final demo (15 min. per team)

Final Design Project due:

Updated design documents

Code (via a CM repository)

Final design project team evaluation