Object-Oriented Analysis and Design Principles
Classified in Computers
Written on in
English with a size of 3.24 KB
What is APOO?
APOO (Analysis and Object-Oriented Programming) considers a problem and a solution from the perspective of objects, things, or concepts. APOO is the investigation of domain objects and their relationships.
What is OOP?
OOP (Object-Oriented Programming) is a logical solution in terms of software components and their collaborations and responsibilities.
UML Language
The UML (Unified Modeling Language) is the standard language for typesetting to view the results of the analysis and design.
Subactivities:
- Define essential use cases.
- Draw use case diagrams.
- Refine the conceptual model.
- Refine the glossary.
- Set system sequence diagrams.
- Set operation contracts.
- Set state diagrams.
What is a Use Case Diagram?
A use case diagram is used to identify how the system behaves in various situations that may occur during operation.
Key Components:
- Actor: Represents any entity that interacts with the system. It may be a person or another system.
- Use Case: It is a model of the functions to be performed by the system and the interaction with its borders. Its main application is to confirm to users and customers its features and behavior.
- Scenario: It is an instance of a "Use Case." The "Use Case" should be described through various scenarios. Build as many scenarios as needed to fully understand the entire system.
Scenario Types:
- Primary: These are the scenarios in which the flow normally follows without interruption by any kind of error.
- Secondary: These are the cases that represent exceptions where the normal flow of operation is interrupted.
APOO Applied to System POST Development Cycles
APOO is applied to the system POST in two cycles of development:
Cycle 1
Introduction of basic features and skills of analysis and design relevant to the first cycle.
Cycle 2
Expanded introduction of additional skills of analysis and design.
Development Steps:
- Review: Write expanded essential use cases for those being attacked in the current development cycle, if not yet done.
- Project: Write real use cases for those under attack in the current development cycle, if not done.
Modeling Principles
Abstraction
Abstraction is a fundamental principle of modeling. A system model is created at different levels, starting at the highest levels and adding more detail, further detailing what is known about the system.
Package
Package: Packages the data and methods of an object. It protects data from being compromised, since it only allows access through its methods.
Inheritance
Inheritance: A class can have subclasses that inherit its properties.
Object State
An object can pass through several states during its cycle. That is, at any given time it may be an instance of one object type, and the next moment, an instance of another type.