Unit 3 Study Guide: Software Modeling

3a. Interpret the context appropriate for five commonly used UML artifacts

  1. What is UML?
  2. Name the commonly used UML artifacts.
  3. Why is UML useful?

Imagine writing a report that describes a house, and compare that report to a picture or blueprint of the house. UML is a 'blueprint' that describes software. A picture and diagram convey a description of a house more efficiently and effectively than a written report, while a report has the advantage of communicating more information and more details. However, if we are interested in the architectural style of a house and specific properties of a house, a picture and a relevant diagram can convey that what we need.

Unified Modeling Language (UML) is a widely used set of diagrams for documenting and communicating requirements, architecture, and design of object-oriented software. UML has several diagram types that describe structure and behavior. Name a few of these popular UML diagrams for structure and for behavior.

Object-oriented concepts can be represented by corresponding UML diagrams: class structure-class diagrams; objects-object diagrams; methods-activity diagrams, sequence diagrams, and interaction diagrams, state diagrams and interface-interaction diagrams. To review, read pages 469, 474, 489-493, and 497 of The New Software Engineering; and the article What Is UML?.

UML is useful because the information we need to develop and communicate can be represented in selected UML diagrams. This includes information for development and maintenance phases.

3b. Apply abstraction to the UML artifacts to arrive at essential object-oriented modeling concepts

  1. How can UML be used by an object-oriented methodology?
  2. What are the essential object-oriented modeling concepts?

UML is a relatively rich language for modeling software solutions to real world problems, and it is applicable not just to object-oriented methodologies but to other software development methodologies as well. Object-oriented methodologies use objects, classes, and methods to build problem domain, design, and software models. UML diagrams can be used to describe these models. If you review Unit 3, you will see which parts of UML are 'essential' for modeling object-oriented development and object-oriented systems. To review, read subunit 3.2 and 3.3. In fact, the 4 principles of Object-orientations (information hiding, abstraction, polymorphism, and inheritance) are reflected in the UML diagrams discussed in subunit 3.2: use case, state, class, activity, and interaction diagrams.

Unit 3 Vocabulary

This vocabulary list includes terms that might help you with the review items above and some terms you should be familiar with to be successful in completing the final exam for the course.

Try to think of the reason why each term is included.

  • Behavioral aspects
  • Static aspects
  • Modeling
  • Essential
  • Class
  • UML diagrams for objects
  • Class members
  • Object
  • Encapsulation
  • Inheritance
  • Constructor
  • Interface
  • UML diagrams for methods
Last modified: Monday, August 5, 2019, 4:57 PM