Download presentation
Presentation is loading. Please wait.
Published byPolly Ellen Morton Modified over 9 years ago
1
Slide 1 What the business needs How to build it Functional requirements + Nonfunctional requirements Performance System environment issues Problem domain Solution domain Factoring Partitions and Collaborations Layers Ch.8 System Design
2
Slide 2 Factoring: Generalization (a-kind-of) Aggregation (a-part-of) Abstraction vs. Refinement Partition and Collaboration : cf. Subsystem Partition Collaboration in Communication Diagram the more messages sent between objects the more likely the objects belong in the same partition
3
Slide 3 Layers: MVC architecture of Smalltalk Model: application logic (problem domain) View: output (user interface) Controller: input (user interface) Software Layers: 1. Foundation 2. Physical Architecture 3. Human Computer Interaction 4. Data Management 5. Problem Domain
4
Slide 4 1. Foundation Layer Necessary for any o-o application to exist fundamental data type: integer, real, character data structure: container class abstraction: utility class 2. Physical Architecture Layer How the software will execute on specific computer and network Design issues: Choice of computing or network architecture Design of network, h/w and server s/w specification global/international issues, security issues
5
Slide 5 3. Human Computer Interaction Layer View and Controller idea from Smalltalk User Interface Implementation: - consistency across different user interfaces - differing level of user experience 등 4. Data Management Layer - persistence of the objects contained in the system. - how objects can be stored and retrieved - choice of storage format (relational, object DB) 5. Problem Domain Layer
6
Slide 6 Packages and Package Design Package: general construct that can be applied to any of the elements in UML models. Use Case Diagram, Class Diagram, Communication Diagram Dependency Relationship: -----> AB A is dependent on B. Changes in B cause changes in A. Fig. 8.14 Package Diagram of Dependency Relationships among Layers
7
fig_08_13 Syntax for Package Diagram
8
fig_08_14 Package Diagram of Dependency Relationships among Layers
9
Slide 9 Steps for Identifying Packages and Building Package Diagram 1. Set the context 2. Cluster the classes together into partitions 3. Model the partitions as packages 4. Identify the dependency relationships among classes 5. Place dependency relationships between packages Fig. 8.15 Partial package diagram of the Appt. Sys. Fig. 8.17 Package diagram of the PD layer for the Appt.Sys. Fig. 8.18 Pure package diagram that shows dependency
10
fig_08_1 5 Partial Package Diagram of the Appointment System
11
fig_08_17 Package Diagram of the PD Layer for the Appointment System
12
fig_08_18 Overview Package Diagram of the PD Layer of the Appointment System
13
Slide 13 DESIGN STRATEGIES Systems can be - built from scratch (Custom Development) - purchased and customized (Packaged Software) - outsourced to others (Outsourcing)
14
Slide 14 Custom Development: - Strength: - Weakness: Packaged Software: - Strength: - Weakness: Outsourcing: - Strength: - Weakness:
15
fig_08_20 Selecting a Design Strategy
16
fig_08_21 Package Diagram of the PD Layer of CD Selections Internet Sales System
17
fig_08_22 Overview Package Diagram of the PD Layer of CD Selections Internet Sales System
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.