0% found this document useful (0 votes)
65 views48 pages

Database Systems Development Lifecycle

The document outlines the key stages in the database system development lifecycle. It discusses software depression in the 1960s that led to the need for a more structured development approach. The main stages covered are: database planning, system definition, requirements collection and analysis, database design (conceptual, logical, physical), DBMS selection, application design, prototyping, implementation, testing and maintenance. Database design involves creating a data model to represent the different user views of the system in a centralized or integrated manner.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
65 views48 pages

Database Systems Development Lifecycle

The document outlines the key stages in the database system development lifecycle. It discusses software depression in the 1960s that led to the need for a more structured development approach. The main stages covered are: database planning, system definition, requirements collection and analysis, database design (conceptual, logical, physical), DBMS selection, application design, prototyping, implementation, testing and maintenance. Database design involves creating a data model to represent the different user views of the system in a centralized or integrated manner.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

SEN235 Introduction to Database Systems

(Fall 2022)
Database System Development
Lifecycle
Asst.Prof.Dr. Hasan ÇİFCİ
Agenda
▪ Software Depression
▪ Database System Development Lifecycle
▪ Database Planning
▪ System Definition
▪ Requirements Collection and Analysis
▪ Database Design
▪ DBMS Selection
▪ Application Design
▪ Prototyping
▪ Implementation
▪ Data Conversion and Loading
▪ Testing
▪ Operational Maintenance
▪ CASE (Computer Aided Software Engineering) Tools
▪ Data Administration and Database Administration
2/48
Software Depression

• Last few decades have seen proliferation of software applications,


many requiring constant maintenance involving:
• correcting faults,
• implementing new user requirements,
• modifying software to run on new or upgraded platforms.
• Effort spent on maintenance began to absorb resources at an
alarming rate.
• As a result, many major software projects were
• late,
• over budget,
• unreliable,
• difficult to maintain,
• performed poorly.
• In late 1960s, led to ‘software crisis’, now refer to as the ‘software
depression’.
3/48
Software Depression

• Major reasons for failure of software projects includes:


- lack of a complete requirements specification;
- lack of appropriate development methodology;
- poor decomposition of design into manageable
components.

• Structured approach to development was proposed called


Information Systems Lifecycle (ISLC) or Software Development
Lifecycle (SDLC).

4/48
Information System (IS)

▪ Resources that enable collection, management, control, and


dissemination of information throughout an organization.

▪ Database is fundamental component of IS, and its


development/usage should be viewed from perspective of
the wider requirements of the organization.

5/48
Database System Development
Lifecycle
• Database planning

• System definition

• Requirements collection and analysis

• Database design

• DBMS selection (optional)


• Application design
• Prototyping (optional)
• Implementation
• Data conversion and loading
• Testing
• Operational maintenance 6/48
Stages of the Database System
Development Lifecycle

7/48
Database Planning

• Management activities that allow stages of database system


development lifecycle to be realized as efficiently and effectively
as possible.

• Must be integrated with overall IS strategy of the organization.

8/48
Database Planning – Mission Statement

• Mission statement for the database project defines major aims


of database application.

• Those driving database project normally define the mission


statement.

• Mission statement helps clarify purpose of the database project


and provides clearer path towards the efficient and effective
creation of required database system.

9/48
Database Planning – Mission Objectives

• Once mission statement is defined, mission objectives are


defined.

• Each objective should identify a particular task that the database


must support.

• May be accompanied by some additional information that


specifies the work to be done, the resources with which to do it,
and the money to pay for it all.

10/48
Database Planning

• Database planning should also include development of


standards that govern:
• how data will be collected,
• how the format should be specified,
• what necessary documentation will be needed,
• how design and implementation should proceed.

11/48
System Definition

• Describes scope and boundaries of database system and


the major user views.

• User view defines what is required of a database system


from perspective of:
• a particular job role (such as Manager or Supervisor) or
• enterprise application area (such as marketing,
personnel, or stock control).

12/48
System Definition

• Database application may have one or more user views.

• Identifying user views helps ensure that no major users of the


database are forgotten when developing requirements for new
system.

• User views also help in development of complex database


system allowing requirements to be broken down into
manageable pieces.

13/48
Representation of a Database System with
Multiple User Views

14/48
Requirements Collection and Analysis

• Process of collecting and analysing information about the part of


organization to be supported by the database system and using this
information to identify users’ requirements of new system.

• Information is gathered for each major user view including:


• a description of data used or generated;
• details of how data is to be used/generated;
• any additional requirements for new database system.

• Information is analyzed to identify requirements to be included in


new database system. Described in the requirements specification.

15/48
Requirements Collection and Analysis

• Another important activity is deciding how to manage the


requirements for a database system with multiple user views.
• Three main approaches:
• centralized approach;
• view integration approach;
• combination of both approaches.

16/48
Requirements Collection and Analysis

• Centralized approach
• Requirements for each user view are merged into a
single set of requirements.
• A data model is created representing all user views
during the database design stage.

17/48
Centralized Approach to Managing Multiple
User Views

18/48
Requirements Collection and Analysis

• View integration approach


• Requirements for each user view remain as separate lists.
• Data models representing each user view are created and then
merged later during the database design stage.
• Data model representing single user view (or a subset of all user
views) is called a local data model.
• Each model includes diagrams and documentation describing
requirements for one or more but not all user views of database.
• Local data models are then merged at a later stage during database
design to produce a global data model, which represents all user
views for the database.

19/48
View Integration Approach to Managing
Multiple User Views

20/48
Database Design

• Process of creating a design for a database that will support the


