Certification Summary


Object Role Modeling (ORM) is a conceptual modeling language to help database designers create a proper data model. ORM is considered by many to be a successor to entity relationship (ER) modeling, although ORM diagrams can easily be expressed as ER diagrams if necessary. The main difference between ORM and ER is that ORM is designed to accommodate data models during the development stage more easily, where those models change and evolve. ER works best with data models that do not change.

ORM consists of a modeling language called Formal Object-Role Modeling Language (FORML) and a conceptual design process known as the Conceptual Schema Design Procedure (CSDP). Domain experts can use the seven steps of the CSDP in order to design a data model based on the elementary facts of a system. Once the elementary facts are defined, they are drawn on the basic ORM diagram. The rest of the process adds various constraints and performs a number of checks to ensure that the schema accurately captures the data model.

Two-Minute Drill

What Is Object Role Modeling?

  • Object Role Modeling (ORM) helps define the conceptual design for a database.

  • The conceptual design phase works with entities and values but not tables and fields because this phase does not include the type of underlying database (flat file, relational, object-oriented, and so on).

  • The logical design phase converts entities and values into table names and field names and produces a database schema that is referred to throughout the development of the project.

  • The physical design phase converts the logical schema into Structured Query Language (SQL) or other code in order to create an actual database.

  • Visio for Enterprise Architects fully supports ORM diagrams using a helpful add-in.

Create a Conceptual Model of Data Requirements

  • The process of defining a conceptual design in ORM is known as the Conceptual Schema Design Procedure (CSDP).

  • Step one of the CSDP defines all the elementary facts of a system, using a natural-language syntax.

  • Step two of the CSDP draws the elementary facts onto a basic ORM diagram that links entities with either other entities or values using roles.

  • Step three checks for entities that should be combined and checks for values that could be derived arithmetically.

  • Step four adds uniqueness constraints to the diagram and checks to see if any fact types need to be split based on arity.

  • Step five adds mandatory role constraints to the diagram and checks for values that could be derived logically.

  • Step six adds value constraints to the diagram and determines if any subtypes need to be defined for entities that fulfill complex roles.

  • Step seven adds a few other constraints and ensures that final checks are performed.

Self Test

The following questions will help you measure your understanding of the material presented in this chapter. Read all the choices carefully because there might be more than one correct answer. Choose all correct answers for each question.

What Is Object Role Modeling?

1.

Which two of the following methodologies, when combined, make up the Object Role Modeling (ORM) process? (Choose two answers.)

  1. ER

  2. FORML

  3. CSDP

  4. NIAM

   b and c . orm is made up of two components: a language called forml and a process called csdp. x   a is incorrect because er is a completely different notation for conceptual modeling. d is incorrect because, although orm is based partly on niam, niam is not part of orm.

2.

What is the goal of ORM?

  1. Bug-free application design

  2. Accurate physical data model

  3. Accurate conceptual data model

  4. Identification of elementary fact types

   c . the goal of orm is to define an accurate conceptual database model. x   a is incorrect because, although bug-free application design is a benefit of proper database modeling, it is not the primary goal of orm. b is incorrect because orm deals on a conceptual level and not a physical one-the database type does not enter into consideration at this point. d is incorrect because, although it is a step in the orm process, identifying fact types is not the goal of the orm process.

3.

Which of the following components of an application’s data model is defined during the conceptual phase?

  1. The database product name, such as SQL Server or Oracle

  2. The underlying database type, such as relational or hierarchical

  3. Basic table and field names

  4. Elementary system objects

   d . the first step of defining an orm model is identifying the system objects using a fact-based approach. x   a is incorrect because the dbms used does not matter until the logical and physical phases of database design. b is incorrect because the database type does not even matter until the logical phase. c is incorrect because actual table and field names are not identified until the logical phase.

4.

During which phase of database design does a formal schema get created?

  1. Conceptual

  2. Logical

  3. Physical

  4. Metaphysical

   b . the main goal of the logical design phase is to convert the conceptual model into a proper schema. x   a is incorrect because the conceptual phase deals only with objects and their roles. c is incorrect because the physical phase manages the implementation of the schema defined in the logical phase. d is incorrect because there is no metaphysical design phase-at least none that we can prove exists.

5.

