Spread Knowledge

CS507 - Information Systems - Lecture Handout 26

User Rating:  / 0
PoorBest 

Related Content: CS507 - VU Lectures, Handouts, PPT Slides, Assignments, Quizzes, Papers & Books of Information Systems

Symbols

Entity Relationship Diagram as a technical tool also has predefined set of symbols. The purpose behind all this is to have standardization in the use of technique in varied situations. Some major symbols commonly used are as under.

Symbols

ERD Example

ERD Example

The diagram shows a primary relationship is between two entities, employee and the department. The relationship is of an employee working in a department. The figure also shows information available for each of these entities.

Object Oriented Analysis and Design (OOAD)

The concept of object oriented analysis and design focuses on problems in terms of classes and objects. This concept combines aspects of both entity relationship diagram and data flow diagrams. The object oriented analysis and design tool has been devised to support the object oriented languages, for example C++ and Java. The roots of the concept of object orientation evolved in late 60’s with the emergence of first language “SIMULA 67” as the first object oriented language. Object oriented methodologies do not replace traditional approaches (such as data flow, process flow, and state transition diagrams); they are important new additions to the toolkit.

Why need Object-Orientation?

There are certain positive points which are becoming stronger reasons for the increased use of this technique.

  • Object orientation helps in increasing abstraction and event-driven programming
  • The widespread use of Graphical User Interface (GUI) encourages use of object orientation.
  • Software can be developed on modular basis
    1. Easier to maintain
    2. Easier to upgrade
    3. Easier to test
    4. Easier to develop incrementally
  • Reusable Software – The software developed using object oriented approach can be easily reused due to independence/uniqueness of the objects i.e. an independent accounting module built in object oriented environment can be made a part of a complete ERP solution without developing it again from scratch for ERP.

Object Oriented Analysis

The concept of analysis has been defined from different perspectives in different approaches to system development.

"The development activity consisting of the discovery, modeling, specification and evaluation of requirements,"
Donald Firesmith (Dictionary of Object Technology, 1995),

In OOAD analysis has been defined in a different manner

"The discovery, analysis and specification of requirements in terms of objects with identity that encapsulate properties and operations, message passing, classes, inheritance, polymorphism and dynamic binding.”

Object oriented Design
The concept of design has been defined from different perspectives in different approaches to system development.

“Systems design is the process or art of defining the hardware and software architecture, components, modules, interfaces, and data for a computer system to satisfy specified requirements.”

In OOAD analysis has been defined in a different manner. According to Firesmith

“The design of an application in terms of objects, classes, clusters, frameworks and their interactions is called OOAD Analysis."

Basic Concepts

Following are the basic concepts related to this technique.

An object is defined as

“an abstraction of something in a problem domain, reflecting the capabilities of the system to keep information about it, interact with it, or both.”
Coad and Yourdon (1990)

An object is any abstraction that models a single concept.

Another Definition of object

“A concept, abstraction, or thing with crisp boundaries and meaning of the problem at hand. Objects serve two purposes. They promote understanding of the real world and provide a practical basis for computer implementation.”
Rumbaugh et al. (1991)

Components of object

According to Booch, there are three components of object. Objects have state, behavior and identity.

  • Identity: Who is it?
    Each object has unique identity.
  • Behavior: What can it do?
    What an object can do, how it can respond to events and stimuli.
  • State: What does it know?
    The condition of an object at any moment, affecting how it can behave

Real-world objects share two characteristics: They all have state and behavior.

For example,

  • Dogs have state (name, color, breed, hungry) and behavior (barking, fetching, wagging tail).
  • Bicycles have state (current gear, current pedal cadence, two wheels, number of gears) and behavior (braking, accelerating, slowing down, changing gears).

Objects –

Objects –

Examples

Software objects are modeled after real-world objects in that they too have state and behavior. We might want to represent real-world dogs as software objects in an animation program or a real-world bicycle as software object in the program that controls an electronic exercise bike.

Classes

A class is defined as
“The purpose of a class is to specify a classification of objects and to specify the features that characterize the structure and behavior of those objects.”

A class is any uniquely identified abstraction, that is, model of a set of logically related objects that share the same or similar characteristics. The purpose of a class is to specify a classification of objects and to specify the features that characterize the structure and behavior of those objects.

An object is an instance of some class. All objects are instances of some class. Instance also carries connotations of the class to which the object belongs.

For example, computers are the domain/Class which can be divided into following sub-classes:

  • Laptop computer
  • Desktop computer
  • Palmtop

In the sub-sub-class of laptops, we may identify various laptop models or brands which may then have a further division on a model-wise basis.