0% found this document useful (0 votes)
31 views

Lesson 4

The document discusses system architecture and the architecture development process. It defines architecture as the fundamental organization of a system, including its components and relationships. The architecture development process involves three phases: analysis to define functional and physical architectures based on the operational concept, synthesis to develop an executable model, and evaluation to analyze performance. The system architect is responsible for conceptualizing the system structure early in the development process.
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views

Lesson 4

The document discusses system architecture and the architecture development process. It defines architecture as the fundamental organization of a system, including its components and relationships. The architecture development process involves three phases: analysis to define functional and physical architectures based on the operational concept, synthesis to develop an executable model, and evaluation to analyze performance. The system architect is responsible for conceptualizing the system structure early in the development process.
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 26

Lesson 4

System Architecture
Architecture
•The word “architecture” is derived from the Greek word “architecton”, which means
master mason or master builder
•Webster’s Dictionary defines architecture as:
•The art or science of designing or building structures
•The structure (in terms of components, connections, and constraints) of a product,
process, or element – The Art of Systems Architecting
•An Architecture is the highest-level concept of a system in its environment - IEEE
Architecture

Architecture – The fundamental organization of a system embodied in its components, their relationships
to each other and to the environment and the principles guiding its design and evolution - P141
Standard

Systems Architecture – The fundamental and unifying system structure defined in terms of system
elements, interfaces, processes, constraints, and behaviors – INCOSE SAWG

Architecture – The organizational structure of a system of CSCIs, identifying its components, their
interfaces and a concept of execution among them

3
Architecture
The architecture of a system defines its high-level structure, exposing its gross
organization as a collection of interacting components.

Components needed to model a software architecture include:

• Components, Connectors, Systems, Properties and Styles.


IT Architecture Concepts
Components
• The computational elements and data stores of the system
• May have multiple interfaces, called ports
• Ports define a point of interaction between a component and its environment

Connectors
• Model interactions among components
• Runtime perspective: connectors mediate the communication and coordination activities
between components
• Connectors may have interfaces that define the roles played by the participants in the
interaction
IT Architecture Concepts
Systems
• Graphs of components and connectors
• Tend to be hierarchical – components and connectors may represent subsystems that
have their own internal architectures
• Bindings map the interfaces of one level of a system to another

Properties
• Represent the non-structural information about the parts of an architecture description
• Example: a connector can be a function call, or a network interaction
• Properties can be attached to any architectural element
IT Architecture Concepts
Style

• An architectural style represents a family of related systems

• Defines the design vocabulary (and constraints) for the components,


connectors, ports, roles, bindings and properties.
System Architect

•The architect is a member of the team that is responsible for designing and building a
system

•The architect’s contribution comes in the very early stages of the systems engineering
process
– When the operational concept is defined

– The basic structure of the system is conceptualized

•A system architect, not only knows about the individual components, but also understands
the interrelationships among the components
Systems Architecting

•Systems Architecting has been defined as the process of creating complex, unprecedented systems

•Building systems in today’s world is tenuous at best


– Requirements of the marketplace are ill-defined

– Rapidly evolving technology provides new services at a global level instantly

– Uncertainty is increasing about they way the system will be used, the components that will be incorporated and
the interconnections that will be made
• Generating a system architecture as part of the systems engineering process can be seen as a deliberate
approach to deal with the uncertainty that characterizes these complex, unprecedented systems
Traditional Approach
to System Architecting
Many methodologies have been developed to support a traditional system development model

• Define the requirements

• Consider several options

• Emerge with a well-defined design through a process of elimination

• Based on structured analysis and design

Effective when the requirements are well defined and remain essentially constant during the system development period

• Cannot handle change well

• If the implementation of the system is long – on the order of years – the requirements change because of changing needs and new technology offers different
alternatives and opportunities
Evolutionary Approach

•New approach that is emerging with roots in software systems engineering

