Object Model
An
object model is a
modeling work product that models
a business enterprise, application, framework, or component in
terms of its classes of objects and the relationships between
them.
The typical objectives of an object model are to:
- Analyze concepts.
- Document concepts.
The typical benefits of an object model include:
- It can be used to formally model the concepts in the
endeavor glossary.
- It can be used to develop the design of software
components and modules.
- It can be used to develop test suites of test cases for
unit and integration testing.
The typical contents of an object model are:
- Diagrams:
- Class and Type Specifications:
The typical stakeholders of an object model are:
- Producer:
- Evaluator:
- Approvers:
- Maintainers:
- Users:
An object model is typically developed during the
following phases:
An object model can typically be started if the
following preconditions hold:
The typical inputs to an object model include:
- Work Products:
- Stakeholders:
- This is a living model that is developed
incrementally and iteratively in parallel with other work
products (e.g.,
system requirements specification).
- Different parts of this model are due at different
times:
- Context specifications before corresponding use
case specifications.
- Actor specifications before corresponding use case
diagrams.
- Some parts of this model are typically mandatory
(actor specifications) whereas some parts are optional
(activity diagrams).
- Identify and reuse use cases by using a combination
of:
- The standard function to use case mapping
- The major functions listed in the
application vision statement
- Reusable requirements based on functional areas
(e.g., Content Management).
An object model model is typically constrained by the
following conventions:
- Business enterprise object model
- Application object model
- Component object model
- Framework object model