Faculty of Computer
Science
Fundamentals of Database
Systems
(Database I)
Lecturer: M.W Stanikzai
Fundamentals of Database
Systems
Lecture 05
Database Development Process
Fundamentals of Database
Systems
Lecture’s Overview
Fundamentals of Database
Systems
• Database Development Process
• How to develop a DB for any System?
Some DB books are not talking about the DB Development
Process, because it is itself a big topic which has its own subject
( SW Engineering )
Fundamentals of Database
Systems
Database Development
Process
Fundamentals of Database
Systems
Fundamentals of Database
Systems
• Preliminary Study:
Understanding the system that we are developing
Without understanding a system, it’s functionality there is no question to
develop a system
Fundamentals of Database
Systems
• Requirement Analysis:
Once we have understood the working of a system then we ask our users/
customers what output do you need from it?
what are their expectations?
And after knowing their Requirements we analyze it
Fundamentals of Database
Systems
• DB Design:
Designing a DB with the help of user requirements
Our course will emphasis on this topic
• A DB Design is a model of a particular real-world system
Fundamentals of Database
Systems
• Physical Design:
Implementing a DB Design on a particular DBMS
Fundamentals of Database
Systems
• Implementation:
Writing Application programs, because we have already design our DB, we
have design it physically by choosing a particular DBMS
• For organization the Application Programs that are running, are important.
• Note: End users don’t concern with the design of a DB
The DB design is only the concern of the DB Designer
Fundamentals of Database
Systems
• Maintenance:
Every system needs maintenance, it means observing it’s day to day working
This is the function of a DBA
Fundamentals of Database
Systems
Preliminary Study/
Analyze Existing
System
Fundamentals of Database
Systems
• 1st phase of our DB Development process
• Existing System: a system that we are going to computerize it, to
create a DB for it like: a DB System for a Bank
• Objective: To understand the working of existing system
Fundamentals of Database
Systems
Tool Used in
Preliminary Study
Fundamentals of Database
Systems
Tool Used in Preliminary Study
• Data Flow Diagrams
Graphically describe Flow of data/Functionality of our
existing system
Discuss the working of a system with the user of a system
Because it is important that the Developer and Customer should
agree on the System.
Fundamentals of Database
Systems
DFD Advantages
• It gives you a discussion point, on the basis of which you
discuss your understanding with the user of that system
• It will understand the working of a System to a new
Employee too.
Fundamentals of Database
Systems
Data Flow Diagrams
(DFDs)
Fundamentals of Database
Systems
Data Flow Diagrams (DFDs)
• Represent the flow of data between different
processes/activities within a system
Fundamentals of Database
Systems
Data Flow Diagrams (DFDs)
Every system performs different activities/processes
like in a Bank System: opening an account, adding money etc are
different processes involved in a Banking System
DFD shows that which processes are involved in a System?
Who is performing each process?
And how the data Flows in these processes?
Fundamentals of Database
Systems
Data Flow Diagrams (DFDs)
• Simple, not focusing on details
• To describe, what users do, rather than what
computers do
Fundamentals of Database
Systems
DFD Symbols
Fundamentals of Database
Systems
DFD Symbols
Data flows:
• Pipelines through which packets of information flow.
• The Head of arrow shows the direction of data
Fundamentals of Database
Systems
DFD Symbols
Data Store:
• Repositories/Collection of data in system
• Data held for processing
Fundamentals of Database
Systems
DFD Symbols
Process:
• Transforms incoming data flow into outgoing data
flow
• Any activity which change the form of data
OR
Fundamentals of Database
Systems
DFD Symbols
Numbered:
• (Every process should have a Number with Process Name)
1.0 1.0
Process OR Process
Fundamentals of Database
Systems
DFD Symbols
External Entities:
• Sources & destinations for data
Normally it generates data or accept data
• Outside the system
(It doesn’t mean entities outside of our system)
Fundamentals of Database
Systems
Types of DFD
Fundamentals of Database
Systems
Types of DFD
• Context diagram
• Level 0 diagram
• Detailed diagram
Fundamentals of Database
Systems
Context Diagram
Fundamentals of Database
Systems
Context Diagram
• Consists of single Process/System
Shows the system as a whole + its interaction with the external entities
• No Data Stores
• Represents the system/process being analyzed
Fundamentals of Database
Systems
Context Diagram
• No flows between external entities
• when we are developing a Context Diagram, we will not show any
Data flow between the External Entities themselves
• every External Entity will interact only with the System, & not
between External Entities
Fundamentals of Database
Systems
1 st Example
Fundamentals of Database
Systems
Fundamentals of Database
Systems
Context Diagram
• Purchasing system Symbol is the symbol of a Process, that has to be develop
• 3 different Entities are involved here (Supplier, MPD & RD)
Note: Anything that provides data to the System or Receives the data from the System is
considered as an External Entity
• We also see the Flow of Data (Every External Entity provides data into System or
Receives Data from it)
Fundamentals of Database
Systems
Context Diagram
• 1. For Example: External Entity (Supplier) provides an Invoice,
System order to Supplier & System also generate Payment to
Supplier
Fundamentals of Database
Systems
Context Diagram
• 2. Receiving Dept:
• This Department gives the Confirmation of Receipt to Purchasing
System (Supplier supplies items to the Receiving Department) & then the
Purchasing System will issue the payment to the Supplier
• 3. Material Planning Dept:
• Purchasing System starts activities from this Department
• This Department receives requirements from different Departments
& sends the Requirements to the Purchasing System
Fundamentals of Database
Systems
2 nd Example
Fundamentals of Database
Systems
Fundamentals of Database
Systems
Context Diagram
• Admission System of an University
• It has 4 External Entities having interaction with a System/Process
(Dean, Faculty Members, Registrar, Student)
• Dean Entity:
• Needs Faculty load sheets from Admission System
• Also this Entity requires Class Counts (No of Students in a Class)
Fundamentals of Database
Systems
Context Diagram
• Faculty Member Entity:
• Needs Class Lists from Admission System
• Registrar Entity:
• Gives Courses Offered information to Admission System
• Registrar will also provide the Students Data to Admission System
Fundamentals of Database
Systems
Context Diagram
• Student Entity:
• Will request from Admission System to Enroll them in a Class
• And Admission System will pass Schedule to Students
• So the basic purpose of CONTEXT DIAGRAM is to
show the interaction of a System to its External
Entities
Fundamentals of Database
Systems
Level 0 Diagram
Fundamentals of Database
Systems
Level 0 Diagram
• It represents the working of Entire System
• Without Level 0 Diagram there is no DFD (you may avoid
the context & detail diagrams)
Fundamentals of Database
Systems
Fundamentals of Database
Systems
How to design a Level 0 Diagram?
• 1st identify different Modules/Processes for Level 0 Diagram
• Then Draw the Entities, Data Stores, Link Processes
• Give Process Number to each Process (ex: 1.0, 2.0 …)
• Label all Data Flows