Object Oriented System Development



Object oriented system development includes a collection of self-contained objects that encompass data and processes. Object oriented approach can use any of traditional approaches in developing information systems. Traditional systems usually either process-centric or data-centric. Object oriented approach become popular because of its several major concepts like real world systems involvement, use case driven, architecture centric, iterative-incremental, polymorphism, encapsulation, inheritance and modularity.

Benefits:          
Object oriented approach become more popular because of increased processor power, decreased processor cost and faster development. Moreover, this approach lets developers focus on system efficiently by allowing analyst to work on system’s data and processes simultaneously as an object. These objects can be developed as an individual fragments and later put together to form full-fledged system. Main advantage of object is they can be used over and over again in many systems without affecting other components of the system. Object oriented approach includes sequence of phases mostly associated to RAD methodology to balance the use of process and data in an object. This can be done by focusing on problems and its root causes. Iterative and incremental development feature in object oriented approach include continuous testing of the entire project and each iteration brings the project towards successful completion within the time period. Modularity makes development process easier by allowing to share different modules among project team members and easier to communicate with users to discuss about requirements throughout the project. 

Drawbacks:
Having attributes and methods to both classes and instances of classes (objects) is one of confusing aspect in object oriented approach. Because, usually class attributes are used to deal with issues related to each and every instances of a class. Main problem with object oriented approach is transition from older methods. In order to introduce object oriented technology developers have to learn new aspects of technology such as terminology, development approach till they become familiar with it. During the early stages of adopting new approach misusage of technology leads to complete unrealistic results.