Database system
development life cycle
Peter kaaya
introduction
• The database development life cycle (DDLC) is a process of
designing, implementing and maintaining a database system to
meet strategic or operational information needs of an
organisation or enterprise such as: Improved customer support
and customer satisfaction.
Database design
• Planning:
• Activities:-2
• Work to be done
• Resources available
• TOR
• System definition:
• Scope (parameters/ components of your system
• User groups to be included
• Requirement analysis
• Is a process of discovery
• Refinement
• Modelling
• specifications
Requirement discovery methods
• Collection of facts from existing documentation
• Interviews
• Questionnaires
• Research sites
• Requirement analysis
• Determine data requirements of the database
• Classify and describe information about the objectives
• Identify relationships among objects e.g. students and course
• Determine transactions that will be executed
• Identify rules governing CIA e.g.student to be identified by ID
Conducting Analysis
• Look at how data is collected e.g. index card, handwritten lists, data
entry screens
• How information is collected whether handwritten or printed or
onscreen
• Methods of presenting analysis
• Reports (methods of presentation
• Presentation- slideshow/Harvard graphics
• Conduct interviews
Database design
• Involves
• Phsical database design
• Logical database design
Logical database design
• Looks on how we perceive data as human beings e.g. how we
perceive a sick patient, how he is sick, feeling, hospital attended etc
Physical database design
• The way a computer views data on its perspective
• Hence there is a need to link the two
• How data is stored, processed
Components of database design
• Implementation
• Creating special storage related to end user tables
• Relational databases (made of tables, using sql, wizard
• Descirbes how we are going to store users data e.g. students
information
Data conversion and loading
• Making ready for use
• How we convert old system to new management issues
Testing and evaluation
• Testing already entered data
• Helps to discover faults and evaluate whether users persepctives are
correct
Operational maintenance
• Database user routine maintenance
• Once database has passed the testing stage, its considered to be
operational
Some concepts in database
• Data abstraction:
• Abstraction is everywhere.
• It’s a technique of viewing the big picture and hiding details
• E.g. when we look at map, we draw roads, highways8 not individual trees
• Electronic circuit diagrams
• Use of variables in programming
• We mainly consider big picture and leave other minor things
• The main aim od DBMS is to provide users with abstraction view of the
system
• The system hides certain details of how data is created, stored and maintained
Physical level
• The lowest level of abstraction
• Describes how a record (Customer) is stored
• E.g. indexing, B-tree
Logical/conceptual level
• Describes how data is stored
• Describes relationships between tables
• Database administration level
View of data
• High level
• Describes part of the database of a particular group of people
• There are many views- of DBMS e.g. tellers gets a views of customers
account and NOT payroll data
Instances and Schema
• SCHEMA
• The structure of the database
• The description of the database
• Not expected to change
• Types of Schema
• Physical schema:- design at physical level
• Logical schema:- design at logical level
Instance
• The actual content of a database at a particular point in time
• The raw data populates a database at a particular point in time
• Instances gives actual place in database in the database and Schema
gives us the structure of a database
• The are all actual values in the database
Data models
• Collection of tools for describing data
• Data
• Data relationships
• Data semantics
• Data constraints
• E.g. entity relationships model (ER model)
• Relational models
• Others
• Object oriented models
• Semi structured models
• Old models: network and hierarchical models
Data definition language
• Refers to the specification notation for defining database schema
• E.g.
CREATE table account (
Account_name char (10),
Balance interger);
• Data dictionary contains metadata, data schema, data storage and
data definition
Data manipulation language
• Language to show how to take data from big table
• Language for accessing and manipulating bdata organized by the
appropriate data model
• DML is also a query language
• SQL is the most widely used query language
Database users
• Data administrator
• Relevance and meaning of data, standard policy
• A person who sets some rules on use of database
• DB administrator
• Deals with design, implementation and maintenance of database
• Application programmers
• End users
Activity of database
• Schema definition
• Storage structure and access methods definition
• Schema and physical organization modification
• Granting user authority to access database
• Specifying integrity constraints
• Acts like a liaison with users
Database modelling
• Database design
• How we convert ideas of a client to a database system?
• Introduction to entitited
• Attributes and relationships
• Why conceptual modellinjg
Why do we create conceptual modelling
• Describes exactly the information needs of the business
• Converts clients information and needs to a database
• Facilitates discussion
• Helps to prevent mistakes and misunderstanding
• It forma important ideal system documentation
• Forms a sound basis for physical database design
• Very good practice with many practitioners
Entity relationships modelling
• Models a business not implementation
• A well-established technique
• Has a robust syntax
• Results in an easy to read diagrams
ER models
• Can be converted into other models
• ENTITY
• Is something significance to the business about which data must be
known
• A name for things that you cant list e.g. objects, events, programs
• Entities have instances
attributes
• An entity has attribues which describes further
• A single valued property detail of an entity
• Is a specific piece of information that:
• Describes
• Quantifies
• Qualified
• Classifies and
• Specifies an entity
Attributes and relationships
• Attributes (volatile attributes and relationships)
VOLATILE ATTRIBUTES
• Unstable attributes eg age/year of birth, weather
• RELATIONSHIPS
• Represents something of significance to the business
• Expresses how attributes are related
• Exist between two entitites
• Have two directions/perspectives
• Are named at both ends
Relationship examples
• Employees have jobs
• Jobs are held by employees
• People make reservation tickets
• Ticket reservations are made by people
ER diagram seminar questions
• PROCEDURES TO FOLLOW TO GET AN ER DIAGRAM
• Identify entities , attributes and relationships
• Connect those entities (do actual drawing)
• Identify relationships (mandatory/optional)
• Identify cardinality (one-one,one-many,many-many)
NB
• Entities
• By nouns
• Attributes
• By nouns telling more about entities
• Relationships
• Identified by a verb, e.g. student takes course
• Private nursing home employs external consultants to treat their
patients. Each consultant is responsible for treating a specific patient,.
Each consultant is provided with two nurses everyday (individual
nurses change day after day) to assist him/her.
• Identify entities, attributes, cardinalities and relationships
END OF TODAYS LECTURE