•Deals with uncertainty in requirements and in technology, especially for systems with a long
development time and expected long life cycle
– Evolutionary development

– Build-a-little, Test-a-little

•Requirements are allowed to be more abstract and therefore subject to interpretation

•Alternative solutions are explored and pursued further as new technology options become available
Evolutionary Approach - 2

•Intermediate designs are saved

•Some intermediate designs are implemented as prototypes but not operationally


implemented while others are implemented in traditional ways

•Advantages of Object-Oriented approach:


– Allows flexibility in the design as it evolves over time

•Disadvantages of Object-Oriented approach:


– Requires some early elimination of technology alternatives in the absence of reliable information
Select, Build, and Field

At any time in the development process, when there is a need to


build a system, the available solution that best meets the current
requirements is selected and implemented using any systems
engineering approach
Select, Build, and Field
The Challenge of
Coping With Change

If the implementation is long, then the situation shown


next prevails, with the unfortunate consequences that
very little, if any, from the work on Option A is used for
Option B
The Challenge of
Coping With Change
How to Define
an Architecture

•Defining an architecture, especially of an information system, requires the following items to


be described:
– Processes exist that need to take place in order that the system accomplish its intended
functions

– The individual processes transform either data or materials that “flow” between them

– The processes or activities or operations follow rules that establish the conditions under which
they occur

– The components that will implement the design (hardware, software, personnel, and facilities
must be described)
How to Define
an Architecture - 2

Define the Functional Architecture

• A functional architecture is:

• A set of activities or functions that are arranged in a specific order and when activated,
achieves a set of requirements

• Divide and allocate the functional requirements into different sub-functions and modes of
operation
How to Define
an Architecture - 3

Define the Physical Architecture

• A physical architecture is:

• A representation of the physical resources

• Expressed as nodes that constitute the system and their connectivity

• Expressed in the form of links


How to Define
an Architecture - 4
•Define the technical architecture
– A minimal set of rules governing the arrangement, interaction, and interdependence of the parts or
elements that must ensure that a conformant system satisfies a specified set of requirements

– Provides the framework upon which engineering specifications can be derived, guiding the implementation
of the system

– Analogous to the building code that provides guidance for new buildings to be able to connect to the
existing infrastructure by characterizing the attributes of that infrastructure
Operational Concept

•An important task in the architecture development process is to define the operational concept
– A concise statement that describes how the goal will be met

– How will the system look and act in the operational environment

•Operational Concept Definition Parts


– How the system operates

– Where in the operating environment the system will be distributed

– How long the system must operate

– How effective the system’s performance must be


Operational Concept - 2

•An operational concept is a shared vision from the perspective of the system’s stakeholders
of how the system will be:
– Developed

– Produced

– Deployed

– Trained

– Used and maintained

– Refined

– Retired
Operational Concept - 3

ᴥThe operational concept includes a collection of scenarios – one for each group of
stakeholders for each relevant phase of the system’s lifecycle
– Each scenario addresses one way that a particular stakeholder will want to use, deploy, fix, etc., the
system and how the system will respond to a produce a desired end

– Scenario - a sequence of events which might occur that includes the interaction of the product
with its environment and users, as well as the interaction among its product components
Executable Model

ᴥThe functional, physical, and technical architectures are static representations


that attempt to describe the dynamic behavior of the architecture

ᴥIn order to analyze the behavior of the architecture and evaluate the
performance characteristics, an executable model is needed
Architecture
Development Process

ᴥThe architecture development process consists of three phases:

 Analysis Phase – The static representatives of the functional and physical architectures are obtained using the
operational concept to drive the process and the technical architecture to guide it

 Synthesis Phase – The static constructs are used, together with descriptions of the dynamic behavior of the
architecture to obtain the executable operational X-architecture (X = executable property)

 Evaluation Phase – Measures of performance (MOP) and measures of effectiveness (MOE) are obtained
The Three-Phase
Process of Architecture
Development

You might also like