Object Oriented Analysis in Object Oriented Analysis & Design
Last Updated :
14 Mar, 2024
OOAD is a way of organizing and planning how to build computer programs by thinking in terms of ingredients (which we call objects). Just as you decide what each ingredient does in a recipe, OOAD helps us decide what each part of a computer program should do, how they should work together, and what makes each part special.
Imagine you're cooking a delicious meal. To make it, you have various ingredients like vegetables, spices, and groceries and each ingredient has a unique role. Object-Oriented Analysis and Design (OOAD) is a bit like cooking, but for creating computer programs and systems.
Important Topics for Object Oriented Analysis
Object Modeling is a method used in computer programming and system design to create a clear and structured representation of real-world entities or concepts as Objects. These objects have specific attributes (characteristics) and behaviors (actions), allowing us to better understand and plan how they interact with a software system.
For example, you're describing a bicycle:
- Attributes: You'd list the things that make the bicycle unique, like its color, size, brand, and the number of wheels. For example, My bicycle is blue, medium-sized, a Mountain Rider and has two wheels.
- Behaviors: You'd also note what the bicycle can do, like to move forward, brake, turn left, and turn right. For instance, My bicycle can go forward when I pedal, and it stops when I squeeze the brakes.
Dynamic Modeling is a method used in system design and software engineering to describe how objects or components in a system interact and change over time. It focuses on showing the behaviors, events, and transitions that occur within a system during its operation.
Example:
Imagine you're at an airport. and you want to understand how a passenger's journey through the airport works, from checking in to boarding the plane. Dynamic Modeling helps us understand this process by showing how different parts of the system (like passengers, airline staff, and airport systems) interact and change during this journey.
Function Modeling is a technique used in system design and software engineering to define what each component or object in a system can do, specifying its functions, responsibilites, and interactions. It helps in clarifying the roles and behaviors of different elements within a system. Function Modeling is like writing a to-do-list for different jobs in a restaurant. It tells us what each job does and how they work together.
Example:
Take the example of a restaurant:
- Chef: Cooks food.
- Waiter/Waitress: Severs customers.
- Cashier: Handle Payments
- Busboy/Busgirl: Clears tables
- Manager: Oversees everything
Each job has a clear function, like cooking, serving or managing. This helps everyone know their role and keeps the restaurant running smoothly, just like knowing your job description at work.
Structured Analysis and Object-Oriented Analysis are two different appraoches used in software development to understand, desgine, and model complex systems. Let's understand these two methods:
Structured Analysis is a method used in computer programming and system design. It's like creating a detailed roadmap for building a system. This approach brakes the system down into smaller, manageable parts called modules or functions. Each module has its job and interacts with others using clear instructions. Structured Analysis helps understand how data moves and how processes work in a system.
Object-Oriented Analysis is an approach to designing systems where we model real-world things as objects with characteristics and actions. It's about understanding the real-world objects you need in your software and creating digital versions of them. Each object has its own unique capabilities and characteristics. If focuses on objects and their interactions.
Now let's compare Structured Analysis and Object-Oriented Analysis:
Aspect
| Structured Analysis
| Object-Oriented Analysis
|
---|
Focus
| Processes, data flows, step-by-step procedures.
| Modeling real-wrold objects, object interactions.
|
---|
Representation
| Data flow diagrams, process models
| Class diagrams, object diagrams, object-oriented techniques
|
---|
Abstraction
| More-process oriented, less direct real-world object representation.
| Direct modeling of real-world entities and their relationships.
|
---|
Complexity
| Well-suited for simpler systems where processes are the primary focus.
| Better suited for compelx systems with many interacting objects.
|
---|
Reusability
| May require more effort to reuse component due to process-centric nature.
| Promotes reusability through the creation of reusable objects classes, suitable for libraries and frameworks.
|
---|
In short, Structured Analysis is process-centric, focusing on how a system's functions works together, while Object-Oriented Analysis is object-centric, focusing on modeling real-world entities and their interactions. The choice between depend on the nature and complexity of the software project and the preferences of the development team.
Conclusion
Object-Oriented Analysis and Design (OOAD) is a method for building software. It uses Object Modeling, Dynamic Modeling and Function Modleing to understand real-world things, their behavior, and what the software need to do. Sturctured Analysis is a different way of designing software, focusing on breaking it into function and data. OOAD is a powerful way to make software by modeling objects and their interactions, while Structured Analysis is more about functions and data.
Similar Reads
Object-Oriented Analysis and Design(OOAD)
Object-Oriented Analysis and Design (OOAD) is a way to design software by thinking of everything as objects similar to real-life things. In OOAD, we first understand what the system needs to do, then identify key objects, and finally decide how these objects will work together. This approach helps m
6 min read
OOAD Full Form
OOAD stands for Object-Oriented Analysis and Design. OOAD is a software engineering methodology that employs object-oriented principles to model and design complex systems. It involves analyzing the problem domain, representing it using objects and their interactions, and then designing a modular an
2 min read
Object Oriented Analysis in Object Oriented Analysis & Design
OOAD is a way of organizing and planning how to build computer programs by thinking in terms of ingredients (which we call objects). Just as you decide what each ingredient does in a recipe, OOAD helps us decide what each part of a computer program should do, how they should work together, and what
5 min read
Object Oriented Paradigm in Object Oriented Analysis & Design(OOAD)
There are two important steps in creating such software. Object-Oriented Analysis (OOA) and Object-Oriented Design (OOD). These steps are like the building blocks for creating software. Important topics for Object-Oriented Paradigm Object Oriented AnalysisObject-Oriented DesignHistorical ContextObje
6 min read
Object Oriented System | Object Oriented Analysis & Design
Object Oriented System is a type of development model where Objects are used to specify different aspects of an Application. Everything including Data, information, processes, functions, and so on is considered an object in Object-Oriented System. Important Topics for the Object Oriented System Obje
4 min read
Object Model | Object Oriented Analysis & Design
Object-Oriented Programming (OOP) is a fundamental paradigm in modern software development that has transformed the way we design, build, and maintain software systems. OOP is centered around the concept of objects, which are self-contained, reusable units that encapsulate both data and the operatio
12 min read
Object Oriented Principles in OOAD
Object-oriented principles are a set of guidelines for designing and implementing software systems that are based on the idea of objects. Objects are self-contained units of code that have both data and behavior. They can interact with each other to perform tasks. Object-Oriented Analysis and Design
7 min read
What are the Object Oriented Analysis and Design(OOAD) Phases?
Object-Oriented Analysis and Design (OOAD) is a methodology for analyzing, designing, and developing software systems based on the principles of object orientation. The process is typically divided into several phases, each focusing on different aspects of the software development life cycle. Below
2 min read
Booch Methodology in Object-Oriented Analysis and Design(OOAD)
The Booch Methodology is a foundational framework in Object-Oriented Analysis and Design (OOAD). Engineered by Grady Booch, this methodology encapsulates principles, strategies, and techniques essential for crafting resilient and adaptable software systems. In this article, we will see the features
11 min read
GRASP Design Principles in OOAD
In Object-Oriented Analysis and Design (OOAD), General Responsibility Assignment Software Patterns (GRASP) play a crucial role in designing effective and maintainable software systems. GRASP offers a set of guidelines to aid developers in assigning responsibilities to classes and objects in a way th
9 min read