+ All Categories
Home > Documents > Database Systems Design Simplisio Rwezuva

Database Systems Design Simplisio Rwezuva

Date post: 06-Apr-2018
Category:
Upload: mhatrerahul25
View: 222 times
Download: 0 times
Share this document with a friend

of 29

Transcript
  • 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.


Recommended