Understanding Software Architecture

Software architecture is a discipline focused on the quality attributes of a system, the "ilities". While functional requirements and constraints are important to understand, the software architect is primarily concerned with the quality attribute requirements. The Software Engineering Institute at Carnegie Mellon University uses the following definition of software architecture.

The software architecture of a program or computing system is the structure or structures of the system, which comprise the software elements, the externally visible properties of those elements, and the relationships among them.
Bass, L.; Clements; P. & Kazman, R. Software Architecture in Practice, Second Edition. Boston, MA: Addison-Wesley, 2003.

Others define it differently but in most cases you can begin to communicate intelligently about a software architecture by answering the following questions to the level required by the parties who need to communicate about it.

  • What are the elements of the system?
  • What are the roles and responsibilities of the elements?
  • What are the externally visible characteristics of the elements?
  • How do the elements relate to each other?
  • What are the characteristics of the relationships?

These questions can be applied to various aspects (or views) of a system to produce a helpful composite which can be used to communicate about the architecture, including evaluation and refinement of the architecture. The main aspects of a system can be grouped into three major categories.

  • Module Views -- the non-runtime views of the software (e.g., uses, layers, generalization, etc)
  • Component and Connector Views -- the runtime views of the software (e.g., publish-subscribe, client-server, peer-to-peer, etc)
  • Allocation views -- the mapping of software elements onto hardware or humans (e.g., deployment, implementation, work assignments, etc)

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Fashion weekyou can come to

Fashion week
you can come to see it,it's so fashion.I think you will like it.

tiffany jewelry Choose, buy

tiffany jewelry
Choose, buy and shop for on sale tiffany jewelry including Tiffany & Co Silver Necklace, Pendants, Bangles, Bracelets, Earrings, Rings and Accessories.
tiffany co
tiffany jewelry
Tiffany Jewellery offering bangle jewelry, bracelet jewelry, eardrop jewelry, necklace jewelry, ring jewelry, finger ring jewelry and earring jewelry
tiffany
tiffany and co
Tiffany Style Silver Jewelry: Rings, Earrings, Necklaces, Bracelets and more Tiffany Jewelry at low prices