The e-business models in today’s globalized business world demand ever-increasing flexibility, responsiveness, and agility of information technology (IT) solutions. It is compulsory for the IT group to provide higher levels of services at a lower cost for the business to compete and succeed. The reality to IT is that there is no choice other than to build more complex, flexible, scalable, extensible, innovative, and forward-thinking technical solutions, to satisfy the growing business needs. In large organizations like worldwide financial institutions, virtually thousands, if not millions, of IT applications and systems have been constructed or purchased to provide electronic services for external customers and internal employees in the past years, utilizing heterogeneous technologies and architectures to meet diverse functional requirements from different lines of business. In the banking industry, as an example, the business process generally contains different business sectors in consumer, commercial, small business, wealth management, and capital management. In particular, services are delivered to different channels such as automated teller machines (ATMs), Web browsers, interactive voice response, agent assistance, e-mails, mobile devices, and so on. To effectively manage the architecture assets and rationalize the architecture designs in such a diverse environment, a multi-disciplinary engineering approach is of crucial importance to abstract concerns, divide responsibilities, mitigate risks, encapsulate the complexity, reverse-engineer existing applications, identify reengineering opportunities, and conduct objective technology assessments, which leads to in-depth technical recommendations and rationalization action plans.
The computing environment has gone through a number of generations of evolution in the last few decades, ranging from monolithic, client/server, multi-tier, object-oriented, component-based, service-oriented, event-driven, to social computing models. The overall solution architecture has become increasingly complicated and thus hardly manageable through a traditional waterfall process. Previous studies (DoD, 1997; IEAD, 2004; Kruchten, 2003; OMG, 2007; Putman, 2001; The Open Group, 2007; Zachman, 1987) in the past have strived to address the issue of architecture design complexity, which has grown exponentially as the computing space is transformed to a service-oriented architecture paradigm.
The architecture methods and frameworks are the general or proven approaches to designing/developing architecture of information systems. They have progressively undergone an evolutionary growth in the last 20 years. The prominent architecture methods and frameworks developed and proposed so far are listed as follows:
E2AF: Extended Enterprise Architecture Framework
TOGAF: The Open Group Architecture Framework
RUP: Rational Unified Process, evolved to Enterprise Unified Process and OpenUP
MDA: Model-Driven Architecture
Microsoft Solutions Framework (MSF), and Microsoft Systems Architecture (MSA)
C4ISR: Command, Control, Computers, Communications (C4), Intelligence, Surveillance, and Reconnaissance (ISR).
FEA: Federal Enterprise Architecture Framework
TEAF: Treasury Enterprise Architecture Framework
PERA: Purdue Enterprise Reference Architecture
RM-ODP: Reference Model for Open Distributed Processing
ATAM: Architecture Tradeoff Analysis Method
SAAM: Software Architecture Analysis Method
IDEF: Integrated Definition Methods
MODAF: Ministry of Defense Architectural Framework
Key Terms in this Chapter
MODAF: Ministry of Defense architectural framework, a standardized way of modeling an enterprise, with six viewpoints ranging from people to processes and systems.
Microsoft Solution Framework: A comprehensive set of software engineering principles, processes, and proven practices that are specified to enable developers to achieve success in the software development lifecycle.
ATAM: Architecture tradeoff analysis method, a risk-mitigation process used early in the software development lifecycle.
TOGAF: The Open Group architectural framework, a detailed framework with a set of supporting tools for developing an enterprise architecture, composed of architecture development method, enterprise architecture continuum, and TOGAF resource base.
SAAM: Scenario-based architecture analysis method, an evaluation method examining architectures via scenarios with regard to achieving quality attributes.
IDEF: Integrated definition methods, a structured approach to enterprise modeling and analysis, consisting of 16 methods.
MDA: Model-driven architecture, an agile approach. MDA aims to separate business logic or application logic from the underlying platform technology.
RUP: Rational unified process, a use-case driven, object-oriented and component-based approach.
Zachman Framework: A logical structure used to categorize and organize the descriptive representations of an enterprise IT environment, designed by John Zachman.
E2AF: Extended enterprise architecture framework, covering business, information, system and infrastructure in a 2-D matrix.