SoftwarePractice.org: Home | Courseware | Wiki | Archive

Menu:

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

  1. "Architecture and Process." Chapter 9 of A Software Architecture Primer, by John Reekie and Rohan McAdam.

Supplementary readings

  1. 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.)
  2. 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

More resources