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 StrategyPattern.zip
Mon 9/29 Observer pattern HFDP: Ch 2 ObserverPattern.zip
Thurs 10/2 Decorator pattern HFDP: Ch 3 DecoratorPattern.zip Logan
Mon 10/6 Factory pattern HFDP: Ch 4 FactoryPattern.zip
More on factories
Jon
Thurs 10/9 Singleton pattern HFDP: Ch 5 SingletonPattern.zip  Google Clean Code Talk: Global State and Singletons Garrett
Mon 10/13 Command pattern, DUE: prefix refactoring HFDP: Ch 6 CommandPattern.zip  Google Clean Code Talk: Inheritance, Polymorphism, & Testing Adam
Thurs 10/16 Adapter and Facade patterns HFDP: Ch 7 AdapterPattern.zip  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 TemplatePattern.zip  Google Clean Code Talk: Unit Testing
Thurs 10/30 Iterator, composite patterns HFDP: Ch 9 IteratorPattern.zip CompositePattern.zip Jon
Mon 11/3 State pattern HFDP: Ch 10 StatePattern.zip  Intro to Software Architecture  slides Garrett
Thurs 11/6 Compound patterns HFDP: Ch 12 CompoundPatterns.zip Adam
Mon 11/10 Proxy pattern HFDP: Ch 11 ProxyPattern.zip Logan
Thurs 11/13 Model-view-controller HFDP: Ch 12 CompoundMVC.zip 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 BouncingBalls.zip Garrett
Thurs 12/4 C#: Types, Methods, OOP Intro.zip Adam
Mon 12/8 C#: Concurrency Concurrency.zip
Thurs 12/11 Final project presentations, 11:00a (conference room)


Page last updated: December 11, 2014