Chapter 8 Flashcards

(74 cards)

1
Q

What are the four phases of the Software Development Life Cycle (SDLC)?

A

Analysis, Design, Implementation, Testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the primary goal of the SDLC Analysis phase?

A

Define the program’s goals

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What does the SDLC Design phase focus on?

A

Specify how to build the program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

During which SDLC phase is the actual program code written?

A

Implementation phase

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What happens in the Testing phase of SDLC?

A

Check that the program meets the defined goals

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Which SDLC approach executes all phases sequentially with no repetition?

A

Waterfall approach

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Which SDLC approach involves repeated small cycles for iterative improvements?

A

Agile (or Spiral) approach

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Which SDLC approach is more responsive to user feedback?

A

Agile approach

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Why might a startup prefer Agile over Waterfall?

A

Allows faster launches, iterative changes, and better adaptation to evolving requirements

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

In the SDLC, which approach usually results in longer individual phases?

A

Waterfall approach

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

In the SDLC, which approach lets a basic product be released earlier?

A

Agile approach

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the primary benefit of abstraction in object-oriented programming?

A

Hides complexity and internal details from users

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is an object in programming?

A

A grouping of data (variables) and operations (functions) on that data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is information hiding (encapsulation)?

A

Keeping internal details hidden from the user

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is an Abstract Data Type (ADT)?

A

A data type restricted to specific, well-defined operations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

How do objects support abstraction?

A

They expose only necessary operations while hiding internal details

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Give a real-world example of abstraction

A

An oven’s user controls heat and sees the compartment but not internal mechanisms

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Which of the following should be part of a CarOnLot object: carStickerPrice?

A

Yes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Which of the following should be part of a CarOnLot object: todaysTemperature?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Which of the following should be part of a CarOnLot object: numSalespeople?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Which of the following should be part of a CarOnLot object: GetDaysOnLot()?

A

Yes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Which of the following should be part of a CarOnLot object: DetermineTopSalesperson()?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What type of UML diagram shows static elements like variables and functions?

A

Structural diagram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What type of UML diagram shows dynamic behavior and processes?

A

Behavioral diagram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What does a UML Use Case diagram illustrate?
How a user interacts with a software program
26
Does a Use Case diagram contain program code?
No
27
Does a Use Case diagram always indicate the order of events?
No
28
Is a Use Case diagram considered structural or behavioral?
Behavioral
29
What does a UML Class diagram illustrate?
Classes, data members, functions, and relationships
30
Can a Class diagram show inheritance between classes?
Yes
31
Is a Class diagram considered structural or behavioral?
Structural
32
What does a UML Sequence diagram illustrate?
Interaction between components and the order of events
33
Do Sequence diagrams always indicate the order of events?
Yes
34
Is a Sequence diagram considered structural or behavioral?
Behavioral
35
What does a UML Activity diagram illustrate?
The flow of operations, decisions, and loops in a process
36
Is an Activity diagram considered structural or behavioral?
Behavioral
37
Which UML diagram is most useful during SDLC's Analysis phase?
Use Case diagram
38
Which UML diagram is most useful during the Design phase?
Class diagram
39
Which UML diagram is most useful during the Implementation phase?
Activity diagram
40
Which UML diagram is most useful during the Testing phase?
Sequence diagram
41
In Agile development, how many times can the implementation phase occur?
No maximum—it repeats as needed
42
True or False: The Agile approach skips testing
43
True or False: Objects group related data and operations together
t
44
What mistake do students often make when designing objects?
Making all data and functions public instead of using abstraction
45
Why do software projects need both structural and behavioral diagrams?
They document both system structure and dynamic processes
46
Which diagram best shows relationships between Customer, Order, and Product classes?
Class diagram
47
Which diagram best shows how a user logs into a system step-by-step?
Sequence diagram
48
Which diagram best shows what actions library users can perform?
Use Case diagram
49
Which diagram best shows process flow for refund handling?
Activity diagram
50
How does abstraction improve program usability?
Hides complex internals, exposing only relevant operations
51
In object design, what operations should be hidden from users?
Internal mechanisms not required for user tasks (e.g., encryption functions)
52
What problem arises if all object details are public?
Increased complexity, risk of misuse, and fragile design
53
What should a properly abstracted Library Book object include?
Title, author, status, with checkOut() and checkIn() operations
54
Why is information hiding critical in secure system design?
Prevents unauthorized access to sensitive internal data
55
During which SDLC phase would you identify system goals with users?
Analysis
56
During which SDLC phase do you plan system structure and relationships?
Design
57
During which SDLC phase do you code operations and logic?
Implementation
58
During which SDLC phase do you verify outputs match requirements?
Testing
59
In UML, what does a sequence diagram's vertical dashed line represent?
A component's lifespan during an interaction
60
What does a horizontal arrow in a sequence diagram represent?
Communication between components
61
What common SDLC misconception do students have about Agile?
Believing Agile skips formal planning or testing
62
When should a development team update UML diagrams during Agile?
Throughout iterative cycles as system requirements evolve
63
How does the Waterfall approach handle unexpected user needs?
It's less adaptable; changes require major rework
64
What does the phrase "objects organize related items together" mean?
Objects group relevant data and functions into logical units
65
What real-world analogy demonstrates poor abstraction?
Exposing car engine internals instead of just pedals and steering
66
Why might a project use Waterfall instead of Agile?
When requirements are fixed, and thorough, linear development is preferred
67
In UML, what does inheritance allow?
One class to reuse data members and functions from another class
68
What is the key advantage of Agile's iterative process?
Early feedback enables rapid improvements and course correction
69
What structural UML diagram shows "has" relationships between classes?
Class diagram
70
What mistake occurs if sequence diagrams are used to show class hierarchy?
Wrong diagram type; class diagrams show hierarchy, not sequences
71
When would you use a UML Activity diagram in development?
To visualize detailed process logic before writing code
72
Which SDLC approach aligns best with rapidly changing user requirements?
Agile approach
73
How do Use Case diagrams help during the Analysis phase?
Clarify system functions from the user's perspective
74
Why is it incorrect to include server passwords as public object data?
Violates information hiding and creates security risks