尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
Software Usability Implications
in Requirements and Design
Natalia Juristo
Universidad Politécnica de Madrid
Bolzano, April 12 2005
Talk Contents
 Introduction to Usability
 Discussion and debunking of the myths
on usability in which developers believe
 A pattern-oriented solution
Brief state of the practice
 There are so many software products with
immature usability that we all
acknowledge the low level of use of
usability methods
 Usability is not properly addressed in most
developments, on spite of its importance
Usability integration into
development: SE + HCI
 Both the HCI and SE communities play a
crucial role in the development of usable
software
 The HCI community has the knowledge
about which features a software system
must provide to be usable
 The SE community has the knowledge
about software systems development
Usability integration into
development: Difficulties
 Different viewpoints between usability
people and software developers
 Specialist skills required
Integration of usability into the software
development process is not easy and
obvious at all
Quality includes usability
 Usability is a basic software system feature
 Several software quality attribute
classifications agree on considering usability
as a quality attribute
Usability definition
 Usability can be seen as Quality in Use
 Usability reflects
 Learnability
 Efficiency of use
 Reliability in use
 Satisfaction
Usability and UI
are not synonymous
 A system’s usability relates closely to the
software’s overall functionality
 UI vs. Interaction
 UI = The visible part of the system
 Interaction = The coordination of information
exchange user-system
Misunderstandings
 Three misunderstanding that prevent the
proper incorporation of usability features
into software development
 Usability problems can be fixed in the later
development stages
 Stating a usability feature is a sufficient
specification
 Design usability features is easy
Misunderstanding
Usability can be dealt with
late in development
Can usability really wait?
 If usability is relegated to the end of
the development process, then there
is no time left to make a difference
 Interaction design can have major
impact on the overall application
Usability features
with impact on design
 Cancel
 Undo
 Show user system status
 Provide feedback
 Check for correctness
 History Logging
 Provide different access methods
 Make different views accessible
 Support personalization
 Reuse information
 Aggregate data
 Aggregate commands
 Provide good help (standard help, wizard, tour, context
sensitive help)
Implications
of the impact on design
 The changes to be made to a software
system to add any of these features
involve all the architecture components
 The late incorporation of such usability
issues calls for a lot of rework
 These features should be addressed from
the very start of the development process
like any other functionality
Usability
as non-functional requirements
 Establishing what usability values the
system should achieve
 These are then used as a reference
standard at the subsequent product
evaluation stage
Usability
as functional requirement
 Particular usability features represent
functionalities in a software system
 Then, usability has implications for
software functionality
 Therefore, it needs to be dealt with as
functional requirements
Misunderstanding
A usability feature statement is
a good enough functional
specification
Specifying functional usability
requirements (FUR)
 An example of an HCI heuristic would be
“Visibility of system status: The system should
always keep users informed about what is
going on through appropriate feedback within
reasonable time”
 Is this a good enough specification for the
system status feature?
Statement is not
a good enough specification
 From a SE perspective, the above
description provides very limited
information
 It is not enough to properly specify the
system status functionality
 The descriptions provided by HCI for
functional usability features lead to
ambiguous and incomplete requirements
More info is neccesary
 More information needs to be elicited to
completely and unambiguously specify each
functional usability requirement
 For the system status functionality
 Place where the system status information will be
presented to the user
 Which status changes in the software will the user
want to be notified of
 How critical each of the above situations are
 What kind of information needs to be displayed to the
user in each case
 etc
Reducing the ambiguity of
FURs: Difficulties
 Users do not have the knowledge
 Software engineers do not have the
necessary HCI knowledge either. They do
not know all the details that need to be
specified to properly incorporate such
features into a requirements specification
 HCI experts do have this information
Incorporating HCI experts:
Difficulties
 Difficulties in communication may arise.
Such difficulties can be a considerable
obstacle
 The cost of this solution: many software
SMEs cannot afford to engage an HCI
expert
Our approach
 We propose an alternative approach that
uses a pattern-based solution to support
information elicitation and specification for
usability functionalities
Elicitation patterns
 We propose the use of elicitation patterns
that enable the reuse of usability
knowledge to support developers during
usability requirements elicitation
 These patterns can be used to extract all
the information to completely and
unambiguously specify a usability feature
Features with elicitation patterns
Feature Usability Mechanism Goal
FEEDBACK System Status To inform users about the internal status of the system
Interaction To inform users that the system has registered a user interaction, that is, that the system
has heard users
Warning To inform users of any action with important consequences
Long Action Feedback To inform users that the system is processing an action that will take some time to
complete
UNDO/CANCEL Global Undo To undo system actions at several levels
Object-Specific Undo To undo several actions on an object
Abort Operation To cancel the execution of a command or an application
Go Back to a Safe State To go back to a particular state in a command execution sequence
FORM/FIELD
VALIDATION
Structured Text Entry To help prevent the user from making data input errors
WIZARD Step-by-Step Execution To help do tasks that require different steps with user input
USER PROFILE Preferences To record each user's options for working with the system at the functional level
Personal Object Space To record each user's options for working with the system at the interface level.
Favourites To record certain places of interest for the user
HELP Multilevel Help To provide different help levels for different users
Elicitation Pattern Structure
 Identification of the usability feature
addressed by the usability elicitation
pattern
 The problem tackled
 The context in which this pattern will be
useful
 The solution to the problem
