Courses Overview

Software Architectures / Arquitecturas de Software

Architectures for Software Systems aim to teach you how to design, understand and evaluate systems at an architectural level of abstraction. By the end of the course you should be able to:

  • Recognize major architectural styles in existing software systems;
  • Describe an architecture accurately;
  • Generate architectural alternatives for a problem and choose among them;
  • Construct a medium-sized software system that satisfies an architectural specification;
  • Use existing definitions and development tools to expedite such tasks;
  • Understand the formal definition of a number of architectures and be able to reason precisely about the properties of those architectures;
  • Use domain knowledge to specialize an architecture for a particular family of applications.
READINGS

Software Architecture in Practice, Second Edition, Len Bass, Paul Clements, Rick Kazman, Addison-Wesley, 2003

Documenting Software Architectures: Views and Beyond, Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Robert Nord, Judith Stafford Addison-Wesley, 2002

Still haven't found what you're looking for?