CSE3308 - Software Engineering: Analysis and Design, 2005Lecture 4A.1 Software Engineering: Analysis and Design - CSE3308 Structured Analysis - Part 1.

Slides:



Advertisements
Similar presentations
CAPE INFORMATION TECHNOLOGY – Unit 2
Advertisements

Johnb DFDs and Design John Bell The DeMarco notation.
Alternative Approach to Systems Analysis Structured analysis
SYSTEMS ANALYSIS AND DESIGN TOOLS
IFS310: Week 3 BIS310: Structured Analysis and Design 5/4/2015 Process Modeling and Data Flow Diagrams.
Chapter 7 Structuring System Process Requirements
Chapter 7 Structuring System Process Requirements
Using Dataflow Diagrams
© 2005 by Prentice Hall 7-1 Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey.
Chapter 7 Structuring System Process Requirements
Chapter 7 Structuring System Process Requirements
ACG 4401 Data Modeling: Data Flow Diagrams Flow Charts.
How to : Data Flow Diagrams (DFDs)
DATA FLOW DIAGRAM (PART 2)
Data Flow Diagrams Levelling Them; Process Modelling Using Function Decomposition CSE Information Systems 1.
Jump to first page Chapter 2 System Analysis - Process Modeling.
Software Engineering: Analysis and Design - CSE3308
Chapter 7 Using Data Flow Diagrams
Modern Systems Analysis and Design
Structuring System Requirements: Process Modeling
Section 04DFD - Top Level1 04 Data Flow Diagrams - Top Level DFD And Franchise Colleges By MANSHA NAWAZ.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Use cases: deciding what you want.
Process Modelling Using Data Flow Diagrams - Building and Levelling Them; Process Modelling Using Function Decomposition CSE Information Systems.
Chapter 7 Structuring System Process Requirements
National Diploma in Systems Analysis and Design Data Flow Modelling.
staffs.ac.uk Process Model. staffs.ac.uk Contents Provide definitions Explain the components and representations Introduce a step.
Data Flow Diagrams (DFDs)
Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Sixth Edition.
Chapter 1: Data Flow Diagram Structuring System Process Requirements
Data flow diagrams.
Data Flow Diagrams (DFDs). Data flow diagram (DFD) is a picture of the movement of data between external entities and the processes and data stores within.
Structuring System Process Requirements. Learning Objectives Understand the logical modeling of processes by studying examples of data flow diagrams (DFDs).
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 6.1.
Data and Process Modeling
IT323 - Software Engineering 2 Tutorial 1. 0 The system 1.0 A Function 1.1 Activity of the function Task Task Task 1.2 Another activity.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
1 Lecture 3: Introducing Data Flow Diagrams (DFDs) Section 1 - The Concept of Diagrams Why use Diagrams? Diagrams as Working Documents Systems Analysis.
Lecture 6 Data Flow Modeling
Data-Flow Diagrams Week 10 Lecture 1. Data Flow Diagrams (DFDs) One of most important modelling tools used by system analysts In use since late 1970’s.
The Structured Specification. Why a Structured Specification? System analyst communicates the user requirements to the designer with a document called.
 During systems development both processes and data must be modeled ◦ Data modeling describes data used by system ◦ Process modeling describes processes.
