18
Large Scale Systems Design Dr Dario Landa-Silva 1 University of Nottingham School of Computer Science Large Scale Systems Design G52LSS Lecture 14 – Process Modelling With DFDs Data Flow Diagrams Multi-Level DFDs Examples of DFDs Learning outcomes: describe the purpose of DFDs; interpret DFDs; understand multi-level DFDs; appreciate importance of DFDs to analyse and design information systems.

Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

1University of NottinghamSchool of Computer Science

Large Scale Systems DesignG52LSS

Lecture 14 – Process Modelling With DFDs

•Data Flow Diagrams•Multi-Level DFDs•Examples of DFDs

Learning outcomes: describe the purpose of DFDs; interpret DFDs;understand multi-level DFDs; appreciate importance of DFDs toanalyse and design information systems.

Page 2: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

2University of NottinghamSchool of Computer Science

Once system requirements are well defined:Process modelling and Data modelling

Process modelling aims to describe the logic for the flowof information in the system and is perhaps the mostimportant element of systems analysis and design.

Process models can be of two types:Logical process models – describe processes with nodetails about specific implementation.Physical process models – produced in the design phase,provide further information necessary to build thesystem.

Data Flow Diagrams

Page 3: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

3University of NottinghamSchool of Computer Science

Data Flow Diagram (DFD)• Structured analysis technique for constructing a graphical

representation of processes• Method to model the logic of data oriented systems• Simple diagram to model processes and represent flow of

information• Contains four elements: process, data flow, data store,

external entity

Advantages of DFDs• Freedom from committing to the technical implementation

too early• Understanding of the interrelationships of systems and

subsystems• Communicating current system knowledge to users• Analysis of the proposed system

Page 4: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

4University of NottinghamSchool of Computer Science

Process

Manual or computerised activity or function that isperformed for some specific business reason. A processalways denotes changes in data.

Represented as a rectangle with rounded corners.

Has a name (verb applied to noun), an identificationnumber and a description (simple statement).

Processes can create a child DFD. Complex processesmight require the use of process specification techniquessuch as structured English (pseudo-code), decision tablesor decision trees.

Page 5: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

5University of NottinghamSchool of Computer Science

Data Flow

Single piece of data or a logical collection of severalpieces of information.

Represented as an arrow and the direction of the arrowindicates destination of data.

Has a name (noun) and maybe a description (simplestatement).

Data flows hold processes together and one end of thedata flow will always come from or go to a process.

Simultaneous data flow is shown using parallel arrows.

Data flow joins and splits can occur in DFDs.

Page 6: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

6University of NottinghamSchool of Computer Science

Data Store

Collection of data stored in some way. Denotes long-termstorage.

Represented as a rectangle with an open right side. Thesame entity data store symbol can be used several timesfor clarity of the diagram.

Has a name (noun), an identification number and maybea description (simple statement).

Data stores are the basis for the data model and are thelink between the process model and the data model.

Must have at least one input data flow and at least oneoutput data flow.

Page 7: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

7University of NottinghamSchool of Computer Science

External Entity

Person, organisation, or system that is external to thesystem but interacts with it. Also known as source ordestination of data.

Represented as an square. The same entity symbol canbe used several times for clarity of the diagram.

Has a name (noun) and maybe a description (simplestatement).

People that are part of the system are not considered asexternal entities because if they execute a process, thenthey are part of the process (not external to the system).

Page 8: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

8University of NottinghamSchool of Computer Science

Example 14.1 The following is a DFD for the appointmentssystem in a surgery.

Page 9: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

9University of NottinghamSchool of Computer Science

The previous DFD can be interpreted as follows:

Patients can make, change and cancel appointmentsaccording to their preferences. The system maintains anupdated database of allocated and availableappointments.

Only the patient’s name is required for the system tocreate, change, or cancel appointments. However, fullinformation for each patient is also maintained up todate by the system according to the updates given by thepatients.

Page 10: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

10University of NottinghamSchool of Computer Science

The system also generates billing information based onappointments and payment information which isobtained from the patient’s insurance company. Theinsurance company receives the bill for each patient’sappointment to determine the patient’s paymentinformation. The system sends bill and paymentinformation to the patient.

The system also maintains an updated record of billingdetails. When management reports are required by thedoctor, the system generates these reports containingpatient, appointments and financial reports from thesystem’s databases.

Page 11: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

11University of NottinghamSchool of Computer Science

Most complex systems cannot be shown on a single DFD.Then, a hierarchy of data flow diagrams is required.

Lower level diagrams (child diagrams) show a portion ofan upper level diagram (parent diagram) in more detail.

A multi-level DFD has one context diagram, one Level 0DFD and perhaps one or more DFDs at Levels 1, 2, etc.

Balancing means that information presented at one levelof a DFD must be accurately represented in the nextlevel DFD.

Multi-Level DFDs

Page 12: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

12University of NottinghamSchool of Computer Science

Example 14.2 Illustration of a multi-level DFD.

Page 13: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

13University of NottinghamSchool of Computer Science

Important Issues in Multi-Level DFDs

Only one context diagram showing the overall businessprocess.

Only one Level 0 DFD with no more than 10 processes.

One Level 1 DFD for each process in the Level 0 DFD.

Correspondence between parent process and its childprocesses.

Correct numbering for better understanding.

Alternative data flows, data flow splits and data flowjoins might be shown.

Users and analysts should verify the correctness of aDFD.

Page 14: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

14University of NottinghamSchool of Computer Science

Example 14.3 Context diagram and Level 0 DFD for theappointments system in a surgery.

There are some inconsistenciesbetween the context and theLevel 0 DFD

Page 15: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

15University of NottinghamSchool of Computer Science

Example 14.3 (cont.) Level 0 and Level 1 DFDs for theappointments system in a surgery.

There are some inconsistenciesbetween the Level 0 and Level 1DFDs

Page 16: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

16University of NottinghamSchool of Computer Science

A state agent system (exercise D, Dennis et al. chapter 6). Peoplewho want to sell their houses sign a contract with the agent andprovide information on their house which is kept in a database.Some potential buyers have an interest on a specific house whileothers ask the agent to advise them in finding a house that meettheir needs. The estate agent prints the information about housesfrom the database and uses it to shows houses to the potentialbuyers.

Examples of DFDs

Estate AgentSystem

Seller Buyer

HouseInformation

SaleContract

HouseInformationRequest

BuyerInformationForm

HouseInformation

Page 17: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

17University of NottinghamSchool of Computer Science

SellerP1

Maintain HouseSeller InformationHouse

Information

SaleContract

DS1. Houses Listing File

House Sale Details

DS1. SaleContracts File

Sale ContractDetails

P2Generate

Request ReportBuyer

House InformationRequest

Buyer InformationForm

House Information

DS4. BuyersListing File

BuyerDetails

P3Find Candidate

House Sales

Sale ContractDetails

HouseInformation

Requested HouseInformation

Offered House RequestedHouseInformation

HouseInformation

Page 18: Large Scale Systems Design G52LSS - Nottinghampszjds/teaching/archive/G52LSSLecture... · 2007-12-14 · Large Scale Systems Design G52LSS ... details about specific implementation

Large Scale Systems DesignDr Dario Landa-Silva

18University of NottinghamSchool of Computer Science

Additional Reading

Chapter 6 of (Dennis et al., 2006)

Chapter 7 of (Kendall and Kendall, 2005)