Looks like no one added any tags here yet for you.
What is the difference between a horizontal and a vertical traceability link?
Horizontal — Within same phase
Vertical — Between phases
What is the difference between backward and forward traceability?
Backward traceability
Why is this here?
Where does it come from?
Forward traceability
Where is this taken into account?
What are the implications of this?
What is the difference between a revision and a variant?
Revision = to correct, improve single-product versions
Variants = to adapt, restrict, extend multi-product version
What is the focus of requirements management?
Requirements changes
What is not a common source of requirements changes?
Traceability links
Backwards traceability provides the answer to…?
Why is this here?
A traceability link going from a use case to a source code file would be a __________ link
vertical, forward
The purpose of a _______ is to correct/improve a single-product version
revision
For which type of SW feature is it probably better to use AI?
One in which different content is recommended to different users
When should AI automate rather than augment?
When the task is boring and repetitive
For which type of SW feature is it probably better not to use AI?
One in which maintaining predictability is valuable
If Netflix’s recommendation feature suggests a movie you end up hating, this is a…
false positive
If Netflix’s recommendation feature includes more movies you don’t actually like, it’s probably optimizing for…
recall
Which of the following are standard features of requirements management tools?
database
traceability
change control and management
document analysis and generation
database
traceability
change control and management
document analysis and generation
True or false: Rational DOORS is the industry standard for RE tools and the one most widely used
false
What type of software would likely require you to follow a domain-specific standard for RE?
Self-driving car
The knowledge of RE standards is rather ______, and the known standards are _____ used
low, barely
Why do requirements change?
Problem keeps shifting
Stakeholders form a better understanding of system as time goes on
Problems with information management are…
consistency maintenance, change propagation, versioning
Definition of requirements/change mangement
process of anticipating, evaluating, agreeing on, and propagating changes in requirements doc
Source of requirement changes include
Requirement errors, conflicts, and inconsistencies
Evolving customer/end-user system knowledge
Technical, schedule, or cost overruns
Changing customer priorities
Environmental changes
Organizational changes
Features are ______ units
change
Feature changes yield…..
new system versions
Revisions aim to…
correct and improve single-product versions
Variants aim to…
adapt, restrict, and extend multi-product versions
A requirement is traceable if you can identify…
WHERE it comes from
WHAT/HOW it is used
WHY it’s there
Definition of traceability management
Identify, document, and retrieve rationale and dependencies/impact of requirements
Assess impact of proposed changes
Easily propagate changes to maintain consistency among req items + between requirement items and downstream software items
Traceability should be…
identified, recorded, and retrieved; bidirectional (forwards and backwards)
Forwards traceability describes…
source TO target
Backwards traceability describes…
target TO source
Horizontal traceability occurs within _______ phase
the same
Vertical traceability occurs between ______ phases
different
Backwards traceability answers the questions
Why is this here?
Where does it come from?
Forwards traceability answers the questions
Where is this taken into account?
What are the implications of this?
Some examples of TM techniques include…
Cross referencing, traceability matrices, feature diagrams (for variant link types), traceability databases
Process for change management is…
Define traceability policy (trade-offs, next steps)
Establish traceability links (which items to trace? which link types to use?)
Exploit traceability links (coverage analysis, support analysis, evolution support)
Maintain traceability links (update after changes)
Definition of requirements management is…
Process of managing requirements – focus on change to the requirements for a system
What are some principle concerns of requirements management?
managing changes to agreed requirements
managing relationships between requirements
managing dependencies between requirements doc and downstream documents
Requirements cannot be managed effectively without…
requirements traceability
If changes have ____ impact, you should rerun RE process
high
If changes have ____ impact, you should absorb changes (but be aware of risk!)
low
Scope creep happens when…
new functionality and significant changes that are presented after project requirements have been baselined
Best way to prevent scope creep is to….
just say no!!! (throwback to drug seminars)
Change management describes…
the procedures, processes, and standards used to manage changes to requirements
In agile and iterative development processes, a requirements change request should (affect/never affect?) the current sprint iteration
never affect
In agile and iterative development processes, a requirements change request should get added to….
the product backlog
AI systems, as compared to non-AI systems, are ..(more/less?) data dependent
more
AI systems, as compared to non-AI systems, evolve… (more/less?) frequently
more
AI systems, as compared to non-AI systems, have …(more/less?) need for continuous monitoring
more
What are some questions to ask when determining whether or not to use AI?
Will the solution require AI?
Will the solution be meaningfully enhanced by AI?
Will the solution not benefit or be degraded from AI?
AI is better when…
Recommending different content to different users
Predicting future events
Personalization improves UX
UX requires NL interaction
Recognition of an entire class of entities
Detection of low-occurrence events that change over time
Agent or bot experience for a particular domain
UX does not rely on predictability
AI is NOT better when…
Maintaining predictability is valuable
Providing static or limited info
Risk of errors is too high
Complete transparency is needed
Optimizing for high speed and low cost
Tasks to automate are high-value to users
When thinking about AI, we should ask…
A: “Can we use AI to ____?”
B: “How might we solve____?
C: “Can AI solve this problem in a unique way?”
“How might we solve____?
“Can AI solve this problem in a unique way?”
Automation is successful when there is…
Increased efficiency
Improved human safety
Reduction of tedious tasks
Enabling new experiences that were not possible without automation
You should automate when…
People lack knowledge/ability to do the task
When task is boring, repetitive, awkward, or dangerous
True or false: When you automate, you don’t really need to add an option for human oversight (It’s helpful if it’s there, but not required)
False
Successful augmentation is measured by…
Increased user enjoyment of a task
Higher levels of user control over automation
Greater user responsibility and fulfillment
Increased ability for the user to scale their efforts
Increased creativity
You should augment tasks when…
People enjoy the task
Personal responsibility is required or important
There are high stakes
Specific preferences are hard to communicate
A reward function is…
a mathematical formula that the AI uses to determine right or wrong predictions
The reward function…
Determines action/behavior for which your system will try to optimize
Reward functions are… (major/minor?) drivers of the UX
Major
Precision represents..
the proportion of true positives correctly categorized out of all true and false positives
Higher precision means…
Higher confidence that model output is correct
Increased number of false negatives by excluding possibly relevant results
More accuracy, but less results
(e.g., Netflix only will recommend you 5 movies, but they’re all things you’re interested in seeing)
Recall represents…
the proportion of true positives correctly categorized out of all the true positives and false negatives
Higher recall means…
Higher confidence that all relevant results are included somewhere in output
Increased number of false positives by including possibly irrelevant results
Less accuracy, but more results
(e.g., Netflix will recommend you 100 movies, but you only want to see 5 of them)
Find good candidates for AI by…
Finding intersection of user needs and AI strengths
Assessing automation vs augmentation
Designing and evaluating the reward function
What can be supported by RE tools?
Elicitation – analyze textual artifacts
Documentation – generating and editing requirement work products
Modeling – primarily model editors
Management – store and retrieve, prioritize, trace, …
Validation – finding quality problems, simulators, model checkers, …
Support levels for RE include…
General purpose » Database level » language/method based
General purpose RE support includes things like..
word processors, spreadsheet tools, general-purpose graphic drawing tools, … (things that are used for other things but can also be used for RE)
Database-level RE support describes...
RE management tools for organizing, storing, retrieving, and tracing requirements
Language/method-based RE support describes things like...
state machine diagrams, UML + tools for supporting specific methods (validation with model-checking or checking doc for compliance)
(tools that support specific requirements language)
Features of requirement management tools include…
Database
Document analysis and generation
Change control and management
Traceability
The primary usage of AI in RE is…
processing natural language texts with machine learning
Places where AI’s NL processing can be used includes…
Finding and classifying (potential requirements, glossary candidates, smells)
Recommending (further stakeholders)
Analyze (automated impact analysis when requirements change)
Generating (requirements for a given problem, acceptance criteria)
Support (chatbots for autonomous interaction with a large number of stakeholders)
What are the three relevant dimensions of RE ethics?
Ethics of profession (how to act ethically as a requirements engineer)
Ethics of use (impact of requirements on user)
Ethics of design (impact of requirements on system design)
What are some ways you could model structure and data?
E-R models, class models, data dictionaries
What are E-R models?
Models the relevant part of the domain using entity types, relationship types, and attributes
A straightforward mapping to relational database systems
What is a potential problem with E-R models?
They ignore functionality and behavior
What are class models?
Identifies entities in the domain that the system has to store and process
Map this info to classes, attributes, relationships, and operations
Represent requirements in a static structural model
What are data dictionaries?
Collection of detailed info about the data entities used in an application (composition, data types, allowed values, …)
Data dictionaries can be used to complement….
project glossaries
Static system models are..
info that a system needs to know and store persistently
Static domain models are…
(business) objects and relationships in a domain of interest
Activity models would be..
UML activity diagrams
Models process activities and control flow
Can model data flow
Data and information flows …
Models system functionality with data flow diagrams
Are rarely used today
The goal when modeling state and behavior is to..
describe dynamic system behavior
(how system reacts to external events, how independent system components coordinate work)
RE standards describe..
process/products + characteristics/attributes of well-formed requirements
True or false: there is no requirements engineering body of knowledge document
True
The ISO/IEC/IEEE 2011 is a commonly used RE standards that is…
Heavyweight document-, process-centric standard
Does not work well for participatory and lightweight RE processes
Validation asks..?
Are we building the right product?
Verification asks…
Are we building the product right?
Analysis works with _____ requirements
raw (aka as-elicited from stakeholders)
Validation works with the (first/final?) draft of requirements doc
final
Validation complements the ________ phases
evaluation/analysis, negotiation
The goals of validation/QA during RE is…
Detecting errors/flaws in requirements documents (no omissions, incorrect info, contradictions… etc)
Check adequacy of requirements and assumptions (Is requirements doc acceptable prior to further development?)
Tasks of validation/QA during RE include..
Finding as many errors as possible
Report defects, analyze causes, fix
Requirements review and inspections are carried out by….
a group of selected personnel
During requirements review, personnel should…
Read and analyze requirements
Look for problems
Meet and discuss problems
Agree on actions to address problems
True or false: Inspectors should be independent from original requirements authors
True
True or false: Inspectors don’t need to be representative of all stakeholders
False