Elicitation Pattern Structure:
Identification
 Identification of the usability feature
addressed by the usability elicitation
pattern
 Name of the usability mechanism under
consideration
 Family of usability features to which it belongs
 Aliases by which this usability mechanism
may be known
Elicitation Pattern Structure:
Problem
 The problem tackled:
“How to elicit and specify the
information needed to incorporate
the usability mechanism”
Elicitation Pattern Structure:
Context
 The context in which this pattern
will be useful
 Information related to the situation
that makes this mechanism useful for
the application under construction
Elicitation Pattern Structure:
Solution
 The solution to the problem
 The usability mechanism elicitation guide
provides knowledge for eliciting and gathering
information to fully specify the usability
mechanism
 The usability mechanism specification guide
provides a template to be instantiated for
each application
Example:
System Status Feedback
Misunderstanding
Designing a specific usability
feature is easy
Is specification enough?
 Some usability features require the far
from straightforward creation of special-
purpose components with responsibilities
 HCI literature pays no attention to the
design implications of incorporating
usability features into a system
For example...
Aspects of cancel
 The software must free the resources allocated to the cancelled
command
 The software must handle cancellation when the active command is
not responding
 If the command being cancelled is not responding, the system must
be restored to the status it had prior to command execution or as
close as possible to that status
 The software must gather information (status, resource usage,
actions, etc.) that can be used to return the system to its status prior
to the execution of the ongoing command
 The software must estimate the time to cancel
 The software must inform the user of cancellation progress
Need to provide design support:
Experiment
 Experiment run under three different
circumstances
1) Just a detailed description of the cancel feature,
including the particular commands that could be
cancelled (with no design information at all)
2) Same information as the previous group, plus a list
of responsibilities that any software system with a
cancel feature should satisfy
3) The above information, plus a sample solution
Need to provide design support:
Experiment results
 The solutions generated by students
under condition 1 (a statement of the
requirement only) performed
significantly worse (in terms of
malfunctioning errors and design time)
than the ones by students working in the
other two conditions
Our approach
 Provide mechanisms that allow software
developers to examine various facets of
the software solution to guide through
the incorporation of such solutions
into their designs
Design element of the pattern
 Design solution allocates the
general responsibilities of the
software system to specific software
components with their responsibilities
Design Solution
for System Status
Conclusions
 We need getting a better understanding of
what implications usability has for software
development
 It is necessary to provide developers with
support to satisfactorily deal with usability
features during the requirements and design
stages
 We proposed a pattern-based solution for
describing usability features
Software Usability Implications
in Requirements and Design
Natalia Juristo
Universidad Politécnica de Madrid
Bolzano, April 12 2005

More Related Content

What's hot

Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
Himanshu
 
Software_Build__Release___UAT_Phases (1).PDF
Software_Build__Release___UAT_Phases (1).PDFSoftware_Build__Release___UAT_Phases (1).PDF
Software_Build__Release___UAT_Phases (1).PDF
Asish Mohanty M@Vodafone Group
 
Software Engineering
 Software Engineering  Software Engineering
Software Engineering
JayaKamal
 
Unit 1
Unit 1Unit 1
Ch6 architectural design
Ch6 architectural designCh6 architectural design
Ch6 architectural design
software-engineering-book
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
Preeti Mishra
 
Engineering Software Products: 6. microservices architecture
Engineering Software Products: 6. microservices architectureEngineering Software Products: 6. microservices architecture
Engineering Software Products: 6. microservices architecture
software-engineering-book
 
Ch5 system modeling
Ch5 system modelingCh5 system modeling
Ch5 system modeling
software-engineering-book
 
System requirements engineering
System requirements engineeringSystem requirements engineering
System requirements engineering
Animesh Chaturvedi
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
MuhammadTalha436
 
Ch17-Software Engineering 9
Ch17-Software Engineering 9Ch17-Software Engineering 9
Ch17-Software Engineering 9
Ian Sommerville
 
User Interface Design
User Interface DesignUser Interface Design
User Interface Design
JReifman
 
UI / UX Engineering for Web Applications
UI / UX Engineering for Web ApplicationsUI / UX Engineering for Web Applications
UI / UX Engineering for Web Applications
Reggie Niccolo Santos
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
Priyanka Shetty
 
Ch15 software reuse
Ch15 software reuseCh15 software reuse
Ch15 software reuse
software-engineering-book
 
Ch8.testing
Ch8.testingCh8.testing
Slides 6 design of sw arch using add
Slides 6 design of sw arch using addSlides 6 design of sw arch using add
Slides 6 design of sw arch using add
Javid iqbal hashmi
 
Software engineering practical
Software engineering practicalSoftware engineering practical
Software engineering practical
Nitesh Dubey
 
Se lec6
Se lec6Se lec6
Se lec6
Huda Alameen
 
Chapter 4 software design
Chapter 4  software designChapter 4  software design
Chapter 4 software design
Cliftone Mullah
 

What's hot (20)

Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
 
Software_Build__Release___UAT_Phases (1).PDF
Software_Build__Release___UAT_Phases (1).PDFSoftware_Build__Release___UAT_Phases (1).PDF
Software_Build__Release___UAT_Phases (1).PDF
 
Software Engineering
 Software Engineering  Software Engineering
Software Engineering
 
Unit 1
Unit 1Unit 1
Unit 1
 
