Module 10: Culture and Design
Design is one of the fundamental activities of software development. This module explores the nature of design as relevant to software architecture, and is a journey through design patterns, iteration and exploration, and the importance of culture and the tension with process.Required readings
- "Architecture and Process." Chapter 9 of A Software Architecture Primer, by John Reekie and Rohan McAdam.
Supplementary readings
- William J. Brown, Hays W. McCormick III, and Scott W. Thomas. ``Gilding the Lily,'' in AntiPatterns in Project Management, pp 183--198. John Wiley and Sons, 2000.
(An interesting read on some of the forces that can work against successul completion of a software project.) - Robert C. Martin. ``A Satire of Two Companies,'' Appendix C of Agile Software Development: Principles, Patterns, and Practices, pp 507--516. Prentice-Hall, 2002.
(A satirical and probably controversial comparison of agile versus plan-driven development.)
Slides and exercises
- Lecture slides :: powerpoint :: pdf
More resources