Which of the following are benefits that the ORM modeling methodology has over entity relationship (ER) modeling?

  1. ORM models are easier to read than ER.

  2. ORM models include actual data as a validation technique.

  3. ORM models support more complex business rules than ER.

  4. ORM models map directly to SQL statements for physical database design.

   a , b , and c . orm models are written using a natural language, which makes them easier to read and understand and reduces errors. orm models use actual data as a validation technique, which also reduces errors. in addition, there are some complex business rules that can be incorporated into an orm diagram that er cannot accommodate. x   d is incorrect because orm models can easily be converted into a schema but not into sql statements.

Answers

1.

B and C. ORM is made up of two components: a language called FORML and a process called CSDP.
xA is incorrect because ER is a completely different notation for conceptual modeling. D is incorrect because, although ORM is based partly on NIAM, NIAM is not part of ORM.

2.

C. The goal of ORM is to define an accurate conceptual database model.
xA is incorrect because, although bug-free application design is a benefit of proper database modeling, it is not the primary goal of ORM. B is incorrect because ORM deals on a conceptual level and not a physical one—the database type does not enter into consideration at this point. D is incorrect because, although it is a step in the ORM process, identifying fact types is not the goal of the ORM process.

3.

D. The first step of defining an ORM model is identifying the system objects using a fact-based approach.
xA is incorrect because the DBMS used does not matter until the logical and physical phases of database design. B is incorrect because the database type does not even matter until the logical phase. C is incorrect because actual table and field names are not identified until the logical phase.

4.

B. The main goal of the logical design phase is to convert the conceptual model into a proper schema.
xA is incorrect because the conceptual phase deals only with objects and their roles. C is incorrect because the physical phase manages the implementation of the schema defined in the logical phase. D is incorrect because there is no metaphysical design phase—at least none that we can prove exists.

5.

A, B, and C. ORM models are written using a natural language, which makes them easier to read and understand and reduces errors. ORM models use actual data as a validation technique, which also reduces errors. In addition, there are some complex business rules that can be incorporated into an ORM diagram that ER cannot accommodate.
xD is incorrect because ORM models can easily be converted into a schema but not into SQL statements.

Create a Conceptual Model of Data Requirements

6.

You are the database designer for a large project and have just completed the Conceptual Schema Design Procedure (CSDP) process to create your database’s conceptual design. After the conceptual design is complete, what is the next step in defining your database?

  1. Normalize your tables to remove ambiguity and redundancy.

  2. Map the conceptual design to a logical database schema.

  3. Load the SQL statements into SQL Query Analyzer and execute them.

  4. Since the CSDP is iterative, go back to the first step and start again.

   b . at the end of the csdp, the resulting conceptual diagram can easily be mapped to a logical design schema, which is the next step in the database design process. x   a is incorrect because completed orm diagrams are normalized-all redundancies and inaccuracies have been removed through the rigorous validation process of the csdp. c is incorrect because there are no sql statements at the end of the csdp process. d is incorrect because once the process is complete, it s finished-it is not iterative.

7.

You are responsible for designing the database for a retail store. The elementary facts you have identified to date are

  • Item 0001 retails for the Price $15.50.

  • Item 0001 wholesales for the Price $6.75.

  • Item 0001 has the ItemName “Black T-shirt with pocket.”

  • Item 0001 is produced by the Vendor “The T-shirt Company.”

  • Item 0001 is in Inventory in the Quantity 5.

Which of the following objects are entities in our Object Role Model? (Choose all that apply.)

  1. Item

  2. ItemName

  3. Price

  4. Inventory

  5. Vendor

   a , d , and e . the entities of the model are item, vendor, and inventory. entities have properties of their own, while values are properties for other entities. x   b is incorrect because itemname is a property of an item and does not have properties of its own. c is incorrect because price is the property of an item and also does not have its own properties.

8.

Which of the following statements best describes a unary fact?

  1. A unary fact defines a relationship between two objects.

  2. A unary fact defines a property of a single object.

  3. A unary fact defines a relationship between an object and a value.

  4. A unary fact sets a uniqueness constraint for a role.

   b . a unary fact is a property of a single object. this is generally a two-state property- student is enrolled. the student either is or is not enrolled. x   a is incorrect because only one object is involved in a unary fact. c is incorrect because a value is not specified. d is incorrect because a unary fact does not set uniqueness constraints.

