1/24
A set of question-and-answer flashcards covering the fundamental principles, terminology, and relationships in object-oriented software modeling as presented in the lecture notes.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
What does the object-oriented approach primarily aim to model?
The real world and its entities.
What does the Object Modeling Technique (OMT) cover in the development life-cycle?
It spans analysis, design, and implementation.
What is the very first activity in object-oriented software engineering?
Classification of entities in the problem/business space.
After potential objects are identified, what happens to the requirements?
They are iteratively modified and refined based on the new classifications.
What does the principle of abstraction state in OO modeling?
Only the relevant details of entities are modeled; irrelevant details are deliberately ignored.
How are collections of classified objects represented in OO?
They are abstracted into classes.
What does a class describe?
The common attributes and behaviors of its object instances.
What is an object in OO terminology?
An instance of a class with its own state and behavior.
How is an object’s state defined?
By the values of its attributes at a specific point in time.
How is an object’s behavior represented?
By the set of operations (methods) it can perform.
What triggers an object’s operation?
Receiving (being sent) a message.
What is encapsulation?
Protecting an object’s internal state via a defined interface, hiding implementation details.
Why does encapsulation ease maintenance?
Because an object’s implementation can change without affecting external code that uses it.
Name three common access specifiers used to implement encapsulation.
Public, private, and protected.
In OO terms, what is a message?
A request sent to an object asking it to execute one of its operations (method call).
What is inheritance?
Defining a new class based on an existing one to reuse code and ease maintenance.
Using the Student example, list two specialization levels beneath "Graduate."
Master and PhD.
In single inheritance, what can a child class do with the parent’s fields and methods?
Inherit and directly access or override them, as allowed by access modifiers.
What is multilevel inheritance?
A hierarchy where Class C inherits from B, which in turn inherits from A.
Define polymorphism in OO.
The ability of the same operation name to behave differently in different classes within the same hierarchy.
List the four main relationship types in OO modeling.
Association, composition, aggregation, and inheritance.
How does composition differ from aggregation regarding object lifespan?
In composition, parts share the same lifespan as the whole; in aggregation, parts can outlive the whole.
Give one example of a normal association from the lecture.
Example: A student attends a course.
Provide an example of composition.
Example: A car has an engine.
Provide an example of aggregation.
Example: A school has teachers.