Object oriented methodology defines a method to develop an application, software or a system. The process starts with an analysis where the user requirement is understood by the developer. After analysis, in the designing stage, an application model is created where more details are added to the model.
The last stage is an implementation where the programmer translates the model into a system using programming language, database, or hardware. This process is seamless which means that no information is lost when the developers switch from one stage to another.
Object Oriented Methodology Stages
System conception starts with the individual who identifies the business requirement and also has a knowledge of blooming technology. He comes up with an idea of an application and discusses it with the developer. Developer understands the requirement of the application and lists out what features the developed application must have, what cost it will require to build the application, will the cost of the application justify the need of the application.
The requirement statements are sometimes incomplete, vague or sometimes they are not even correct. The software analyst tries to figure out the big picture of the complete application i.e. for whom the application is to be developed, what problems will the application solve; when, where and why it will be needed and what will be the workflow of the application and so on.
Analysis phase does not talk about how the application will be formulated. Analysis stage only considers what is to be formulated. The analysis phase has two models, domain model and application model. The domain model is built to identify the real-world objects that have a correlation with the system. Like the ATM application has real-world object like saving account, current account etc.
The application model identifies the objects that would be the part of the system like executing transactions, display the balance, etc. So overall, the analysis phase has is all about planning and deciding what has to be built.
In the system design phase, the developer uses the modelling language to express different parts that would build the system. Each part of the system is model separately. In the system modelling stage, the elements of the system such as its architecture, components, interface and data are designed and organized such that they are easy to develop. The system design phase includes the following steps:
- The system developers prepare system performance estimate and identify system feasibility.
- It is not possible to implement the entire system in bulk; the system developers arrange system into subsystem which eases the task of developers.
- The developer also identifies the concurrency between the objects so that they can be folded in a single thread of control.
- The developers also make policies for handling the errors, optimize certain performance characteristics.
- The developer also makes the strategy to assign subsystems to the hardware.
- The software developers also design the software control strategy.
The class designer elaborates the analysis model and adds detail to the analysis model whereas the system design explains the plan of action. The class design defines the classes and relationship between the classes along with this it also selects algorithms for the operation.
The implementation phase put all the classes and relationship between the classes into the programming language, relate it with a database and assigning it to hardware. While transforming class design to a code programmer must follow good engineering practice such as the code can be traced easily, the code should be reusable.
With all these stages the object-oriented methodology proposes the life cycle development of a system. These stages of object-oriented methodology can be used by the developers to develop each part of the system.