IGNOU Latest Assignments
IGNOU BCA Assignments IGNOU BCA Assignments
IGNOU BCA Assignments IGNOU MCA Assignments
IGNOU MBA Assignmants IGNOU MBA Assignments

IGNOU > IGNOU Assignments > MCA > MCA 2007 Assignments > Object Oriented Analysis and Design

IGNOU MCA Assignments

Question 1: Explain basic characteristics of the object oriented modeling with examples.

Ans:

Object-Oriented Modeling, or OOM, is a modeling paradigm mainly used in computer programming. Prior to the rise of OOM, the dominant paradigm was functional programming, which emphasized the use of discreet reusable code blocks that could stand on their own, take variables, perform a function of them, and return values.

The Object-Oriented paradigm assist the programmer to address the complexity of a problem domain by considering the problem not as a set of functions hat can be performed but primarily as a set of related, interacting Objects. The modeling task then is specifying, for a specific context, those Objects (or the Class the Objects belong to), their respective set of Properties and Methods, shared by all objects members of the Class.

As an example, in a model of a Payroll System, a Company is an Object. An Employee is another Object. Employment is a Relationship or Association. An Employee Class (or Object for simplicity) ahs Attributes like Name, Birthdate, etc. The Association itself may be considered as an Object, having Attributes, or qualifiers like Position, etc. An employee Method may be Promote, Raise, etc.

The Model description or Schema may grow in complexity to require a Notation. Many notations has been proposed, based on different paradigms, diverged, and converged in a more popular one known as UML.

Characteristics of Object Oriented Technology

  • Identity
  • Classification
  • Polymorphism
  • Inheritance

Identity

The term Object Oriented means that we organize the software as a collection of discrete objects. An object is a software package that contains the related data and the procedures. Although objects can be used for any purpose, they are most frequently used to represent real-world objects such as products, customers and sales orders. The basic idea is to define software objects that can interact with each other just as their real world counterparts do, modeling the way a system works and providing a natural foundation of building system to manage that business.

Classification

In principle, packaging data and procedures together makes perfect sense. In practice, it raises an awkward problem. Suppose we have many objects of the same general type- for example a thousand product objects, each of which could report its current price. Any data these objects contained could easily be unique for each object. Stock number, price, storage dimensions, stock on hand, reorder quantity, and any other values would differ from one product to the next. But the methods for dealing with the data might well be the same. Do we have to copy these methods and duplicate them in every object? Capturing these commodities in a single place. That place is called a class. The class acts as a kind of template for objects of similar nature.

Polymorphism

Polymorphism is used to express the fact that the same message can be sent to many different objects and interpreted in different ways by each object. For example, we could send the message “move” to many different kinds of objects. They would all respond to the same messages, but they might do so in very different ways. The move operation will behave differently for a window and differently for a class piece.

Polymoprhism allows client programs to be written based only on the abstract interfaces of the objects which will be manipulated (interface inheritance). This means that future extension in the form of new types of objects is easy, if the new objects conform to the original interface. In particular, with object-oriented polymorphism, the original client program does not event need to be recompiled (only relinked) on order to make sue of new types exhibiting new (but interface-conformant) behavior.

Inheritance

Inheritance is the sharing of attributes and operations among classes on a hierarchical relationship. A class can be defined as a generalized form and then it specialized in a subclass. Each subclass inherits all the properties of its superclass and adds its own properties in it. For example, a car and a bicycle are subclasses of a class road vehicle, as they both inherits all the qualities of a road vehicle and add their own properties to it. Consider types of bank accounts. Figure below shows how both checkingAccount and SavingsAccount classes inherit from the BankAccoun class.


PREVIOUSINDEXNEXT