Software Engineering: Analysis and Design - CSE3308

Slides:



Advertisements
Similar presentations
CAPE COMPUTER SCIENCE UNIT 2
Advertisements

Johnb DFDs and Design John Bell The DeMarco notation.
Alternative Approach to Systems Analysis Structured analysis
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
ACG 4401 Data Modeling: Data Flow Diagrams Flow Charts.
How to : Data Flow Diagrams (DFDs)
DATA FLOW DIAGRAM (PART 2)
1 Introduction to Data Flow Modelling The data flow approach to requirements determination in building a system for business use. This type of computer.
IMS1001 – Information Systems 1 CSE Information Systems 1
Jump to first page Chapter 2 System Analysis - Process Modeling.
CSE Software Engineering: Analysis and Design, 2005Lecture 4A.1 Software Engineering: Analysis and Design - CSE3308 Structured Analysis - Part 1.
PROCESS MODELING Transform Description. A model is a representation of reality. Just as a picture is worth a thousand words, most models are pictorial.
Modern Systems Analysis and Design
Structuring System Requirements: Process Modeling
Modern Systems Analysis and Design Third Edition
3.1 Topic 3 MODELLING IN INFORMATION SYSTEMS DEVELOPMENT; PROCESS MODELLING IMS Systems Analysis and Design.
DT211 Stage 2 Software Engineering
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.
Data Flow Diagram Notations
Process Modeling SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED. 1 Roberta M. Roth.
Data Flow Diagrams BCA Sem IV K.I.R.A.S.
Chapter 7 Structuring System Process Requirements
National Diploma in Systems Analysis and Design Data Flow Modelling.
Modeling Systems Requirements: Events and Things.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 6.1.
Data Flow Diagrams (DFDs)
Modeling the system the data flow diagram the context diagram level decomposition the cornucopia case portfolio project Systems Analysis and Design for.
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.
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.
Data Flow Diagrams A structured analysis technique that employs a set of visual representations of the data that moves through the organization, the paths.
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.
Week 5: Business Processes and Process Modeling MIS 2101: Management Information Systems.
 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
Chapter 3 Systems Documentation Techniques Copyright © 2012 Pearson Education, Inc. publishing as Prentice Hall 3-1.
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.
DFDs (Data Flow Diagrams). Data Flow Diagrams DFDs are a system modeling tool, the most popular and important representation in data flow modeling. DFDs.
Data Flow Diagrams (DFDs) 1Information Systems Engineering.
UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.
Data Flow Diagrams (DFDs)
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
section II Analysis Systems Analysis and Design
IS3320 Developing and Using Management Information Systems Lecture 18: Data-Flow Diagrams 3 – Level 1 Modelling Rob Gleasure
© 2005 by Prentice Hall Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
DATA FLOW DIAGRAMS.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Using Dataflow Diagrams Systems Analysis and Design, 8e Kendall & Kendall 7.
© 2006 Prentice Hall Business Publishing Accounting Information Systems, 10/e Romney/Steinbart1 of 37 C System Process Modeling DATA Flow Diagrams.
Chapter 6 Structuring System Requirements: Process Modeling
DFD(Data Flow Diagram)
Process Modeling Graphically represent the processes that capture, manipulate, store, and distribute data between a system and its environment Models DFDs.
Modern Systems Analysis and Design Third Edition
UML Use Case Diagrams.
DATA FLOW DIAGRAM (PART 2)
DATA FLOW DIAGRAM PART 2.
UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.
Modern Systems Analysis and Design Third Edition
Modern Systems Analysis and Design Third Edition
Presentation transcript:

Software Engineering: Analysis and Design - CSE3308 CSE3308/DMS/2001/4 Monash University - School of Computer Science and Software Engineering Software Engineering: Analysis and Design - CSE3308 Structured Analysis - Part 1

Lecture Outline History of Structured Analysis Context Diagrams Event Lists Data Flow Diagrams Control Flows and Processes Levelled Data Flow Diagrams

History of Structured Analysis (SA) First texts appeared in 1977 Tom de Marco - Structured Analysis and System Specification Gane and Sarson - Structured Systems Analysis 1984 - SA is extended McMenamin and Palmer - Essential Structured Analysis 1988 - SA reaches its peak Yourdon publishes Modern Structured Analysis Integrates Chen’s Entity-Relationship Models 1991 Yourdon moves to Object-Oriented Analysis 1995 38% of organisations used SA

Context Diagrams Indicate the people, organisations and systems which communicate with our system Show the data which our system receives from the outside world Show the data produced by the system and sent to the outside world Show the data which is shared by the system with the outside world Show the boundary between the system and the rest of the world

