4452 - Testing Midterm Flashcards

1
Q

Quality is the ability of a product or service to fulfill its:

A

Quality Requirements

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

What are the 3 dimensions of quality?

A

Entity, Viewpoint, Attribute

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

An attribute depends on:

A

the entity and viewpoint

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

Process quality is the quality factors used to:

A

develop, operate and maintain software artifacts

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

What is the purpose of ISO 9126?

A

to eliminate misunderstandings relating to quality between customer and supplier

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

What is the key difference between customer and supplier in ISO 9126

A

customer understands and communicates requirements the supplier does as well but also needs to assess with confidence whether the product can be produced with the right level of quality

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

Who evaluates the software without knowing any internal aspects of it?

A

the user

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

What is the difference between an engineer and manager view of quality?

A

engineers care about the final product as well as all intermediate artifacts, managers care more about overall quality

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

What are the quality criteria for functionality?

A

suitability, accuracy, interoperability, security, compliance

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

The presence and appropriateness for a set of functions for a specified tasks is

A

suitability

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

the provision of right or agreed upon results is

A

accuracy

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

the ability to interact with specified systems is

A

interoperability

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

the ability to prevent unauthorized access is

A

security

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

adhering to application related standards or regulations is

A

compliance

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

What are the quality criteria for reliability?

A

maturity, crash frequency, fault tolerance, recoverability

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

The frequency of failure by faults is?

A

maturity

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

what is crash frequency?

A

number of system crashes per unit of time

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

what is fault tolerance?

A

ability to maintain a specified level of performance in case of software faults or infringements

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

what is recoverability

A

ability to re-establish performance and recover lost data

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

What are the sub-factors to the Reliability quality factor?

A

maturity, crack frequency, fault tolerance, recoverability

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

What is understandability?

A

effort required by user to grasp the logical concept and its applicability

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

what is learnability?

A

ability for a user to learn the software (input, output, operational control)

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

what is operability?

A

ability for user to perform operations

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

What are the sub factors of usability?

A

understandability, learnability, operability

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

what is time behavior?

A

response, processing time and throughput rates

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

what is resource behavior?

A

amount of resources used and the duration they are used

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

what are the sub factors of efficiency?

A

time and resource behaviors

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

what is analyzability?

A

ability to diagnose failures and identify things to by modified

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

what is changeability?

A

effort needed to actually modify the software

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

what is stability?

A

encapsulates the risk of unexpected events occurring when software is being modified

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

what is testability?

A

the ability and effort relating to verifying the modified software

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

what are the sub factors of maintainability?

A

analyzability, changeability, stability, testability

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

what is adaptability?

A

ability to be adapted to other environments

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

what is installability?

A

ability for the software to be installed on systems

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

what is conformance?

A

a softwares ability to conform to standards surrounding portability

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

what is replaceability?

A

effort needed to replace the software in its environment

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

what are the sub factors for portability?

A

adaptability, installability, conformance, replaceability

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

What are the three product states in the McCall model?

A

operation, revision, transition

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

What quality factors are grouped under product operation in McCalls model?

A

reliability, correctness, usability, integrity, efficiency

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

What quality factors are grouped under product revision in McCalls model?

A

Maintainability, flexibility, testability,

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

What quality factors are grouped under product transition in McCalls model?

A

portability, interoperability, reusability

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

What is completeness?

A

degree to which full implementation of requirements has been achieved

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

what is consistency?

A

uniform design and implementation

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

what is traceability?

A

ability to link software components to its requirements

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

what is accuracy?

A

precision of computations of outputs

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

what is communication commonality?

A

degree to which standard protocols and interfaces are used

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

what is access control?

A

ability to control and protect the software and data

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

what is conciseness?

A

compactnss of the source code

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

what is access to audit?

A

ease in which software can be checked for compliance

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

what is data commonality?

A

standard representation of data

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

what is error tolerance?

A

degree to which operations can continue under adverse conditiions

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

what is execution efficiency?

A

the run time efficiency of the software

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

TF: McCall uses a hierarchical framework?

A

T

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

TF: ISO 9126 uses a hierarchical framework?

A

T

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

Which quality model reflects the user view?

A

ISO 9126

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

Which quality model reflects the product view?

A

McCall

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

What are the high level characteristics in Boehms’s quality model?

A

portability, as-is utility, maintainability

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

what are the three hierarchical levels to Boehms quality model?

A

high levle, intermediate and primitive characteristics

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

What are the two difference requirements in Furps+ model?

A

functional and non functional

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

What does FURPS stand for?

A

functionality, usability, reliability, performance, supportability

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

