Chapter 9 Moving to Design Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Objectives Discuss the issues related to the management and coordination of the design phase of the SDLC Develop a system flowchart Develop a structure chart using transaction analysis and transform analysis Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Objectives Write pseudocode for structured modules Develop a package diagram Develop a design class diagram Explain the major components and levels of design Describe the difference between models produced by the structured design and object-oriented design Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Components Requiring Systems Design Figure 9-1 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Analysis Objectives to Design Objectives Figure 9-2 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Understanding the Elements of Design Design is the process of describing, organizing, and structuring the components of a system at both the architectural level and at a detailed level Focused on construction Like developing blueprints Three questions What components require systems design? What are the inputs to and outputs of the design process? How is systems design done? Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Inputs and Outputs: Moving from Analysis to Design Converts functional models from analysis into models that represent the solution Focused on technical issues Requires less user involvement than analysis Design may use structured or OO approaches Database can be relational, OO or hybrid User Interface issues Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
SDLC Phases with Design Phase Activities Figure 9-4 Design and Integrate Network Design the Application Architecture Design the User Interfaces Design the System Interfaces Design and Integrate the Database Prototype for Design Details Design and Integrate System Controls Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Project Coordination Project teams Information Team Communication Project schedule Information CASE Tools Team Communication Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Information Stored in the CASE Repository Figure 9-6 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Structured Approach to Designing the Application Architecture Application software programs Designed in conjunction with database and user interfaces Hierarchy of modules Documented with system flowcharts Design internal program logic Top-down approach DFDs with automation boundaries Structure charts Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Structured Design Models Figure 9-7 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Automation System Boundary Partitions data flow processes into manual and automated systems Processes can be inside or outside boundary Data flows can be inside and outside of boundary Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
DFD with Automation System Boundary Figure 9-8 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
System Flowchart Representation of various computer programs, files, databases, and associated manual processes Graphically describes organization of subsystems Can show type of system Batch Real time Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Common System Flow Chart Symbols Figure 9-9 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
System Flow Chart for RMO Figure 9-11 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Structure Chart Describes functions and subfunctions of each part of system Shows relationships between modules of a computer program Simple and direct method Each module performs a specific function Each layer in a program performs specific activities Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Structure Chart Symbols Figure 9-13 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Entire Payroll Program Structure Chart for Entire Payroll Program Figure 9-14 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Developing a Structure Chart Transaction Analysis System flow chart and event table inputs Upper-level modules developed first Identifies each transaction supported by program Transform Analysis Computer program ‘transforms’ inputs into outputs Structure charts have input, calculate, and output subtrees Uses DFD fragments for inputs Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Steps to Create a Structure Chart from a DFD Fragment Determine primary information flow Find process that represents most fundamental change from input to output Redraw DFD with inputs to the left and outputs to the right Generate first draft structure chart Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Steps to Create a Structure Chart from a DFD Fragment (Continued) Add other modules Input Data storage Output Add logic from structured English or decision tables Make final refinements Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
The Create New Order DFD Fragment Figure 9-17 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Exploded View of Create New Order DFD Figure 9-18 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Rearranged Create New Order DFD Figure 9-19 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
First Draft of the Structure Chart Figure 9-20 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Quality of Structure Chart Module coupling Measure of how module is connected to other modules in program Module cohesion Measure of internal strength of module Module performs one defined task Highly cohesive and loosely coupled modules are desirable Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Module Algorithm Design: Pseudocode Describes internal logic of software modules Variation of structured English that is closer to programming code Syntax should mirror development language Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
OO Approach to Design of Application Architecture OO analysis forms basis for OO design Structure must support OO programming Programs cooperate to perform tasks No one program module is ‘in-charge’ Consists of sets of computing objects Encapsulation and information hiding Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
OO Analysis Models to Design Models Figure 9-27 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Package diagrams Identifies major components of a system High-level diagram in UML Similar in function to flow chart Determines final program partitions Dependencies determined Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
RMO CSS Package Diagram Figure 9-28 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Design Class Diagrams Shows set of classes and their relationships Describes design components within the classes More complete than analysis versions of same diagrams Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Internal Symbols Used to Design a Design Class Figure 9-31a Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Internal Symbols for Design Class Figure 9-31b Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Design Class Diagram Development Choose single class from class diagram Elaborate the attributes Identify methods Elaborate methods with logic Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Short Form of the Order Design Class Figure 9-34 Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd
Finishing up OO Design Inheritance, overriding, and polymorphisms Integration with user-interface design, database design, and network design Systems Analysis and Design in a Changing World, 2nd Edition, Satzinger, Jackson, & Burd