Software Architecture Viewpoints and Perspectives

In Philippe Kruchten’s seminal paper, “Architectural Blueprints—The “4+1” View Model of Software Architecture”, the idea of looking at software architectures from a number of viewpoints is put forth.  This idea is needed because architectures are too complex to fit into one diagram.  The views the Kructhen outlines are:

  • Logical
  • Development
  • Physical
  • Process

He “+1” of his model are scenarios or use cases that illustrate the architecture from a functional view.

Nick Rozanski and Eoin Woods build on that idea in their book, Software Systems Architecture.  They list a number of other viewpoints that can be used to describe a Software Architecture.  They are:

  • The Functional Viewpoint
  • The Information Viewpoint
  • The Concurrency Viewpoint
  • The Development Viewpoint
  • The Deployment Viewpoint
  • The Operational Viewpoint

They also introduce the idea of software architecture perspectives.  These perspectives take on architectural attributes that are found across viewpoints, such as security.  I encourage you to read their book and tailor it to your architecture.  It has helped me tremendously on past projects and I plan to post samples soon.


About Leonard Woody
Software Engineer

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: