38 Questions
What is an object in the context of a class?
A specific instance of the class with its own values for an attribute
What is the term for the number of associations between classes in UML?
Multiplicity
What is the difference between an association and a relationship?
An association is in UML, while a relationship is in ERD
What is the minimum constraint in an association?
Zero
How should you read associations and relationships?
Separately in both directions
What is the term for the number of relationships in ERD?
Cardinality
What is another term for 'domain classes' in database classes?
Data entities
What technique uses a checklist of typical types of things to identify domain classes?
Brainstorming Technique
What is the first step in identifying domain classes?
Identify a user and a set of use cases
What type of things are typically found in brainstorming for domain classes?
Tangible things, locations, and roles
What is the purpose of identifying domain classes?
To capture information about the system
What is the next step after identifying a user and a set of use cases?
Brainstorm with the user to identify things involved
What is the outcome of the brainstorming process for identifying domain classes?
An initial list of domain classes
What is the final step in the process of identifying domain classes?
Merge the results, eliminate any duplicates, and compile an initial list
What is the purpose of the association class in Systems Analysis and Design?
To provide a name and meaning for the association
What is the key for the Booking class?
A unique identifier for each booking
What is the term for a hierarchical relationship where subordinate classes are special types of the superior classes?
Generalization/Specialization
What is the superior or more general class in a generalization/specialization hierarchy?
Superclass
What is the concept that subclasses inherit characteristics of the more general superclass?
Inheritance
What is an abstract class?
A class that allows subclasses to inherit characteristics but never gets instantiated
What are the attributes of OnlineSale?
timeOnSite, chatUse, saleDateTime, priorityCode, S&H, tax, totalAmt…
What do subclasses inherit from the superclass?
Both attributes and associations
What type of relationship exists between a car and its wheels?
Aggregation
What is the term for a whole-part relationship where the component part exists separately and can be removed and replaced?
Aggregation
What symbol is used to represent composition in UML diagrams?
Filled-in diamond
What is the main difference between aggregation and composition?
Aggregation allows for removal and replacement of parts, while composition does not.
What is the term for a relationship where one class is a component or part of another class?
Whole Part Relationship
How many types of relationships are there in class diagrams?
3
What is an example of a composition relationship?
An order and its order items
What is the term for a relationship where a subclass inherits characteristics from a parent class?
Inheritance
How many domain classes are in the RMO CSMS overall?
27
What is the purpose of creating an initial draft of the domain model class diagram?
To guide development
What is the benefit of creating one domain model class diagram per subsystem?
To help those working on a subsystem
What may happen when reviewing the use cases from Chapter 3?
Classes and associations will be duplicated
What is the purpose of creating an overall domain model class diagram?
To provide an overview of the whole system
In what stage of the project is the initial draft of the domain model class diagram usually completed?
In early iterations
What should be done when reviewing the use cases from Chapter 3?
Decide what classes and associations are required for each subsystem
What can be done with the complete RMO CSMS Domain Model Class Diagram?
Try completing the Order Fulfilment Subsystem Domain Model Class Diagram
Study Notes
Domain Classes and Entities
- In systems analysis and design, "things" are modeled as domain classes or data entities.
- A domain class is a type of thing that has attributes and relationships with other domain classes.
Identifying Domain Classes
- Use brainstorming techniques to identify domain classes, such as:
- Checklist of typical types of things found in a system (e.g., tangible things, organizational units, sites/locations, incidents/events).
- Noun technique (identify all nouns in the system description and determine if they are domain classes, attributes, or not relevant).
- Identify users and stakeholders to gather information about things involved in the use case.
Domain Classes and Objects
- A domain class is a general concept, whereas an object is a specific instance of the class, with its own attribute values.
Associations and Relationships
- Associations are naturally occurring relationships between classes (e.g., UML term).
- Multiplicity refers to the number of associations between classes (e.g., 1:1 or 1:many).
- Associations can be read in both directions (e.g., "A customer places an order" and "An order is placed by a customer").
- Associations have minimum and maximum constraints, which can be optional or mandatory.
Generalization/Specialization
- Generalization/specialization is a hierarchical relationship where subordinate classes are special types of the superior class.
- Inheritance is the concept that subclasses inherit characteristics of the more general superclass.
Abstract and Concrete Classes
- Abstract classes allow subclasses to inherit characteristics but are never instantiated.
- Concrete classes can have instances.
Whole-Part Relationships
- Whole-part relationships are relationships between classes where one class is part of or a component of another class.
- Aggregation is a whole-part relationship where the component part exists separately and can be removed and replaced.
- Composition is a whole-part relationship where the parts cannot be removed.
Class Diagrams
- There are three types of relationships in class diagrams: association relationships, whole-part relationships, and generalization/specialization relationships.
- Domain model class diagrams show the classes and relationships in a system.
Creating a Domain Model Class Diagram
- There are several ways to create a domain model class diagram, including creating one overall diagram or one per subsystem.
- The domain model class diagram is used to guide development and is updated throughout the development process.
Learn about domain classes and entities in systems analysis and design, including how to identify them using brainstorming techniques and noun identification.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free