E N D
1. DB Development Process BEDU 496, Records Administration Using Database
Jan. 23, 2006
Dr. Jae Park, jae.park@emich.edu
STS, Eastern Michigan University
2. © Jae H. Park 2006 2 Entity, Relationship, Attribute - Definition Entity
Anything (such as a person, place, thing, or event) about which data are to be collected and stored
Could be physical objects (customer, product, student, etc.) or abstraction (enrollment, flight route, order, etc.)
Relationship
Association among (two or more) entities
Cardinality: One-to-one, one-to-many, many-to-many relationships
Attributes
Characteristics of an entity
Student’s (entity) attributes: student ID, student name, address, etc.
3. © Jae H. Park 2006 3 Three Schema components External Schema (views)
How users see the data
Conceptual schema
Defines logical structure of data using E-R or other notation (independent from data management technology)
Internal schema
Logical schema
Representation of data for a type of data management technology
Physical schema
Describes files and indexes used
4. © Jae H. Park 2006 4 DB Development DB is a part of an information system
DB development is a part of information systems development process
Therefore, DB has to be developed in coordination with other development activities of information system
5. © Jae H. Park 2006 5 Systems Development Life Cycle (SDLC) Traditional methodology used to develop, maintain, and replace information systems
also known as a cascade or waterfall model
each step follows into the next
Steps overlap in time, thus can be conducted in parallel
Possible to backtrack to previous steps if necessary
6. © Jae H. Park 2006 6 Systems Development Life Cycle (SDLC)
7. © Jae H. Park 2006 7 SDLC Project Identification and Selection
To develop a preliminary understanding of the business situation that has caused the request for a new or an enhanced information system
To deliver a formal request to conduct a project to design and develop an information systems solution to the business problems or opportunities
Project Initiation and Planning
To state business situation and how information systems might help solve a problem or make an opportunity possible
To deliver a written request to study the possible changes to an existing system or the development of a new system
8. © Jae H. Park 2006 8 SDLC Analysis
To analyze the business situation thoroughly to determine requirements, to structure those requirements, and to select among competing system features
To deliver the functional specifications for a system that meets user requirements and is feasible to develop and implement
Logical Design
To elicit and structure all information requirements
To deliver detailed functional specifications of all data, forms, reports, displays, and processing rules
9. © Jae H. Park 2006 9 SDLC Physical Design
To develop all technology and organizational specifications
To deliver program and database structures, technology purchases, physical site plan, and organizational redesigns
Implementation
To write programs, build data files, test and install the new system, train users, and finalize documentation
To deliver programs that work accurately and to specifications, documentation, and training materials
10. © Jae H. Park 2006 10 SDLC Maintenance
To monitor the operation and usefulness of a system, and to repair and enhance the system
To deliver periodic audits of the system to demonstrate whether the system is accurate and still meets needs
11. © Jae H. Park 2006 11 DB development in SDLC Enterprise Modeling
12. © Jae H. Park 2006 12 Enterprise Modeling The beginning step of database development process
Analyze current data processing
Analyze the general business functions and their database needs
Justify need for new data and databases in support of business
13. © Jae H. Park 2006 13 A Segment of Enterprise Data Model in diagram
14. © Jae H. Park 2006 14 Conceptual Data Modeling Identify scope of database requirements for proposed information system
Analyze overall data requirements for business functions supported by database
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
Top-down analysis
15. © Jae H. Park 2006 15 Preliminary Conceptual Data Model (Chen ERD)
16. © Jae H. Park 2006 16 Detailed Conceptual Data Model (Chen ERD)
17. © Jae H. Park 2006 17 Detailed Conceptual Data Model (Crow’s ERD)
18. © Jae H. Park 2006 18 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 populate repository
Bottom-up analysis
19. © Jae H. Park 2006 19 Physical Database Design and definition Define database to DBMS
Decide on physical organization of data
Design database processing programs
20. © Jae H. Park 2006 20 Database Implementation Code and test database processing programs
Complete database documentation and training materials
Install database and convert data from prior systems
21. © Jae H. Park 2006 21 Database Maintenance Analyze database and database applications to ensure that evolving information requirements are met
Tune database for improved performance
Fix errors in database and database applications and recover database when it is contaminated
22. © Jae H. Park 2006 22 Prototyping One of the most popular Rapid Application development (RAD) methods
An iterative process of systems development in which requirements are converted to a working system that is continually revised through close work between analysts and users
Improved development time
23. © Jae H. Park 2006 23 Prototyping and DB development
24. © Jae H. Park 2006 24 CASE Computer-Aided Software Engineering tools
Software that provide automated support for some portion of the system development process
main features
Ability to help users draw (database intelligent) data models using entity-relationship and other notations
Ability to generate code (e.g., database definition commands, SQL commands, C or other language commands, etc)
Ability to integrate drawings and codes to store in repository
25. © Jae H. Park 2006 25 Business Rules A statement that defines or constraints some aspect of the business
In a form of natural language, a structured data model, or other information systems documentation
E.g.,
A student may register for a section of a course only if he or she has successfully completed the prerequisites for that course
A preferred customer qualifies for a 10 percent discount, unless he has an overdue account balance
A student must have one faculty advisor
A student is any person who has applied for an admission or taken a course or training program from any credit or non-credit unit of the university
Documenting rules and policies of an organization that govern data is what data modeling is all about
In database, data about each student will be associated with data about some faculty advisor
26. © Jae H. Park 2006 26 Gathering Business Rules Gather description of business functions, events, policies, units, stakeholders, etc.
can be found in interview notes, organization documents (personnel manual, policies, contracts, marketing brochures, and tech instructions) and other sources.
Who, when, where, what, why, and how of the organization
27. © Jae H. Park 2006 27 Data Names and Definitions Data objects are must be named and defined before they can be used unambiguously in a model of organizational data
In E-R model, we have to give entity, relationship, and attributes clear and distinct names and definitions
Definition does not have to be provided to common terms such as ‘day’, ‘month’, ‘television’, etc.
28. © Jae H. Park 2006 28 Naming Guidelines Relate to business not technical characteristics
Customer, faculty, but not file1, bit2, …
Be meaningful
Avoid to use person, it, has, is, …
Be unique
Home_address vs. Campus_address
Readable
Composed of words taken from approved list
Maximum not ceiling, upper limit
Repeatable
Student_ID, Faculty_ID