what does the + in FURPS+ represent?

A

design, implementation, interface and physical

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

What are the 4 quality factors in SEI model?

A

performance, dependability, security , safety

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

a tool that makes a quality factor is called what?

A

a quality metric

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

what is static software measurement derived from?

A

examination of software artifacts

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

what is dynamic software measurement derived from?

A

examination of the execution of software

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

what is the difference between direct and indirect software measurement?

A

direct is when you look at things like time, effort, size which are factual frontline measures, indirect is when you measure based on things derived from direct measures such as failure intensity (failures/time)

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

what is a commonly used metrics when measuring reliability through maturity?

A

software maturity index

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

what are the 4 important crash frequency metrics?

A

expected total failures, mean time to failure, failure intensity, crash free (probability of a failure free operation)

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

what metric is the expected number of failure experienced in a time period?

A

failure intensity

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

the probability of a failure free operation is what metric?

A

reliability/crash free

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

what must be considered when measuring fault tolerance?

A

overall system architecture

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

what is the difference between serial and parallel system architectures in terms of fault tolerance?

A

serial - fails if one component fails

parallel - fails if all components fail

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

TF: in a serial system architecture the reliability of one component is higher than the reliability of the overall system

A

T

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

TF: in a parallel system architecture the reliability of one component is higher than the reliability of the overall system

A

F

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

What are the recoverability metrics?

A

system recovery time, service degradation rate, time to switch

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

How can accuracy be measured?

A

problem reports per phase, priority, category
reported problems in a period of time
rate of error disovery

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

reported problems can be classified into what 3 categories?

A

open, closed, unevaluated

78
Q

How is security measured?

A

with the security level metric

79
Q

What are the dimensions used to measure analyzability? Provide some example metrics

A

complexity and readability

  • cyclomatic number for the flow of control
  • size and complexity of logical and physical statements
  • comment rate on code
80
Q

what dimension is used to measure changeability? what are some example metrics?

A

modularity

  • depth of architecture
  • fan in fan out
  • number of branches, nested levels, shared variables
81
Q

what dimension is used to measure stability? what are some example metrics?

A

modularity

  • fan in fan out
  • number of parameters referenced/changed, global variables, called relationships
  • depth of architectue
82
Q

what dimensions are used to measure testability? what are some example metrics?

A

modularity, complexity

  • cyclomatic number
  • number of call-paths, non-cyclic paths, nested levels of architecture
83
Q

What metric is used to test portability?

A

Degree of portability

84
Q

When is portability cost effective

A

if DP > 0

85
Q

TF: Cpdoc, Cptest > Crdoc, Crtest (generally)

A

False

86
Q

What does it mean if Cmod > Crdesign + Crcode?

A

a portable design has not been developed

87
Q

What does it mean if Cmod &laquo_space;Crdesign + Crcode?

A

an effective portable design exists

88
Q

Quality factors tend to be what since they are related to description related to applications, components, or users

A

domain specific

89
Q

What are the two main approaches to fault tolerance and what is the difference between them?

A

single approach
- integrating mechanisms into a single unique piece of software

multi approach
- develop different software versions using different techniques

90
Q

What are some typical exceptions handled through tolerating by acceptance?

A

deadlocking, corrupting data, failure to provide intended functionality

91
Q

what does redundancy enable the software to do?

A

detect and recover from failures

92
Q

What are the 3 major parts the fault tolerance model?

A

fault detection, fault recovery, fault correction

93
Q

What are the sub-aspects of fault correction?

A

diagnosis and repair

94
Q

How are faults detected?

A

using embedded checks

95
Q

Fault detection can be carried out in which 2 modes?

A

concurrently (during service delivery) and preemptively (while service is suspended)

96
Q

What are the two techniques to fault recovery?

A

backward recovery and forward recovery

97
Q

What is the backward recovery technique?

A

consists of discarding the current state in favor of an earlier state

98
Q

What is the forward recovery technique?

A

making use of the current corrupted state to construct a recovery state

99
Q

TF: Forward recovery is typically more difficult than backward recovery?

A

T

100
Q

What are the 3 mechanisms used to record and store system states in favor of an earlier state?

A

undoing transactions, checkpoint/rollback, degraded service

101
Q

Why is forward recovery generally very difficult to get right?

A

It is system specific and depends on accurate predictions of the location and cause of errors

102
Q

What is the core concept of multi-version fault tolerance?

A

redundancy

103
Q

What is the though process behind multi version fault tolerance?

A

components that are built differently should fail differently and therefore at least one of the versions should deliver an appropriate output

104
Q

What are the two types of redundancy?

A

serial and parallel

