MIS 3360
First Normal Form (1NF)
-An attribute value in a relation's row must be a single value from the domain -Each relation must be able to be identified by a primary key -Each row is unique (no rows can be identical) -All relations are in 1NF
Level-0 Diagram
-Represents a system's major processes (functions), data flows, and data stores at a high level of detail -Processes are labeled 1.0, 2.0, ect. -Processes will be decomposed into more primitive (lower-level) DFDs
Second Normal Form (2NF)
-The relation is in 1NF -There are no Partial Dependencies -A Partition Dependency exists: a) If the relation has a composite primary key b) If attributes in the relation depend only on part of the primary key and not entire primary key
Third Normal Form (3NF)
-The relation is in 2NF -There are no Transitive Dependencies -A transitive dependency exists when a non-primary key attribute depends on other non-primary key attributes rather that depending upon the primary key
Logical Database Modeling and Design
1. Develop a logical data model for each known user interface 2. Combine data requirements from all user interface into a single consolidated logical data model (view integration) 3. Translate the conceptual data model into normalized data 4. Compare the consolidated logical data model with the translated model to produce a final logical data model
Rules of Normalization
1. Entries in cells are simple (single value) 2. Entries in a given column are from the same set of values 3. Each row is unique (non-null primary key) 4. Columns can be interchanged/ stored in any sequence 5. Row can interchanged/ stored in any sequence -Normal forms (1NF, 2NF, 3NF)
Properties of Relations
1. Entries in cells are simple (single value) 2. Entries in columns are from the same set of values 3. Each row is unique 4. The sequence of columns con be interchanged without changing the meaning/use of the relation 5. The rows may be interchanged/stored in any sequence
Level-n Diagram
A DFD that is the result of n nested decompositions from a process on a level-0 diagram
Identifier
A candidate key that has been selected as the unique, identifying characteristic for an entity type
Data type
A coding scheme recognized by system software for representing organizational data.
Entity Type
A collection of entities that share common properties or characteristics.
Data flow splitting
A composite data flow at a higher level is split and different parts go to different processes in the lower level DFD. The DFD remains balanced because the same data is involved, but split into two parts.
Branch (Activity Diagram)
A condition whose results provide transitions to different activity paths
Indifferent condition
A condition whose value does not affect which actions are taken for two or more rules. E.g. Hours worked for Salaried Employees
Transitive dependency
A functional dependency between non-key attributes
Supertype
A generic entity type that has a relationship with one or more subtypes
Entity Relationship Diagram (ERD)
A graphical representation of an E-R model.
Object class (class)
A logical grouping of objects that have the same (or similar) attributes, relationships, and behaviors (methods)
Gane and Sarson
A popular symbol set used in data flow diagrams. Processes, data flows, data stores, and external entities all have a unique symbol.
Attribute
A property or characteristic of an entity or relationship type that is of interest to the organization (Ex. EMPLOYEE entity: Employee_ID)
Unary Relationship (Recursive)
A relationship between instances of a one entity type.
Binary Relationship
A relationship between the instances of two entity types
Ternary Relationship
A simultaneous relationship among the instances of three entity types
Homonyms
A single attribute name that is used for two or more different attributes.
Subtype
A subgrouping of the entities in an entity type that is meaningful to the organization and that shares common attributes or relationships distinct from other subgroupings
Query
Accesses (but does not alter) the state of an object
Activity (Basic Notation)
Action that must take place for a process to be completed
Hashed
Address for each row is determined using an algorithm
Complete
All subclasses have been specified (not the same as total specializtion)
Update
Alter the state of an object
Foreign Key
An FK is an attribute that appears as a non-primary key attribute in one relation and as a primary key attribute (or part of a primary key) in another relation
Decision Tables
An analysis model that specifies complex business rules or logic concisely in an easy-to-read tabular format, specifying all of the possible conditions and actions that need to be accounted for in business rules.
Extend relationship
An association between two use cases where one adds new behaviors or actions to the other
Include relationship
An association between two use cases where one use case uses the functionality contained in the other
Required attribute
An attribute of an entity that must have a value for each entity instance.
Composite attribute
An attribute that has meaningful component parts (attributes).
Optional attribute
An attribute that may not have a value for every entity (or relationship) instance with which it is associated.
Derived attribute
An attribute whose values can be calculated from related attribute values
Overlap rule (letter o)
An entity instance can simultaneously be a member of two (or more) subtypes
Partial specialization (single line
An entity instance of the supertype does not have to belong to any subtype, and may or may not be an instance of one of the subtypes
Weak Entity
An entity that displays existence dependence and inherits the primary key of its parent entity. For example, a DEPENDENT requires the existence of an EMPLOYEE.
Strong Entity
An entity that is existence-independent, that is, it can exist apart from all of its related entities. Also called a regular entity
Functional Decomposition
An iterative process of breaking the description of a system down into finer and finer detail, which creates a set of charts in which one process on a given chart is explained in greater detail on another chart.
File organization
Arranging related records in secondary memory for storage, retrieval, and updates
Trigger
Assertion/rule that governs validity of
Candidate Key
Attribute (or combination of attributes) that uniquely identifies each instance of an entity type
Determinant
Attribute the determines other attributes
Primary Key
Attribute whose value is unique across all occurrences of a relation
Activity (Activity Diagram)
Behavior that an object carries out while in a particular state
Synchronous message
Caller has to wait for the receiving object to finish executing the called operation before it can resume execution itself
Partitioning
Capability to split a table into separate sections
Concrete class
Class that can have direct instances
Constructor
Creates a new instance of a class
Physical database design
Database tables
Gateway
Decision point
Abstract class
Defines the form/protocol of the operation, but not its implementation
Use Cases
Depiction of a system's behavior/functionality under various conditions as the system responds to requests from users
Connection
Depicts a usage relationship between an actor and use case
Use Case Diagram
Depicts system behavior along with the key actors that interact with the system
Data Flow Diagram (DFD)
Depicts the movement of data between external entities and the processes and data stores within a system
Disjoint
Descendant may not from more than one subclass
Overlapping
Descendent may be from more than one of the subclasses
Entity Relationship Modeling
Detailed, logical representation of the entities, associations and data elements for an organization or business area
Total specialization (double line)
Each entity instance of the supertype must be a member of some subtype in a relationship
Referential Integrity Constraint
Each foreign key value must match a primary key value in another relation, OR the foreign key
Full functional dependency
Each non-primary key attribute is identified by the WHOLE Primary key
Join (Activity Diagram)
End of parallel activities
Object
Entity with a well-denied role in an application domain with state, behavior, and identity characteristics (single occurrence of a class)
Pointer
Field of data that can be used to locate a related field/row of data
Stored data structure
Grouping logical database model attributes into physical records
Disjoint rule (letter d)
If an entity instance of the supertype is a member of one subtype, it cannot simultaneously be a member of any other subtype
System boundary
Includes all the relevant use cases: -A boundary is the dividing line between the system and its environment -Use cases are within the boundary -Actors are outside of the boundary
Multivalued attribute
May take on more than one value for a given entity instance
Message (Sequence Diagram)
Means by which objects communicate with each other
Business Process Modeling
Modeling the standard methods for accomplishing a particular task necessary for an organization to function
Relation
Named, 2-dimensional tables of data -Set of named columns (attributes) -Arbitrary number of unnamed rows (records) -Primary key (identifier)
Logical database design
Normalized relation
Triggering Operations
Other business rules that protect the validity of attribute values
Data integrity controls
Preventive measures that improve data quality -Default Value -Range Control -Referential integrity -Null value
Normalization
Process of converting complex data structures into data structures characterized by simplicity, non-redundancy, and minimal maintenance
Level
Refers to degree of detail in the use case description (1-Summary... 5-Detail)
Objects (Sequence Diagram)
Represented by boxes at tip of diagram
Sequential
Rows in a file are stored in sequence according to a primary key value
Referential Integrity Constraint
Rules governing relationships between entity types
Polymorphism
Same operation may apply to two of more classes in different ways
Storage media
Selecting media and structures for data storage to make access more efficient
Asynchronous message
Sender does not have to wait for the recipient to handle the message
Domain
Set of all data types and values that attribute can assume(Constraints on valid values for attributes)
Relational Database
Set of tables that are related by foreign keys referencing primary keys
Activity Diagram
Show the conditional logic for the sequence of system activities needed to accomplish a business process
Flow
Shows the sequence of action in a process
Class diagram
Shows the static structure of an object-oriented model: the object classes, their internal structure, and the relationships in which they participate
Discriminator
Shows which property of object class is being abstracted
Entity instance
Single occurrence of an entity type
Field
Smallest unit of named application data recognized by system software
Incomplete
Some additional subclasses are not the model
Business rules
Specifications that preserve the integrity of the logical data model
Rules
Specifies which actions are to be followed for a set of conditions
Functional Dependency (FD)
Specify a relationship between attributes in a relation(A->B, Emp_ID->Name)
Data type
Storage format for each attribute from the logical data model
Action Stubs
The actions that result for a given set of conditions
Fork (Activity Diagram)
The beginning of parallel activities
Conditional Stubs
The conditions relevant to a decision
Cardinality
The number of entity instances associated with another entity
Degree
The number of entity types that participate in a relationship.
Normalization
The process of converting complex data structures into simple, stable data structures -Normalization provides a stepwise approach to designing a relation that is guaranteed to be free of data redundancies using Normal Forms
Gap analysis
The process of discovering discrepancies between two or more sets of DFDs or discrepancies within a single DFD
Indexed
The rows are stored either sequentially or non-sequentially, and an index is created that allows software to locate individual rows
Lifeline (Sequence Diagram)
The time during which an object exists
Activation (Sequence Diagram)
Time period during which an object performs an operation
Simple message
Transfers control from the sender to the recipient without describing the details of the communication
Event (Basic Notation)
Trigger that initiates the start of a process
Synonyms
Two different names used for the same attribute
Abstract use case
Type of use case that is initiated by another use case instead of by an actor
Entity Integrity
Unique, non-null identifiers
Sequence Diagram
Used to show interactions among objects for a particular use case
Merge (Activity Diagram)
Where different paths converge
Swimlanes (Activity Diagram)
columns representing different organizational units of the system
Context Diagram
overview of an organizational system that shows the system boundaries, external entities that interact with the system, and the major information flows between the entities and the system(Always contain 1 process and no data stores)
Level-1 Diagram
results from decomposition of Level-0 diagram