Ch6 architectural design
Ch6 architectural designCh6 architectural design
Ch6 architectural design
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Engineering Software Products: 6. microservices architecture
Engineering Software Products: 6. microservices architectureEngineering Software Products: 6. microservices architecture
Engineering Software Products: 6. microservices architecture
 
Ch5 system modeling
Ch5 system modelingCh5 system modeling
Ch5 system modeling
 
System requirements engineering
System requirements engineeringSystem requirements engineering
System requirements engineering
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
 
Ch17-Software Engineering 9
Ch17-Software Engineering 9Ch17-Software Engineering 9
Ch17-Software Engineering 9
 
User Interface Design
User Interface DesignUser Interface Design
User Interface Design
 
UI / UX Engineering for Web Applications
UI / UX Engineering for Web ApplicationsUI / UX Engineering for Web Applications
UI / UX Engineering for Web Applications
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Ch15 software reuse
Ch15 software reuseCh15 software reuse
Ch15 software reuse
 
Ch8.testing
Ch8.testingCh8.testing
Ch8.testing
 
Slides 6 design of sw arch using add
Slides 6 design of sw arch using addSlides 6 design of sw arch using add
Slides 6 design of sw arch using add
 
Software engineering practical
Software engineering practicalSoftware engineering practical
Software engineering practical
 
Se lec6
Se lec6Se lec6
Se lec6
 
Chapter 4 software design
Chapter 4  software designChapter 4  software design
Chapter 4 software design
 

Viewers also liked

Usability of software
Usability of softwareUsability of software
Usability of software
u061423
 
Usability Tips And Tricks For Beginners Experience Dynamics Web Seminar
Usability Tips And Tricks For Beginners   Experience Dynamics Web SeminarUsability Tips And Tricks For Beginners   Experience Dynamics Web Seminar
Usability Tips And Tricks For Beginners Experience Dynamics Web Seminar
Experience Dynamics
 
adsfasdf
adsfasdfadsfasdf
adsfasdf
Tianwei_liu
 
edUi 2013: Usability With a Limited Budget & Apprehensive Administration
edUi 2013: Usability With a Limited Budget & Apprehensive AdministrationedUi 2013: Usability With a Limited Budget & Apprehensive Administration
edUi 2013: Usability With a Limited Budget & Apprehensive Administration
Jackie Zajac
 
Qué es un abstract?
Qué es un abstract?Qué es un abstract?
Qué es un abstract?
johanna hidalgo
 
Usability and Health IT
Usability and Health ITUsability and Health IT
Usability and Health IT
Robert Schumacher
 
Bvh report
Bvh reportBvh report
Bvh report
Lars Lindahl
 
Usability Evaluation Report : Pharmacy application
Usability Evaluation Report : Pharmacy applicationUsability Evaluation Report : Pharmacy application
Usability Evaluation Report : Pharmacy application
Subhasish Karmakar
 
Introduction To Usability
Introduction To UsabilityIntroduction To Usability
Introduction To Usability
Ovidiu Von M
 
Park and Seek Mobile app (usability testing documentation)
Park and Seek Mobile app (usability testing documentation)Park and Seek Mobile app (usability testing documentation)
Park and Seek Mobile app (usability testing documentation)
JosephHowerton
 
A report on usability testing of smart heating products
A report on usability testing of smart heating productsA report on usability testing of smart heating products
A report on usability testing of smart heating products
katiefehren
 
Drupal Usability Report
Drupal Usability ReportDrupal Usability Report
Drupal Usability Report
brighteyes
 
Evaluating software usability
Evaluating software usabilityEvaluating software usability
Evaluating software usability
memo200
 
Human computer interaction by gazegaze
Human computer interaction by gazegazeHuman computer interaction by gazegaze
Human computer interaction by gazegaze
gazegaze1234
 
Report on Usability Process and Assessment of Yufind
Report on Usability Process and Assessment of YufindReport on Usability Process and Assessment of Yufind
Report on Usability Process and Assessment of Yufind
kramsey
 
Evaluating and Improving Software Usability
Evaluating and Improving Software UsabilityEvaluating and Improving Software Usability
Evaluating and Improving Software Usability
XBOSoft
 
USA TODAY iPad Application Usability Report
USA TODAY iPad Application Usability ReportUSA TODAY iPad Application Usability Report
USA TODAY iPad Application Usability Report
kathleensulli
 
Database Web Application Usability Testing
Database Web Application Usability TestingDatabase Web Application Usability Testing
Database Web Application Usability Testing
Tim Broadwater
 
Usability Report
Usability ReportUsability Report
Usability Report
Gary Schroeder
 
Human Computer Interaction Project
Human Computer Interaction ProjectHuman Computer Interaction Project
Human Computer Interaction Project
Daisy LaFlamme
 

Viewers also liked (20)

Usability of software
Usability of softwareUsability of software
Usability of software
 
Usability Tips And Tricks For Beginners Experience Dynamics Web Seminar
Usability Tips And Tricks For Beginners   Experience Dynamics Web SeminarUsability Tips And Tricks For Beginners   Experience Dynamics Web Seminar
Usability Tips And Tricks For Beginners Experience Dynamics Web Seminar
 
adsfasdf
adsfasdfadsfasdf
adsfasdf
 