9.

Which of the following statements best describes a binary fact? (Choose two answers.)

  1. A binary fact defines a relationship between two objects.

  2. A binary fact defines a relationship between two or more objects.

  3. A binary fact defines a relationship between an object and a value.

  4. A binary fact sets a uniqueness constraint for a role.

   a and c . binary facts define the relationship between an object and either another object or a value. b is incorrect because binary facts do not include more than two objects. d is incorrect because binary facts do not set uniqueness constraints.

10.

What is the purpose of checking an ORM model for arithmetic derivations?

  1. Arithmetic derivations should remain in the model because they reduce the amount of disk space required for a database.

  2. Arithmetic derivations check to see if any facts can be derived using business rules or logic.

  3. Arithmetic derivations should remain in the model because their values cannot be derived any other way.

  4. Arithmetic derivations can be removed from the model because they can be derived using mathematics.

   d . checking for arithmetic derivations helps trim the data model of unnecessary facts. a data model that is smaller results in a smaller and more efficient database. x   a is incorrect because facts that can be trimmed due to arithmetic deviation should be removed from the model. b is incorrect because logical derivations, not arithmetic derivations, deal with trimming because of business rules. c is incorrect because arithmetic derivations can in fact be derived in another way-using mathematics.

11.

Which of the following answers most accurately describes the business rule depicted in the following illustration?

click to expand

  1. An object of type A relates to zero or one objects of type B. An object of type B relates to zero or one objects of type A.

  2. An object of type A must relate to one object of type B. An object of type B must relate to one object of type A.

  3. An object of type A relates to zero or more objects of type B. An object of type B relates to zero or more objects of type A.

  4. An object of type A must relate to one object of type B. An object of type B cannot relate to any objects of type A.

   b . the presence of a solid dot on both objects indicates that they are both mandatory, whereas the presence of uniqueness constraints on both roles indicates that each object can occur only once. therefore, the relationship between a and b is a one-to-one relationship. x   a is incorrect because the solid dot on both objects indicates that they are both mandatory. c is incorrect because the presence of the lines above the roles indicates that the relationship is unique and therefore must occur at most once. d is incorrect because if object a relates to object b, then logically object b also has a relationship to object a.

12.

Which of the following diagrams best depicts the statement, “An employee can have one or more offices but cannot have two offices in the same building.”?

click to expand

  1. Diagram A

  2. Diagram B

  3. Diagram C

  4. Diagram D

   a . diagram a establishes that an employee and a building are unique to each other. x   b is incorrect because an employee is not unique to an office; that is, he can have more than one. c is incorrect because this diagram supports an employee having more than one office in the same building, which he is not allowed to have. d is incorrect because this diagram indicates that there must be only one employee to an office, which we cannot assume.

13.

Which of the following diagrams best depicts the statement, “A candidate must have either a phone number or an e-mail address.”?

click to expand

  1. Diagram A

  2. Diagram B

  3. Diagram C

  4. Diagram D

   b . the external mandatory constraint is represented by a dot inside a circle and indicates that either the phone number or the e-mail address, or both, must contain a value. x   a is incorrect because the u inside a circle represents a uniqueness constraint and not a mandatory constraint. c is incorrect because it does not establish a mandatory relationship between a phone number and an e-mail address. d is incorrect because it also fails to establish a mandatory relationship between a phone number and an e-mail address.

14.

What is a set comparison constraint?

  1. A constraint that restricts the value of a field to be less than or equal to the value of another field

  2. A constraint that restricts objects from filling certain roles unless other roles are also filled

  3. A constraint that restricts the value of a field to specified values

  4. A constraint that restricts certain fields to be read-only

   b . a set comparison constraint restricts an object from fulfilling a role unless another role is also being filled. for instance, in orm we can restrict student objects from filling the has graduated role until the paid tuition role has been filled. x   a is incorrect because a set constraint cannot handle complex operators such as less than or equal to . c is incorrect because this is the job of value constraints. d is incorrect because there are no read-only constraints in orm.

Answers

6.

