Systems Analysis and Design Alan Dennis, Barbara Haley Wixom, and Roberta Roth John Wiley & Sons, Inc. Slides by Candace S. Garrod Red Rocks Community College Modified by Yusuf Altunel To be presented in CSE 440 Systems Analysis and Design İKU Department of Computer Engineering PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Program Design Chapter 11 PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Moving from Logical to Physical Process Designing Programs Chapter Outline Moving from Logical to Physical Process Designing Programs Structure Chart Program Specification PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Key Definitions Program design The top-down, modular approach creating instructions for the programmers The top-down, modular approach begin with the “big picture” and gradually add details Program design document all structure charts and specifications needed by programmers to implement the system PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
MOVING FROM LOGICAL TO PHYSICAL PROCESS MODELS Analysis phase focus on logical processes and data flows avoid from making implementation decisions Design phase create physical process models Physical process models show implementation details explain how final system works To convey: Götürmek, taşımak PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
The Physical Data Flow Diagram The physical DFD contains the same components as the logical DFD data stores data flows external entities processes and the same rules apply balancing decomposition Differences Pyhsical DFD contains additional details Describe how the system will be built There are five steps to make the transition to the physical DFD PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Steps of Creating Physical DFD Add implementation references Data stores will refer to files and/or database tables Processes Corresponds to programs or human actions Data flows translated to physical medium for the data paper reports, bar code scanning, input screens, computer reports Draw a human-machine boundary To differentiate human and computer interactions draw a line to separate human action from automated processes PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Steps of Creating Physical DFD Add implementation specific components Data stores, data flows, processes Reasons to add Limitations: Example: store old customers in different file/table Audit: Keep user actions in a data store Control: Example: Keep canceled records in different data store instead of deletion Exception handling: Add processes to deal with unexpected cases Update data elements in Data flows New elements might be added to audit : add ‘last_update’, ‘updated_by’ system generated numbers and ID’s Update repository references Audit: Denetim PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Steps to Create the Physical Data Flow Diagram PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
The Physical Data Flow Diagram (The How) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
CD Selections PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
CD Selections PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
DESIGNING PROGRAMS PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
System quality is enhanced Program design document is Designing Programs Resist temptation to write code too quickly System quality is enhanced with top-down, modular design Program design document is the final deliverable for this task PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Using a Top-Down Modular Approach PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
STRUCTURE CHART PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Important program design technique Shows all components of code The Structure Chart Important program design technique Shows all components of code in a hierarchical format Components Sequence Selection Iteration PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Structure Chart Example PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Structure Chart Elements (1) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Structure Chart Elements (2) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Building the Structure Chart Processes in the DFD tend to represent one module on the structure chart Afferent processes provide inputs to system Central processes perform critical system operations Efferent processes handle system outputs The DFD leveling can correspond to the structure chart hierarchy Afferent: İçeri alan Efferent: Dışarı götüren PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Steps in Building the Structure Chart 1. Identify top level modules decompose them into lower levels 2. Add control connections 3. Add couples 4. Review and revise again and again until complete PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
CD Selections PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
CD Selections PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
CD Selections PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Design Guidelines High quality structure charts result in programs modular reusable and easy to implement Measures include Cohesion A module should perform only one task Guideline: Build modules with high cohesion Coupling Modules must be independent from each other Guideline: Build loosely coupled modules fan-in The number of subordinate modules that calls a module Guideline: Create high fan-in fan-out The number of subordinate modules that a module calls Guideline: Avoid high fan-out PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Types of Cohesion (GPA = grade point average) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Types of Cohesion (GPA / Continous) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Cohesion Decision Tree (Adopted From Page-Jones, 1980) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Process of dealing with “low” cohesion Factoring Process of dealing with “low” cohesion Separates tasks into different modules Reduces use of control flags PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Types of Coupling (1/2) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Types of Coupling (2/2) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
High Fan-in Example High Fan-in PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Low Fan-in Example Low Fan-in PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
High Fan-out Example High Fan-out PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Low Fan-out Example Low Fan-out PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Quality Checklist 1. Library modules have been created wherever possible 2. The diagram has a high fan-in structure 3. Control modules have no more than 7 subordinates 4. Each module performs only one function (high cohesion) 5. Modules sparingly share information (loose coupling) 6. Data couples that are passed are actually used by the accepting module 7. Control couples are passed from “low to high” 8. Each module has a reasonable amount of code associated with it PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
PROGRAM SPECIFICATION PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Program Specifications Content No standard approach Include program information Note events that trigger actions List inputs and outputs Include pseudocode Present additional notes and comments PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Program Specification Form PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Pseudocode Example PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Process Description – Analysis Phase PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Process Description – Design Phase PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
CD Selections PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Decision Tables Decision tables provide a way They are used to to examine, describe, and document decisions using a table They are used to Describe the conditions Identify possible decision alternatives Indicate actions should be performed Describe actions PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Policy for customer checkout Rules Conditions and Actions 1 2 3 4 Under $50 000 Y N Pays by check with two forms of ID Uses credit card Ring up sale X Look up credit card in book Call supervisor for approval Call bank for credit card authorization Rule 3: IF N (total sale is no under $50 000) AND Y (the customer paid by check and had two forms of ID) AND N (the customer did not use a credit card) THEN X (call the supervisor for approval) PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Decision trees are used when complex branching occurs in a structured decision process Trees are also useful when it is essential to keep a string of decisions in a particular sequence PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Decision Tree Example 3 4 1 2 7 8 5 6 11 2 9 10 14 1 12 13 15 No Yes Assign seats Issue tickets 3 4 Check on ideal Price seat for preferred date and location Issue tickets Available Assign seats 1 2 7 8 Check on Alternate Seat location Check on ideal price seat for next choice of dates and location Available Not Available 5 6 11 2 Is another date given? Lower price by One category Not Available Yes 9 10 14 1 Is this the lowest price? No No 12 13 Print “unable to fill request” Yes 15 PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Summary The structure chart shows all of the functional components needed in the program at a high level. Components of the structure chart show sequence, selection, and iteration Follow design guidelines regarding cohesion, coupling, and fan-in/fan-out. Prepare detailed specifications to programmers including pseudocode to show important programming structures. PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
Copyright © 2006 John Wiley & Sons, Inc. All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without the express written permission of the copyright owner is unlawful. Request for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc. The purchaser may make back-up copies for his/her own use only and not for redistribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages, caused by the use of these programs or from the use of the information contained herein. PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.