enterprise’s mission statement and mission objectives for the
required database system.
• Main approaches include:
• Top-down
• Bottom-up
• Inside-out
• Mixed

21/48
Database Design

• Main purposes of data modeling include:


• to assist in understanding the meaning (semantics) of the
data;
• to facilitate communication about the information
requirements.

• Building data model requires answering questions about entities,


relationships, and attributes.

22/48
Database Design

• A data model ensures we understand:


- each user’s perspective of the data;
- nature of the data itself, independent of its physical
representations;
- use of data across user views.

23/48
Criteria to Produce an Optimal Data
Model

24/48
Database Design

• Three phases of database design:

• Conceptual database design


• Logical database design
• Physical database design.

25/48
Conceptual Database Design

• Process of constructing a model of the data used in an


enterprise, independent of all physical considerations.

• Data model is built using the information in users’


requirements specification.

• Conceptual data model is source of information for logical


design phase.

26/48
Logical Database Design

• Process of constructing a model of the data used in an


enterprise based on a specific data model (e.g. relational), but
independent of a particular DBMS and other physical
considerations.

• Conceptual data model is refined and mapped on to a logical


data model.

27/48
Physical Database Design

• Process of producing a description of the database


implementation on secondary storage.

• Describes base relations, file organizations, and indexes used to


achieve efficient access to data.

• Also describes any associated integrity constraints and security


measures.

• Tailored to a specific DBMS system.

28/48
Three-Level ANSI-SPARC Architecture and
Phases of Database Design

29/48
DBMS Selection

• Selection of an appropriate DBMS to support the database system.


• Undertaken at any time prior to logical design provided sufficient
information is available regarding system requirements.
• Main steps to selecting a DBMS:
• define Terms of Reference of study;
• shortlist two or three products;
• evaluate products;
• recommend selection and produce report.

30/48
DBMS Evaluation Features

31/48
DBMS Evaluation Features

32/48
Example - Evaluation of DBMS Product

33/48
Application Design

• Design of user interface and application programs that use and


process the database.

• Database design and application design are parallel activities.

• Includes two important activities:


• transaction design;
• user interface design.

34/48
Application Design - Transactions

• An action, or series of actions, carried out by a single user


or application program, which accesses or changes content
of the database.

• Should define and document the high-level characteristics


of the transactions required.

35/48
Application Design - Transactions

• Important characteristics of transactions:


• data to be used by the transaction;
• functional characteristics of the transaction;
• output of the transaction;
• importance to the users;
• expected rate of usage.

• Three main types of transactions: retrieval, update, and mixed.

36/48
Prototyping

• Building working model of a database system.

• Purpose
• to identify features of a system that work well, or are
inadequate;
• to suggest improvements or even new features;
• to clarify the users’ requirements;
• to evaluate feasibility of a particular system design.

37/48
Implementation

• Physical realization of the database and application designs.


• Use DDL to create database schemas and empty database
files.
• Use DDL to create any specified user views.
• Use 3GL or 4GL to create the application programs. This will
include the database transactions implemented using the
DML, possibly embedded in a host programming language.

▪ 1GL and 2GL are low-level languages that are machine language.
▪ 3GL, are high-level languages, such as C, C++, Java, JavaScript, and Visual Basic.
▪ 4GL, are languages that consist of statements similar to statements in a human
language. 4GL are commonly used in database programming and scripts examples
include Perl, PHP, Python, Ruby, and SQL.
▪ 5GL, are programming languages that contain visual tools to help develop a program.
Examples include Mercury, OPS5, and Prolog.

38/48
Data Conversion and Loading

• Transferring any existing data into new database and converting


any existing applications to run on new database.

• Only required when new database system is replacing an old


system.
• DBMS normally has utility that loads existing files into new
database.
• May be possible to convert and use application programs from old
system for use by new system.

39/48
Testing

• Process of running the database system with intent of finding


errors.
• Use carefully planned test strategies and realistic data.
• Testing cannot show absence of faults; it can show only that
software faults are present.
• Demonstrates that database and application programs appear to
be working according to requirements.

40/48
Testing

• Should also test usability of system.


• Evaluation conducted against a usability specification.

• Examples of criteria include:


• Learnability;
• Performance;
• Robustness;
• Recoverability;
• Adaptability.

41/48
Operational Maintenance

• Process of monitoring and maintaining database system following


installation.

• Monitoring performance of system.


• if performance falls, may require tuning or reorganization of
the database.

• Maintaining and upgrading database application (when required).

• Incorporating new requirements into database application.

42/48
CASE (Computer Aided Software
Engineering) Tools
• Support provided by CASE tools include:
- data dictionary to store information about database system’s
data;
- design tools to support data analysis;
- tools to permit development of corporate data model, and
conceptual and logical data models;
- tools to enable prototyping of applications.

43/48
CASE Tools

• Provide following benefits:


• Standards;
• Integration;
• Support for standard methods;
• Consistency;
• Automation.

44/48
CASE Tools and Database System
Development Lifecycle

45/48
Data Administration and Database
Administration
• The Data Administrator (DA) and Database Administrator (DBA)
are responsible for managing and controlling the corporate data
and corporate database, respectively.

• DA is more concerned with early stages of database system


development lifecycle and DBA is more concerned with later
stages.

46/48
Data Administration and Database
Administration
Data Administrator Database Administrator
• Management of data resource • Management of physical
including: realization of a database
• database planning, system including:
• development and • physical database design
maintenance of and implementation,
standards, policies and • setting security and
procedures, and integrity controls,
conceptual and logical • monitoring system
database design. performance and
reorganizing the database.

47/48
Thank you…
Hasan ÇİFCİ

You might also like