09 April, 2019


Previously we focused on what are the basic concepts of DBMS to get a normal idea about the subject.

In this session let’s talk about how to create a database system and what do we need to know, in order to create a DBMS from scratch.

Successful completion of a DBMS requires that the programmers and designer consult with everyone involved in the operation of the system to determine specifically how it will be used.

This will play a key role in determining the nature of the programming and how data will be stored and retrieved. The types of data used will need to be taken into consideration, as will the storage limits and any other types of constraints or restrictions that the programmers must meet.

 For instance, a simple client database serves as data management and reporting application, whereas other types, such as a medical records database, may use more complicated relationships to define data. In these types of models, the relationship between data is defined by common characteristics or core values.


Once you have an idea of how the database will be used and any limitations and specifications that need to be adhered to, you can then begin developing a data storage and retrieval model. Various models exist for the creation of a DBMS, so you will need to consult with programmers to determine which model best suits the needs of your company.

The model you use will determine the logic used by the system to store and retrieve information. Logic is the sequence of steps the database goes through to handle the information; it is the "if, then" function of the DBMS. For instance, databases utilizing a network model allow the user to access data using several paths or relationships, whereas a hierarchical model is less flexible and defines data in terms of simple relationships.

Whichever model you choose, (waterfall, spiral etc..)  it needs to be simple to understand for users, and it needs to be flexible enough that you can change it or adapt it to new systems later on.


·        Requirement gathering and analysis

·        Conceptual database design

·        Logical database design

·        Schema refinement

·        Physical database design

 Security design