Unit1-1
1.The Architecture Business Cycle(ABC)
2.What Is Software Architecture
3.Architectural patterns, Reference models and
Reference architectures
4.Architecture structures and views
1.1 Where Do Architectures Come From?
1.2 Software Processes and The Architecture
Business Cycle
1.3 What Makes a “Good Architecture”?
Definition
 The software Architecture of a program or
computing system is the structure or
structures of the system, which comprise s/w
elements, the externally visible properties of
those elements, and the relationships among
them
 Software architecture is a result of technical,
business and social influences. Its existence
in turn affects the technical, business and
social environments that subsequently
influence future architectures. We call this
cycle of influences, from the environment to
the architecture and back to the environment,
the Architecture Business Cycle(ABC)
 Architectures are influenced by
 -System Stakeholders
 -the Developer Organization
 -the background and Experience of the
Architects
 -the technical Environment
Ramifications of influences on an
Architecture
The architecture affect the factors that
influence them
Architecture Activities
 Creating the Business Case for the System
 Understanding the Requirements
 Creating or selecting the Architecture
 Communicating the Architecture
 Analyzing or Evaluating the Architecture
 Implementing Based on the Architecture
 Ensuring the Conformance to an Architecture
Divided into Two Clusters
 Process recommendations
 Product(or structural) recommendations
Definition
 The software Architecture of a program or
computing system is the structure or
structures of the system, which comprise s/w
elements, the externally visible properties of
those elements, and the relationships among
them
 Architecture defines s/w elements
 Systems can and do comprise more than one
structure
 Every computing system with s/w has a s/w
architecture
 The behavior of each element is part of the
architecture
 An Architectural Pattern is a description of
element and relation types together with a
set of constraints on how they may be
used.
 A Reference model is a division of
functionality together with data flow
between the pieces.
 A Reference Architecture is a reference model
mapped onto software elements(that
cooperatively implement the functionality
defined in the reference model) and the data
flows between them.
Architectural Structures can by and large be
divided into 3 groups, depending on the
broad nature of the elements they show.
 Module Structures
 Component-and-Connector structures
 Allocation Structures
Architectural Structures of a System
 Relating Structures to each other
 Which Structures to choose?
Kruchten’s four views follow:
-Logical
-Process
-Development
-Physical
Software architecture in practice unit1 1

Software architecture in practice unit1 1

  • 1.
  • 2.
    1.The Architecture BusinessCycle(ABC) 2.What Is Software Architecture 3.Architectural patterns, Reference models and Reference architectures 4.Architecture structures and views
  • 3.
    1.1 Where DoArchitectures Come From? 1.2 Software Processes and The Architecture Business Cycle 1.3 What Makes a “Good Architecture”?
  • 4.
    Definition  The softwareArchitecture of a program or computing system is the structure or structures of the system, which comprise s/w elements, the externally visible properties of those elements, and the relationships among them
  • 5.
     Software architectureis a result of technical, business and social influences. Its existence in turn affects the technical, business and social environments that subsequently influence future architectures. We call this cycle of influences, from the environment to the architecture and back to the environment, the Architecture Business Cycle(ABC)
  • 7.
     Architectures areinfluenced by  -System Stakeholders  -the Developer Organization  -the background and Experience of the Architects  -the technical Environment
  • 8.
    Ramifications of influenceson an Architecture
  • 9.
    The architecture affectthe factors that influence them
  • 10.
    Architecture Activities  Creatingthe Business Case for the System  Understanding the Requirements  Creating or selecting the Architecture  Communicating the Architecture  Analyzing or Evaluating the Architecture  Implementing Based on the Architecture  Ensuring the Conformance to an Architecture
  • 11.
    Divided into TwoClusters  Process recommendations  Product(or structural) recommendations
  • 12.
    Definition  The softwareArchitecture of a program or computing system is the structure or structures of the system, which comprise s/w elements, the externally visible properties of those elements, and the relationships among them
  • 14.
     Architecture definess/w elements  Systems can and do comprise more than one structure  Every computing system with s/w has a s/w architecture  The behavior of each element is part of the architecture
  • 15.
     An ArchitecturalPattern is a description of element and relation types together with a set of constraints on how they may be used.  A Reference model is a division of functionality together with data flow between the pieces.
  • 16.
     A ReferenceArchitecture is a reference model mapped onto software elements(that cooperatively implement the functionality defined in the reference model) and the data flows between them.
  • 18.
    Architectural Structures canby and large be divided into 3 groups, depending on the broad nature of the elements they show.  Module Structures  Component-and-Connector structures  Allocation Structures
  • 20.
  • 21.
     Relating Structuresto each other  Which Structures to choose? Kruchten’s four views follow: -Logical -Process -Development -Physical