edUi 2013: Usability With a Limited Budget & Apprehensive Administration
edUi 2013: Usability With a Limited Budget & Apprehensive AdministrationedUi 2013: Usability With a Limited Budget & Apprehensive Administration
edUi 2013: Usability With a Limited Budget & Apprehensive Administration
 
Qué es un abstract?
Qué es un abstract?Qué es un abstract?
Qué es un abstract?
 
Usability and Health IT
Usability and Health ITUsability and Health IT
Usability and Health IT
 
Bvh report
Bvh reportBvh report
Bvh report
 
Usability Evaluation Report : Pharmacy application
Usability Evaluation Report : Pharmacy applicationUsability Evaluation Report : Pharmacy application
Usability Evaluation Report : Pharmacy application
 
Introduction To Usability
Introduction To UsabilityIntroduction To Usability
Introduction To Usability
 
Park and Seek Mobile app (usability testing documentation)
Park and Seek Mobile app (usability testing documentation)Park and Seek Mobile app (usability testing documentation)
Park and Seek Mobile app (usability testing documentation)
 
A report on usability testing of smart heating products
A report on usability testing of smart heating productsA report on usability testing of smart heating products
A report on usability testing of smart heating products
 
Drupal Usability Report
Drupal Usability ReportDrupal Usability Report
Drupal Usability Report
 
Evaluating software usability
Evaluating software usabilityEvaluating software usability
Evaluating software usability
 
Human computer interaction by gazegaze
Human computer interaction by gazegazeHuman computer interaction by gazegaze
Human computer interaction by gazegaze
 
Report on Usability Process and Assessment of Yufind
Report on Usability Process and Assessment of YufindReport on Usability Process and Assessment of Yufind
Report on Usability Process and Assessment of Yufind
 
Evaluating and Improving Software Usability
Evaluating and Improving Software UsabilityEvaluating and Improving Software Usability
Evaluating and Improving Software Usability
 
USA TODAY iPad Application Usability Report
USA TODAY iPad Application Usability ReportUSA TODAY iPad Application Usability Report
USA TODAY iPad Application Usability Report
 
Database Web Application Usability Testing
Database Web Application Usability TestingDatabase Web Application Usability Testing
Database Web Application Usability Testing
 
Usability Report
Usability ReportUsability Report
Usability Report
 
Human Computer Interaction Project
Human Computer Interaction ProjectHuman Computer Interaction Project
Human Computer Interaction Project
 

Similar to Software Usability Implications in Requirements and Design

Principles of Health Informatics: Usability of medical software
Principles of Health Informatics: Usability of medical softwarePrinciples of Health Informatics: Usability of medical software
Principles of Health Informatics: Usability of medical software
Martin Chapman
 
What I Learned In Pr Writing
What I Learned In Pr WritingWhat I Learned In Pr Writing
What I Learned In Pr Writing
cwhitin4
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangers
guest08cd22
 
Qué es un blog?
Qué es un blog?Qué es un blog?
Qué es un blog?
carolina_zapata
 
Design For Strangers
Design For StrangersDesign For Strangers
Design For Strangers
test99
 
Designfo#{1} #{2}trangers
Designfo#{1} #{2}trangersDesignfo#{1} #{2}trangers
Designfo#{1} #{2}trangers
guest0437b8
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangers
guru100
 
Biblioteca.
Biblioteca.Biblioteca.
Biblioteca.
Bibliotecaesc1de12
 
Rashmi Xerox Parc
Rashmi Xerox ParcRashmi Xerox Parc
Rashmi Xerox Parc
test98
 
Designfor strangers
Designfor strangersDesignfor strangers
Designfor strangers
guestc72c35
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangers
guestbdd02b
 
Ijetr021224
Ijetr021224Ijetr021224
Ijetr021224
ER Publication.org
 
Ijetr021224
Ijetr021224Ijetr021224
Hci in-the-software-process-1
Hci in-the-software-process-1Hci in-the-software-process-1
Hci in-the-software-process-1
Ali javed
 
Software Prototyping
Software PrototypingSoftware Prototyping
Software Prototyping
drjms
 
Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8
koolkampus
 
Chapter five HCI
Chapter five HCIChapter five HCI
Chapter five HCI
yihunie ayalew
 
Hci In The Software Process
Hci In The Software ProcessHci In The Software Process
Hci In The Software Process
ahmad bassiouny
 
HCI - Chapter 6
HCI - Chapter 6HCI - Chapter 6
HCI - Chapter 6
Alan Dix
 
HCI 3e - Ch 6: HCI in the software process
HCI 3e - Ch 6:  HCI in the software processHCI 3e - Ch 6:  HCI in the software process
HCI 3e - Ch 6: HCI in the software process
Alan Dix
 

Similar to Software Usability Implications in Requirements and Design (20)

Principles of Health Informatics: Usability of medical software
Principles of Health Informatics: Usability of medical softwarePrinciples of Health Informatics: Usability of medical software
Principles of Health Informatics: Usability of medical software
 
What I Learned In Pr Writing
What I Learned In Pr WritingWhat I Learned In Pr Writing
What I Learned In Pr Writing
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangers
 
Qué es un blog?
Qué es un blog?Qué es un blog?
Qué es un blog?
 
Design For Strangers
Design For StrangersDesign For Strangers
Design For Strangers
 
Designfo#{1} #{2}trangers
Designfo#{1} #{2}trangersDesignfo#{1} #{2}trangers
Designfo#{1} #{2}trangers
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangers
 
