Professional Documents
Culture Documents
Database Design
That successful database design must reflect the information system of which the database is a part That successful information systems are subject to frequent evaluation and revision within a framework known as the Systems Development Life Cycle (SDLC)
Within the information system, the most successful databases are subject to frequent evaluation and revision within a framework known as the Database Life Cycle (DBLC) How to conduct evaluation and revision within the SDLC and DBLC frameworks What database design strategies exist:
Data
Raw facts stored in databases Seldom immediately useful to a decision maker Need additional processing to become useful information
Information
Required by decision maker Data must be put together or transformed to produce information that can create insight Data processed and presented in a meaningful form
Information
Information
Without enough and reliable data, one can not obtain information Without information, one can not make great decision
Database
Carefully designed and constructed repository of facts Fact repository is a part of larger system called information system Database is a part of an information system
Information System
Provides data collection, storage, and retrieval Also facilitates data transformation of data into information Manages both data and information
10
Information System
11
12
Systems Analysis
Systems development
Process of creating information system Within systems development, it has application transformation data into information in terms of formal report, tabulations, and graphic displays
13
14
15
Database development
Process of database design and implementation Primary objective of database design: to create complete, normalized, non-redundant and fully integrated conceptual, logical, and physical database models Implementation
Creating storage structure Loading data into database Providing for data management
16
Detailed procedure of how to build an information system Detailed procedure of how to build database system Keep as general as possible
17
Procedure (history) of an information system Important to system designer Big frame within which the database design and application development can be mapped out and evaluated In other words, database design and application development take place within the confines of an information system
18
19
Figure 6.2
21
General overview of organization and its objective Initial assessment must be made Such assessments:
Should the existing system be continue? Should the existing system be modified Should the existing system be replace
22
Technical (Technical aspects of hardware and software requirement) Financial (System cost, labor cost, )
23
Great detail examination based on the previous phase (planning phase) Address both individual (user) needs or organizational needs Existing hardware and software systems are studied to find out current systems performance, functionality, and potential problem, as well as future opportunities
24
Require end-user and system designers to gather together. Study carefully about relationships and database models Create logical design using various tools Define the logical systems Provide functional descriptions Define data transformation and documentation
25
All technical specifications Menus Reports Devices Conversion from old system Training Methodologies
26
Hardware, DBMS software, and application programs are installed Database design is implemented Actual database is created Tables, views, user authorization
27
Database contents
28
After system operation End-user begin to request changes in it, which generate system maintenance activities
Corrective maintenance due to system errors Adaptive maintenance due to changes in business environment Perfective maintenance to enhance the system
29
Within the large information system, the database is subject to a life cycle Database lifecycle contains six phases
Database initial study Database design Implementation and loading Testing and evaluation Operation Maintenance and evolution
30
Figure 6.3
31
Determine how and why the current system fails Require to have strong communication skill and interpersonal skills
32
Alone or team (project leader, senior system analyst, ) project, depend on the scale of the system
33
Purposes
34
35
Analysis: to break up any whole into its parts so as to find out their nature, function, and so on Company situation: describes the general conditions in which a company operates, its organizational structure, and its mission
36
Designer must discover what the companys operational components are, and how they function, and how they interact
37
Issues:
What is the organizations general operating environment? What is its mission within that environment? What is the organizations structure?
38
Find existing system (functions, operations, system requirement, people) Collect very broad problem descriptions from people at different levels Distinct the major problems Study the possible constraints
39
40
Scope: define the extend of the design, according to the operational requirement (whole departments, partial departments, individual department) Scope helps define the required data structure, type, and number of entities, physical size of the database
41
42
Focus on the design of database model to support operations and objectives Most Critical DBLC phase Makes sure final product meets requirements
43
44
Figure 6.5
45
Sub-components
Create conceptual design DBMS software selection Create logical design Create physical design
46
47
I. Conceptual Design
Data modeling creates abstract data structure to represent real-world items Must embody a clear understanding of the business and its functional areas High level of abstraction
Hardware and software or database model might not be identified (hardware and software independent) All that is needed is there, and all that is there is needed
48
I. Conceptual Design
Four steps
Data analysis and requirements Entity relationship modeling and normalization Data model verification Distributed database design
49
First step in conceptual design is to discover the data element characteristics Appropriate data element characteristics are those that can be transformed into appropriate information
50
Information needs
What kind of information needed? what kind of information the current system provides? what kind of new information we need to obtain? Who will use the information? how is the information to be used what is the end-users interface?
Information users
51
Information sources
Where is the information to be found? how to extract the information from? What data elements are needed to product the information? what are the attributes, what relationships exist among the data? what is the data volume? how frequently are the data used,? What data transformations are to be used to generate the required information? 52
Information constitution
Data sources
Developing and gathering end-user data views Direct observation of current system Interfacing with systems design group
Business rules
A brief and precise description of a policy, procedures, or principle within a specific organizations environment
53
Business rules help designer to define entity, attributes, relationships, connectivities, cardinalities, and constraints Made by policy makers or managers Documented as companys procedures, standards, and operation manuals
54
Business rules yields several important benefits in the design of new system
Help standardize the companys view of data Constitute a communications tools between users and designers Allow the designer to understand the nature, role, and scope of the data
55
Business rules yields several important benefits in the design of new system
Allow the designer to understand business processes Allow the designer to develop appropriate relationship participation rules and foreign key constraints
56
Must communicate and enforce appropriate standards to be used in the documentation of the design Standards: use of diagram and symbols, documentation writing style, layout, and any conventions
57
Business rules usually define the nature of relationship(s) among the entities The process of defining business rules and developing the conceptual model using ERD is summarized
58
Table 6.2
59
Figure 6.8
60
61
Define entities, attributes, primary keys, and foreign keys Make decision about adding new primary key attributes in order to satisfy end-user and/or processing requirements Make decision about treatment of multivalued attribute Make decision about adding derived attributes to satisfy processing requirement Make decision about placement of foreign keys in 1:1 relationships
62
63
E-R model is verified against proposed system processes Verification requires that the model be run through a series of tests against:
End user views and required transactions Access paths, security, concurrency control Business-imposed data requirements and constraints
64
Revision of original database design with a careful reevaluation of entities Followed by detailed examination of the attributes The process serves several important purposes
66
Module: an information system component that handle a specific function, such inventory, payroll, orders, Create and use modules accomplish several important ends
Easily ad and delete within a team work Simplify design work Prototype quickly Reuse
67
Modules represent E-R model fragments Each module or fragment must be verified against the complete E-T model The verification process is detailed in the following Table
68
Table 6.4
69
Verification process requires the continuous verification of business transaction as well as system and user requirement It is a repeated process for each of the systems modules
70
Figure 6.10
71
Define major components as modules Verification starts with the central (most important) entity Central entity is defined as a entity which has most of the models relationships (involved in the greatest number of relationships) Identify module (sub-system) to which the central entity belongs, and define modules scope and boundary
72
Ensure the modules cohesivity: strength of the relationships found among the module entities Analyze relationships between modules, in terms of module coupling: extent to which modules are independent of one another. The lower coupling the better.
73
Frequency (daily, weekly, monthly, yearly, and exceptions) Operational type (INSERT, ADD, UPDATE, CHANGE, DELKETE, queries and reports, batches, maintenance and backups)
74
Design portions in different physical locations Development of data distribution and allocation strategies
75
DBMS software selection is critical Advantages and disadvantages of each DBMS should be carefully studied Factors affecting purchasing decision
Cost DBMS features and tools Underlying model Portability DBMS hardware requirements
76
Logical design follows the decision to use a specific database model (hierarchy, network, relation, or object-oriented models) Once the database model is selected, we can map the conceptual design onto a logical design It is software-dependent but hardware independent
77
Translates conceptual design into internal model Maps objects in model to specific DBMS constructs (DB2, SQL Server, Oracle, IMS, Infomax, Access, MySQL, Ingress, ) For relational DBMS, logical design include the design of tables, indexes, views, transactions, access authorities,
78
79
Selection of data storage and access characteristics Storage characteristics are a function of the types of devices supported by the hardware, the type of data access methods supported y the system and DBMS selected. It affects the location of data and performance of the system
80
Very technical and hardware dependent (experience required) More important in older hierarchical and network models Becomes more complex for distributed systems Designers favor software that hides physical details
81
Physical Organization
Figure 6.12
82
Creation of special storage-related constructs to house end-user tables Data loaded into tables Design rights to use the database administrator Create the table spaces within the database Create the table within table space
83
84
Performance:
important fact, monitoring evaluation issue
85
Security
Physical security Password security Access rights Audit trails Data encryption
87
Concurrency controls
Simultaneously access a database while preserving data integrity is concurrency control Example
88
89
Database is tested and fine-tuned for performance, integrity, concurrent access, and security constraints Done in parallel with application programming
90
91
Phase 5: Operation
Database considered operational Starts process of system evaluation Unforeseen problems may surface Demand for change is constant
92
Preventative maintenance (backup) Corrective maintenance (recover) Adaptive maintenance (enhancing performance, adding entities and attributes) Assignment of access permissions Generation of database access statistics to improve efficiency and usefulness of system audits, and monitor performance
93
94
Bottom-up
95
Figure 6.14
96
Depends on the scope and size, the design approaches can also be classified into Centralized design
Typical of simple databases Conducted by single person or small team
97
98
Decentralized design
Larger numbers of entities and complex relations Design may divided into several modules Spread across multiple sites Developed by teams
99
Decentralized Design
Figure 6.16
100
Decentralized Design
Definition of boundary and interrelation among data subsets must be very precise All the independently-designed modules will integrated together Aggregate sub-conceptual model into a large conceptual model, it must be verified the combination and transactions
101
Decentralized Design
Aggregation process requires the designer to create a single model in which various aggregation problems must be addressed
Synonyms (same object by different name) and homonyms problems (same name to address different object) Entity and entity subtypes Conflicting objects definition (different data types, different domain definition fro the same attributes)
102
103