B. At the end of the CSDP, the resulting conceptual diagram can easily be mapped to a logical design schema, which is the next step in the database design process.
xA is incorrect because completed ORM diagrams are normalized—all redundancies and inaccuracies have been removed through the rigorous validation process of the CSDP. C is incorrect because there are no SQL statements at the end of the CSDP process. D is incorrect because once the process is complete, it’s finished—it is not iterative.

7.

A, D, and E. The entities of the model are Item, Vendor, and Inventory. Entities have properties of their own, while values are properties for other entities.
xB is incorrect because ItemName is a property of an Item and does not have properties of its own. C is incorrect because Price is the property of an Item and also does not have its own properties.

8.

B. A unary fact is a property of a single object. This is generally a two-state property— “Student is enrolled.” The student either is or is not enrolled.
xA is incorrect because only one object is involved in a unary fact. C is incorrect because a value is not specified. D is incorrect because a unary fact does not set uniqueness constraints.

9.

A and C. Binary facts define the relationship between an object and either another object or a value.
B is incorrect because binary facts do not include more than two objects. D is incorrect because binary facts do not set uniqueness constraints.

10.

D. Checking for arithmetic derivations helps trim the data model of unnecessary facts. A data model that is smaller results in a smaller and more efficient database.
xA is incorrect because facts that can be trimmed due to arithmetic deviation should be removed from the model. B is incorrect because logical derivations, not arithmetic derivations, deal with trimming because of business rules. C is incorrect because arithmetic derivations can in fact be derived in another way—using mathematics.

11.

B. The presence of a solid dot on both objects indicates that they are both mandatory, whereas the presence of uniqueness constraints on both roles indicates that each object can occur only once. Therefore, the relationship between A and B is a one-to-one relationship.
xA is incorrect because the solid dot on both objects indicates that they are both mandatory. C is incorrect because the presence of the lines above the roles indicates that the relationship is unique and therefore must occur at most once. D is incorrect because if object A relates to object B, then logically object B also has a relationship to object A.

12.

A. Diagram A establishes that an employee and a building are unique to each other.
xB is incorrect because an employee is not unique to an office; that is, he can have more than one. C is incorrect because this diagram supports an employee having more than one office in the same building, which he is not allowed to have. D is incorrect because this diagram indicates that there must be only one employee to an office, which we cannot assume.

13.

B. The external mandatory constraint is represented by a dot inside a circle and indicates that either the phone number or the e-mail address, or both, must contain a value.
xA is incorrect because the U inside a circle represents a uniqueness constraint and not a mandatory constraint. C is incorrect because it does not establish a mandatory relationship between a phone number and an e-mail address. D is incorrect because it also fails to establish a mandatory relationship between a phone number and an e-mail address.

14.

B. A set comparison constraint restricts an object from fulfilling a role unless another role is also being filled. For instance, in ORM we can restrict Student objects from filling the “has graduated” role until the “paid tuition” role has been filled.
xA is incorrect because a set constraint cannot handle complex operators such as less than or equal to. C is incorrect because this is the job of value constraints. D is incorrect because there are no read-only constraints in ORM.

LAB QUESTION

1.

Match the ORM artifact in the left column with its graphical symbol in the right column.

A. Entity

1. A letter U inside a circle

B. Value

2. A solid oval

C. External uniqueness constraint

3. A line above one or more roles

D. Internal uniqueness constraint

4. A solid dot

E. Mandatory constraint

5. A dotted oval

 a matches to 2. an entity is represented by a solid oval. b matches to 5. a value is represented by a dotted oval. c matches to 1. an external uniqueness constraint is represented by a letter u inside a circle. d matches to 3. an internal uniqueness constraint is represented by a line above one or more roles. e matches to 4. a mandatory constraint is represented by a solid dot.

Answers

1.

A matches to 2. An entity is represented by a solid oval.

B matches to 5. A value is represented by a dotted oval.

C matches to 1. An external uniqueness constraint is represented by a letter U inside a circle.

D matches to 3. An internal uniqueness constraint is represented by a line above one or more roles.

E matches to 4. A mandatory constraint is represented by a solid dot.




MCSD Analyzing Requirements and Defining. NET Solutions Architectures Study Guide (Exam 70-300)
MCSD Analyzing Requirements and Defining .NET Solutions Architectures Study Guide (Exam 70-300 (Certification Press)
ISBN: 0072125861
EAN: 2147483647
Year: 2003
Pages: 94

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net