Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
88 views

2 - Database Development Process

The document describes the database development activities during the systems development life cycle (SDLC). It involves enterprise modeling during planning to analyze current data processing and justify new databases. During analysis, conceptual data modeling develops preliminary and detailed conceptual data models. Logical database design analyzes requirements and integrates views. Physical design defines the database for the DBMS. Implementation codes and tests the database. Maintenance analyzes and fixes errors to meet evolving requirements. The conceptual, logical, and physical data models are described at different levels of abstraction and technology dependence.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
88 views

2 - Database Development Process

The document describes the database development activities during the systems development life cycle (SDLC). It involves enterprise modeling during planning to analyze current data processing and justify new databases. During analysis, conceptual data modeling develops preliminary and detailed conceptual data models. Logical database design analyzes requirements and integrates views. Physical design defines the database for the DBMS. Implementation codes and tests the database. Maintenance analyzes and fixes errors to meet evolving requirements. The conceptual, logical, and physical data models are described at different levels of abstraction and technology dependence.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 44

DATABASE DEVELOPMENT

ACTIVITIES
During the
SYSTEMS DEVELOPMENT
LIFE CYCLE
Systems Development Life Cycle

Planning

Maintenance Analysis

Implementation Design
Systems Development Life Cycle

Planning

Purpose: To develop a preliminary understanding


of a business situation and how information systems
might help solve a problem or make an opportunity
possible.

Deliverable: A written request to study the possible


changes to an existing system or the development
of a new system that addresses an information systems
solution to the business problems or opportunities.
Systems Development Life Cycle

Planning

Analysis

Purpose: To analyze the business situation


thoroughly to determine requirements, to
structure those requirements, and to select
among competing system features
Deliverables: The functional specifications
for a system that meets user requirements
and is feasible to develop and implement
“If I had an hour to solve a problem
I'd spend 55 minutes thinking about
the problem and 5 minutes thinking
about solutions.”
Systems Development Life Cycle

Planning

Analysis
Purpose: To elicit and structure all information
requirements; to develop all technology and
organizational specifications

Deliverables: Detailed functional specifications


of all data, forms, reports, displays, and processing
rules; program and database structures, technology
purchases, physical site plans, and organizational Design
redesigns
Systems Development Life Cycle

Planning

Purpose: To write programs, build data files,


Analysis
test and install the new system, train users,
and finalize documentation

Deliverables: Programs that work accurately


and to specifications, documentation, and
training materials

Implementation Design
Systems Development Life Cycle

Planning
Purpose: To monitor the
operation and
usefulness of a system,
and to repair and
enhance the system
Maintenance Analysis
Deliverables: Periodic
audits of the system to
demonstrate whether
the system is accurate
and still meets user's
needs
Implementation Design
Systems Development Life Cycle

Planning

Maintenance Analysis

Implementation Design
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Planning

Enterprise Modeling
- Analyze current data processing
- Analyze the general business functions and their database needs
- Justify need for new data and databases in support of business

An enterprise data model establishes the range and general


contents of organizational databases

An Enterprise Data Model is an integrated view of the data


produced and consumed across an entire organization.

A data architectural framework used for integration. It enables


the identification of shareable and/or redundant data across
functional and organizational boundaries*
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Planning

Enterprise Modeling
- Analyze current data processing
- Analyze the general business functions and their database needs
- Justify need for new data and databases in support of business

Conceptual Data Modeling


- Identify scope of database requirements for proposed information system
- Analyze overall data requirements for business function(s) supported by
database
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Planning

Analysis

Conceptual Data Modeling (cont’d)


§ Develop preliminary conceptual data model, including entities and relationships
§ Compare preliminary conceptual data model with enterprise data model
§ Develop detailed conceptual data model, including all entities, relationships,
attributes, and business rules
§ Make conceptual data model consistent with other models of information system
§ Populate repository with all conceptual database specifications
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Planning

Logical Database Design


§ Analyze in detail the transactions, forms,
displays, and inquiries (database views) Analysis
required by the business functions supported
by the database
§ Integrate database views into conceptual
data model
§ Identify data integrity and security
requirements, and populate repository Database
Design
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Planning
Logical Database Design
§ Analyze in detail the transactions, forms, displays,
and inquiries (database views) required by the business
functions supported by the database
§ Integrate database views into conceptual data model
§ Identify data integrity and security requirements, and Analysis
populate repository

Physical Database Design and Definition


§ Define database to DBMS (often generated from repository)
§ Decide on physical organization of data Database
§ Design database processing programs Design
Logical and Physical Data Model
Logical Data Model
Physical Data Model (PDM)
(LDM)
Includes entities Includes tables, columns,
(tables), attributes keys, data types, validation
(columns/fields) and rules, database triggers, and
relationships (keys) access constraints
Uses more defined and less
generic specific names for
tables and columns, such as
Uses business names abbreviated column names,
for entities & attributes limited by the database
management system
(DBMS) and any company
defined standards
Logical and Physical Data Model
Logical Data Model Physical Data Model
(LDM) (PDM)
Is independent of
technology platform;
Requires a knowledge of
describes the data in
the specific DBMS that will
terms of data
be used to implement the
management
database
technology which will
be used
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Planning

