Figure 7-1, The activities of system design.

advertisement
Figure 7-1, The activities of system design.
Define
design goals
Define
subsystems
Implement
subsystems
Map subsystems
to hardware/
software platform
Manage
persistent data
Define access
control policies
Select a
global
control flow
Describe boundary
conditions
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
1
Figure 7-2, A UML deployment diagram representing
the allocation of components to different nodes and
the dependencies among components.
myMac:Mac
:UnixHost
:Safari
aPC:PC
:IExplorer
Bernd Bruegge & Allen H. Dutoit
:WebServer
:UnixHost
:Database
Object-Oriented Software Engineering: Using UML, Patterns, and Java
2
Figure 7-3, Refined view of the WebServer component.
WebServer
GET
URL
POST
DBQuery
HttpRequest
File
Bernd Bruegge & Allen H. Dutoit
DBResult
Object-Oriented Software Engineering: Using UML, Patterns, and Java
3
Figure 7-4, Allocation of MyTrip subsystems to
hardware.
:OnBoardComputer
:WebServer
RoutingSubsystem
Bernd Bruegge & Allen H. Dutoit
PlanningSubsystem
Object-Oriented Software Engineering: Using UML, Patterns, and Java
4
Figure 7-5, Revised design model for MyTrip.
PlanningSubsystem
RoutingSubsystem
RouteAssistant
PlanningService
Trip
Location
TripProxy
Destination
Direction
Crossing
SegmentProxy
Segment
CommunicationSubsystem
Message
Connection
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
5
Figure 7-6, Subsystem decomposition of MyTrip after
deciding on the issue of data stores.
RoutingSubsystem
PlanningSubsystem
CommunicationSubsystem
TripFileStoreSubsystem
Bernd Bruegge & Allen H. Dutoit
MapDBStoreSubsystem
Object-Oriented Software Engineering: Using UML, Patterns, and Java
6
Figure 7-8, Packet filtering firewall: a filter, located at
the router, allows or denies individual packets based
on header information, such as source and
destination.
Intranet host
Internet
Firewall
Web Server
Mail Server
Internet host
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
7
Figure 7-9, Dynamic access implemented with a
protection Proxy.
Access
isAccessible(op)
Broker
1
*
PortfolioProxy
buy()
sell()
1
estimateYield()
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
Portfolio
buy()
1 sell()
estimateYield()
8
Figure 7-10, Passive attack. Given current technology,
it is relatively easy for a passive intruder to listen to all
network traffic. To prevent this kind of attack,
encryption makes the information an intruder sees
difficult to understand.
Intruder
Legitimate
User
Server
Plaintext message
CC# 1234 5678 9012 3456 EXP 8/99
Encrypted message
XZ<ASL@#34HF*(*A2135SDA*}BKDAWR#%_AS2255
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
9
Figure 7-14, Administration use cases for MyTrip.
ManageDrivers
<<include>>
PlanningService
Administrator
ManageMaps
StartServer
<<include>>
ManageServer
ShutdownServer
<<include>>
ConfigureServer
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
10
Figure 7-18, ARENA subsystem decomposition, game
organization part.
Interface
ArenaClient
Application Logic
ArenaServer
GameManagement
UserManagement
TournamentManagement
AdvertisementManagement
Notification
Storage
ArenaStorage
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
11
Figure 7-19, ARENA subsystem decomposition, game
playing part.
MatchFrontEndPeer
TournamentManagement
GameManagement
GamePeer
AdvertisementManagement
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
12
Figure 7-20, ARENA hardware/software mapping.
:UserMachine
:ArenaClient
:ServerMachine
:ArenaServer
:ArenaStorage
:MatchFrontEndPeer
:AdvertisementServer
:GamePeer
Bernd Bruegge & Allen H. Dutoit
Object-Oriented Software Engineering: Using UML, Patterns, and Java
13
Download