IS Quality Part 2 Flashcards

(53 cards)

1
Q

What is the key premise of Dromey’s product quality model?

A

Software exhibits product characteristics that imply or contribute to quality attributes, rather than directly manifesting quality attributes.

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

What are the two approaches in Dromey’s model?

A

Bottom-up: Start with structural forms and their quality-carrying properties.

Top-down: Start with desired quality attributes and determine necessary properties.

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

What are Dromey’s four quality-carrying properties?

A

Correctness Properties
Structural Properties
Modularity Properties
Descriptive Properties

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

What do correctness properties cover in Dromey’s model?

A

Computability, completeness, and consistency.

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

What do modularity properties address?

A

High-level design issues related to how modules interface with the rest of the system.

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

What are descriptive properties?

A

They reflect how well the software is described, including comments, documentation, etc.

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

What is COQUAMO based on?

A

Adaptation of Boehm’s COCOMO model using Rome Lab Software Quality Framework.

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

What distinguishes COQUAMO from earlier models?

A

Integration of user, manufacturer, and product views, and use of both subjective and objective quality measures.

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

What are the components of the COQUAMO model?

A

Transcendent Properties (e.g., usability – hard to measure)

Quality Factors (reliability, flexibility – can be subjective or objective)

Merit Indices (subjective quality ratings)

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

What input does COQUAMO require?

A

Product attributes (e.g., quality requirements)
Process attributes (e.g., maturity)
Personnel attributes (e.g., experience)
Project attributes (e.g., expected quality norm)
Organizational attributes (e.g., quality management)

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

Why was the Squid Product Model developed?

A

After COQUAMO results showed that software product metrics were poor predictors of final product quality.

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

What is the purpose of Quality Function Deployment (QFD) in software?

A

To translate customer requirements into technical requirements at each development and production stage.

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

What must be identified before beginning a software project using QFD?

A

The desired characteristics and their importance as identified by stakeholders.

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

What are some criticisms of software quality models?

A

Quality is hard to compare across products.
There’s no consensus on definitions, criteria, or good measures.
Lack of models that rationalize multiple views.

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

What does Voas argue in defense of product-oriented models?

A

They are more focused on achieving quality than merely assessing it, making them crucial for research.

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

What dilemma do organizations face with software testing vs process measurement?

A

Testing measures the right things imprecisely; process measures the wrong things precisely.

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

Why is it hard to evaluate software using all views of quality?

A

Different views are hard to adopt simultaneously, and there’s a lack of frameworks justifying each view.

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

What model supports the evaluation of software quality from a cognitive perspective?

A

The means-end chain model, linking characteristics, consequences, and values.

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

What did the cognitive-based study reveal about evaluators?

A

Patterns between characteristics, consequences, and values help describe evaluator behavior and decision-making.

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

Why do requirements defects remain a significant issue in software-intensive system development?

A

Because individual function requirements represent fragments of behavior, but system design demands integrated behavior. Transitioning from fragmented to integrated behavior is complex, and most defects arise from mismatches, omissions, or inconsistencies in this process.

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

What is the role of behavior trees in addressing requirements defects?

A

Behavior trees allow a design to be constructed directly from its functional requirements by composing individual behavior trees into an integrated behavior design. This helps detect different defect types at each composition stage.

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

At which stages can defects be detected when using behavior trees?

A

Defects may occur:

During translation of individual requirements into behavior trees,
During integration into a full design behavior tree (DBT),
When projecting component behavior trees from the DBT,
Through inspection and model checking of the DBT.

23
Q

What are the common problems with functional requirements?

A

They may be incomplete, inconsistent, or redundant.
They may not reflect stakeholder intentions.
Translation to design may distort the original meaning.
They may become outdated or inadequate as development progresses.
Their complexity can exceed human short-term memory.
The alignment between requirements, design, and implementation may be lost.

24
Q

Why are existing requirements analysis and design methods insufficient for complex systems?

A

Because they often result in multiple, partial system views that overlap but don’t integrate well—making it hard to detect defects, especially those involving inter-requirement interactions.

