Object-Oriented Systems Analysis and Design

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/57

flashcard set

Earn XP

Description and Tags

Flashcards based on lecture notes about Object-Oriented Systems Analysis and Design.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

58 Terms

1
New cards

What is Object-Oriented Analysis (OOA)?

A technique used to analyze requirements using objects, classes, and interactions.

2
New cards

What is Object-Oriented Design (OOD)?

A process of designing software using OOP principles before implementation.

3
New cards

What is Object-Oriented Programming (OOP)?

A programming paradigm based on objects and classes.

4
New cards

What are the key aspects of Object-Oriented Analysis (OOA)?

Understand and define the system requirements, identify objects and their behaviors, use techniques like Use Case Diagrams and Requirement Analysis.

5
New cards

What are the key aspects of Object-Oriented Design (OOD)?

Design the system structure using classes, relationships, and hierarchies, create UML diagrams, apply design patterns.

6
New cards

What are the key aspects of Object-Oriented Programming (OOP)?

Implement the system using a programming language, write code using objects and classes, ensure proper testing and debugging.

7
New cards

What are the steps in Object-Oriented Analysis (OOA)?

Identifying requirements from stakeholders, defining objects and their behaviors, creating use case diagrams.

8
New cards

What are the key steps in Object-Oriented Design (OOD)?

Identifying objects and their relationships, defining classes, attributes, and methods, applying design patterns.

9
New cards

What are the key features of Object-Oriented Programming (OOP)?

Encapsulation, Abstraction, Inheritance, Polymorphism.

10
New cards

What are the key principles of the Object-Oriented Systems Approach?

Encapsulation (Data protection), Inheritance (Code reusability), Polymorphism (Flexibility in system behavior), UML diagrams.

11
New cards

What are the defining features of Object-Oriented Systems?

Objects and Classes, Encapsulation, Inheritance, Polymorphism, Association & Aggregation, Use of UML Diagrams.

12
New cards

What is a Class?

A blueprint for creating objects.

13
New cards

What is an Object?

An instance of a class.

14
New cards

What do Attributes do?

Define the state of an object.

15
New cards

What do Operations (Methods) do?

Define the behavior of an object.

16
New cards

What is Abstraction?

Hides implementation details while presenting the attributes to the outer world; reduces code complexity.

17
New cards

What is Encapsulation?

Bundling of data and methods to control access into the object; also known as information/data hiding.

18
New cards

What does Abstraction do?

Hides complex details and exposes only necessary parts.

19
New cards

What does Encapsulation do?

Restricts direct access to data and ensures controlled access via methods.

20
New cards

What is Inheritance?

Creating a new class from an existing one; a sub-class derives features from the parent class.

21
New cards

What is Polymorphism?

The occurrence of something in many forms; objects can be represented in many forms.

22
New cards

What are the various types of Inheritance in OOP?

Single, Multiple, Hierarchical, Multilevel.

23
New cards

What is Association?

A relationship between two objects.

24
New cards

What is Aggregation?

A weaker relationship where objects exist independently.

25
New cards

What is Composition?

A strong relationship where one object owns another.

26
New cards

What is Aggregation in OOP?

Special type of Association which follows a “has-a” relationship between 2 related objects. Both entities are independent of each other.

27
New cards

What is Composition in OOP?

Restricted form of Association where entities are strongly dependent on each other. Represents the “part-of” relationship.

28
New cards

What does Coupling refer to?

Degree of dependency between different modules or classes in a system.

29
New cards

What does Cohesion refer to?

How well the methods and attributes of a class work together towards a single purpose.

30
New cards

What is Low Coupling?

When components interact minimally with each other; makes code reusable, easy to maintain, and testable.

31
New cards

What is High Coupling?

When components heavily depend on each other; any change in one module affects multiple other modules.

32
New cards

What is High Cohesion?

A class is focused on a single responsibility; easier to understand, modify, and test.

33
New cards

What is Low Cohesion?

A class performs multiple unrelated tasks; harder to maintain and test.

34
New cards

What does OOA do?

Assesses the system requirements, recognizes the classes and objects, and determines the relationship between them

35
New cards

What is the main focus for OOA?

It mainly focuses on what the system will do rather than how it performs the task.

36
New cards

What are the three components of OOA?

Object Modeling, Dynamic Modeling, and Functional Modeling.

37
New cards

What does Object modeling do?

Develops the static structure of the software system in terms of objects and their relationships.

38
New cards

What does Dynamic Modelling do?

Analyzes the behavior of the system with respect to time and external changes.

39
New cards

What does Functional Modelling do?

Shows the processes that are performed within an object and how the data changes as it moves between methods.

40
New cards

In the LMS example provided, what should objects include?

Objects should include Book, LibraryMember, Librarian and Transaction

41
New cards

What are Instance Variables?

Data attributes that are specific to an object.

42
New cards

What are Instance Methods?

Operations that are specific to an object.

43
New cards

What are Class Variables?

Data attributes that are not specific to an object.

44
New cards

What are Class Methods?

Operations that are not specific to an object.

45
New cards

What are Constructors?

A unique method that creates and initializes the objects for a class to perform some operations.

46
New cards

What are the 6 steps of the Software Development Cycle?

Planning, Analysis, Design, Implementation, Testing & Integration, and Maintenance.

47
New cards

What occurs during the Planning phase of SDLC?

Project scope, goals, and objectives are determined, along with feasibility, budget, and timeline.

48
New cards

What occurs during the Analysis phase of SDLC?

Project requirements are identified and documented. The Use Case Diagram is typically created in this phase.

49
New cards

What occurs during the Design phase of SDLC?

Creating a detailed design for the software application based on the requirements. The class, state, sequence, activity diagram are typically created in this phase.

50
New cards

What occurs during the Implementation phase of SDLC?

Writing the code for the software application and performs unit testing to ensure the code functions as expected.

51
New cards

What occurs during the Testing phase of SDLC?

Performing various types of testing to ensure the software application meets the requirements and is free of defects.

52
New cards

What occurs during the Deployment phase of SDLC?

Releasing the software application to the production environment.

53
New cards

What occurs during the Maintenance phase of SDLC?

Performing ongoing maintenance and support, including bug fixes, updates, and enhancements.

54
New cards

What are the boundaries of Object-Oriented Systems Development?

System Boundary, Actors, Interfaces, Encapsulation & Modularity, Use Case Diagrams.

55
New cards

What are the most common UML Diagrams used in Object-Oriented Development?

Use Case Diagram, Class Diagram, Sequence Diagram, Activity Diagram.

56
New cards

What do Use Case Diagrams do in Object-Oriented Development?

Define WHAT the system should do.

57
New cards

What do Class Diagrams do in Object-Oriented Development?

Define HOW the system is structured.

58
New cards

What do Sequence Diagrams do in Object-Oriented Development?

Define WHEN interactions happen.