lecture 6 data flow modeling
DESCRIPTION
Software Engineering. Lecture 6 Data Flow Modeling. Data Flow Model. Based on the notion that systems can be modelled as a set of interacting functions Uses data-flow diagrams (DFDs) to graphically represent the external entities, processes, data-flow, and data stores - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/1.jpg)
Software Engineering
Lecture 6
Data Flow Modeling
![Page 2: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/2.jpg)
2
Data Flow Model
Based on the notion that systems can be modelled as a set of interacting functions
Uses data-flow diagrams (DFDs) to graphically represent the external entities, processes, data-flow, and data stores
A graphical system model that shows all of the main requirements for an information system: inputs, outputs, processes and data storage
![Page 3: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/3.jpg)
3
Diagram Symbols
DFDs are composed of four main elements:
• Data flow• Process (bubble)• Data store• Terminators
Name(s)
#Name
Name
Name
![Page 4: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/4.jpg)
4
DFD Connections
customer request
Process
dataflow
data store
Key
![Page 5: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/5.jpg)
5
Example of Flows
Transform
Terminator
Data dictionary
Input Output
![Page 6: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/6.jpg)
6
The Terminator Symbol
• A Terminator is an external entity with which the program system communicates.• Typically, a terminator is a person or a group of people, an outside organization, or government agency.
Name
![Page 7: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/7.jpg)
7
Example of Terminators
Ministry of Education
UniversityInformation
System
Parents
student-enrollment-data
enrollment-datarequest- for-study-records
available-study-records
![Page 8: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/8.jpg)
8
Example: Library System
Libraryuser
Issue libraryitem
Library card
Requested item
Issued item
Libraryassistant
Return date
![Page 9: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/9.jpg)
9
Example: Library System
Libraryuser
Checkuser
Item database
Checkitem
Librarycard
User status
requesteditem
Issueitem
Itemstatus
issueditem
updateuser
details
UserID
ItemID
Update detailsitem details
Libraryassistant
return date
User database
update detailsuser details
![Page 10: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/10.jpg)
10
The data flow diagram for evaluating the arithmetic expression: (a + b) * (c + d) + f
Add1
Add2
Add3Multiply
a
b
c
d
fsum1
sum2
p res
Example: Simple Math Problem
![Page 11: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/11.jpg)
11
Data Flows
DivideRecords
SortRecords
study- records
qualified-student- records
failed-student- records GiveRecommendations
sorted- records
records-with-recommendations
Data flows are usually used together with processes; that is, they are used to connect processes, indicating that data items are moving from one process to another. For example,
![Page 12: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/12.jpg)
12
Important points about data flows
• A data flow should carry one type of information. Do not name a data flow as: student and professor and administrator.
• A data flow can carry a composite data item. For example, university-member, which may consists of the three components: student, teacher, and administrator.
• Data flows show directions.
![Page 13: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/13.jpg)
13
Flow Directions
FacultyOffice
UniversityStudentOffice
Professor
student- records
![Page 14: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/14.jpg)
14
Converging Data Flows
ProvideStudent
Data
ProvideProfessor
Data
ProvideAdministrator
Data
ClassifyData
student
professor
administrator
classified-data
![Page 15: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/15.jpg)
15
Data and Procedures
Data flows do not answer many procedural questions.
P
a
b
c
d
e
![Page 16: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/16.jpg)
16
Data Stores
A store describes a single or a set of data items.
For example, a file, database can be modeled as a store.
The graphical representation: one of the following representations can be used:
representation (a) only gives the name of the store, while (b) gives both the name and the number that is used to reference the store in a DFD involving many stores.
![Page 17: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/17.jpg)
17
Data Store Symbols
name
n name
(a)
(b)
![Page 18: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/18.jpg)
18
Store Connections
study- records
Professor FacultyOffice
students sorted- records
Stores are connected to processes by data flows. • A data flow to a store from a process: it means a writing or updating of the store.• A data flow from a store to a process: it means a read of the store by the process.
![Page 19: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/19.jpg)
19
Example DFD: Context level
0system SinkSource
Data Flow 6Data Flow 1
Data Flow 2
![Page 20: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/20.jpg)
20
Example: Lower Level DFD
Data Store
2Process
1Process
Data Flow 5
Data Flow 3
Data Flow 6
Data Flow 4
Data Flow 1
Data Flow 2
![Page 21: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/21.jpg)
21
DFD Creation
DataSource
Process
DataSink
Data store
Process
![Page 22: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/22.jpg)
22
Data Flows
A process is needed to exchange data flows between external data sources and sinks
A process is needed to update a data store
A process is needed to present data from a data store
A process is needed to move data from one data store to another
processSource sink
Data store
Data store
Data store
Data store
sink
Source process
process
process
![Page 23: Lecture 6 Data Flow Modeling](https://reader031.vdocuments.net/reader031/viewer/2022020422/56813280550346895d991bc4/html5/thumbnails/23.jpg)
23
Your Project Work
• Develop Analysis Document.
• Think about your system’s data flows and processes