Section 4.1. What is architecture and why is it important?


4.1. What is architecture and why is it important?

In essence, architecture is a contract that organizes the work of hundreds of thousandsor even millionsof people. It describes the structures used in the course of that work, which in the case of software refers to data and other abstract mechanisms that will have a certain responsibility and that will be connected in a standardized way.

Architecture makes these standard abstract mechanisms or components useful by clearly defining the relationships between them. Complex, unwieldy systems can be reduced to their essencei.e., to these relationshipsand it becomes possible to see which pieces of the system are the most important. It works both ways: if you are attempting to create a piece of software that fits into an existing architecture, you'll need to understand what that piece needs to do, how it will connect to other pieces, and what its relationship to the rest of the architecture will be.

Architecture also defines the life cycle of the components. Who builds them? How are they built? How are they used? How can they be improved, and, eventually, how will they be retired? In other words, how will an architecture come to life, and how long will it live? The answers lie in the details of an architecture's design at specification time, design time, and implementation time, all of which we will explain later in the book.

For now, the key thing to remember is that the architecture circumscribes the capabilitiesand the limitationsof any component within it, which is why great care must be spent in crafting the architecture before creating any components. If done properly, everyone who participates in building a system atop the architecture will knowbecause of the relationships clearly defined by the contractwhat they should be doing and how they should be doing it as they create each component.

The goal of any software architecture is to enable the construction of systems to execute some type of task in efficient and flexible ways. For the purposes of this book, the architecture we're focused on is the Enterprise Services Architecture, and the goal of ESA in particular is to enable businesses to use software in a manner that is both more flexible and less costly than any previous generation of software architecture.




Enterprise SOA. Designing IT for Business Innovation
Enterprise SOA: Designing IT for Business Innovation
ISBN: 0596102380
EAN: 2147483647
Year: 2004
Pages: 265

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net