-
define: database
- an organized collection of logically related data
- – storehouse of the data
-
define: data
stored representations of objects and events that have meaning and importance in the user's environment
-
define: information
data processed to increase knowledge in the person using the data
-
Problems with Data Dependency
- -Each application programmer must maintain their own data
- -Each application program needs to include code for the metadata of each file
- -Each application program must have its own processing routines for reading, inserting, updating and deleting data
- -Lack of coordination and central control
- -Non-standard file formats
- -Waste of space to have duplicate data
- -Causes more maintenance headaches
- Biggest prob:
- -When data changes in one file, could cause inconsistencies -Compromises data integrity
-
define: metadata
data that describes the properties and context of user data
-
Database Management System (DBMS)
- A software system that is used to create, maintain, and provide controlled access to user databases
- – software for managing the database
-
Advantages of the Database Approach
- -program-data independence
- -minimal data redundancy
- -improved data consistency
- -improved data sharing
- -increased productivity of application development
- -enforcement of standards-improved data quality
- -improved data accessibility and responsiveness
- -reduced program maintenance
- -improved decision support
-
Program-Data Dependence
-All programs maintain metadata for each file they use
-
Costs and Risks of the Database Approach
- -new, specialized personnel
- -installation and mgmt cost and complexity
- -conversion costs
- -need for explicit backup and recovery
- -organizational conflict
-
Components of the Database Environment
- -CASE Tools
- -Repository
- -Database Management System (DBMS)
- -Database
- -Application Programs
- -User Interface
- -Data Administrators
- -System Developers
- -End Users
-
CASE Tools
– computer-aided software engineering
-
Repository
– centralized storehouse of metadata
-
Application Programs
– software using the data
-
Data Administrators
– personnel responsible for maintaining the database
-
User Interface
– text and graphical displays to users
-
System Developers
– personnel responsible for designing databases and software
-
End Users
-people who use the applications and databases
-
Why NOT use File Systems instead of DB?
- -Program-Data Dependence
- -Duplication of Data
- -Limited Data Sharing
- -Lengthy Development Times
- -Excessive Program Maintenance
-
Information Systems Architecture (ISA)
-Conceptual blueprint for organization’s desired information systems structure
-
Components of Information Systems Architecture (ISA)
- -data
- -processes
- -data network
- -people
- -events and points in time
- -reasons
-
Enterprise data model
describes the high-level entities in an organization and the relationship between these entities
-
three useful modeling techniques
- Decomposition
- Planning Matrixes
- E-R diagram
-
Decomposition
breaking large tasks into smaller tasks in a hierachical structure chart
-
Planning Matrixes
- -Describe relationships between planning objects in the organization
- -Function-to-data entity
-
Two database development approaches
- -System development life cycle
- -Prototyping
-
System Development Life Cycle
- -the traditional methodology used to develop, maintain, and replace information systems
- -Detailed, well-planned development process
- -Time-consuming, but comprehensive
- -Long development cycle
-
prototyping
- 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
- Rapid application development (RAD) method
-
Three database schema
- External Schema
- Conceptual Schema
- Internal Schema
-
Conceptual Schema
- or data model
- is a detailed specification of the overall structure of organizational data that is independent of any database management technology
- a E-R diagram
-
Internal Schema
- consists of logical schemas: relational schema (tables, columns)
- and physical schemas: implemented in a specific DBMS (column types, indexes)
-
External Schema
- -is the User Views, different by users
- -Subsets of Conceptual Schema
- -Can be determined from business-function/data entity matrices
- -DBA determines schema for different users
-
Guidelines in naming a data name
- Must be:
- -Related to business, not technical, characteristics
- -Meaningful and self-documenting
- -Unique
- -Readable
- -Composed of words from an approved list
- -Repeatable
- -Follow a standard syntax
-
Term
word or phrase with specific meaning
-
Fact
association between two or more terms
-
Guidelines for good data definition
- -Gathered in conjunction with systems requirements
- -Accompanied by diagrams
- -Iteratively created and refined
- -Achieved by consensus
-
Entity Type
collection of entities (often corresponds to a table)
-
Entity instance
person, place, object, event, concept (often corresponds to a row in a table)
-
What Should/Shouldn't an Entity Be?
- -SHOULD BE:
- -An object that will have many instances in the database
- -An object that will be composed of multiple attributes
- -An object that we are trying to model
- -SHOULD NOT BE:
- -A user of the database system
- -An output of the database system (e.g. a report)
-
Attribute
- property or characteristic of an entity type
- E.g., customer’s address, name, phone number
-
Identifier (Key)
- An attribute (or combination of attributes) that uniquely identifies individual instances of an entity type
- Represented by underlining attribute name.
-
Characteristics of Identifiers
- -Will not change in value (name?)
- -Will not be optional (can not be address)
- -Not multi-valued (not phone numbers)
- -No intelligent identifiers (e.g. containing addresses that might change)
- -Substitute new, simple keys for long, composite keys (cust_ID generated by DBMS vs. customer name + address)
-
define: Relationship
- An association representing an interaction among instances of entities that must be stored in the database (often as an event)
- Use lines to link entities with relationship
-
Unary Relationship
- a relationship between the instances of a single entity type
- e.g. an employee manages many employee
-
Ternary relationship
relationship between three entity types
-
Cardinality of Relationships
-Identifies number of entity instances of entity B associated with each entity instance of entity A
-
One-to-One (1:1)
Each entity A in the relationship will have exactly one related entity B and vice versa
-
One-to-Many (1:M)
- An entity on one side of the relationship can have many related entities, but an entity on the other side will have a maximum of one related entity
- -Represented by crow’s foot sign at many entity side
-
Many-to-Many (M:N)
- -Entities on both sides of the relationship can have many related entities on the other side
- -Represented by adding two crow’s foot sign
-
Minimum Cardinality
- -If zero, then optional, represented by a circle
- -If one or more, then mandatory, represented by a vertical line
- -Each entity may have different constraints
-
Max Cardinality
- -If 1, represented by a vertical line
- -If more than 1, represented by crow’s foot.
- -Mark in min, max order from the middle
-
Strong entities
- -Exist independently of other types of entities
- -Has its own unique identifier
- -Represented with single-line rectangle
-
Weak entity
- -Dependent on a strong entity…cannot exist on its own
- -Does not have a unique identifier
- -Represented with double-line rectangle
- -Links strong entities to weak entities
-
Associative Entities
an entity type that associates the instances of one or more entity types and contains attributes that are peculiar to the relationsip between those entit instances
|
|