Biblioteca.
Biblioteca.Biblioteca.
Biblioteca.
 
Rashmi Xerox Parc
Rashmi Xerox ParcRashmi Xerox Parc
Rashmi Xerox Parc
 
Designfor strangers
Designfor strangersDesignfor strangers
Designfor strangers
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangers
 
Ijetr021224
Ijetr021224Ijetr021224
Ijetr021224
 
Ijetr021224
Ijetr021224Ijetr021224
Ijetr021224
 
Hci in-the-software-process-1
Hci in-the-software-process-1Hci in-the-software-process-1
Hci in-the-software-process-1
 
Software Prototyping
Software PrototypingSoftware Prototyping
Software Prototyping
 
Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8
 
Chapter five HCI
Chapter five HCIChapter five HCI
Chapter five HCI
 
Hci In The Software Process
Hci In The Software ProcessHci In The Software Process
Hci In The Software Process
 
HCI - Chapter 6
HCI - Chapter 6HCI - Chapter 6
HCI - Chapter 6
 
HCI 3e - Ch 6: HCI in the software process
HCI 3e - Ch 6:  HCI in the software processHCI 3e - Ch 6:  HCI in the software process
HCI 3e - Ch 6: HCI in the software process
 

More from Natalia Juristo

CESI Keynote English
CESI Keynote EnglishCESI Keynote English
CESI Keynote English
Natalia Juristo
 
PROMISE keynote Juristo
PROMISE keynote JuristoPROMISE keynote Juristo
PROMISE keynote Juristo
Natalia Juristo
 
Conducting Experiments in Software Industry
Conducting Experiments in Software IndustryConducting Experiments in Software Industry
Conducting Experiments in Software Industry
Natalia Juristo
 
Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)
Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)
Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)
Natalia Juristo
 
Myths on Replication (LASER School Talk 2010)
Myths on Replication (LASER School Talk 2010)Myths on Replication (LASER School Talk 2010)
Myths on Replication (LASER School Talk 2010)
Natalia Juristo
 
The Role of Scientific Method in Software Development
The Role of Scientific Method in Software Development The Role of Scientific Method in Software Development
The Role of Scientific Method in Software Development
Natalia Juristo
 
Tester contribution to Testing Effectiveness. An Empirical Research
Tester contribution to Testing Effectiveness. An Empirical ResearchTester contribution to Testing Effectiveness. An Empirical Research
Tester contribution to Testing Effectiveness. An Empirical Research
Natalia Juristo
 
