DATABASE DESIGN AND ANALYSIS Flashcards
What is the software crisis and how did it manifest itself?
The difficulty of writing useful and efficient computer
software within the required time
The software crisis manifested itself in several ways: – Projects running over-budget – Projects running over-time – Software was very inefficient – Software was of low quality – Software did not meet requirements – Projects were unmanageable and difficult to maintain – Software was never delivered
What is the DSDLC?
Database Systems Development Lifecycle (DSDLC) is a structured approach o creating databases. Created in response to the software crisis
What are the DSDLC stages?
Database planning system definition Requirements Collection & Analysis Database design DBMS Selection Application design Prototyping Implementation Data conversion and loading Testing Operational excellence
Describe database planning
This stage of the DSDLC involves planning how all the subsequent stages of the lifecycle can be realized most efficiently and effectively
You need to analyze the enterprise in order to identify its mission. Get the mission statement
In the database planning stage, you need
to ensure that each mission objective should identify a particular task that the database system must support. Eg to maintain data on staff
Describe system definition
describes the scope and boundaries of the database
system and the major user views
User views in this case define what is required of a database system from the perspective of a particular job role( eg CEO’s and middle management require different views) or from the perspective of an enterprise application area (e.g. marketing, finance)
Describe Requirements Collection & Analysis stage
In this third step, fact-finding techniques are used to gather the following information about each user view
identified in step 2:
-Data types to be used
-The details of how data is to be used or generated
– Any additional requirements
The details are then documented separately for each view in a document known as the requirements specifications which are then combined at the end for all views
Describe database design stage
Database design is made up of 3 main phases:
– Conceptual database design – the process of
constructing a simple model of the data used
in an enterprise, independent of all physical
considerations
– Logical database design – the process of
constructing a model of the data (and
specifying the respective data types) used in
an enterprise based on a specific data model,
but still independent of a particular DBMS and
other physical considerations. ERDs are used at this stage
– Physical database design – this describes how
the logical database design is supposed to be
physically implemented (dependent on the
DBMS). The integrity constraints are also
specified dependent on the DBMS.
Describe DBMS selection
• It involves shortlisting about 3 DBMSs from all
the possible DBMSs that can lead to the
successful implementation of the database
• The shortlisted DBMSs are then evaluated
based on the features that the enterprise
needs
Eg Data definition, Accessibility, Physical definition, utilities, upgradability etc
Describe application design
• This stage therefore involves the following:
– Specifying how the user requirements will be
implemented in the database application program
– Designing an appropriate user interface to
access the DBS through the database application program
Describe prototyping
By having a prototype of the database, your
clients are able to identify features of the
database that will work well or that are
inadequate
Through this identification, your clients are
able to provide you with valuable feedback
Describe implementation stage
The implementation stage follows the design
of the database
• It involves the realization of the actual
database based on all the prior stages of the
DSDLC
• Similar to prototyping, implementation will
also use DDL to create final version of the
database’s structure
Describe data conversion and loading
involves transferring any existing data into the new database and converting any existing applications to run on the new database
• Only required when new database system is
replacing an old system
Describe testing stage
The aim of testing is not to demonstrate that there are no errors
• Proper testing should identify all the errors that are present in the design and structure of the database
• Some of the features that can be tested include:
– Learnability
– Performance
– Robustness
– Recoverability
– Adaptability
Describe operational maintenance
• This stage involves the following:
– Monitoring of the performance of the database: if the performance falls below the acceptable level, then tuning is done to improve the performance
– Maintaining and upgrading the structure of the database based on new proposed features
(when required)
• Make periodic checks on data consistency between two systems. Drop old system only when the two appear to produce the same results