Introduction

Conceptual modeling is an important activity for ontology design, object-oriented programming, user interface design, and database design. This lesson is a guided workshop.

The exercises can be found in this LucidChart Document.

Activity I

Represent the following facts in a UML Class Diagram. Only represent in UML what is provided; do not make assumptions; do not add any facts.

  1. a flight reservation is for to one or more passengers and one or more flight segments
  2. a flight reservation has a unique reservation record locator
  3. each flight segment is a flight with a unique number for an airline
  4. a flight has an assigned flight crew which consists of one captain, one first officer, a purser, and 4. some number of flight attendants, but at least one
  5. some flights have a TSA security officer
  6. a flight has a departure and destination airport
  7. an airport is located in a city, state (or region, province), a country, and has a three digit/letter airport code (e.g., BOS for Boston)
  8. a flight is operated on an aircraft
  9. each aircraft has a make, model, year of manufacture, year of entry into service, flight hours, number of cycles, and a tail number

Attempt to sketch the UML Class Diagram for the above facts first before watching the tutorial below which discusses a solution approach:

Activity II

Extract at least three additional facts or constraints from the UML Class Diagram below. Write the facts as a sentence.

One fact is provided as an example.

  1. A customer makes at least one reservation.
  2. …
  3. …
  4. …
UML Class Diagram Containing Facts and Constraints
UML Class Diagram Containing Facts and Constraints

Attempt to write the facts before watching the tutorial below which discusses a solution approach:

Activity III

Add the appropriate classes, attributes, aggregation, composition, or generalization relationship definitions for the red-lined associations based on the facts below.

  • Some courses do not have any lessons.
  • A lesson may not necessarily be in a course.
  • Course have many lessons.
  • A demonstration is a kind of lesson.
  • Every course has one or more instructor.
  • No course can have more than three instructors.
  • Instructors are paid a per-diem rate.
  • Lessons can be bunched together into a stack.
UML Class Diagram With Missing Elements
UML Class Diagram With Missing Elements

Attempt to sketch the UML Class Diagram containing the missing modeling elements before watching the tutorial below which discusses a solution approach:

Summary

This lesson used worked examples to explain UML Class Diagrams.


Files & Resources

All Files for Lesson 30.160

References

None.

Errata

None collected yet. Let us know.

