Skip to main content

Object-Oriented System Modeling and Concepts

An introduction to object-oriented modeling, explaining core concepts like objects, classes, attributes, operations, abstraction, encapsulation, inheritance, and polymorphism, along with UML notation for class and instance diagrams.

Save this reading to your study set

Sign up free

As information systems grow increasingly complex, traditional design methods often struggle to manage the scale of modern software. To combat this, engineers use Object Oriented Modelling, a method that breaks down a large, complex system into a number of smaller, co-operating components or subsystems. By designing each component separately, we can simplify the integration of large systems and facilitate the design of distributed systems.

Object Oriented Modelling Principles

The core philosophy of object-oriented design is to create components that are modular and reusable. For a system to be effectively modelled, its components should possess several desirable properties:

  • Defined Responsibility: Each component must have a clearly defined role.
  • Order-Driven Action: A component should act when requested by an "order" from another component.
  • Abstraction of Implementation: Other components should know what a component does, but they do not need to know how it does it.
  • Reusability: Components should be general enough to be used in different contexts, reducing the variety of unique components needed through inheritance.

Understanding Objects and Classes

In an application, we model entities as objects. These can be tangible entities, such as a student, a cycle, or a train ticket, or intangible entities, such as a bank account or a specific data structure.

Objects with similar meanings and purposes are grouped together into a Class. A single member of a class is referred to as an object instance.

Characteristics of Objects

Every object is defined by three fundamental characteristics:

  1. Attributes: These are the data elements or properties of the object. For example, a Student object might have attributes like Name, ID Number, and Department.
  2. State: This describes the current condition of the object at a specific time. For instance, a Ticket might have a state of reserved or waiting list, while a Student might be present or absent.
  3. Operations: These are the actions or behaviors that can be performed on the object, such as Admit student or Cancel ticket.

Keep reading for free.

Create an account to finish this reading and make it part of your study routine.

Continue reading free

Already have an account? Log in

Updated

Study it your way.

Import this reading into your study set to get started with another study mode.

Make it your own.

Keep this reading in a new study set, or add it to one you already use.