Towards Understanding SE Experiments Replication (ESEM'13 Keynote)
Towards Understanding SE Experiments Replication (ESEM'13 Keynote)Towards Understanding SE Experiments Replication (ESEM'13 Keynote)
Towards Understanding SE Experiments Replication (ESEM'13 Keynote)
Natalia Juristo
 

More from Natalia Juristo (8)

CESI Keynote English
CESI Keynote EnglishCESI Keynote English
CESI Keynote English
 
PROMISE keynote Juristo
PROMISE keynote JuristoPROMISE keynote Juristo
PROMISE keynote Juristo
 
Conducting Experiments in Software Industry
Conducting Experiments in Software IndustryConducting Experiments in Software Industry
Conducting Experiments in Software Industry
 
Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)
Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)
Common Shortcomings in SE Experiments (ICSE'14 Doctoral Symposium Keynote)
 
Myths on Replication (LASER School Talk 2010)
Myths on Replication (LASER School Talk 2010)Myths on Replication (LASER School Talk 2010)
Myths on Replication (LASER School Talk 2010)
 
The Role of Scientific Method in Software Development
The Role of Scientific Method in Software Development The Role of Scientific Method in Software Development
The Role of Scientific Method in Software Development
 
Tester contribution to Testing Effectiveness. An Empirical Research
Tester contribution to Testing Effectiveness. An Empirical ResearchTester contribution to Testing Effectiveness. An Empirical Research
Tester contribution to Testing Effectiveness. An Empirical Research
 
Towards Understanding SE Experiments Replication (ESEM'13 Keynote)
Towards Understanding SE Experiments Replication (ESEM'13 Keynote)Towards Understanding SE Experiments Replication (ESEM'13 Keynote)
Towards Understanding SE Experiments Replication (ESEM'13 Keynote)
 

Recently uploaded

How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17
Celine George
 
Diversity Quiz Prelims by Quiz Club, IIT Kanpur
Diversity Quiz Prelims by Quiz Club, IIT KanpurDiversity Quiz Prelims by Quiz Club, IIT Kanpur
Diversity Quiz Prelims by Quiz Club, IIT Kanpur
Quiz Club IIT Kanpur
 
Keynote given on June 24 for MASSP at Grand Traverse City
Keynote given on June 24 for MASSP at Grand Traverse CityKeynote given on June 24 for MASSP at Grand Traverse City
Keynote given on June 24 for MASSP at Grand Traverse City
PJ Caposey
 
Erasmus + DISSEMINATION ACTIVITIES Croatia
Erasmus + DISSEMINATION ACTIVITIES CroatiaErasmus + DISSEMINATION ACTIVITIES Croatia
Erasmus + DISSEMINATION ACTIVITIES Croatia
whatchangedhowreflec
 
The Rise of the Digital Telecommunication Marketplace.pptx
The Rise of the Digital Telecommunication Marketplace.pptxThe Rise of the Digital Telecommunication Marketplace.pptx
The Rise of the Digital Telecommunication Marketplace.pptx
PriyaKumari928991
 
(T.L.E.) Agriculture: "Ornamental Plants"
(T.L.E.) Agriculture: "Ornamental Plants"(T.L.E.) Agriculture: "Ornamental Plants"
(T.L.E.) Agriculture: "Ornamental Plants"
MJDuyan
 
220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science
Kalna College
 
Library news letter Kitengesa Uganda June 2024
Library news letter Kitengesa Uganda June 2024Library news letter Kitengesa Uganda June 2024
Library news letter Kitengesa Uganda June 2024
Friends of African Village Libraries
 
220711130097 Tulip Samanta Concept of Information and Communication Technology
220711130097 Tulip Samanta Concept of Information and Communication Technology220711130097 Tulip Samanta Concept of Information and Communication Technology
220711130097 Tulip Samanta Concept of Information and Communication Technology
Kalna College
 
Interprofessional Education Platform Introduction.pdf
Interprofessional Education Platform Introduction.pdfInterprofessional Education Platform Introduction.pdf
Interprofessional Education Platform Introduction.pdf
Ben Aldrich
 
The Science of Learning: implications for modern teaching
The Science of Learning: implications for modern teachingThe Science of Learning: implications for modern teaching
The Science of Learning: implications for modern teaching
Derek Wenmoth
 
220711130095 Tanu Pandey message currency, communication speed & control EPC ...
220711130095 Tanu Pandey message currency, communication speed & control EPC ...220711130095 Tanu Pandey message currency, communication speed & control EPC ...
220711130095 Tanu Pandey message currency, communication speed & control EPC ...
Kalna College
 
Slides Peluncuran Amalan Pemakanan Sihat.pptx
Slides Peluncuran Amalan Pemakanan Sihat.pptxSlides Peluncuran Amalan Pemakanan Sihat.pptx
Slides Peluncuran Amalan Pemakanan Sihat.pptx
shabeluno
 
IoT (Internet of Things) introduction Notes.pdf
IoT (Internet of Things) introduction Notes.pdfIoT (Internet of Things) introduction Notes.pdf
IoT (Internet of Things) introduction Notes.pdf
roshanranjit222
 
Creation or Update of a Mandatory Field is Not Set in Odoo 17
Creation or Update of a Mandatory Field is Not Set in Odoo 17Creation or Update of a Mandatory Field is Not Set in Odoo 17
Creation or Update of a Mandatory Field is Not Set in Odoo 17
Celine George
 
Diversity Quiz Finals by Quiz Club, IIT Kanpur
Diversity Quiz Finals by Quiz Club, IIT KanpurDiversity Quiz Finals by Quiz Club, IIT Kanpur
Diversity Quiz Finals by Quiz Club, IIT Kanpur
Quiz Club IIT Kanpur
 
Non-Verbal Communication for Tech Professionals
Non-Verbal Communication for Tech ProfessionalsNon-Verbal Communication for Tech Professionals
Non-Verbal Communication for Tech Professionals
MattVassar1
 
How to stay relevant as a cyber professional: Skills, trends and career paths...
How to stay relevant as a cyber professional: Skills, trends and career paths...How to stay relevant as a cyber professional: Skills, trends and career paths...
How to stay relevant as a cyber professional: Skills, trends and career paths...
Infosec
 
managing Behaviour in early childhood education.pptx
managing Behaviour in early childhood education.pptxmanaging Behaviour in early childhood education.pptx
managing Behaviour in early childhood education.pptx
nabaegha
 
Creativity for Innovation and Speechmaking
Creativity for Innovation and SpeechmakingCreativity for Innovation and Speechmaking
Creativity for Innovation and Speechmaking
MattVassar1
 

Recently uploaded (20)

How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17How to Download & Install Module From the Odoo App Store in Odoo 17
How to Download & Install Module From the Odoo App Store in Odoo 17
 
Diversity Quiz Prelims by Quiz Club, IIT Kanpur
Diversity Quiz Prelims by Quiz Club, IIT KanpurDiversity Quiz Prelims by Quiz Club, IIT Kanpur
Diversity Quiz Prelims by Quiz Club, IIT Kanpur
 
Keynote given on June 24 for MASSP at Grand Traverse City
Keynote given on June 24 for MASSP at Grand Traverse CityKeynote given on June 24 for MASSP at Grand Traverse City
Keynote given on June 24 for MASSP at Grand Traverse City
 
Erasmus + DISSEMINATION ACTIVITIES Croatia
Erasmus + DISSEMINATION ACTIVITIES CroatiaErasmus + DISSEMINATION ACTIVITIES Croatia
Erasmus + DISSEMINATION ACTIVITIES Croatia
 
The Rise of the Digital Telecommunication Marketplace.pptx
The Rise of the Digital Telecommunication Marketplace.pptxThe Rise of the Digital Telecommunication Marketplace.pptx
The Rise of the Digital Telecommunication Marketplace.pptx
 
(T.L.E.) Agriculture: "Ornamental Plants"
(T.L.E.) Agriculture: "Ornamental Plants"(T.L.E.) Agriculture: "Ornamental Plants"
(T.L.E.) Agriculture: "Ornamental Plants"
 
220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science
 
Library news letter Kitengesa Uganda June 2024
Library news letter Kitengesa Uganda June 2024Library news letter Kitengesa Uganda June 2024
Library news letter Kitengesa Uganda June 2024
 
220711130097 Tulip Samanta Concept of Information and Communication Technology
220711130097 Tulip Samanta Concept of Information and Communication Technology220711130097 Tulip Samanta Concept of Information and Communication Technology
220711130097 Tulip Samanta Concept of Information and Communication Technology
 
Interprofessional Education Platform Introduction.pdf
Interprofessional Education Platform Introduction.pdfInterprofessional Education Platform Introduction.pdf
Interprofessional Education Platform Introduction.pdf
 
The Science of Learning: implications for modern teaching
The Science of Learning: implications for modern teachingThe Science of Learning: implications for modern teaching
The Science of Learning: implications for modern teaching
 
220711130095 Tanu Pandey message currency, communication speed & control EPC ...
220711130095 Tanu Pandey message currency, communication speed & control EPC ...220711130095 Tanu Pandey message currency, communication speed & control EPC ...
220711130095 Tanu Pandey message currency, communication speed & control EPC ...
 
Slides Peluncuran Amalan Pemakanan Sihat.pptx
Slides Peluncuran Amalan Pemakanan Sihat.pptxSlides Peluncuran Amalan Pemakanan Sihat.pptx
Slides Peluncuran Amalan Pemakanan Sihat.pptx
 
IoT (Internet of Things) introduction Notes.pdf
IoT (Internet of Things) introduction Notes.pdfIoT (Internet of Things) introduction Notes.pdf
IoT (Internet of Things) introduction Notes.pdf
 
Creation or Update of a Mandatory Field is Not Set in Odoo 17
Creation or Update of a Mandatory Field is Not Set in Odoo 17Creation or Update of a Mandatory Field is Not Set in Odoo 17
Creation or Update of a Mandatory Field is Not Set in Odoo 17
 
Diversity Quiz Finals by Quiz Club, IIT Kanpur
Diversity Quiz Finals by Quiz Club, IIT KanpurDiversity Quiz Finals by Quiz Club, IIT Kanpur
Diversity Quiz Finals by Quiz Club, IIT Kanpur
 
Non-Verbal Communication for Tech Professionals
Non-Verbal Communication for Tech ProfessionalsNon-Verbal Communication for Tech Professionals
Non-Verbal Communication for Tech Professionals
 
How to stay relevant as a cyber professional: Skills, trends and career paths...
How to stay relevant as a cyber professional: Skills, trends and career paths...How to stay relevant as a cyber professional: Skills, trends and career paths...
How to stay relevant as a cyber professional: Skills, trends and career paths...
 
managing Behaviour in early childhood education.pptx
managing Behaviour in early childhood education.pptxmanaging Behaviour in early childhood education.pptx
managing Behaviour in early childhood education.pptx
 
Creativity for Innovation and Speechmaking
Creativity for Innovation and SpeechmakingCreativity for Innovation and Speechmaking
Creativity for Innovation and Speechmaking
 

Software Usability Implications in Requirements and Design

  • 1. Software Usability Implications in Requirements and Design Natalia Juristo Universidad Politécnica de Madrid Bolzano, April 12 2005
  • 2. Talk Contents  Introduction to Usability  Discussion and debunking of the myths on usability in which developers believe  A pattern-oriented solution
  • 3. Brief state of the practice  There are so many software products with immature usability that we all acknowledge the low level of use of usability methods  Usability is not properly addressed in most developments, on spite of its importance
  • 4. Usability integration into development: SE + HCI  Both the HCI and SE communities play a crucial role in the development of usable software  The HCI community has the knowledge about which features a software system must provide to be usable  The SE community has the knowledge about software systems development
  • 5. Usability integration into development: Difficulties  Different viewpoints between usability people and software developers  Specialist skills required Integration of usability into the software development process is not easy and obvious at all
  • 6. Quality includes usability  Usability is a basic software system feature  Several software quality attribute classifications agree on considering usability as a quality attribute
  • 7. Usability definition  Usability can be seen as Quality in Use  Usability reflects  Learnability  Efficiency of use  Reliability in use  Satisfaction
  • 8. Usability and UI are not synonymous  A system’s usability relates closely to the software’s overall functionality  UI vs. Interaction  UI = The visible part of the system  Interaction = The coordination of information exchange user-system
  • 9. Misunderstandings  Three misunderstanding that prevent the proper incorporation of usability features into software development  Usability problems can be fixed in the later development stages  Stating a usability feature is a sufficient specification  Design usability features is easy
  • 10. Misunderstanding Usability can be dealt with late in development
  • 11. Can usability really wait?  If usability is relegated to the end of the development process, then there is no time left to make a difference  Interaction design can have major impact on the overall application
  • 12. Usability features with impact on design  Cancel  Undo  Show user system status  Provide feedback  Check for correctness  History Logging  Provide different access methods  Make different views accessible  Support personalization  Reuse information  Aggregate data  Aggregate commands  Provide good help (standard help, wizard, tour, context sensitive help)
  • 13. Implications of the impact on design  The changes to be made to a software system to add any of these features involve all the architecture components  The late incorporation of such usability issues calls for a lot of rework  These features should be addressed from the very start of the development process like any other functionality
  • 14. Usability as non-functional requirements  Establishing what usability values the system should achieve  These are then used as a reference standard at the subsequent product evaluation stage
  • 15. Usability as functional requirement  Particular usability features represent functionalities in a software system  Then, usability has implications for software functionality  Therefore, it needs to be dealt with as functional requirements
  • 16. Misunderstanding A usability feature statement is a good enough functional specification
  • 17. Specifying functional usability requirements (FUR)  An example of an HCI heuristic would be “Visibility of system status: The system should always keep users informed about what is going on through appropriate feedback within reasonable time”  Is this a good enough specification for the system status feature?
  • 18. Statement is not a good enough specification  From a SE perspective, the above description provides very limited information  It is not enough to properly specify the system status functionality  The descriptions provided by HCI for functional usability features lead to ambiguous and incomplete requirements
  • 19. More info is neccesary  More information needs to be elicited to completely and unambiguously specify each functional usability requirement  For the system status functionality  Place where the system status information will be presented to the user  Which status changes in the software will the user want to be notified of  How critical each of the above situations are  What kind of information needs to be displayed to the user in each case  etc
  • 20. Reducing the ambiguity of FURs: Difficulties  Users do not have the knowledge  Software engineers do not have the necessary HCI knowledge either. They do not know all the details that need to be specified to properly incorporate such features into a requirements specification  HCI experts do have this information
  • 21. Incorporating HCI experts: Difficulties  Difficulties in communication may arise. Such difficulties can be a considerable obstacle  The cost of this solution: many software SMEs cannot afford to engage an HCI expert
  • 22. Our approach  We propose an alternative approach that uses a pattern-based solution to support information elicitation and specification for usability functionalities
  • 23. Elicitation patterns  We propose the use of elicitation patterns that enable the reuse of usability knowledge to support developers during usability requirements elicitation  These patterns can be used to extract all the information to completely and unambiguously specify a usability feature
  • 24. Features with elicitation patterns Feature Usability Mechanism Goal FEEDBACK System Status To inform users about the internal status of the system Interaction To inform users that the system has registered a user interaction, that is, that the system has heard users Warning To inform users of any action with important consequences Long Action Feedback To inform users that the system is processing an action that will take some time to complete UNDO/CANCEL Global Undo To undo system actions at several levels Object-Specific Undo To undo several actions on an object Abort Operation To cancel the execution of a command or an application Go Back to a Safe State To go back to a particular state in a command execution sequence FORM/FIELD VALIDATION Structured Text Entry To help prevent the user from making data input errors WIZARD Step-by-Step Execution To help do tasks that require different steps with user input USER PROFILE Preferences To record each user's options for working with the system at the functional level Personal Object Space To record each user's options for working with the system at the interface level. Favourites To record certain places of interest for the user HELP Multilevel Help To provide different help levels for different users
  • 25. Elicitation Pattern Structure  Identification of the usability feature addressed by the usability elicitation pattern  The problem tackled  The context in which this pattern will be useful  The solution to the problem
  • 26. Elicitation Pattern Structure: Identification  Identification of the usability feature addressed by the usability elicitation pattern  Name of the usability mechanism under consideration  Family of usability features to which it belongs  Aliases by which this usability mechanism may be known
  • 27. Elicitation Pattern Structure: Problem  The problem tackled: “How to elicit and specify the information needed to incorporate the usability mechanism”
  • 28. Elicitation Pattern Structure: Context  The context in which this pattern will be useful  Information related to the situation that makes this mechanism useful for the application under construction
  • 29. Elicitation Pattern Structure: Solution  The solution to the problem  The usability mechanism elicitation guide provides knowledge for eliciting and gathering information to fully specify the usability mechanism  The usability mechanism specification guide provides a template to be instantiated for each application
  • 31. Misunderstanding Designing a specific usability feature is easy
  • 32. Is specification enough?  Some usability features require the far from straightforward creation of special- purpose components with responsibilities  HCI literature pays no attention to the design implications of incorporating usability features into a system
  • 33. For example... Aspects of cancel  The software must free the resources allocated to the cancelled command  The software must handle cancellation when the active command is not responding  If the command being cancelled is not responding, the system must be restored to the status it had prior to command execution or as close as possible to that status  The software must gather information (status, resource usage, actions, etc.) that can be used to return the system to its status prior to the execution of the ongoing command  The software must estimate the time to cancel  The software must inform the user of cancellation progress
  • 34. Need to provide design support: Experiment  Experiment run under three different circumstances 1) Just a detailed description of the cancel feature, including the particular commands that could be cancelled (with no design information at all) 2) Same information as the previous group, plus a list of responsibilities that any software system with a cancel feature should satisfy 3) The above information, plus a sample solution
  • 35. Need to provide design support: Experiment results  The solutions generated by students under condition 1 (a statement of the requirement only) performed significantly worse (in terms of malfunctioning errors and design time) than the ones by students working in the other two conditions
  • 36. Our approach  Provide mechanisms that allow software developers to examine various facets of the software solution to guide through the incorporation of such solutions into their designs
  • 37. Design element of the pattern  Design solution allocates the general responsibilities of the software system to specific software components with their responsibilities
  • 39. Conclusions  We need getting a better understanding of what implications usability has for software development  It is necessary to provide developers with support to satisfactorily deal with usability features during the requirements and design stages  We proposed a pattern-based solution for describing usability features
  • 40. Software Usability Implications in Requirements and Design Natalia Juristo Universidad Politécnica de Madrid Bolzano, April 12 2005
  翻译: