Chapter 13
Chapter 13
Sub-system A Sub-system C
«server» «peer»
Sub-system B Sub-system D
Layer 2 Layer 2
Layer 1 Layer 1
Application
Data formatting
Presentation
Presentation
Application logic
Business logic
Domain
Database
Database
Business logic
layer
can be split into
two layers
© Bennett, McRobb and Farmer 2002 21
Partitioned Sub-systems
Loosely coupled sub-systems, each
delivering a single service or coherent
group of services
«propagate» «propagate»
View A View B
«access» «access»
«access»
«access» Model
«access» «access»
Controller A Controller B
changeAdvert()
modifyAdvert()
notify()
update()
displayAdvert()
getAdvertData()
update()
getAdvertData()
Server 1
Client A
Broker Server 2
Client B Server 3
callServer()
sendRequest()
packData()
sendRequest() findServer()
requestService() unPackData()
service()
packData()
sendResponse()
sendResponse()
unPackData()
Possible
process
boundaries
Sub-system Sub-system
A C
Sub-system
Sub-system
B
Possible process boundary D
Asynchronous
messages
Simultaneous
execution
Do not execute
simultaneously
IODevice
handleEvent()
Sensor Actuator
handleEvent() handleEvent()