Beruflich Dokumente
Kultur Dokumente
SOFTWARE DESIGN
AND ARCHITECTURE
Review
Introduction
to architectural styles
Categorizations of architectural
styles
Hierarchical architectures
Layered Architecture
Outline
Introduction
to architectural styles
Distributed architectures
Client Server Architecture
Multi-tier Architecture
Architectural Styles
An
Define
Components of a style
The key components of an architecture style
are:
Elements/components
that perform functions required by a system
connectors
that enable communication, coordination,
and cooperation among elements
constraints
that define how elements can be integrated
to form the system
attributes
that describe the advantages and
disadvantages of the chosen structure
Categories of Architectural
Styles
Hierarchal Software
Architecture
Layered
Distributed Software
Architecture
Client Server
SOA
Black box
Shared Repository
Interaction-Oriented
Software
Architectures
Model View Controller
Component-Based
Software Architecture
distributed Software
Architecture
Distributed Software
Architecture
A
Data,
Communication
Client Server
Architectural Style
Client Server
Architectural Style
Client/server
architecture illustrates
the relationship between two
computer programs in which one
program is a client, and the other is
Server.
Client
server.
Server provides service to the
request.
Client/Server
In a network, the
client/server architecture
allows efficient way to
interconnect programs
that are distributed
efficiently across different
locations.
Client-Server Style
Suitable
Connector:
Common Example
The World Wide Web is
an example of clientserver architecture.
Each computer that uses
a Web browser is a
client, and the data on
the various Web pages
that those clients access
is stored on multiple
servers.
Another Example
Example:
Gmail
Picassa photoviewer
Drop box
Severs
Servers
Types of Servers
Application
Servers:
Types of Servers
File
Servers:
Types of Servers
Database
Servers:
Advantages
Straightforward
distribution of data.
Transparency of location.
Mix and match heterogeneous
platforms
Easy to add new servers or upgrade
existing servers.
Disadvantages
Performance
clientserver architecture,
clientserver architecture,
A two-tier clientserver
architecture
The
system is implemented as a
single logical server plus an
indefinite number of clients that use
that server.
Two
thin-client model,
Advantages
The
Disadvantages
The
fat-client model,
Multi-tier clientserver
architectures
The
This
This
In
Summary
Introduction
to architectural styles
Distributed architectures
Client Server Architecture
Multi-tier Architecture