Database Implementation Analysis


§ Code and test database processing programs
§ Complete database documentation and training materials
§ Install database and convert data from prior systems

Database Database
Implementation Design
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Database Maintenance

§ Analyze database and database Planning


applications to ensure that evolving
information requirements are met
§ Tune database for improved performance
§ Fix errors in database and
database applications and Database
recover database when it is Maintenance Analysis
contaminated

Database Database
Implementation Design
Database Development Activities
During the Systems Development Life Cycle (SDLC)

Planning

Database
Maintenance Analysis

Database Database
Implementation Design
Conceptual, Logical, and Physical Data Model
Conceptual Data Logical Data Model
Physical Data Model (PDM)
Model (CDM) (LDM)
Includes entities Includes tables, columns,
Includes high-level (tables), attributes keys, data types, validation
data constructs (columns/fields) and rules, database triggers,
relationships (keys) and access constraints
Uses more defined and less
Non-technical names, generic specific names for
so that executives and tables and columns, such
managers at all levels as abbreviated column
Uses business names
can understand the names, limited by the
for entities & attributes
data basis of database management
Architectural system (DBMS) and any
Description company defined
standards
Is independent of
Represent data from
technology platform; Requires a knowledge of
the viewpoint of the
describes the data in the specific DBMS that will
organization,
terms of data mgnt be used to implement the
independent of any
technology which will database
technology
be used
28
Two Approaches to Database and
Information Systems Development
´SDLC
´System Development Life Cycle
´Detailed, well-planned development process
´Time-consuming, but comprehensive
´Long development cycle

´Rapid Application Development


(RAD)
Iterative process of rapidly repeating analysis, design, and
implementation steps until they converge on the system the
user wants
Rapid Application Development
vIncorporate special techniques and tools:
§ CASE tools
§ JAD (Joining Application Development)sessions
§ Visual programming languages
§ Code generators
vGoal – get some portion of system developed
quickly and in the users’ hands
Three RAD Approaches
vIterative development
§ A series of versions developed sequentially
vSystem Prototyping
§ Create prototype(model) of system and
“grow” it into the final system
vThrow-away prototyping
§ Prototype alternative designs in an
experimental way
§ Build system following prototype design but
discard the actual prototype
What is Prototyping?
“A prototype is an early sample, model, or release of a product or system built to
test a concept or assumption or to act as a thing to be tested and learned from.”

Prototyping is an experimental process where design teams implement ideas into


tangible forms from paper to digital. Teams build prototypes of varying degrees of
fidelity to capture design concepts and test on users. With prototypes, you can refine
and validate your designs so your brand can release the right products.
Iterative Development
Methodology Assessment
STRENGTHS WEAKNESSES
Users get a system to use Users faced with using an
quickly incomplete system for a
time
Users identify additional Users must be patient and
needs for later versions wait for fully-functional
based on real system
experiences with current
version
System Prototyping
Methodology Assessment
STRENGTHS WEAKNESSES
Users get to work with Superficial analysis may
prototype very quickly cause problems
Feedback cycles let users Initial design decision
identify changes and may be poor
refine real requirements
Overlooked features may
be hard to add later
Throwaway Prototyping
Methodology Assessment
STRENGTHS WEAKNESSES
Uncertainty is minimized May take longer
(comparted to system
prototyping)
Important issues are
understood before
building the final system
https://www.youtube.com/watch?v=pY-_nZdh2cw
Agile Methodologies Assessment
STRENGTHS WEAKNESSES
Fast delivery of results Requires discipline
Works well in projects with Significant user
undefined or changing involvement is essential
requirements
Initial high learning curve
Works best in smaller
projects
41 ´Prototyping
´Popular RAD method
´Repeat implementation and maintenance
activities with new prototype versions

• Agile Software Development

Scrum Lean
Kanban XP
What is Agile Software Development?

Agile Software Development is a set of methods and practices


where solutions evolve through collaboration between self-
organizing, cross-functional teams.
Agile methods mostly focus on the following
key principles:

§ Satisfying customers is of foremost


importance
§ Develop projects with inspired contributors
§ Interactions are best when done in person
§ Software that works is a measure of progress
§ Reflect and adapt on an ongoing basis
Core values of Agile are as follows:

•Individuals and interactions over processes


and tools

•Working software over comprehensive


documentation

•Customer collaboration over contract


negotiation

•Responding to change over following a plan


RAD or Agile Software Development
should be considered..

§ When a project involves unpredictable


and / or changing requirements

§ When most of the necessary database


structures already exist
Prototyping Database Methodology
46 and the Database Development
Process

46
Source

Modern Database Management


Hoffer, Prescott, Topi

You might also like