上游充通大学 SHANGHAI JIAO TONG UNIVERSITY 7.System Design: Addressing Design Goals 大 强 uuuuuuu 会 SHANG 1日日G ERSIT
7. System Design: Addressing Design Goals
上游充通大学 Outline SHANGHAI JIAO TONG UNIVERSITY ©Overview UML Component Diagram and Deployment Diagram Hardware Software Mapping Data Management Global Resource Handling and Access Control ©Software Control Boundary Conditions Software Engineering
Software Engineering Outline Overview UML Component Diagram and Deployment Diagram Hardware Software Mapping Data Management Global Resource Handling and Access Control Software Control Boundary Conditions
上游充通大¥ 1.Overview SHANGHAI JIAO TONG UNIVERSITY System Design I(previous lecture) 0.Overview of System Design 1.Design Goals 2.Subsystem Decomposition System Design ll 3.Hardware/Software Mapping 4.Persistent Data Management 5.Global Resource Handling and Access Control 6.Software Control 7.Boundary Conditions Software Engineering
Software Engineering 1. Overview System Design I (previous lecture) 0. Overview of System Design 1. Design Goals 2. Subsystem Decomposition System Design II 3. Hardware/Software Mapping 4. Persistent Data Management 5. Global Resource Handling and Access Control 6. Software Control 7. Boundary Conditions
h 上游充通大学 SHANGHAI JIAO TONG UNIVERSITY Define Define Implement design goals subsystems subsystems Map subsystems to hardware/ software platform Manage persistent data Define access control policies Select_a global control flow Describe boundary conditions Software Engineering
Software Engineering Describe boundary conditions Define Define subsystems Map subsystems to hardware/ Manage Select a Define access design goals persistent data control policies global Implement subsystems software platform control flow
上游充通大¥ SHANGHAI JIAO TONG UNIVERSITY 2.UML Component Diagrams Deployment Diagrams Software Engineering
Software Engineering 2. UML Component Diagrams & Deployment Diagrams
上溶充通大粤 Drawing Hardware/Software Mappings in SHANGHAI JIAO TONG UNIVERSITY UML System design must model static and dynamic structures: Component Diagrams for static structures show the structure at design time or compilation time Deployment Diagram for dynamic structures show the structure of the run-time system Note the lifetime of components Some exist only at design time Others exist only until compile time Some exist at link or runtime Software Engineering
Software Engineering Drawing Hardware/Software Mappings in UML System design must model static and dynamic structures: • Component Diagrams for static structures • show the structure at design time or compilation time • Deployment Diagram for dynamic structures • show the structure of the run-time system Note the lifetime of components • Some exist only at design time • Others exist only until compile time • Some exist at link or runtime
上游充通大¥ SHANGHAI JIAO TONG UNIVERSITY Component Diagram Component Diagram A graph of components connected by dependency relationships. Shows the dependencies among software components source code,linkable libraries,executables Dependencies are shown as dashed arrows from the client component to the supplier component. The kinds of dependencies are implementation language specific. A component diagram may also be used to show dependencies on a facade: Use dashed arrow the corresponding UML interface. Software Engineering
Software Engineering Component Diagram Component Diagram • A graph of components connected by dependency relationships. • Shows the dependencies among software components • source code, linkable libraries, executables Dependencies are shown as dashed arrows from the client component to the supplier component. • The kinds of dependencies are implementation language specific. A component diagram may also be used to show dependencies on a façade: • Use dashed arrow the corresponding UML interface
上游充通大警 SHANGHAI JIAO TONG UNIVERSITY Component Diagram Example Scheduler reservations UML Component UML Interface Planner update 名 GUI Software Engineering
Software Engineering Component Diagram Example UML Interface UML Component Scheduler Planner GUI reservations update
上游充通大学 SHANGHAI JIAO TONG UNIVERSITY Deployment Diagram Deployment diagrams are useful for showing a system design after the following decisions are made Subsystem decomposition ·Concurrency Hardware/Software Mapping A deployment diagram is a graph of nodes connected by communication associations. Nodes are shown as 3-D boxes. Nodes may contain component instances. . Components may contain objects(indicating that the object is part of the component) Software Engineering
Software Engineering Deployment Diagram Deployment diagrams are useful for showing a system design after the following decisions are made • Subsystem decomposition • Concurrency • Hardware/Software Mapping A deployment diagram is a graph of nodes connected by communication associations. • Nodes are shown as 3-D boxes. • Nodes may contain component instances. • Components may contain objects (indicating that the object is part of the component)
上浒充通大 SHANGHAI JIAO TONG UNIVERSITY Deployment Diagram Example Compile Time Dependency HostMachine > meetingsDB Scheduler Runtime Dependency :PC 三 :Planner Software Engineering
Software Engineering Deployment Diagram Example Runtime Dependency Compile Time Dependency :Planner :PC :Scheduler :HostMachine > meetingsDB