25
What are the primary concerns when working with system requirements?
Managing complexity, Preserving and clarifying stakeholder intent, Detecting defects early, Adapting to requirement changes as understanding deepens.
26
How do behavior trees enable a design to be built from its requirements?
By offering a notation that captures individual behaviors clearly and supports their composition into a full design, solving the integration problem traditional notations (like UML or statecharts) struggle with.
27
What is a behavior tree in the context of software requirements?
A behavior tree is a formal, tree-like graphical representation of behavior, showing entities that change states, make decisions, trigger/respond to events, and interact. It enables traceable, sentence-by-sentence translation from natural language to formal specification.
28
How do behavior trees enhance the traceability of requirements to implementation?
They translate each natural language requirement into a formal tree structure, maintaining a direct relationship between original stakeholder intent and implemented functionality, supporting traceability across the development lifecycle.
29
What was the initial focus of software quality assurance, and how has it changed?
QA initially targeted computer programs (post-implementation), but this proved too late. The shift is now toward applying QA from the requirements specification stage, where foundational quality impacts the entire system.
30
Why is applying QA at the requirements stage more effective than later in development?
Because by the time programs are implemented, defects are costly and hard to fix. Early-stage QA reduces patchwork, rework, and in extreme cases, full system rewrites—which some compare to sabotage.
31
Why can’t traditional software product quality metrics be applied to requirements specifications?
Because those metrics assess finished software, not the informal, conceptual nature of early-stage requirements. Requirements demand different evaluation criteria focused on clarity, intent, and stakeholder alignment.
32
What is the goal of applying standards at the requirements specification stage?
To improve final software quality by ensuring early deliverables are high quality, consistent with stakeholder needs, and robust enough to guide effective design and implementation.
33
What initiative helped promote user understanding and involvement in improving requirements quality?
Scholars developed an ontology of quality terms and proposed specific quality criteria to simplify the review process and make it easier for users to participate in specification reviews.
34
What approach to quality criteria in requirements has been proposed by German accounting auditors?
A simple, non-technical classification system that promotes ease of understanding and practical application—especially useful for early quality reviews involving stakeholders without deep technical knowledge.
35
Importance of Risk Management in IS Projects
Risk management is essential for IT and IS projects, yet often neglected. Around 55% of failed projects had no risk management. When done properly, it helps select feasible projects, define realistic scopes, and set accurate estimates. It should begin at the project’s inception, not after problems arise.
36
What is Project Risk?
Project risk is the possibility of events occurring that might harm the achievement of project goals. It involves anticipating potential problems and developing strategies to minimize their impact. It acts like insurance, protecting project investments.
37
Risk Categories in Information Systems
IS project risks include: - Technical: Tools, platforms, or lack of experience - Management: Poor planning, weak communication - Financial: Budget issues, ROI constraints - Legal/Contractual: Regulatory or market-driven changes - Personnel: Staffing gaps, low productivity - Resource: Equipment delays, poor facilities
38
The Risk Management Process Steps
1. Identification of risks 2. Analysis and prioritization 3. Creation of risk management plan 4. Implementation of containment actions 5. Ongoing tracking and updating of risk status 6. Use of contingency plans if risks materialize
39
Identifying Risks through Interviews and Brainstorming
Risk identification begins by consulting stakeholders—customers, vendors, team members—using open-ended questions. Examples: "What new tech does the project introduce?" "Are there unclear requirements?" Such questioning surfaces hidden technical or integration risks.
40
Voluntary and Required Risk Reporting
Encouraging team members to report risks freely helps early detection. Voluntary reporting must eliminate the "shoot the messenger" culture. Risks can also be flagged during regular project reviews or status updates.
41
Decomposition and Assumption Analysis in Risk Identification
Breaking the project into smaller parts (decomposition) exposes unknowns (TBDs), each of which may be a risk. Additionally, assumptions—e.g., hiring timelines or equipment availability—must be questioned, as false assumptions can derail the project.
42
Critical Path and Risk Taxonomies
Critical path analysis reveals schedule-sensitive risks. Any slippage here threatens deadlines. Risk taxonomies—checklists based on past project failures—help ensure all common risk types are considered and prepared for.
43
Approaches to Risk Analysis and Response
Responses to risk include: - Avoiding the risk by changing scope - Acquiring more information (prototypes, research) - Transferring risk (e.g., hiring vendors) - Mitigating risk (reduce likelihood or impact) - Contingency plans in case the risk occurs
44
Taking Action and Adjusting Project Plans
During execution, risk mitigation activities are scheduled and assigned. Budgets and timelines are adjusted to incorporate risk responses. Some tasks may be moved forward or delayed to address or prevent issues.
45
Tracking Risks and Their Impact
Risk tracking involves: - Monitoring known risks - Checking for trigger indicators - Measuring risk reduction effectiveness Outcomes include adding new risks, validating resolved ones, and triggering contingency plans. Tools like Gantt charts or defect rates can support tracking.
46
Four major specification models are used in system development to improve user-developer communication
Data Flow Diagrams (DFDs) Entity Relationship Diagrams (ERDs) Decision Tables Petri Nets
47
Data Flow Diagrams (DFDs)
DFDs provide a functional, process-oriented view of the system. The context-level DFD shows system boundaries and interactions with external entities. It’s used early to build user consensus and is refined into deeper levels during development.
48
Entity Relationship Diagrams (ERDs)
ERDs model the data aspect of a system. They define relationships between data entities and were originally created for database design. Now, they help analysts and users visualize data flow and dependencies within the system.
49
Decision Tables for Complex Business Rules
Decision tables are useful when many conditions govern a decision. They break down rules into conditions and actions in a grid format. Especially effective for business users, they simplify specification negotiation. Large decision tables can be nested for clarity.
50
Petri Nets for Dynamic and Concurrent Systems
Petri nets graphically represent behavior in concurrent, asynchronous, and distributed systems. They are useful for visualizing and simulating system dynamics and are gaining traction in IS specification despite their technical roots in engineering.
51
Petri Nets in Modern IS Design Tools
Contemporary Petri net tools, such as Baan Dynamic Express Modeler and Pavone Process Modeler, support animated simulation. This makes Petri nets powerful for analyzing systems with multiple interacting processes or states.
52
The Role of User Participation in Requirements Specification
Inadequate user involvement leads to poorly defined requirements, a major reason IS projects fail. Human limitations in processing and communicating specs can be mitigated by using formal models like DFDs, ERDs, and Petri nets to engage users meaningfully.
53
Animated System Engineering (ASE) as a New Specification Technique
ASE is a newer method being evaluated for requirements specification. Early results suggest it enhances user understanding and improves the effectiveness of communicating complex requirements, especially when traditional models fall short.