Object modelling
The first phase in analyzing the requirements is to create an object model. The object model presents the static data structure of the real-world system and arranges it into workable components. It defines real world object classes and relationships between them. The object model introduces the dynamic model and functional model because static structure is generally more clearly defined, less dependent on application details, also stable as the solution develops and comfortable for humans to understand.
Information for the object model comes from the problem statement, expert knowledge of the application domain, and basic knowledge of the actual world. Supposing the designer is not a domain expert, the data must be received from the application expert and checked against the model repeatedly.
Object model diagrams create a communication link between computer professionals and Application-domain specialists.
First of all, determine classes and associations as they affect the entire structure and procedure of the problem. Later, add attributes to further explain the general network of classes and its association . Accordingly, unite and organize classes using inheritance. Aim to identify inheritance directly without first defining low-level classes and their attributes many times wrap the class structure to equal planned concepts. Add operations to classes later as a by-product of constructing the dynamic and functional models. Operations alter (change) objects and therefore it is not possible to be fully specified unless the dynamics and functionality are understood.
The following steps are performed in consisting of an object model
- Identify objects and classes.
- Organize a data dictionary .
- Determine the relationship between the objects.
- Determine the attributes of objects and links.
- Arrange and define object classes using inheritance.
- Make sure that access routes apply for likely queries .
- Repeat and improve the model.
- Make group classes into modules.
Phases of object modelling
Analysis - Analysis is the most important aspect of development. First of all we have to analyze the real world problem then build a model for the real world situation problem to show its important properties and domain. In the analysis phase we have to collect the precise and important facts of the requirement .
System design - In the system design phase the primary goal is to identify the entire structure of the system using subsystems, concurrent tasks and data storage .
Object design - In the Object design phase the implementation plan is developed, which means how to implement objects and classes. Existing classes and their associations and attributes all are concerned in this phase. Data structures are also decided and issues of inheritance, aggregation, association and default values are also verified.
Implementation - In the implementation phase the developers are changing the design into a programming language to increase efficiency and flexibility of the modelling and for better design traceability.
There are three types of object modelling models
- Object Model - Object model includes the concepts of abstraction, modularity or encapsulation. Object models identify the classes and their relationship and attributes of classes . Object models just focus on class and object.
- Dynamic model - Dynamic model includes states, event and transition diagrams in the model. In this model the transition between the states and events are checked, like how the transitions are happening between the states.
- Functional model - The main focus of the functional model is on data, like how the data is flowing, where it is stored and different processes of the data. The primary focus is on the data, data flow, data store and process.
Need of modelling
The process of creating a model assists an analyst to simplify and enhance requirements and design details. It assists the analyst to better understand the requirements and also helps in designing. The analyst understands as he or she finishes and then researches the parts of the model. Analysts also raise doubts while creating a model and clear the doubts as the modelling process continues; there is no break in the process. New requirements come and add into the model and after so many times changes happen and the consequences of changes create doubts. The modelling process provides direct benefit to the analyst to understand the requirements and process.