105
Q

How does multi version fault tolerance work?

A

design multiple components with the same functionality, implement two distinct versions of the same software executing on the same inputs, if there is a discrepancy in the outputs it triggers an error detection

106
Q

What are the two key architectural features that relevant to security?

A

immunity and resilience

107
Q

What is immunity?

A

ability to prevent an attempted attack

108
Q

How does software architecture encourage immunity?

A

minimizing exploitable security weakness, making sure all security features are included in design

109
Q

What is resilience?

A

a systems ability to recover

110
Q

How does software architecture encourage resilience?

A

segmentation of functionality to contain an attack, ability to quickly restore functionality

111
Q

Efficiency describes what 2 system constraints

A

time and capacity

112
Q

What aspects are included in efficiency

A

throughput, response time, and load

113
Q

Describe throughput

A

how many processed can be processed per minute

114
Q

Describe response time

A

how long does it take to process a request

115
Q

Describe load

A

how many users can be supported before response time and load suffer?

116
Q

What mechanisms can be used to improve response time?

A

scheduling and caching

117
Q

what are the different scheduling types

A

round robin, explicit, fifo, earliest deadline

118
Q

What is load balancing?

A

a way to improve the distribution of workloads across multiple workstations

119
Q

To achieve the quality actor of maintainability a software must be?

A

easily changed

120
Q

What two ways can a software unit be affected by a software change? What does each one mean?

A

directly affected - when the responsibilities of the software unit must change
indirectly affected - responsibilities don’t change, but implementation must be revisited

121
Q

What are some tactics for minimizing the impact on changeability (and therefore maintainability), of directly affected software units?

A

clustering anticipate changes

  • identify design decisions that likely to be directly affected
  • encapsulate them in software units
  • ensure that these software units are highly cohesive
  • try to confine them in a few units
122
Q

What is the core strategy for reducing the impact on changeability and therefore maintainability, of indirectly affected software units?

A

reduce dependencies

123
Q

What are ways to reduce dependencies between software units?

A

low coupling, and designing to the interface (units interact only through their interfaces)

124
Q

How can the MVC framework be applied to achieve high usability?

A

understandability –> UX information architecture
learnability –> View
operability –> controller

125
Q

what is a program fault?

A

an incorrect step, process or data definition in a program

126
Q

What are the two fundamental ideas (criteria) for the defect based quality model and how are they measured?

A

software should be defect free (measured by fault count) and suitable for use (measured with failure reports)

127
Q

a fault __________ an error, and an error _________ failure

A

activates, propigates

128
Q

where may a fault originate?

A

design, specification, implementation (programmer mistake)

129
Q

what are the two states of a fault?

A

active –> produces and error

dormant –> exists but is not producing an error

130
Q

what is an error?

A

part of an artifact state that propagates failure

131
Q

what is failure?

A

an inability to deliver on quality requirements, occurs when artifact is executing

132
Q

what are the 6 fault categories?

A

creation phase, system boundaries, domain, phenomenological causes, intent, persistence

133
Q

what are the two creation phase fault sub-cats?

A

operational, developmental

134
Q

what are the two system boundary fault sub-cats?

A

internal, external

135
Q

what are the domain fault sub-cats?

A

hardware, software

136
Q

what are the phenomenological fault sub-cats?

A

human made, natural

137
Q

what are the intent fault sub-cats

A

malicious (deliberate), accidental (unintentional)

138
Q

what are the persistence fault sub-cats?

A

permanent, transient

139
Q

what is always required in order to generate a good product?

A

a good process

140
Q

what is the principal quality determinant for manufactured goods?

A

the process

141
Q

in design based activities what must be considered?

A

the process as well as additional factors, like designer skill

142
Q

What happens to the cost of fixing an error as the lifecycle of a product progresses?

A

it gets more expensive

143
Q

what is the SQM framework?

A

software quality management and it is the quantitative planning and guiding of the software development

144
Q

what are the 5 steps to SQM?

A
  1. engineer quality factors
  2. develop operational profiles
  3. Software quality assurance planning
  4. Software quality assurance control
  5. Apply failure data to guide decisions
145
Q

what is failure defined as under SQM?

A

the negative drift on the software quality requirements (things that should not be done to them)

146
Q

How are failure severity classes determined under SQM?

A

failures with the same degree of per-failure impact on a user are given the same class

147
Q

what are the criteria used to assign the per-failure impact of a failure?

A

cost, environment, human-life, system capability

148
Q

what factors are considered in the system capability criteria?

A

loss of data, recovery time, total downtime

149
Q

What does FIO represent?

A

failure intensity

150
Q

