- 2073 Bhadra · 6 marks
Identify conceptual classes; create domain model
Short answer
Strategies include a category checklist for concepts like transactions, roles, and physical items, noun phrase identification from use cases, and reusing existing models. Steps: list candidate classes, draw them in a diagram, add associations and attributes, then refine with generalization and review the model.
Describe the strategies to identify conceptual classes. Describe the steps to create a Domain Model used for representing conceptual classes.
A conceptual class is an idea, thing or object of the real problem domain (not a software class) that is important to the system, described by its symbol (name), intension (definition) and extension (set of examples).
Strategies to identify conceptual classes
- Use a conceptual class category list. Check categories such as: physical or tangible objects (Register, Airplane), specifications/descriptions (ProductDescription), places (Store), transactions (Sale, Payment, Reservation), transaction line items (SalesLineItem), roles of people (Cashier, Customer), containers (Store, Bin), things in a container (Item), computer/electromechanical systems (CreditCardAuthorizationSystem), abstract noun concepts (Hunger), organisations (SalesDepartment), events (Sale, Meeting), processes, rules and policies, catalogs, financial records, manuals and books.
- Noun phrase identification. Take the nouns and noun phrases from the use case text (fully dressed description) as candidate classes or attributes. Care is needed since language is ambiguous and some nouns are attributes or synonyms.
- Reuse or modify existing models of the domain from books and standards.
Guidelines: it is better to over-specify than miss concepts; do not exclude a class because it has no attributes; a doubtful concept may be modelled as an attribute only if it is plain data (text/number).
Steps to create a domain model
- List candidate conceptual classes using the strategies above for the current use cases.
- Draw them in a class diagram (rectangles with names only, no operations).
- Add associations needed to satisfy the information requirements (name, multiplicity, role).
- Add attributes that must be remembered (simple data types).
- Refine: add generalisation, remove synonyms and redundant ones, add aggregation if useful, specification classes (e.g.
ProductDescription). - Review the model against the use cases and with the domain experts; iterate.
+-------+ 1 * +------+ 1 1..* +----------+ * 1 +---------+
| Store |-------| Sale |---------| SalesLine|-----| Product |
+-------+ +------+ +----------+ | Descr. |
| 1 +---------+
| 1
+---------+
| Payment |
+---------+
✓ Answer checked by Claude Sonnet 5.5
Related questions
- Conceptual, specification, implementation model classification · Object Oriented Analysis and Design, chapter 2
- Create classes from design class diagrams · Object Oriented Analysis and Design, chapter 4 · asked 2×
- Buy a Product conceptual model · Object Oriented Analysis and Design, chapter 2
- Domain modeling; attributes and associations guidelines · Object Oriented Analysis and Design, chapter 2
- Constraint specifications in bank account model · Object Oriented Analysis and Design, chapter 2
- Model building, verification, validation steps · Simulation and Modeling, chapter 7
- Conceptual design of IS · Information System, chapter 5
- Conceptual dependency and primitives · Artificial Intelligence, chapter 5
- Frequency reuse and channel assignment strategies · Wireless Communication, chapter 2
All Object Oriented Analysis and Design chapter 2 questions →