Constructing a Context Diagram 4 components The System External Entities also know as terminators Data Flows Data Stores Airline Booking System Customer reservation Flights

Airline Reservation System Customer Airline Request for reservation Flight confirmation Flight details Request for reservation Airline Reservation System Credit Card Data Credit details Reports Transaction details Management Finance System

Guidelines for Context Diagrams Yes No Use appropriate names Don’t be too specific with names Customer Fred Flintstone Ready to send input Order Entry System Customer Okay, send input Here’s the input Great, I got the input

Guidelines (2) Can have Dialogue Flows representing two-way data flow Flight status response Credit check request Finance System Airline Reservation System Customer Credit check response Flight status request Duplicate terminators if necessary to simplify the diagram

Student Enrolment System Terminators Student University Management University Staff Data Stores Student Results Data Flows (7) reports to management, enrolment details from student, confirmation of enrolment to student, payment details from staff, student lists to staff, student results from staff to Student Results database, student results from Student Results database to system

Your answer?

Event Lists List of the external events that occur in the outside world which affect the system, i.e. events generated by terminators Events can be Flow - some data flows between the external world and the system Temporal - an event occurs as a result of some timing Control - special case of a temporal event, an external stimulus that occurs at some unpredictable point in time Events are always viewed from the external entities’ point of view

Event examples Customer places reservation (Flow) Customer cancels reservation (Flow) Accounting System receives transaction details (Flow) Management requests weekly report (Temporal) Airline confirms reservation (Temporal) Credit card to be verified (Control)

Constructing the Event List Examine each terminator in turn Decide whether it generates a single event or possibly multiple events Customer places order Can be Customer places order and Salesperson places order Need to allow for failure conditions on the part of the terminator, but no need to allow for system failures

Events Look at a system which controls the sales of goods at a supermarket Entities to think about Cash register Checkout Operator Customer Scanner Receipt printer What events can you identify?

Your answer?

Data Flow Diagrams Extends the Context Diagram by defining the processes which make up a system 4 components Processes Name - what the process does Part of system which transforms inputs to outputs Data Stores As in context diagrams Terminators

Data Flows Indicate movement of packets of information from one part of the system to another part Flows are named Input flow Output flow Diverging flows Validate Phone No. Phone No. Flight Schedule Information Generate Flight Schedule

Diverging Data Flows Order Customer Address Produce Valid Order Validate postcode Generate Shipping Docs Invalid orders postcode phone no. Order details Validate phone no. street address Update Inventory Generate Invoice Validate street address

Typical Data Flow Diagram Customers Warehouse Orders invalid orders shipping details order details orders 1. Receive Order books 2. Ship Books name, address billing information Customers name, address Invoices books name, address 3. Collect Payment name, invoice details Customers invoices, statements

An example For the checkout operator example What are the terminators? What are the main processes? What are the main data flows? Draw a data flow diagram to put the above elements together

Your elements

Your DFD

Guidelines for constructing DFDs Choose meaningful names Number the processes Redraw the DFD as many times as necessary for aesthetics Avoid overly complex DFDs Fit on one A4 page approximately 6 processes and related data stores and terminators

Guidelines (2) Make sure the DFD is internally consistent and consistent with any associated DFDs Avoid infinite sinks - processes with inputs but no outputs Avoid spontaneous generation processes - processes with outputs but no inputs (Possible exception is a random number generator) Beware of unlabelled flows and processes Beware read-only/write-only stores

Control Flows and Processes Real-time systems need a means to model control (signals/interrupts) Shown with dotted lines and circles Control flows can be regarded as a binary signal Used to trigger/wake-up a dormant process Internal behaviour of a control process described by a state-transition diagram Generally one control process in a DFD

Example Process Satellite Data satellite data satellite signal Control Surveillance System enable satellite processing Surveillance data radar signal enable radar processing Process Radar Data radar data

Doom Example Game Details Control Game start playing start administrating Play Game Administer Game Game Details

Leveled DFDs Most systems are far too complex to depict on one DFD

Leveled DFDs (2) Break each process down into sub-processes

Guidelines for Levelled DFDs How many levels? Each level should have approximately 6 processes Simple systems: 2-3 levels Medium size: 3-6 levels Large size: 5-8 levels All parts of the system may not need the same numbers of levels Levels must be consistent with each other 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

Balanced DFDs

An Unbalanced DFD

Data Stores and Leveled DFDs Show the data store at all relevant levels