M7 Flashcards

(68 cards)

1
Q

The process of modifying software after delivery to correct faults, improve performance, or adapt to changes.

A

Software Maintenance

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

Changes made to correct defects found after software release.

A

Corrective Maintenance

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

The result of software development.

A

Software Product

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

Changes made to improve software maintainability or prevent problems from occurring.

A

Preventive Maintenance

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

A quick-fix model where problems are fixed and released without long-term consideration.

A

Quick Fix Model

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

The process of restructuring existing computer code without changing its external behavior.

A

Refactoring

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

A maintenance type focused on adapting software to changes in the technical environment.

A

Adaptive Maintenance

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

A type of maintenance that adds new features or capabilities.

A

Perfective Maintenance

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

The capability of the software product to be modified.

A

Maintainability

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

The analysis of software evolution data through studying differences between successive versions.

A

Version-centered Analysis

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

Which type of maintenance deals with fixing bugs after release?

a) Preventive Maintenance

b) Adaptive Maintenance

c) Corrective Maintenance

d) Perfective Maintenance

A

c

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

Which of the following best describes refactoring?

a) Making systematic changes to improve software without altering functionality

b) Removing unused code to reduce file size

c) Adding new features to software

d) Fixing major defects in software

A

a

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

What is the main challenge of software maintenance?

a) Implementing new features

b) Understanding an existing system

c) Writing new code from scratch

d) Releasing software updates frequently

A

B

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

What does impact analysis primarily assess?

a) The effect of changes on the entire system

b) The cost of maintaining software

c) The speed of code execution

d) The number of users affected by software changes

A

A

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

Which type of maintenance ensures that software remains functional in an evolving environment?

a) Corrective Maintenance

b) Adaptive Maintenance

c) Preventive Maintenance

d) Perfective Maintenance

A

B

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

Software maintenance only involves fixing bugs.

A

F

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

Adaptive maintenance is performed to add new features to the software.

A

F

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

Understanding existing software code is a crucial part of software maintenance.

A

T

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

The Quick Fix Model is recommended for long-term software stability.

A

F

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

Impact analysis helps determine the effects of changes before they are implemented.

A

T

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

Preventive maintenance aims to correct existing defects.

A

F

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

Software maintenance can be more costly than initial software development.

A

T

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

Inline Method refactoring turns multiple statements into a single function.

A

F

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

Frequent failures and excessive resource usage are indicators of system decay.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Configuration control ensures that changes to software are documented and managed.
T
26
Which is NOT a type of software maintenance? a) Perfective b) Corrective c) Reductive d) Preventive
C
27
Which factor does NOT affect program understanding? a) Programmer expertise b) Code complexity c) File size d) Documentation
C
28
Which of the following is an example of adaptive maintenance? a) Fixing a security vulnerability b) Updating software to run on a new operating system c) Improving software performance d) Changing variable names for clarity
B
29
Which maintenance process model includes impact analysis and categorization of requests? a) Quick Fix Model b) Generic Maintenance Process Model c) Waterfall Model d) Extreme Programming
B
30
What is the primary disadvantage of separating development and maintenance teams? a) Faster delivery of updates b) Loss of system knowledge during transfer c) Improved productivity d) Better quality assurance
B
31
Outsourcing is a common approach to software maintenance.
T
32
Software maintenance is only necessary if the software contains defects.
F
33
IEEE 14764 provides guidelines for impact analysis in software maintenance.
T
34
Encapsulate Field refactoring makes a public field private.
T
35
Different technologies within a single system can contribute to system decay.
T
36
Changes made to software after delivery, including source code, documentation, and operating procedures.
Software Maintenance
37
The type of maintenance that fixes software defects.
Corrective Maintenance
38
The type of maintenance that adapts software to new environments.
Adaptive Maintenance
39
The model that fixes issues quickly without long-term planning.
Quick Fix Model
40
The percentage of total software life cycle cost spent on maintenance (range).
40-70%
41
Preventive maintenance involves fixing known defects in software. t or f
F
42
Perfective maintenance is focused on adding new features to improve performance. T OR F
True
43
Impact analysis determines the consequences of a proposed change. T/F
T
44
Refactoring changes a program’s functionality. T/F
F
45
Entropy in software refers to a system's tendency to improve over time. T/F
F
46
A model that treats software maintenance as an iterative process involving multiple cycles of analysis, design, and implementation.
Iterative Enhancement Model
47
A maintenance challenge caused by poor documentation and lack of original developers.
Software Aging Problem
48
A software tool used to track and manage changes to the software over time.
Version Control System
49
The study of a system to understand how it works, usually for maintenance or reengineering.
Reverse Engineering
50
A key factor in software maintenance that ensures changes do not introduce new issues.
Regression Testing
51
A technique used to restructure existing software to improve readability and maintainability without altering functionality.
Refactoring
52
Adaptive maintenance is performed to improve the performance of a system. T/F
F
53
Software maintenance costs usually exceed initial development costs over time. T/F
T
54
A well-documented system reduces maintenance efforts. T/F
T
55
Corrective maintenance is only required if the software is outdated. T/F
F
56
Software maintenance follows the same process model as initial development. T/F
F
57
Code restructuring is a maintenance task aimed at improving code readability and efficiency. T/F
T
58
Configuration management is an optional process in software maintenance. T/F
F
59
Which of the following is the primary reason software requires maintenance? a) New developers want to change the design b) Software is prone to errors c) Software must adapt to evolving requirements and environments d) All software has a fixed lifespan
c) Software must adapt to evolving requirements and environments
60
What is a common reason for software aging? a) Frequent updates b) Poor documentation and lack of original developers c) Overuse of new technologies d) Decreasing software demand
b) Poor documentation and lack of original developers
61
Which type of maintenance is performed to prevent future software problems? a) Corrective Maintenance b) Adaptive Maintenance c) Preventive Maintenance d) Perfective Maintenance
c) Preventive Maintenance
62
What is the purpose of regression testing in software maintenance? a) To ensure old functionalities still work after changes b) To remove unnecessary features c) To improve software performance d) To analyze user feedback
a) To ensure old functionalities still work after changes
63
Which software maintenance process aims to simplify complex code without changing its functionality? a) Reverse Engineering b) Refactoring c) Debugging d) Configuration Management
b) Refactoring
64
What type of software maintenance is required when software must be updated for compatibility with new hardware? a) Adaptive Maintenance b) Corrective Maintenance c) Perfective Maintenance d) Preventive Maintenance
a) Adaptive Maintenance
65
What does software reengineering primarily aim to achieve? a) Replace all software components with new ones b) Improve maintainability and extend software lifespan c) Increase software complexity d) Reduce software size
b) Improve maintainability and extend software lifespan
66
Which of the following maintenance models emphasizes continual software improvement through iterative cycles? a) Quick Fix Model b) Iterative Enhancement Model c) Waterfall Model d) Linear Model
b) Iterative Enhancement Model
67
Which tool is commonly used to manage and track software changes? a) Debugger b) Compiler c) Version Control System d) Text Editor
c) Version Control System
68
What is the role of configuration management in software maintenance? a) It helps in scheduling software updates b) It ensures that all software versions and changes are tracked and documented c) It deletes unnecessary software files d) It prevents software changes
b) It ensures that all software versions and changes are tracked and documented