Professional Documents
Culture Documents
Architectural Design New
Architectural Design New
By,
Ilakiyaselvan N
Role of Software Architecture
• Software Architecture of a system is the structure or
structure of the system which comprise software elements,
the externally visible properties of those elements, and the
relationships among them.
Important uses that software architecture descriptions play are:
• Understanding and Communication
• Reuse
• Construction and Evolution
• Analysis
Architecture Views
Types of views
• Module – Code structures.
• Component and Connector – Runtime structures.
• Allocation – Software & Environment co-structures.
Components and Connector View
• Components(Data stores)
Client, Server, DB, Application
• Connectors
Bus type, DB Access, Request-Reply, pipe, RPC
Software Architecture
• Architecture is conceptual.
synthesis architecture
context
evaluation
backlog
evaluation
requirements
results
Elements of a Architectural decision
Architecture
Sta keh olde r Description Rati onal e
Concern Vi ewpoin t Vi ew
Li brary
Vi ewpoin t Mode l
Representing System Architecture
End-user Programmers
Functionality Software management
Conceptual Physical
Architectural style
• An architectural style defines a family of
systems in terms of few key patterns
• Set of component types
• Topological layout of components indicating
runtime relationships
• Set of semantic constraints
• Set of connectors that mediate
communication, coordination or cooperation
among components.
A Taxonomy of Architectural Styles
Independent Components
Implicit Explicit
Client/Server Peer-to-Peer
Invocation Invocation
(source)
Examples
• File sharing applications,
• Communication and collaboration, e.g., Skype
Shared data style: Repository
Repository
Repository
Model-View-Controller (MVC) style
Controller View
n n
Model