in terms of failure severity classes, what should be resolved before proceeding to the operational profile?

A

any disagreements between stakeholders regarding them

151
Q

what is an operational profile?

A

the set of operations and their probability of occurrence

152
Q

what does the operational profile reflect?

A

how the software will be used in practice

153
Q

what are the uses of an operational profile?

A

proportionally distribute test cases, accurate measurement of reliability since it models real use, for a competitive release strategy since you can implement most used operations in early releases

154
Q

what are the tiers of the operational profile triangle from the top? (CUSFOT)

A

customer, user, system, function, operation, test selection

155
Q

what is the customer profile?

A

the total number of customer groups and the associated probability that they will use the software (number of customer in group / total customers)

156
Q

what is the difference between a user and a customer?

A

a customer acquires the software a user “uses” the software

157
Q

what is a user profile?

A

the total number of user groups and their associated probabilities

158
Q

what is a user group?

A

a set of users that use the software in the same way

159
Q

what is a customer group?

A

a set of customers that acquire the software in the same way

160
Q

Users of a system, a system own internal controller, and external systems are examples of what?

A

actors in a use case

161
Q

what is the system mode?

A

a collection of function grouped in a way that makes it easy to analyze their execution behavior

162
Q

what is the best source for identifying system functions?

A

functional and business requirements

163
Q

tasks in a workflow are modeled as different function if what?

A

managing their development has different priorities or resource allocation, or if they differ in frequency of use or criticality

164
Q

what are environmental variables?

A

they describe conditions that do not relate directly to features (paths taken, data accessed)

165
Q

what is an operation (within the context of operational profiles)

A

a system task as observed by the end user

166
Q

TF: Operational architecture captures how sub systems and modules combine

A

False: system architecture captures this, operational architecture only captures how a user will invoke operations to complete functions

167
Q

TF: usually there are more operations than functions

A

True

168
Q

what is a key input variable?

A

a variable that is a common input for two or more operations whose value differentiates them

169
Q

what is the difference between implicit and explicit representation of key input variables

A

implicit splits up key input variables into sub profiles with associated probabilities, explicit represents each possible combination of key input variables desperately and assigns a probability to each one

170
Q

what are occurrence rates based on?

A

field data, system logs, manually collected data, or experience

171
Q

how are occurrence rates calculated

A

take the individual occurrence rate and divide by total occurrence rate

172
Q

what are the two ways you can estimate a test case and ultimately which one should you chose?

A
  1. using team capacity and cost
  2. using historical data or industry benchmarks

you should go with the lower of the two

173
Q

where should the majority of test cases be allocated to?

A

developed components

174
Q

if acquired components represent a substantial portion of the software and their reliability is questionable what is the general rule for assigning test cases?

A

20-30% of test cases to these acquired components

175
Q

what should be utilized for the basis of test case allocation?

A

the operational profile

176
Q

what is the methodology for allocating test cases to operations?

A

assign one test case to each infrequent new operation, pre-assign test cases to rarely occurring critical operations, distribute remaining test cases among remaining new operations based on occurrence probability

177
Q

what is used to determine whether or not a new operation is infrequent or not?

A

an occurrence probability threshold

178
Q

what makes a new operation critical?

A

its high failure severity

179
Q

why do we initially allocate test cases only to “rarely occurring” critical operations?

A

because common occurring ones will get enough test cases due to their occurrence probability in the next step

180
Q

what is the V&V perspective?

A

validation and verification

181
Q

what are the 4 dimension of the V&V perspective (brian marricks quadrants)

A

business facing vs technology facing

supporting programming vs critiquing product

182
Q

what are the 4 types of testing that make up the 4 quandrants in V&V perspective (brian marrick)

A

feature testing, user acceptance testing, functional testing, quality factor testing

183
Q

what are software review and inspections

A

quality control processes for written material

184
Q

what is the difference between a review and inspection

A

a review is a process or meeting to examine software artifacts where stakeholder can give their input
an inspection is a formal engineering process for detecting defects in software products

185
Q

what does an inspection confirm?

A

that software presents overall specifications

186
Q

what are the outputs of an inspection?

A

detailed defect list
defect summary list
estimated rework effort and completion date

187
Q

TF: inspections and testing are opposing verification techniques

A

False: they are complimentary

188
Q

TF: inspections cannot check non-functional quality requirements

A

True

189
Q

who introduced testing and for what reason?

A

some dude names Fagan because he thought that execution testing was not robust enough

190
Q

what are the inspection roles under fagans model? (MART)

A

moderator, author, reader, tester

191
Q

what should be used to drive the inspection?

A

a checklist of common defects