SlideShare una empresa de Scribd logo
1 de 40
Descargar para leer sin conexión
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

Más contenido relacionado

La actualidad más candente

Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architectureHimanshu
 
Software Engineering
 Software Engineering  Software Engineering
Software Engineering JayaKamal
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
Engineering Software Products: 6. microservices architecture
Engineering Software Products: 6. microservices architectureEngineering Software Products: 6. microservices architecture
Engineering Software Products: 6. microservices architecturesoftware-engineering-book
 
System requirements engineering
System requirements engineeringSystem requirements engineering
System requirements engineeringAnimesh 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 ExamsMuhammadTalha436
 
Ch17-Software Engineering 9
Ch17-Software Engineering 9Ch17-Software Engineering 9
Ch17-Software Engineering 9Ian Sommerville
 
User Interface Design
User Interface DesignUser Interface Design
User Interface DesignJReifman
 
UI / UX Engineering for Web Applications
UI / UX Engineering for Web ApplicationsUI / UX Engineering for Web Applications
UI / UX Engineering for Web ApplicationsReggie Niccolo Santos
 
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 addJavid iqbal hashmi
 
Software engineering practical
Software engineering practicalSoftware engineering practical
Software engineering practicalNitesh Dubey
 
Chapter 4 software design
Chapter 4  software designChapter 4  software design
Chapter 4 software designCliftone Mullah
 

La actualidad más candente (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
 

Destacado

Usability of software
Usability of softwareUsability of software
Usability of softwareu061423
 
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 SeminarExperience Dynamics
 
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 AdministrationJackie Zajac
 
Usability Evaluation Report : Pharmacy application
Usability Evaluation Report : Pharmacy applicationUsability Evaluation Report : Pharmacy application
Usability Evaluation Report : Pharmacy applicationSubhasish Karmakar
 
Introduction To Usability
Introduction To UsabilityIntroduction To Usability
Introduction To UsabilityOvidiu 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 productskatiefehren
 
Drupal Usability Report
Drupal Usability ReportDrupal Usability Report
Drupal Usability Reportbrighteyes
 
Evaluating software usability
Evaluating software usabilityEvaluating software usability
Evaluating software usabilitymemo200
 
Human computer interaction by gazegaze
Human computer interaction by gazegazeHuman computer interaction by gazegaze
Human computer interaction by gazegazegazegaze1234
 
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 Yufindkramsey
 
Evaluating and Improving Software Usability
Evaluating and Improving Software UsabilityEvaluating and Improving Software Usability
Evaluating and Improving Software UsabilityXBOSoft
 
USA TODAY iPad Application Usability Report
USA TODAY iPad Application Usability ReportUSA TODAY iPad Application Usability Report
USA TODAY iPad Application Usability Reportkathleensulli
 
Database Web Application Usability Testing
Database Web Application Usability TestingDatabase Web Application Usability Testing
Database Web Application Usability TestingTim Broadwater
 
Human Computer Interaction Project
Human Computer Interaction ProjectHuman Computer Interaction Project
Human Computer Interaction ProjectDaisy LaFlamme
 

Destacado (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 a 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 softwareMartin Chapman
 
What I Learned In Pr Writing
What I Learned In Pr WritingWhat I Learned In Pr Writing
What I Learned In Pr Writingcwhitin4
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangersguest08cd22
 
Designfo#{1} #{2}trangers
Designfo#{1} #{2}trangersDesignfo#{1} #{2}trangers
Designfo#{1} #{2}trangersguest0437b8
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangersguru100
 
Designfor strangers
Designfor strangersDesignfor strangers
Designfor strangersguestc72c35
 
Design For Strangers
Design For StrangersDesign For Strangers
Design For Strangerstest99
 
Rashmi Xerox Parc
Rashmi Xerox ParcRashmi Xerox Parc
Rashmi Xerox Parctest98
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangersguestbdd02b
 
Hci in-the-software-process-1
Hci in-the-software-process-1Hci in-the-software-process-1
Hci in-the-software-process-1Ali javed
 
Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8koolkampus
 
Software Prototyping
Software PrototypingSoftware Prototyping
Software Prototypingdrjms
 
Hci In The Software Process
Hci In The Software ProcessHci In The Software Process
Hci In The Software Processahmad bassiouny
 
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 processAlan Dix
 
HCI - Chapter 6
HCI - Chapter 6HCI - Chapter 6
HCI - Chapter 6Alan Dix
 

Similar a 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
 
Biblioteca.
Biblioteca.Biblioteca.
Biblioteca.
 
Designfo#{1} #{2}trangers
Designfo#{1} #{2}trangersDesignfo#{1} #{2}trangers
Designfo#{1} #{2}trangers
 
Designfor Strangers
Designfor StrangersDesignfor Strangers
Designfor Strangers
 
Designfor strangers
Designfor strangersDesignfor strangers
Designfor strangers
 
Design For Strangers
Design For StrangersDesign For Strangers
Design For Strangers
 
Qué es un blog?
Qué es un blog?Qué es un blog?
Qué es un blog?
 
Rashmi Xerox Parc
Rashmi Xerox ParcRashmi Xerox Parc
Rashmi Xerox Parc
 
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 in Software Engineering SE8
Software Prototyping in Software Engineering SE8Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8
 
Software Prototyping
Software PrototypingSoftware Prototyping
Software Prototyping
 
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 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
 
HCI - Chapter 6
HCI - Chapter 6HCI - Chapter 6
HCI - Chapter 6
 

Más de Natalia Juristo

Conducting Experiments in Software Industry
Conducting Experiments in Software IndustryConducting Experiments in Software Industry
Conducting Experiments in Software IndustryNatalia 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 ResearchNatalia 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
 

Más de 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)
 

Último

Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfPatidar M
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxVanesaIglesias10
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...Nguyen Thanh Tu Collection
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleCeline George
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Association for Project Management
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research DiscourseAnita GoswamiGiri
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1GloryAnnCastre1
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxkarenfajardo43
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvRicaMaeCastro1
 
Mental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsMental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsPooky Knightsmith
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 

Último (20)

Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdf
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptx
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
 
Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP Module
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research Discourse
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
 
Mental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsMental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young minds
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 

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