LS0tCnRpdGxlOiAiV29ya3Nob3A6IFVNTCBDbGFzcyBEaWFncmFtIFJlcHJlc2VudGF0aW9uIgpwYXJhbXM6CiAgY2F0ZWdvcnk6IDMwCiAgc3RhY2tzOiAiMCwwIgogIG51bWJlcjogMTYwCiAgdGltZTogNDUKICBsZXZlbDogYmVnaW5uZXIKICB0YWdzOiBVTUwsQ2xhc3MgRGlhZ3JhbSxWaXN1YWwgTW9kZWxpbmcsT250b2xvZ3kKICBkZXNjcmlwdGlvbjogIlRoaXMgbGVzc29uIGlzIGEgZ3VpZGVkIHdvcmtzaG9wIHRoYXQgcHJvdmlkZXMgd29ya2VkIGV4YW1wbGVzCiAgICAgICAgICAgICAgICBvZiBjb25jZXB0dWFsIG1vZGVscyBleHByZXNzZWQgaW4gVU1MIENsYXNzIERpYWdyYW1zLiIKZGF0ZTogIjxzbWFsbD5gciBTeXMuRGF0ZSgpYDwvc21hbGw+IgphdXRob3I6ICI8c21hbGw+TWFydGluIFNjaGVkbGJhdWVyPC9zbWFsbD4iCmVtYWlsOiAibS5zY2hlZGxiYXVlckBuZXUuZWR1IgphZmZpbGl0YXRpb246ICJOb3J0aGVhc3Rlcm4gVW5pdmVyc2l0eSIKb3V0cHV0OiAKICBib29rZG93bjo6aHRtbF9kb2N1bWVudDI6CiAgICB0b2M6IHRydWUKICAgIHRvY19mbG9hdDogdHJ1ZQogICAgY29sbGFwc2VkOiBmYWxzZQogICAgbnVtYmVyX3NlY3Rpb25zOiBmYWxzZQogICAgY29kZV9kb3dubG9hZDogdHJ1ZQogICAgdGhlbWU6IHNwYWNlbGFiCiAgICBoaWdobGlnaHQ6IHRhbmdvCi0tLQoKLS0tCnRpdGxlOiAiPHNtYWxsPmByIHBhcmFtcyRjYXRlZ29yeWAuYHIgcGFyYW1zJG51bWJlcmA8L3NtYWxsPjxici8+PHNwYW4gc3R5bGU9J2NvbG9yOiAjMkU0MDUzOyBmb250LXNpemU6IDAuOWVtJz5gciBybWFya2Rvd246Om1ldGFkYXRhJHRpdGxlYDwvc3Bhbj4iCi0tLQoKYGBge3IgY29kZT14ZnVuOjpyZWFkX3V0ZjgocGFzdGUwKGhlcmU6OmhlcmUoKSwnL1IvX2luc2VydDJEQi5SJykpLCBpbmNsdWRlID0gRkFMU0V9CmBgYAoKIyMgSW50cm9kdWN0aW9uIHsjaW50cm99CgpDb25jZXB0dWFsIG1vZGVsaW5nIGlzIGFuIGltcG9ydGFudCBhY3Rpdml0eSBmb3Igb250b2xvZ3kgZGVzaWduLCBvYmplY3Qtb3JpZW50ZWQgcHJvZ3JhbW1pbmcsIHVzZXIgaW50ZXJmYWNlIGRlc2lnbiwgYW5kIGRhdGFiYXNlIGRlc2lnbi4gVGhpcyBsZXNzb24gaXMgYSBndWlkZWQgd29ya3Nob3AuCgpUaGUgZXhlcmNpc2VzIGNhbiBiZSBmb3VuZCBpbiB0aGlzIFtMdWNpZENoYXJ0IERvY3VtZW50XShodHRwczovL2x1Y2lkLmFwcC9sdWNpZGNoYXJ0LzFkMTYyM2ViLWNlMWMtNGQzZi1iZTM4LTdlMWNjNDZjYjBlYi9lZGl0P3ZpZXdwb3J0X2xvYz0tNTElMkMtMzUlMkMxNzA1JTJDMTE0MyUyQzBfMCZpbnZpdGF0aW9uSWQ9aW52X2VjMTBhMDZhLTBhNGMtNDZlYS1iN2VkLTdjNmRhZjgyMmQwOCkuCgojIyBBY3Rpdml0eSBJCgpSZXByZXNlbnQgdGhlIGZvbGxvd2luZyBmYWN0cyBpbiBhIFVNTCBDbGFzcyBEaWFncmFtLiBPbmx5IHJlcHJlc2VudCBpbiBVTUwgd2hhdCBpcyBwcm92aWRlZDsgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnM7IGRvIG5vdCBhZGQgYW55IGZhY3RzLgoKMS4gIGEgZmxpZ2h0IHJlc2VydmF0aW9uIGlzIGZvciB0byBvbmUgb3IgbW9yZSBwYXNzZW5nZXJzIGFuZCBvbmUgb3IgbW9yZSBmbGlnaHQgc2VnbWVudHMKMi4gIGEgZmxpZ2h0IHJlc2VydmF0aW9uIGhhcyBhIHVuaXF1ZSByZXNlcnZhdGlvbiByZWNvcmQgbG9jYXRvcgozLiAgZWFjaCBmbGlnaHQgc2VnbWVudCBpcyBhIGZsaWdodCB3aXRoIGEgdW5pcXVlIG51bWJlciBmb3IgYW4gYWlybGluZQo0LiAgYSBmbGlnaHQgaGFzIGFuIGFzc2lnbmVkIGZsaWdodCBjcmV3IHdoaWNoIGNvbnNpc3RzIG9mIG9uZSBjYXB0YWluLCBvbmUgZmlyc3Qgb2ZmaWNlciwgYSBwdXJzZXIsIGFuZCA0LiBzb21lIG51bWJlciBvZiBmbGlnaHQgYXR0ZW5kYW50cywgYnV0IGF0IGxlYXN0IG9uZQo1LiAgc29tZSBmbGlnaHRzIGhhdmUgYSBUU0Egc2VjdXJpdHkgb2ZmaWNlcgo2LiAgYSBmbGlnaHQgaGFzIGEgZGVwYXJ0dXJlIGFuZCBkZXN0aW5hdGlvbiBhaXJwb3J0CjcuICBhbiBhaXJwb3J0IGlzIGxvY2F0ZWQgaW4gYSBjaXR5LCBzdGF0ZSAob3IgcmVnaW9uLCBwcm92aW5jZSksIGEgY291bnRyeSwgYW5kIGhhcyBhIHRocmVlIGRpZ2l0L2xldHRlciBhaXJwb3J0IGNvZGUgKGUuZy4sIEJPUyBmb3IgQm9zdG9uKQo4LiAgYSBmbGlnaHQgaXMgb3BlcmF0ZWQgb24gYW4gYWlyY3JhZnQKOS4gIGVhY2ggYWlyY3JhZnQgaGFzIGEgbWFrZSwgbW9kZWwsIHllYXIgb2YgbWFudWZhY3R1cmUsIHllYXIgb2YgZW50cnkgaW50byBzZXJ2aWNlLCBmbGlnaHQgaG91cnMsIG51bWJlciBvZiBjeWNsZXMsIGFuZCBhIHRhaWwgbnVtYmVyCgpBdHRlbXB0IHRvIHNrZXRjaCB0aGUgVU1MIENsYXNzIERpYWdyYW0gZm9yIHRoZSBhYm92ZSBmYWN0cyBmaXJzdCBiZWZvcmUgd2F0Y2hpbmcgdGhlIHR1dG9yaWFsIGJlbG93IHdoaWNoIGRpc2N1c3NlcyBhIHNvbHV0aW9uIGFwcHJvYWNoOgoKPGlmcmFtZSBzcmM9Imh0dHBzOi8vcGxheWVyLnZpbWVvLmNvbS92aWRlby83OTIyOTkyMjU/aD1hOWEzNWI2YTdkJmFtcDtiYWRnZT0wJmFtcDthdXRvcGF1c2U9MCZhbXA7cGxheWVyX2lkPTAmYW1wO2FwcF9pZD01ODQ3OSIgd2lkdGg9IjQ4MCIgaGVpZ2h0PSIyNzAiIGZyYW1lYm9yZGVyPSIwIiBhbGxvdz0iYXV0b3BsYXk7IGZ1bGxzY3JlZW47IHBpY3R1cmUtaW4tcGljdHVyZSIgYWxsb3dmdWxsc2NyZWVuIHRpdGxlPSJVTUwgV29ya3Nob3Agb24gQ2xhc3MgRGlhZ3JhbW1pbmciIGRhdGEtZXh0ZXJuYWw9IjEiPgoKPC9pZnJhbWU+CgojIyBBY3Rpdml0eSBJSQoKRXh0cmFjdCBhdCBsZWFzdCB0aHJlZSBhZGRpdGlvbmFsIGZhY3RzIG9yIGNvbnN0cmFpbnRzIGZyb20gdGhlIFVNTCBDbGFzcyBEaWFncmFtIGJlbG93LiBXcml0ZSB0aGUgZmFjdHMgYXMgYSBzZW50ZW5jZS4KCk9uZSBmYWN0IGlzIHByb3ZpZGVkIGFzIGFuIGV4YW1wbGUuCgoxLiAgQSBjdXN0b21lciBtYWtlcyBhdCBsZWFzdCBvbmUgcmVzZXJ2YXRpb24uCjIuICAuLi4KMy4gIC4uLgo0LiAgLi4uCgohW1VNTCBDbGFzcyBEaWFncmFtIENvbnRhaW5pbmcgRmFjdHMgYW5kIENvbnN0cmFpbnRzXShpbWFnZXMvbC0zMC0xNjAtYWN0aXZpdHktaWktdW1sLmpwZyl7d2lkdGg9IjUwJSJ9CgpBdHRlbXB0IHRvIHdyaXRlIHRoZSBmYWN0cyBiZWZvcmUgd2F0Y2hpbmcgdGhlIHR1dG9yaWFsIGJlbG93IHdoaWNoIGRpc2N1c3NlcyBhIHNvbHV0aW9uIGFwcHJvYWNoOgoKPGlmcmFtZSBzcmM9Imh0dHBzOi8vcGxheWVyLnZpbWVvLmNvbS92aWRlby83OTIzNTM4NjI/aD1mZDA5ZWJkNGY2JmFtcDtiYWRnZT0wJmFtcDthdXRvcGF1c2U9MCZhbXA7cGxheWVyX2lkPTAmYW1wO2FwcF9pZD01ODQ3OSIgd2lkdGg9IjQ4MCIgaGVpZ2h0PSIyNzAiIGZyYW1lYm9yZGVyPSIwIiBhbGxvdz0iYXV0b3BsYXk7IGZ1bGxzY3JlZW47IHBpY3R1cmUtaW4tcGljdHVyZSIgYWxsb3dmdWxsc2NyZWVuIHRpdGxlPSJVTUwgV29ya3Nob3Agb24gQ2xhc3MgRGlhZ3JhbW1pbmciIGRhdGEtZXh0ZXJuYWw9IjEiIC8+CgojIyBBY3Rpdml0eSBJSUkKCkFkZCB0aGUgYXBwcm9wcmlhdGUgY2xhc3NlcywgYXR0cmlidXRlcywgYWdncmVnYXRpb24sIGNvbXBvc2l0aW9uLCBvciBnZW5lcmFsaXphdGlvbiByZWxhdGlvbnNoaXAgZGVmaW5pdGlvbnMgZm9yIHRoZSByZWQtbGluZWQgYXNzb2NpYXRpb25zIGJhc2VkIG9uIHRoZSBmYWN0cyBiZWxvdy4KCi0gICBTb21lIGNvdXJzZXMgZG8gbm90IGhhdmUgYW55IGxlc3NvbnMuCi0gICBBIGxlc3NvbiBtYXkgbm90IG5lY2Vzc2FyaWx5IGJlIGluIGEgY291cnNlLgotICAgQ291cnNlIGhhdmUgbWFueSBsZXNzb25zLgotICAgQSBkZW1vbnN0cmF0aW9uIGlzIGEga2luZCBvZiBsZXNzb24uCi0gICBFdmVyeSBjb3Vyc2UgaGFzIG9uZSBvciBtb3JlIGluc3RydWN0b3IuCi0gICBObyBjb3Vyc2UgY2FuIGhhdmUgbW9yZSB0aGFuIHRocmVlIGluc3RydWN0b3JzLgotICAgSW5zdHJ1Y3RvcnMgYXJlIHBhaWQgYSBwZXItZGllbSByYXRlLgotICAgTGVzc29ucyBjYW4gYmUgYnVuY2hlZCB0b2dldGhlciBpbnRvIGEgc3RhY2suCgohW1s8ZW0+VU1MIENsYXNzIERpYWdyYW0gV2l0aCBNaXNzaW5nIEVsZW1lbnRzPC9lbT5de3N0eWxlPSJmb250LXNpemU6MTBweCJ9XShpbWFnZXMvbC0zMC0xNjAtYWN0aXZpdHktaWlpLXVtbC5qcGcpe3dpZHRoPSI1MCUifQoKQXR0ZW1wdCB0byBza2V0Y2ggdGhlIFVNTCBDbGFzcyBEaWFncmFtIGNvbnRhaW5pbmcgdGhlIG1pc3NpbmcgbW9kZWxpbmcgZWxlbWVudHMgYmVmb3JlIHdhdGNoaW5nIHRoZSB0dXRvcmlhbCBiZWxvdyB3aGljaCBkaXNjdXNzZXMgYSBzb2x1dGlvbiBhcHByb2FjaDoKCjxpZnJhbWUgc3JjPSJodHRwczovL3BsYXllci52aW1lby5jb20vdmlkZW8vNzkyNDE0MjU1P2g9YjQyYWJiZGM2OCZhbXA7YmFkZ2U9MCZhbXA7YXV0b3BhdXNlPTAmYW1wO3BsYXllcl9pZD0wJmFtcDthcHBfaWQ9NTg0NzkiIHdpZHRoPSI0ODAiIGhlaWdodD0iMjcwIiBmcmFtZWJvcmRlcj0iMCIgYWxsb3c9ImF1dG9wbGF5OyBmdWxsc2NyZWVuOyBwaWN0dXJlLWluLXBpY3R1cmUiIGFsbG93ZnVsbHNjcmVlbiB0aXRsZT0iVU1MIFdvcmtzaG9wIG9uIENsYXNzIERpYWdyYW1taW5nIiBkYXRhLWV4dGVybmFsPSIxIj4KCjwvaWZyYW1lPgoKIyMgU3VtbWFyeSB7I3N1bW19CgpUaGlzIGxlc3NvbiB1c2VkIHdvcmtlZCBleGFtcGxlcyB0byBleHBsYWluIFVNTCBDbGFzcyBEaWFncmFtcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIyMgRmlsZXMgJiBSZXNvdXJjZXMKCmBgYHtyIHppcEZpbGVzLCBlY2hvPUZBTFNFfQp6aXBOYW1lID0gc3ByaW50ZigiTGVzc29uRmlsZXMtJXMtJXMuemlwIiwgCiAgICAgICAgICAgICAgICAgcGFyYW1zJGNhdGVnb3J5LAogICAgICAgICAgICAgICAgIHBhcmFtcyRudW1iZXIpCgp0ZXh0QUxpbmsgPSBwYXN0ZTAoIkFsbCBGaWxlcyBmb3IgTGVzc29uICIsIAogICAgICAgICAgICAgICBwYXJhbXMkY2F0ZWdvcnksIi4iLHBhcmFtcyRudW1iZXIpCgojIGRvd25sb2FkRmlsZXNMaW5rKCkgaXMgaW5jbHVkZWQgZnJvbSBfaW5zZXJ0MkRCLlIKa25pdHI6OnJhd19odG1sKGRvd25sb2FkRmlsZXNMaW5rKCIuIiwgemlwTmFtZSwgdGV4dEFMaW5rKSkKYGBgCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiMjIFJlZmVyZW5jZXMKCk5vbmUuCgojIyBFcnJhdGEKCk5vbmUgY29sbGVjdGVkIHlldC4gTGV0IHVzIGtub3cuCgpgYGB7PWh0bWx9CjxzY3JpcHQgc3JjPSJodHRwczovL2Zvcm0uam90Zm9ybS5jb20vc3RhdGljL2ZlZWRiYWNrMi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICBuZXcgSm90Zm9ybUZlZWRiYWNrKHsKICAgIGZvcm1JZDogIjIxMjE4NzA3Mjc4NDE1NyIsCiAgICBidXR0b25UZXh0OiAiRmVlZGJhY2siLAogICAgYmFzZTogImh0dHBzOi8vZm9ybS5qb3Rmb3JtLmNvbS8iLAogICAgYmFja2dyb3VuZDogIiNGNTkyMDIiLAogICAgZm9udENvbG9yOiAiI0ZGRkZGRiIsCiAgICBidXR0b25TaWRlOiAibGVmdCIsCiAgICBidXR0b25BbGlnbjogImNlbnRlciIsCiAgICB0eXBlOiBmYWxzZSwKICAgIHdpZHRoOiA3MDAsCiAgICBoZWlnaHQ6IDUwMCwKICAgIGlzQ2FyZEZvcm06IGZhbHNlCiAgfSk7Cjwvc2NyaXB0PgpgYGAKYGBge3IgY29kZT14ZnVuOjpyZWFkX3V0ZjgocGFzdGUwKGhlcmU6OmhlcmUoKSwnL1IvX2RlcGxveUtuaXQuUicpKSwgaW5jbHVkZSA9IEZBTFNFfQpgYGAK