4. 4
Software architecture considers two
levels of design:
Data Design – action translates data objects defined as
part of the analysis model into data structures at the
software component level and when necessary, a database
architecture at the application level.
Architectural design – representation of the structure
of software components, their properties and relations
5. 5
Architecture is a high level description of a solution to a
problem
architecture includes-
Main Components
Functionalities and properties of components
Major Relations
Components collaborating among the components
Introduction
6. 6
An architectural style, sometimes called an architectural pattern
It provides an abstract framework for a family of systems
An architectural style improves partitioning and promotes
design reuse by providing solutions to frequently recurring
problems
Architectural Style
7. 7
An Architectural Style defines a set of rules that describe:
- The way in which the components interact
Architectural Style
8. 8
architecture styles and patterns as sets of principles
that shape an application
some architectural styles describe deployment
patterns, some describe structure and design issues,
and others describe communication factors
Architectural Style
9. The Definition of Architecture Styles
9
“An architectural style is a named collection of architectural
design decisions that are applicable in a given development
context, constrain architectural design decisions that are
specific to a particular system within that context, and elicit
beneficial qualities in each resulting system.”
10. 10
An architectural pattern is a general, reusable solution to a
commonly occurring problem in software architecture within a
given context
Architectural patterns are often documented as software design
pattern
Architectural Patterns
11. 11
An architecture pattern is determined by-
A set of element types(such as data repository or a component)
A topological layout of the element indicating their
interrelationships
A set of semantic constraints(e.g. filters in a pipe-and-filter style
)
A set of interaction mechanisms that shows how the elements
coordinate through the allowed topology.
Architectural Patterns
12. 12
The Definition of Architecture pattern
"An architectural pattern is a named collection of
architectural design decisions that are applicable to a
recurring design problem, parameterized to account for
different software development contexts in which that
problem appears “
13. 13
Difference between Pattern and Styles
The main difference is that a pattern can be seen as a
solution to a problem, while a style is more general
and does not require a problem to solve for its
appearance.