International Journal of Information and Computer Science (IJICS) Volume 4, 2015 doi: 10.14355/ijics.2015.04.007
www.iji-cs.org
The Benefits of Object-oriented Methodology for Software Development Amos O Olagunju1, Bassey Akpan2 Computer Science and Information Technology, St. Cloud State University, USA
1
Division of Natural and Computational Sciences, Texas College, Tyler, USA
2
aoolagunju@stcloudstate.edu; 2bakpan@texascollege.edu
1
Abstract This research investigated the relationship between the object-oriented programming approach and software productivity at business organizations. Information systems executives at business organizations rated the quality of software products implemented with the object-oriented approach relative to those software realized with the structured and other traditional approaches. The executives also appraised the object-oriented approach in terms of its reusability strategy and the time for software development. This paper details the inferential data analysis of the use of the object-oriented approach in enhancing software productivity. Keywords Object-oriented Approach; Structured Programming; Software Development; Reusability; Software Quality
Introduction The object-oriented approach is a code packaging tool that allows a designer to impose a reasonable structure on large software systems based on encapsulation and inheritance. Object-oriented programming provides several useful software development innovations. First, it provides a useful operational definition of module as a class. Second, it establishes an organizing principle for task decomposition, and minimization of communication and dependencies among modules. Third, it enforces a useful formal separation between architecture, implementation, and realization. There is separation between public and private members of a class, and the separation of class declaration from class realization. Object-oriented design simplifies the structure of large software systems, just as years ago structured programming simplified the structure of code segments. Object-oriented concepts are important in learning and understanding object-oriented technology. The key concepts are object, class, message, encapsulation, inheritance, and polymorphism. Object orientation technology refers to constructing programs from objects. An object is a combination of data (variables) and actions (methods). Ideally an object is designed so that the data and the actions are closely related, rather than a random collection of entities and processes. Objects are central to object-oriented programming. A program is constructed from a collection of cooperating objects. An object is a logical bundle of variables and methods. It is a self-contained module that can be easily used and understood. The principle of information hiding or encapsulation allows users to have restricted views of an object. An object provides a set of services as public methods that can be shared. The object, its variables and the instructions that implement the methods are hidden from views. This enhances abstraction and modularity. A class is a generalization of a set of objects. A programmer uses a class to declare the variables and methods of any of a set of objects. The type of a class can be private or public. The items of a private class can only be used within the class. The items in a public class can be referenced inside or outside the class. Creating an object is known as instantiating an instance of a class. A class is sometimes called an abstract data type. Classes allow programmers to construct new data types in addition to the built-in data types. The source code of an objectoriented program consists of a number of class descriptions. When a program runs, instances of the classes are invoked in an appropriate order to achieve the goal of the program [27].
39