Chapter 7 Structuring System Process Requirements
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Essentials of Systems Analysis and Design Fourth Edition Joseph S. Valacich Joey F.
Computer System Analysis Chapter 8 Structuring System Requirements: Process Modeling Dr. Sana’a Wafa Al-Sayegh 1 st quadmaster University of Palestine.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 8 Structuring.
Chapter 7 Structuring System Process Requirements
Chapter 3 Systems Documentation Techniques Copyright © 2012 Pearson Education, Inc. publishing as Prentice Hall 3-1.
Chapter 7 Using Data Flow Diagrams
System Analysis System Analysis - Mr. Ahmad Al-Ghoul System Analysis and Design.
AN INTRODUCTION BUSINESS PROCESS DOCUMENTATION WITH DATA FLOW DIAGRAMS.
SAD - DFD Context Diagrams
DFDs.
System Analysis: Case Study. System Analysis Overview It is one of the most important phases of the whole system development. Generally, the whole process.
1 14/08/00Arcot Sowmya Software Engineering COMP3111/COMP9008 Data Flow Diagrams.
SYSTEMS ANALYSIS AND DESIGN TOOLS DATA FLOW DIAGRAMS.
Data Flow Diagrams (DFDs) 1Information Systems Engineering.
Data Flow Diagrams (DFDs)
Modern Systems Analysis and Design Fifth Edition
Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
Systems Analysis and Design 8th Edition
Data Flow Diagram, Data Dictionary, and Process Specification PART I
© 2005 by Prentice Hall Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Sixth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
DATA FLOW DIAGRAMS.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Using Dataflow Diagrams Systems Analysis and Design, 8e Kendall & Kendall 7.
MIS 360: System Analysis and Design Dr. Qasem Al-Radaideh Department of Computer Information Systems Faculty of Information Technology Yarmouk University.
7-1 Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition.
Chapter 6 Structuring System Requirements: Process Modeling
Process Modeling Graphically represent the processes that capture, manipulate, store, and distribute data between a system and its environment Models DFDs.
Chapter 6 Structuring System Requirements: Process Modeling
Presentation transcript:

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.1 Software Engineering: Analysis and Design - CSE3308 Structured Analysis - Part 1 CSE3308/DMS/2005/10 Monash University - School of Computer Science and Software Engineering

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.2 Lecture Outline u History of Structured Analysis u Context Diagrams u Event Lists u Data Flow Diagrams u Control Flows and Processes u Levelled Data Flow Diagrams

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.3 History of Structured Analysis (SA) u First texts appeared in 1977 v Tom de Marco - Structured Analysis and System Specification v Gane and Sarson - Structured Systems Analysis u SA is extended v McMenamin and Palmer - Essential Structured Analysis u SA reaches its peak v Yourdon publishes Modern Structured Analysis v Integrates Chen’s Entity-Relationship Models u 1991 Yourdon moves to Object-Oriented Analysis u % of organisations used SA vSince much — if not most — expenditure of software organizations is on maintenance, there is still a lot of work being done on systems produced using SA, and coded in languages such as Fortran, COBOL and C

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.4 Context Diagrams u Indicate the people, organisations and systems which communicate with our system u Show the data which our system receives from the outside world u Show the data produced by the system and sent to the outside world u Show the data which is shared by the system with the outside world u Show the boundary between the system and the rest of the world

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.5 ( or ) Constructing a Context Diagram u Four components vThe System vTerminators » also know as external entities vData Flows vData Stores Students

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.6 CD for Student Enrolment System

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.7 Guidelines for Context Diagrams u Use appropriate names u Don’t be too specific with names Student Fred Flintstone YesNo Student Enrolment System Ready to send input Okay, send input Here’s the input Great, I got the input

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.8 Guidelines (2) u Can have Dialogue Flows representing two- way data flow Student Enrolment System Finance System Check fees paid fees check response u Duplicate terminators if necessary to simplify the diagram

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.9 Event Lists u List of the external events that occur in the outside world which affect the system, i.e. events generated by terminators u Events can be v Flow - some data flows between the external world and the system v Temporal - an event occurs as a result of some timing v Control - special case of a temporal event, an external stimulus that occurs at some unpredictable point in time u Events are always viewed from the terminator’s point of view

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.10 Event examples u Student enrolls in subject (Flow) u Administrator creates subject (Flow) u Administrator receives student transcript (Flow) u Subject creation is disabled because semester starts in one month (Temporal) vThere is no control event in this list since they are unusual in business systems. They are, however, common in real-time systems (see slide 4A.23)

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.11 Constructing the Event List u Examine each terminator, and ask what effects the terminator’s actions can have on the system u Take care to distinguish between separate events coincidently “packaged” together in the requirements specification vEvent “Customer places order” might in fact be both “Customer places order” and “Salesperson places customer order” »Clue could be different data present in the two cases u Need to allow for failure conditions on the part of the terminator, but no need to allow for system failures

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.12 Events u Look at a system which controls the sales of goods at a supermarket u Entities to think about vCash register vCheckout Operator vCustomer vScanner vReceipt printer u What events can you identify?

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.13 Your answer?

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.14 Data Flow Diagrams u Extends the Context Diagram by defining the processes which make up a system u 4 components vProcesses »A process is a part of the system that transforms inputs to outputs. It has: n Number - identifies process and indicates place in DFD level hierarchy n Name - what the process does vData Flows vData Stores vTerminators as in Context Diagram }

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.15 u Indicate movement of packets of information from one part of the system to another part u Flows are named vInput flow vOutput flow vDiverging flows - see next slide Data Flows Validate Phone No. Phone No. Generate Flight Schedule Flight Schedule Information

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.16 Diverging Data Flows Validate postcode Validate phone no. Validate street address personal-details postcode phone no. street address Produce Valid Order Generate Invoice Update Inventory Generate Shipping Docs Order Invalid orders Order details

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.17 Typical Figure 0 DFD Note: some analysts do not show terminators on the Figure 0 DFD Note: some flows may be physical, such as the student-transcript

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.18 An example u For the checkout operator example vWhat are the terminators? vWhat are the main processes? vWhat are the main data flows? u Draw a data flow diagram to put the above elements together

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.19 Your elements

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.20 Your DFD

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.21 Guidelines for constructing DFDs u Choose meaningful names u Number the processes u Redraw the DFD as many times as necessary for aesthetics u Avoid overly complex DFDs v Fit on one A4 page v approximately 6-7 processes and related data stores and terminators

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.22 Guidelines (2) u Make sure the DFD is internally consistent and consistent with any associated DFDs v Avoid infinite sinks - processes with inputs but no outputs v Avoid spontaneous generation processes - processes with outputs but no inputs (possible exception is a random number generator) v Beware of unlabelled flows and processes v Beware read-only/write-only stores v Make sure that incoming and outgoing flows from the DFD match those on the DFD at the level above

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.23 Control Flows and Processes u Real-time systems need a means to model control (signals/interrupts) u Shown with dashed lines and circles u A control flow can be regarded as a binary signal - does not carry value-bearing data u Used to trigger/wake-up a dormant process u Internal behaviour of a control process described by a state-transition diagram u Generally one control process in a DFD u inputs and outputs of control process consist only of control flows

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.24 Example Control Surveillance System Process Radar Data Process Satellite Data Surveillance data radar data satellite data enable satellite processing enable radar processing satellite signal radar signal

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.25 Action Game Example Administer Game Play Game Game Details Control Game start administrating start playing enter administration mode enter play mode

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.26 Levelled DFDs u Most systems are far too complex to depict on one DFD

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.27 Levelled DFDs (2) u Break each process down into sub-processes u Numbering of processes indicates their parents process, and thus their position in the hierarchy of levelled DFDs

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.28 Guidelines for Levelled DFDs u How many levels? v Each level should have approximately 6 processes v Simple systems: 2-3 levels v Medium size: 3-6 levels v Large size: 5-8 levels u All parts of the system may not need the same numbers of levels u Levels must be consistent with each other v Data flows coming into and going out of a process at one level must correspond to the data flows coming into and out of the entire figure at the next lower level - this is known as balancing

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.29 Balanced DFDs

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.30 Unbalanced DFDs Can you see the problems?

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.31 Data Stores and Levelled DFDs Show datastores at every level at which they are used

CSE Software Engineering: Analysis and Design, 2005Lecture 4A.32 References u Yourdon, E., Modern Structured Analysis, Prentice Hall, vThere is now a condensed edition, called Just Enough Structured Analysis, available online via the Resources page on the unit web site.