×
Expect problems and eat them for breakfast.
--Your friends at LectureNotes
Close

Object Oriented Modeling and Design

by Ajmal Muhammed
Type: NoteInstitute: Cochin University of Science and Technology CUSAT, Eranakulam Course: B.Tech Specialization: Computer Science EngineeringOffline Downloads: 34Views: 1026Uploaded: 6 months agoAdd to Favourite

Touch here to read
Page-1

Object Oriented Modeling and Design by Ajmal Muhammed

Topic:
Ajmal Muhammed
Ajmal Muhammed

/ 150

Share it with your friends

Suggested Materials

Leave your Comments

Contributors

Ajmal Muhammed
Ajmal Muhammed
Writer: Dr. Rajender Nath Vetter: Dr. Dharminder Kumar Chapter 1 Introduction to Object-Oriented Methodology Structure 1.0 Introduction 1.1 Objectives 1.2 Introduction To Modeling 1.2.1 What is modeling 1.2.2 Why do we model? 1.3 Object Oriented Methodologies 1.3.1 Object Oriented Process 1.3.1.1 System Analysis 1.3.1.2 System Design 1.3.1.3 Object Design 1.3.1.4 Implementation 1.3.2 Advantages of Object Oriented Methodologies 1.4 OMT Methodology 1.4.1 Object Model 1.4.1.1 Object and Classes 1.4.1.2 Links and Associations 1.5 Summary 1.6 Suggested Readings/Reference Materials 1.7 Self-Assessment Questions 1
1.0 Introduction Most of the methods used in software development houses are based on a functional and/or data-driven decomposition of the systems. These approaches differ in many ways from the approaches taken by object-oriented methods where data and functions are highly integrated. Object-oriented systems development is a way to develop software by building self-contained modules or objects that can be easily replaced, modified and reused. It depicts the view of real world as a system of cooperative and collaborative objects. In this, software is a collection of discrete objects that encapsulates data and operations performed on that data to model real world objects. A class describes a group of objects having similar structures and similar operations. Object Oriented Philosophy is very much similar to real world and hence is gaining popularity as the systems here are seen as a set of interacting objects as in the real world. To implement this concept, the process-based structural programming is not used; instead objects are created using data structures. Just as every programming language provides various data types and various variables of that type can be created, similarly, in case of objects certain data types are predefined. There are several object-oriented development methods around. In this chapter, Object Modeling Technique (OMT) will be discussed. The OMT method given by Rumbaugh et. al. is based on entity/relationship modeling with extensions to modeling classes, inheritance and behavior. 1.1 Objectives The main objective of this chapter is to introduce the concept of modeling in general and to give an overview of object-oriented methodologies. This chapter introduces OMT methodology and its three basic models viz object 2
model, dynamic model and functional model. Concepts of objects and classes are discussed in detail along with the notations of OMT methodology. Links and associations are defined and illustrated with lucid examples. 1.2 Introduction to Modeling 1.2.1 What is modeling? A model is an abstraction of something for the purpose of understanding it before building it. Because, real systems that we want to study are generally very complex. In order to understand the real system, we have to simplify the system. So a model is an abstraction that hides the non-essential characteristics of a system and highlights those characteristics, which are pertinent to understand it. Efraim Turban describes a model as a simplified representation of reality. A model provides a means for conceptualization and communication of ideas in a precise and unambiguous form. The characteristics of simplification and representation are difficult to achieve in the real world, since they frequently contradict each other. Thus modeling enables us to cope with the complexity of a system. Most modeling techniques used for analysis and design involve graphic languages. These graphic languages are made up of sets of symbols. As you know one small line is worth thousand words. So, the symbols are used according to certain rules of methodology for communicating the complex relationships of information more clearly than descriptive text. Modeling is used frequently, during many of the phases of the software life cycle such as analysis, design and implementation. Modeling like any other object-oriented development, is an iterative process. As the model progresses from analysis to implementation, more detail is added to it. 1.2.2 Why do we model? 3
Before constructing anything, a designer first build a model. The main reasons for constructing models include: • To test a physical entity before actually building it. • To set the stage for communication between customers and developers. 1.3 • For visualization i.e. for finding alternative representations. • For reduction of complexity in order to understand it. Object Oriented Methodologies We live in a world of objects. These objects exist in nature, in man-made entities, in business, and in the products that we use. They can be categorized, described, organized, combined, manipulated and created. Therefore, an object-oriented view has come into picture for creation of computer software. An object-oriented approach to the development of software was proposed in late 1960s. Object Oriented Methodology (OOM) is a new system development approach encouraging and facilitating reuse of software components. With this methodology, a computer system can be developed on a component basis, which enables the effective reuse of existing components and facilitates the sharing of its components by other systems. By using OOM, higher productivity, lower maintenance cost and better quality can be achieved. OOM requires that object-oriented techniques be used during the analysis, design and implementation of the system. This methodology makes the analyst to determine what the objects of the system are, how they behave over time or in response to events, and what responsibilities and relationships an object has to other objects. Object-oriented analysis has the analyst look at all the objects in a system, their commonalties, difference, and how the system needs to manipulate the objects. 4

Lecture Notes