RE FOR AI
Which user problems are good candidates for AI?
Lecture 12 How do we define requirements for AI software?
Announcements
2
¨ HW5 due tonight
¨ HW5 peer eval (optional) closes
Thursday 11:59pm
¨ No discussion Monday (Memorial Day)
Text questions to (562) 684-8307
Kahoot
3
Lecture 11 Review
Text questions to (562) 684-8307
Last Time – How do we support and
manage requirements evolution?
4
¨ Change is a fact of life! ¨ A wide palette of mechanisms
¤ It is important to prepare for for representing traceability
requirements change ¨ Traceability management
¨ Feature changes result in process is critical
versions taking the form of ¤ can’t let links get out of date or out
of control
revisions and variants
¨ Collecting and maintaining
¨ Requirements evolution traceability information is
requires traceability expensive; to help control
these costs, organizations
should define a set of
traceability policies which
set out what information is
to be collected and how it
is to be maintained
Text questions to (562) 684-8307
Last Time – How do we support and
manage requirements evolution?
5
¨ Requirements management involves the
collection, storage and maintenance of
large amounts of information
¨ Change management policies define the
processes used for change management
and the information to be associated
with each change request
Today’s Lecture – Which user problems are good candidates for
AI? How do we define requirements for AI software?
6
¨ Intro
¨ Find the intersection of user needs and
AI strengths
¨ Assess automation vs. augmentation
¨ Design and evaluate the reward
function
¨ Other considerations
Text questions to (562) 684-8307
Today’s Lecture – Which user problems are good candidates for
AI? How do we define requirements for AI software?
7
¨ Intro
¨ Find the intersection of user needs and
AI strengths
¨ Assess automation vs. augmentation
¨ Design and evaluate the reward
function
¨ Other considerations
Text questions to (562) 684-8307
RE for AI: Intro
8
¨ Compared to non-AI systems, AI systems:
¤ are more heavily data dependent
¤ evolve more frequently
¤ have a stronger need for continuous consideration/monitoring
of ethical requirements
¨ Many traditional RE techniques, methods, and tools
may not be useful to developing AI systems
¨ In RE for AI, RE responsibilities are often delegated
to data scientists
¨ There is a need for RE for AI-specific methods, tools,
and techniques
Text questions to (562) 684-8307
Google’s People + AI Guidebook
9
[Link]
Text questions to (562) 684-8307
Today’s Lecture – Which user problems are good candidates for
AI? How do we define requirements for AI software?
10
¨ Intro
¨ Find the intersection of user needs and
AI strengths
¨ Assess automation vs. augmentation
¨ Design and evaluate the reward
function
¨ Other considerations
Text questions to (562) 684-8307
Find the intersection of user needs & AI
strengths
11
¨ Identify real problems people need help with
¨ Example: a RUN app
¤ Runners want to get more variety in runs so they don’t get
bored and quit running
¤ Runners want to track daily runs so they can train for events
(e.g., get ready for a 10K in six months)
¤ Runners want to meet other runners at their skill level to stay
motivated to keep running
¨ For each one, determine:
¤ Will a solution require AI?
¤ Will a solution be meaningfully enhanced by AI?
¤ Will a solution not benefit from AI or even be degraded by it?
Text questions to (562) 684-8307
When AI is probably better
12
¨ Recommending different content to different users
¨ Prediction of future events
¨ Personalization will improve the user experience
¨ User experience requires natural language
interaction
¨ Recognition of an entire class of entities
¨ Detection of low occurrence events that change
over time
¨ An agent or bot experience for a particular domain
¨ The user experience does not rely on predictability
Text questions to (562) 684-8307
When AI is probably not better
13
¨ Maintaining predictability is valuable
¨ Providing static or limited information
¨ 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
Text questions to (562) 684-8307
Key Concept
14
Instead of asking “Can we use AI to ___?”,
start exploring human-centered AI solutions
by asking:
¨ How might we solve ___ ?
¨ Can AI solve this problem in a unique
way?
Text questions to (562) 684-8307
Canvas Quiz
15
Lecture 12: Brainstorming User Needs
Text questions to (562) 684-8307
Today’s Lecture – Which user problems are good candidates for
AI? How do we define requirements for AI software?
16
¨ Intro
¨ Find the intersection of user needs and
AI strengths
¨ Assess automation vs. augmentation
¨ Design and evaluate the reward
function
¨ Other considerations
Text questions to (562) 684-8307
Assess automation vs. augmentation
17
¨ Once you have found the problem you
want to solve using AI, consider whether
you should:
¤ Automate the task OR
¤ Augment a person’s ability to do that task
themselves
Text questions to (562) 684-8307
Successful automation is often measured
by…
18
¨ Increased efficiency
¨ Improved human safety
¨ Reduction of tedious tasks
¨ Enabling new experiences that were not
possible without automation
Automation is often the best option for tasks that
supplement human weaknesses with AI strengths.
Text questions to (562) 684-8307
When to automate
19
¨ When people lack the knowledge or ability
to do the task
¨ When the task is boring, repetitive,
awkward, or dangerous
¨ Even when you choose to automate, there
should almost always be an option for
human oversight and intervention if
necessary
¤ e.g., preview, test, edit, undo functions for humans
Text questions to (562) 684-8307
Successful augmentation is often measured
by…
20
¨ 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
Text questions to (562) 684-8307
When to augment
21
¨ When people enjoy the task
¨ When personal responsibility for the
outcome is required or important
¨ When the stakes are high
¨ When specific preferences are hard to
communicate
Text questions to (562) 684-8307
Automation vs. augmentation questions for
users
22
¨ If you were helping to train a new coworker
for a similar role, what would be the most
important tasks you would teach them first?
➡ Augmentation candidates
¨ Tell me more about that action you just took,
about how often do you do that?
➡ Automation/augmentation candidates
¨ If you had a human assistant to work with on
this task, what, if any duties would you give
them to carry out?
➡ Automation candidates
Text questions to (562) 684-8307
Canvas Quiz
23
Lecture 12: Automation vs. Augmentation
Text questions to (562) 684-8307
Today’s Lecture – Which user problems are good candidates for
AI? How do we define requirements for AI software?
24
¨ Intro
¨ Find the intersection of user needs and
AI strengths
¨ Assess automation vs. augmentation
¨ Design and evaluate the reward
function
¨ Other considerations
Text questions to (562) 684-8307
Reward function
25
¨ A mathematical formula that the AI
model uses to determine “right” vs.
“wrong” predictions
¨ Determines the action/behavior for
which your system will try to optimize
¨ A major driver of the user experience
Text questions to (562) 684-8307
Reward function: Key decisions
26
¨ Weigh false positives and negatives
¨ Consider precision and recall tradeoffs
¨ Evaluate the reward function outcomes
Text questions to (562) 684-8307
Weigh false positives and negatives
27
Example: RUN app
28
¨ True positive: The model suggested a run
the user liked and chose to go on.
¨ True negative: The model did not suggest a
run the user would not have chosen to go
on.
¨ False positive: The model suggested a run
to the user that they did not want to go on.
¨ False negative: The model did not suggest a
run to the user that they would have wanted
to go on if they knew about it.
Text questions to (562) 684-8307
Consider precision & recall tradeoffs (I)
29
Precision: the proportion of true positives
correctly categorized out of all the true and
false positives
¨ Higher precision means…
➡ higher confidence that any model output is correct
➡ increased number of false negatives by excluding
possibly relevant results
➡ RUN app would only recommend runs it is highly
confident the user would like, but user might see
fewer suggestions overall
Text questions to (562) 684-8307
Consider precision & recall tradeoffs (II)
30
Recall: the proportion of true positives correctly
categorized out of all the true positives and
false negatives
¨ Higher recall means…
➡ higher confidence that all the relevant results are
included somewhere in the output
➡ increased number of false positives by including
possibly irrelevant results
➡ RUN app would recommend every run a user might
want to go on, including many that don’t match their
preferences very closely
Text questions to (562) 684-8307
Optimizing for precision vs. recall
31
Today’s Lecture – Which user problems are good candidates for
AI? How do we define requirements for AI software?
32
¨ Intro
¨ Find the intersection of user needs and
AI strengths
¨ Assess automation vs. augmentation
¨ Design and evaluate the reward
function
¨ Other considerations
Text questions to (562) 684-8307
Subsequent steps in developing AI software
33
¨ Collect and evaluate data
¨ Define, refine, and communicate mental
models
¨ Consider explainability and trust
¨ Plan for accepting and acting upon user
feedback
¨ Design how your system will deal with
errors
Text questions to (562) 684-8307
Google’s AI principles
34
¨ Be socially beneficial
¨ Avoid creating or reinforcing unfair bias
¨ Be built and tested for safety
¨ Be accountable to people
¨ Incorporate privacy design principles
¨ Uphold high standards of scientific
excellence
¨ Be made available for uses that accord
with these principles
Text questions to (562) 684-8307
Summary – Which user problems are good candidates
for AI? How do we define requirements for AI software?
35
¨ Many traditional RE techniques do not apply
when it comes to developing AI-based
software
¨ Even the best AI will fail if it doesn’t provide
unique value to users
¨ We can determine user problems that are
good candidates for AI and develop solutions
effectively by:
¤ Finding the intersection of user needs and AI strengths
¤ Assessing automation vs. augmentation
¤ Designing and evaluating the reward function
Text questions to (562) 684-8307
Homework 6
36
Text questions to (562) 684-8307
For Next Time
37
¨ Complete Lecture 13 Pre-Work: RE
Ethics