ESOF 427
Software Design and Architecture
Fall 2014

Montana Tech
Computer Science & Software Engineering

DateTopicReadingSlidesLinksGuru of the day
Tues 8/26 Introduction PDF
Thurs 8/28 OOP in Java, part 1 PDF Keith
Mon 9/1 NO CLASS
Thurs 9/4 OOP in Java, part 2
Mon 9/8 Class diagrams, DUE: keyboard sketch Design and UML Class Diagrams    CRC cards Logan
Thurs 9/11 Agile, JUnit, DUE: keyboard UML Agile
Mon 9/15 OOP in C++, Intro SOLID Single Responsibility Principle  Open-Closed Principle  Liskov Substitution Principle  Interface Segregation Principle  Dependency Inversion Principle  Jon
Thurs 9/18 SOLID part I, DUE: traces implementation PDF Garrett
Mon 9/22 SOLID part II Adam
Thurs 9/25 Strategy pattern, QUIZ: OOP in Java, UML class diagrams HFDP: Ch 1
Mon 9/29 Observer pattern HFDP: Ch 2
Thurs 10/2 Decorator pattern HFDP: Ch 3 Logan
Mon 10/6 Factory pattern HFDP: Ch 4
More on factories
Thurs 10/9 Singleton pattern HFDP: Ch 5  Google Clean Code Talk: Global State and Singletons Garrett
Mon 10/13 Command pattern, DUE: prefix refactoring HFDP: Ch 6  Google Clean Code Talk: Inheritance, Polymorphism, & Testing Adam
Thurs 10/16 Adapter and Facade patterns HFDP: Ch 7  Google Clean Code Talk: Don't Look for Things! Logan
Mon 10/20 NO CLASS
Thurs 10/23 NO CLASS
Mon 10/27 Template pattern, DUE: keyboard refactoring HFDP: Ch 8  Google Clean Code Talk: Unit Testing
Thurs 10/30 Iterator, composite patterns HFDP: Ch 9 Jon
Mon 11/3 State pattern HFDP: Ch 10  Intro to Software Architecture  slides Garrett
Thurs 11/6 Compound patterns HFDP: Ch 12 Adam
Mon 11/10 Proxy pattern HFDP: Ch 11 Logan
Thurs 11/13 Model-view-controller HFDP: Ch 12 Jon
Mon 11/17 Patterns wrap-up HFDP: Ch 13, 14 PDF Building Software Systems at Google
Thurs 11/20 Quiz: SOLID and design patterns
Mon 11/24 DUE: implementing design patterns
Mon 12/1 C#: WPF and Windows Forms Garrett
Thurs 12/4 C#: Types, Methods, OOP Adam
Mon 12/8 C#: Concurrency
Thurs 12/11 Final project presentations, 11:00a (conference room)

Page last updated: December 08, 2014