Beruflich Dokumente
Kultur Dokumente
COMSATS Islamabad
Enterprise
Systems
Development
(CSC447)
Slide 1
Slide 2
Overview
Defines models consisting of
elementshavingsomeruntimepresenceprocesses,objects,
clients,servers,datastores
Pathwaysofinteractioncommunicationlinks,protocols,
informationflows,accesstosharesstorage
Slide 3
Slide 4
Relations
Properties of
elements
Topology
No Inherent constraints
Slide 5
Pipe-and-filter
Shared-data
Publish-subscribe
Client-server
Peer-to-peer
Communicating processes
Slide 6
Components
Slide 7
Component Interfaces
Slide 8
Connectors
Slide 9
Connector Roles
Slide 10
Slide 11
Relations
Slide 12
Slide 14
Pipe-and-filter
Shared-data
Publish-subscribe
Client-server
Peer-to-peer
Communicating processes
Slide 15
Slide 16
Slide 17
What for ..
Very useful in data transformation
Signalprocessing
compilers
To reason about system performance, stream latency, pipe buffer
requirements, schedulability
Slide 18
Relations
Properties of elements
Topology
Slide 20
Slide 21
Relations
Computational model
Properties of elements
Topology
Slide 22
What for..
Used when there are multiple accessors and persistence
Decouple producer from consumer
Data store performance, security, privacy, compatibility with other
stores
Slide 23
Similarity to others
Client-server style
Publish-subscribe is similar without persistence
Slide 24
Publish-subscribe styles
Components interact via announced events
Components subscribe to a set of events
P-S runtime ensures that each published event is delivered to all
subscribers
The connector is an event bus
Used in message production/consumption
Slide 25
P-S summary
Elements
Relations
Computational model
Properties of elements
Same as in C&C;
Topology
Slide 26
Where to use ..
To send events and messages to recipients
Set of recipients are unknown can be added dynamically
Slide 27
Slide 28
Slide 29
Client-Server
Components interact by requesting services of other components
Communication is initiated by a client
Slide 30
Client-Server summary
Elements
Relations
Computational model
Properties
Topology
Slide 31
What for..
Assignment of functionality is clear
Can be independently assigned to tiers
Can be used to argue about performance
Example - WWW
Slide 32
Peer-to-peer
Components interact with each other exchanging services
No asymmetry as in client-server
Connectors are bidirectional
Slide 33
Allocation Viewtype
Slide 34
Slide 35
Relations
Properties of
elements
Topology
Varies by style
Slide 36
Deployment style
Elements of the C&C styles are allocated to execution platforms
Slide 37
Relations
Properties of elements
Properties of relations
Topology
Slide 39
Slide 40
Slide 41
Reference
Bass, L., Clements, P. and Kazman, R., Software
Architecture in Practice, Second Edition (2006),
Addison-Wesley.
Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers,
j., Little, R., Nord, R. and Stafford, J., Documenting
Software Architectures: Views and Beyond, 2002,
Addison-Wesley. Documenting Software Architectures
42
Slide 42