Date post: | 06-Apr-2018 |
Category: |
Documents |
Upload: | mhatrerahul25 |
View: | 222 times |
Download: | 0 times |
of 29
8/3/2019 Database Systems Design Simplisio Rwezuva
1/29
Database Development
The Database Application
LifecycleA Relational Approach
8/3/2019 Database Systems Design Simplisio Rwezuva
2/29
Broad Goals of Database
DevelopmentDevelop a common vocabularyDevelop a common vocabulary
Define data meaningDefine data meaning
Ensure data qualityEnsure data quality
Provide efficient implementationProvide efficient implementation
8/3/2019 Database Systems Design Simplisio Rwezuva
3/29
Overview of the DbDLC
8/3/2019 Database Systems Design Simplisio Rwezuva
4/29
Database Application Lifecycle
Database Planning Focus on management
activities Activities include:
Work to be done Resources available TORs Surely we can spend a
few minutes beforerushing off to spend ourmoney or writeprograms. Isnt thatextra hesitation theessence of design
Gerald Weinberg
8/3/2019 Database Systems Design Simplisio Rwezuva
5/29
Database Application Lifecycle
System Definition
Scope
Parameters
Application areas
User groups
8/3/2019 Database Systems Design Simplisio Rwezuva
6/29
Primary Education
Application Areas
Teaching & LearningTeaching & LearningMaterialsMaterials
FacilitiesFacilities
FinanceFinance
LearnersLearners
TeachersTeachers
8/3/2019 Database Systems Design Simplisio Rwezuva
7/29
What is requirements analysis?
The process ofdefining your
system. A process of:
Discovery Refinement Modelling Specification
8/3/2019 Database Systems Design Simplisio Rwezuva
8/29
Goals of Requirements Analysis to determine the data requirements of the
database in terms of primitive objects
to classify and describe the information about
these objects to identify and classify the relationships among
the objects
to determine the types of transactions that will
be executed on the database and theinteractions between the data and thetransactions
to identify rules governing the integrity of thedata
8/3/2019 Database Systems Design Simplisio Rwezuva
9/29
Principles of Analysis
Understand the problem domain Define the software functions to be
performed Represent behaviour of software Model details of data, information,
controls flows & functional behaviour in alayered manner
Move from functions & information outputstowards processing functions & informationstructures
8/3/2019 Database Systems Design Simplisio Rwezuva
10/29
Building Blocks of An Information system
Focus on
DATA
System owners
View of Data
System UsersView of Data
Designers View
of Data
System builders
View of Data
Focus on
INTERFACES
System owners
View of interfaces
System usersView of interfaces
System designers
View of interfaces
System builders
View of interfaces
INFORMAT
IONTECH
NOLOGY& A
RCHTECTU
RE
Database Technology. Process Technology. Interface Technology
Focus on
PEOPLE
Stakeholders
System
Owners
SystemUsers
System
Designers
System
Builders
Vendors and
Consultants
Focus on
PROCESSES
System owners
View of
processes
System users
View of
processes
System builders
View of
processes
System designers
View of processes
8/3/2019 Database Systems Design Simplisio Rwezuva
11/29
Building Blocks of An Information system
Focus on
DATA
Business
Knowledge
DataRequirements
Database Models
Database
Programs
DatabaseManagement System
Focus on
PEOPLE
Stakeholders
System
Owners
SystemUsers
System
Designers
System
Builders
Vendors and
Consultants
Focus on
INTERFACES
Focus on
PROCESSES
8/3/2019 Database Systems Design Simplisio Rwezuva
12/29
Requirements Discovery
Methods Collecting facts from existing
Documentation
Research and site visits Questionnaires
Interviews
Discovery prototyping
Joint Requirements Planning
8/3/2019 Database Systems Design Simplisio Rwezuva
13/29
Database design
The process of creating a design for a
database that will support the enterprisesoperations and objectives
8/3/2019 Database Systems Design Simplisio Rwezuva
14/29
Database Design Objectives: Develop detailed technical
specifications for hardware, software, data, peopleand procedures--How the system will be built
End Result: Make orBuy? Detailedfile/database design, program specs, interfacedesign, sizing and response time specs
Methods: CASE tools, End User Computing Skills/Talents Required: Technical
How to Avoid Risk: Careful check vs.functional requirements, management review
8/3/2019 Database Systems Design Simplisio Rwezuva
15/29
Database designgoalsSatisfy the users content requirements
Ensure the consistency and integrity of
dataProvide a natural easy to understand
structuring of information
Satisfy the user performancerequirements
8/3/2019 Database Systems Design Simplisio Rwezuva
16/29
Database Design Framework Determine the information requirements
Analyse the real-world objects that you
want to model in the database Determine primary key attributes
Develop a set of rules that govern how eachtable is accessed, populated and updated
Identify relationship between the entities
Plan database security
8/3/2019 Database Systems Design Simplisio Rwezuva
17/29
Goals for Collecting and Analysing
Data. Identify major functions and activities of
your organisation
Identify the objects of those functions andactivities
Identify the characteristics of those objects
Identify certain relationships between theobjects
8/3/2019 Database Systems Design Simplisio Rwezuva
18/29
Students and courses
8/3/2019 Database Systems Design Simplisio Rwezuva
19/29
Identifying entities
Students
Courses
Instructors
StudentCourses
Advisors
8/3/2019 Database Systems Design Simplisio Rwezuva
20/29
Identifying attributes
What information on each entity should we know?
Students(student_id, Fname, lname, phone, advisor_id)
Advisors(Advisor_id, Advisorname, Advisorphone)
Instructors(instructor_id, Instructorname, Instructorphone)
StudentCourses(Student_id, Course_id)
Courses(Course_id, Coursedescription instructor_id)
8/3/2019 Database Systems Design Simplisio Rwezuva
21/29
DBMS Selection
The selection of an appropriate DBMS to
support the database application
8/3/2019 Database Systems Design Simplisio Rwezuva
22/29
Factors to consider
Performance
Ease of restructuring
Integrity constraints
Security
8/3/2019 Database Systems Design Simplisio Rwezuva
23/29
Development AlternativesDevelopment Alternatives
DifficultiesDifficulties
Operational system is produced lateOperational system is produced late
Rush to begin implementationRush to begin implementation
Requirements are difficult to captureRequirements are difficult to capture
Alternative methodologiesAlternative methodologies
Spiral approachesSpiral approaches
Rapid application developmentRapid application development
Prototypes may reduce riskPrototypes may reduce risk
8/3/2019 Database Systems Design Simplisio Rwezuva
24/29
Prototyping building an experimental system (prototype: a
preliminary model) rapidly and inexpensively for
end users to evaluate
Using the prototype, end users can better
determine information requirements.
planned iterative process of systems development
less formal requirements determined dynamically as the prototype
is constructed
8/3/2019 Database Systems Design Simplisio Rwezuva
25/29
Prototyping
DetermineNeeds
BuildPrototype
EvaluatePrototype
AcceptableNo
Yes
8/3/2019 Database Systems Design Simplisio Rwezuva
26/29
Prototypingcontinued
advantages
useful when there is uncertainty about requirements or
design solutions (decision-oriented solutions)
valuable for the design of the end-user interface
encouraging intense end-user involvement
disadvantages
only suitable for smaller applications
tending to skip essential steps in systems development
hasty construction
poor documentation
8/3/2019 Database Systems Design Simplisio Rwezuva
27/29
Implementation
Objectives: Implement system, fully-functional,deliverables in priority order, with effective training and
conversion
End Result: Accurately functioning system, properlytrained users
Methods: CASE tools, EUC
Skills/Talents Required: Technical, communication How to Avoid Risk: Communication! Planning!
Change management! Status reviews and walk-throughs!
8/3/2019 Database Systems Design Simplisio Rwezuva
28/29
Stages of Implementation Hardware/Software Acquisition if needed
Programming
Testing (program, subsystem, system tests) Training (lead users, train the trainer)
Conversion (in order of increasing complexityand risk)
Parallel (old and new systems) Pilot (small scale, small scope)
Phased (most critical functions first)
Direct Cutover (with manual parallel operations)
8/3/2019 Database Systems Design Simplisio Rwezuva
29/29
Database Maintenance
Objectives: Fix bugs (incorrect program specs orcode) in software, add enhanced functions, cycle back
through SDLC phases as needed for small-scale projects
End Result: Fully Functional Robust System
Methods: As needed for phases above; audit thesystem
How to Avoid Risk: Watch changing businessrequirements, set priorities.