System Analysis and Design System Design Mr Ahmad

  • Slides: 18
Download presentation
System Analysis and Design System Design - Mr. Ahmad Al-Ghoul

System Analysis and Design System Design - Mr. Ahmad Al-Ghoul

learning Objectives n n Describe the Steps in Database Design Describe relational and objectoriented

learning Objectives n n Describe the Steps in Database Design Describe relational and objectoriented database models System Analysis and Design Avicenna System Design 2

Steps in Database Design n n After normalization your table designs and considering the

Steps in Database Design n n After normalization your table designs and considering the use of codes, you are now ready to create database. The following steps will guide you to create database and file designs System Analysis and Design Avicenna System Design 3

Steps in Database Design n Identify the entities start by reviewing DFDs and class

Steps in Database Design n Identify the entities start by reviewing DFDs and class diagrams to identify system entities. n In addition, consider any data stores shown in DFDs to determine whether they might represent entities n Verify that there is more than one instance of the entity that occurs in the system n System Analysis and Design Avicenna System Design 4

Steps in Database Design n Identify Relationships Start with an entity and identify all

Steps in Database Design n Identify Relationships Start with an entity and identify all entities with which it shares relationships n carefully analyze each relationship to determine if it is 1: 1, 1: M, or M: N n Describe the relationship with the appropriate verb phrase n Determine the cardinality by discussing the business rules with knowledgeable users n System Analysis and Design Avicenna System Design 5

Steps in Database Design n Add attributes and assign identifiers Identify attributes of the

Steps in Database Design n Add attributes and assign identifiers Identify attributes of the entity that are relevant to the system under development n verify that every data element in the data dictionary is associated logically with an entity n Select the entity’s identifier n System Analysis and Design Avicenna System Design 6

Steps in Database Design n Create 3 NF designs for all tables n Unnormalized

Steps in Database Design n Create 3 NF designs for all tables n Unnormalized tables are converted to First Normal Form by removing repeating groups into separate tables. Second and Third Normal Forms are achieved by reducing and splitting tables so that the only functional dependencies which exist are between the primary keys and the remaining non-key attributes. System Analysis and Design Avicenna System Design 7

Steps in Database Design n Identify all primary, secondary, and foreign keys n n

Steps in Database Design n Identify all primary, secondary, and foreign keys n n A primary key is a field or combination of fields that uniquely and minimally identifies a particular member of an entity Secondary key is a field or combination of fields that can be used to access or retrieve records A foreign key is a field in one table that must match a primary key value in another table in order to establish the relationship between the two tables. When the relationship is one-to-many, the primary key of the file at the one end of the relationship should be contained as a foreign key on the file at the many end of the relationship System Analysis and Design Avicenna System Design 8

Steps in Database Design n Generate the final ERD include new entities identified during

Steps in Database Design n Generate the final ERD include new entities identified during normalization n Make sure that the data dictionary entities for all data stores, records, and data elements are documented completely and correctly n Be sure that all the codes that were developed or identified during the data design process are documented in the data dictionary n System Analysis and Design Avicenna System Design 9

Database Models n database models are ways of organizing data in order to make

Database Models n database models are ways of organizing data in order to make data processing more efficient n Legacy database n n n Hierarchical: depict parent-child relationships using inverted trees Network: depict nonhierarchical associations using pointers The two popular database models now-a day are relational and object-oriented. System Analysis and Design Avicenna System Design 10

Database Models n Relational Databases n n n The principles of relational model was

Database Models n Relational Databases n n n The principles of relational model was introduced during the 1970 s by Dr. E. Codd relational model became popular because their ease of use, flexibility in structure, and powerful Component of a relational model n n n Collection of objects or relations that store the data A set of operators that can act on the relations to produce other relations Data integrity for accuracy and consistency System Analysis and Design Avicenna System Design 11

Database Models n Relational Databases n Definition of a relational database n n A

Database Models n Relational Databases n Definition of a relational database n n A relational database uses relations or two dimensional tables to store information Relational database can run on many platforms, including personal computers, and are well suited to client/server computing Because all the tables are linked, a user can request data that meets specific conditions New entities and attributes can be added at any time without restructuring the entire database System Analysis and Design Avicenna System Design 12

Relational Databases Notice that the relational design avoids redundancy and that all tables are

Relational Databases Notice that the relational design avoids redundancy and that all tables are in 3 NF (all nonkey fields are functionally dependent on the primary key, the whole key, and nothing but the key). System Analysis and Design Avicenna System Design 13

Database Models n Object-Oriented Databases n n n Many systems developers are using object-oriented

Database Models n Object-Oriented Databases n n n Many systems developers are using object-oriented database (OODB) design as a natural extension of the object-oriented analysis process Some IT professionals believe that OODBs will have a major impact and eventually replace the relational approach. (OODB) used primarily for applications with multimedia or complex data Each object in an OODB has a unique object identifier, which is similar to a primary key in a relational database. The identifier allows the object to interact with other objects and form relationships. Programmers use object-oriented languages, to describe and implement object-to-object relationships that resemble the relationships found in a traditional ERD. System Analysis and Design Avicenna System Design 14

Object-Oriented Databases Objects have object identifiers that enable them to communicate and interact. Object

Object-Oriented Databases Objects have object identifiers that enable them to communicate and interact. Object identifier Contains the object identifier for the driver assigned System Analysis and Design Avicenna System Design 15

Sequence Summary n n n Data design tasks include identify the entities; identify relationships;

Sequence Summary n n n Data design tasks include identify the entities; identify relationships; add attributes and assign identifiers; creating an initial ERD; create 3 nf designs for all tables; identify all primary, secondary, and foreign keys; generate the final ERD; and completing the data dictionary entries for files, records, and data elements The most common database models are relational and objectoriented The relational model is powerful and flexible, and provides the best support for client/server architecture Object-oriented (OODB) design is becoming more popular as a natural extension of the object-oriented analysis process Each object in an OODB has a unique object identifier, which is similar to a primary key in a relational database and allows the object to interact with other objects and form relationships System Analysis and Design Avicenna System Design 16

Sequence Summary n In this Sequence we have n n Explained data design tasks

Sequence Summary n In this Sequence we have n n Explained data design tasks include identify the entities; identify relationships; add attributes and assign identifiers; creating an initial ERD; create 3 nf designs for all tables; identify all primary, secondary, and foreign keys; generate the final ERD; and completing the data dictionary entries for files, records, and data elements Defined and distinguished between relational and object-oriented database models System Analysis and Design Avicenna System Design 17

Reference [1] System Analysis and Design, Sixth Edition Authors: Gary B. Shelly, Thomas J.

Reference [1] System Analysis and Design, Sixth Edition Authors: Gary B. Shelly, Thomas J. Cashman and Harry J. Rosenblatt Publisher: SHELLY CASHMAN SEWIES. System Analysis and Design Avicenna System Design 18