SlideShare a Scribd company logo
1 of 79
Download to read offline
Usability evaluation of
Domain-Specific Languages
Ankica Barišić
supervisors: Vasco Amaral, Miguel Goulão
December, 2017
Language
A language is a means of communication
• The user interface is a realization of a language
• A language is a model that describes the allowed terms and how to
compose them into valid sentences
2 Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
Domain-Specific Language (DSL)
3 December 2017Usability evaluation of Domain-Specific LanguagesAnkica Barišić
• Close the gap between problem and solution
domains
• Reduce the need to use computation concepts
• Focus on the domain concepts
DSL benefits
4 December 2017Usability evaluation of Domain-Specific LanguagesAnkica Barišić
• Productivity gains
• Better time to market
• Avoid error-prone mappings between domain and
software development concepts
• Leverage the expertise of domain experts through
higher abstraction level
• Narrow the design space
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 20175
[Mernik, 2005]
DSL Lifecycle
DSL Verification
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 20176
Did I build the
DSL right?
[Mernik, 2005]
DSL Validation
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
Did I build
the right
DSL???
7
Did I build the
DSL right?
[Mernik, 2005]
Quality in Use i.e. Usability
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 20178
[ISO/IEC 25010, 2011]
Research Goal
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
How to systematically engineer Usability in
Domain-Specific Languages (DSLs)?
Thesis objective:
Promote quality in use of DSLs by building a conceptual
framework that supports their development process,
leveraging usability to a first-class concern
9
Research Questions
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RQ1: How are we able to model the DSL usability
evaluation?
RQ2: How can we promote usability concerns since an early
stage of development of the DSL?
RQ3: How can we integrate the proposed methodological
approach to build usability evaluation into the development
process of the DSL?
10
Research method
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201711
[Wieringa, 2009]
Understand evaluation model
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
Pheasant
12
Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca.
2011. Quality in Use of Domain-Specific Language: a Case
Study. InProceedings of the Workshop on Evaluation and
Usability of Programming Languages and Tools (PLATEAU) at
SPLASH 2011, Portland, Oregon, USA, ACM, October 2011.
DOI: 10.1145/2089155.2089170
DSL development experience
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RPG Games
13
Bruno Barroca, Eduardo Marques, Valter Balegas, Vasco
Amaral, Ankica Barišić. 2012. The RPG DSL: a case study of
language engineering using MDD for Generating RPG Games
for Mobile Phones, InProceedings of the 12th Workshop on
Domain-Specific Modeling at SPLASH 2012, Tucson, Arizona,
ACM, October 2012. DOI: 10.1145/2420918.2420923
Usability evaluation modelling
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201714
Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca.
2012. Evaluating the Usability of Domain-Specific Language.
InBook: Formal and Practical Aspects of Domain-Specific
Languages: Recent Developments, edited by Marjan Mernik,
IGI Global, September 2012, pages: 386-407.
DOI: 10.4018/978-1-4666-2092-6
Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca.
2011. Quality in Use of DSLs: Current Evaluation Methods.
InProceedings of the INFORUM'2011, Coimbra, Portugal,
September, 2011. http://doi.org/10.5281/zenodo.889940
Patterns for usability evaluation
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201715
Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca. How to
reach a usable DSL? Moving toward a Systematic Evaluation.
InProceedings of the 5th International Workshop on Multi-Paradigm
Modeling (MPM'2011) at Models 2011, Wellington, New Zealand, EASST
Journal, October, 2011. DOI: 10.14279/tuj.eceasst.50.741
Ankica Barišić, Pedro Monteiro, Vasco Amaral, Miguel Goulão, Miguel
Monteiro. 2012. Patterns for Evaluating Usability of Domain-Specific
Languages. InProceedings of the 19th Conference on pattern languages of
programs (PLoP), SPLASH 2012 Tucson, Arizona, USA, October 2012.
http://doi.org/10.5281/zenodo.889927
Agile DSL development
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201716
Ankica Barišić, Vasco Amaral, Miguel Goulão, Ademar Aguiar.
2014. Introducing usability concerns early in the DSL
development cycle: FlowSL experience report, InProceedings
of the 1st International Workshop on Model-Driven
Development Processes and Practices at the 17th
International MoDELS Conference, Valencia, Spain, October,
2014, Zenodo. http://doi.org/10.5281/zenodo.889685
FlowSL
Semi-automated evaluation
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201717
Ankica Barišić. 2016. STSM Report: Evaluating the efficiency
in use of search-based automated model merge technique",
Multi-Paradigm Modelling for Cyber-Physical Systems
(MPM4CPS). COST action IC1404. European cooperation in
science and technology (COST).
http://doi.org/10.5281/zenodo.237420
DSE Merge
Usability-driven DSL evolution
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201718
Ankica Barišić, Vasco Amaral, Miguel Goulão. 2018.
Leveraging teens feedback in the development of a
Domain-Specific Language: the case of programming
low-cost robots. InProceeding of The 33rd
ACM/SIGAPP Symposium On Applied Computing,
Pau, France, April, 2018.
Visualino
Usability Software Engineering - Modeling Environment
(USE-ME)
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201719
Ankica Barišić, Vasco Amaral, Miguel Goulão. 2017. Usability Driven
DSL development with USE-ME. Computer Languages, Systems &
Structures. https://doi.org/10.1016/j.cl.2017.06.005
Ankica Barišić. 2017. Framework Support for Usability Evaluation of
Domain-Specific Languages. In Proceedings of SPLASH ’17
Companion, Vancouver, BC, Canada, October 23–27, 2017,
https://doi.org/10.1145/3135932.3135953
Impact Factor:
1.615
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Usability Software Engineering - Modeling Environment
(USE-ME)
20 December 2017
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
USE-ME architecture
21 December 2017
Evaluation of UML diagram
specification with a members
of NOVA-LINCS research
centar.
Evaluation of USE-ME prototype tool
with a novice language engineers in
four DSL development projects.
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Usability Software Engineering - Modeling Environment
(USE-ME)
22 December 2017
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Context Modelling Activity
23 December 2017
Usability evaluation of Domain-Specific LanguagesAnkica Barišić24 December 2017
User Profile classification
WHO?
Usability evaluation of Domain-Specific LanguagesAnkica Barišić25 December 2017
Context Environment definition
WHERE?
Usability evaluation of Domain-Specific LanguagesAnkica Barišić26 December 2017
Workflow definition
HOW?
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
USE-ME Activity diagram
27 December 2017
Usability evaluation of Domain-Specific LanguagesAnkica Barišić28 December 2017
USE-ME Goal Modeling
WHY?
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
USE-ME Activity diagram
29 December 2017
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
USE-ME Activity diagram
30 December 2017
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
USE-ME Activity diagram
31 December 2017
Research method
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201732
Ankica Barišić, Dominique Blouin, Vasco Amaral, Miguel
Goulão. 2017. A Requirements Engineering Approach for
Usability-Driven DSL Development. InProceedings of SLE’17,
Vancouver, BC, Canada, October 23–24, 2017, DOI:
10.1145/3136014.3136027
RDAL USE-ME
USE-MEinDSLlifecycle
Usability evaluation of Domain-Specific LanguagesAnkica Barišić33 December 2017
DefiningContextandGoals
34 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
DefiningContextandGoals
35 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
ExtendingContextandGoals
withdetailsneededfor
Evaluation
36 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
SpecifyingtheEvaluation
SurveysandInteractions
37 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
ExecutingEvaluationand
creatingaReport
38 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
CalculatingSuccessCoverage
39 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Evaluation survey
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201740
goo.gl/forms/
Js4Nh8V6VCZvmsAB2
youtu.be/RjIGFex-zQM
Survey participants
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201741
Main Contributions
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RQ1 - How are we able to model the DSL usability
evaluation?
❏ To address the problem of the absence of the systematic approach
for the DSL usability evaluation we proposed a conceptual
modelling framework called The Usability Software Engineering
Modelling Environment (USE-ME)
42
Main Contributions
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RQ1 - How are we able to model the DSL usability
evaluation?
❏ To address the problem of the absence of the systematic approach
for the DSL usability evaluation we proposed a conceptual
modelling framework called The Usability Software Engineering
Modelling Environment (USE-ME)
43
Does the USE-ME conceptual framework enable
End Users to model DSL usability evaluations?
Main Contributions
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RQ2 - How can we promote usability concerns since an
early stage of development of the DSL?
❏ To promote usability concerns since an early stage of development
of DSLs, we proposed a set of patterns and specified an
iterative process which integrates well with the DSL
development phases
44
Main Contributions
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RQ2 - How can we promote usability concerns since an
early stage of development of the DSL?
❏ To promote usability concerns since an early stage of development
of DSLs, we proposed a set of patterns and specified an
iterative process which integrates well with the DSL
development phases
45
Does the USE-ME conceptual framework enable
End Users in promoting usability concerns since
an early stage of DSL development?
Main Contributions
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RQ3 - How can we integrate the proposed
methodological approach to build usability evaluation
into development process of the DSL?
❏ To integrate existing IDE support for development of DSLs with high
Quality in Use, we developed a functional tool prototype
46
Main Contributions
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
RQ3 - How can we integrate the proposed
methodological approach to build usability evaluation
into development process of the DSL?
❏ To integrate existing IDE support for development of DSLs with high
Quality in Use, we developed a functional tool prototype
47
Does the USE-ME tool support enable End Users
to built usability evaluation into the development
process of the DSL?
Future Work
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201748
Improving the usability of approach support
● Evolution of the tool
○ implementation of guiding wizard
○ implementation of verification of rules and goal coverage engine
● Development of usability catalogue
● Identification and illustration of integration points
○ requirements for DSL construction
○ integration with existing approaches from related work (e.g.
collaborative concrete syntax specification)
○ integration with a survey and interaction modeling supports
Acknowledgments
● FCT/MEC NOVA LINCS; PEst UID/ CEC/04516/ 2013
● DSML4MA TUBITAK/0008/2014
● COST Action IC1404 MPM4CPS
● MOVERCADO; FEUP
● CITI/FCT/UNL; PEst-OE/EEI/UI0527/2011
Usability Software Engineering - Modeling Environment (USE-ME)Ankica Barišić
USE-ME Goal Modeling
50
Usability evaluation of Domain-Specific LanguagesAnkica Barišić51 December 2017
Context Model Class diagram
Usability evaluation of Domain-Specific LanguagesAnkica Barišić52 December 2017
Context Modeling Activity
Usability evaluation of Domain-Specific LanguagesAnkica Barišić53 December 2017
Context Modeling Activity
Usability evaluation of Domain-Specific LanguagesAnkica Barišić54 December 2017
Context Modeling Activity
Usability evaluation of Domain-Specific LanguagesAnkica Barišić55 December 2017
Context Modeling Activity
Survey results
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201756
● Q1: Does the USE-ME conceptual framework enable End Users to
model DSL usability evaluations?
● Q2: Does the USE-ME conceptual framework enable End Users in
promoting usability concerns since an early stage of DSL
development?
● Q3: Does the USE-ME tool support enable End Users to built usability
evaluation into the development process of the DSL?
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
USE-ME Utility
57 December 2017
Evaluation survey
Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
MATERIALS:
1. Video presentation of
USE-ME
2. Article about
USE-ME approach
3. Prototype tool
4. Background
questionnaire
5. Feedback
questionnaire
58
Jul 1
Jul 15
Jul 25
Aug 10
Aug 25
Sep 12
Sep 20
Sep 30
OPTIONAL
OPTIONAL
Pilot run of survey
Interview run /
Survey update
Survey run
Result
analysisgoo.gl/forms/
Js4Nh8V6VCZvmsAB2
youtu.be/RjIGFex-zQM
Survey
report
Case studies
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Visualino
RPG Games FlowSLPheasant
DSE Merge
59 December 2017
Case studies
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Visualino
RPG Games FlowSLPheasant
DSE Merge
60 December 2017
Case studies
Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Visualino
RPG Games FlowSLPheasant
DSE Merge
61 December 2017
Case studies
62 Usability evaluation of Domain-Specific LanguagesAnkica Barišić
Visualino
RPG Games FlowSLPheasant
DSE Merge
December 2017
63
Barišić, Monteiro, Amaral, Goulão, Monteiro:
"Patterns for Evaluating Usability of Domain-Specific
Languages“, InProceedings of the 19th Conference
on pattern languages of programs (PLoP), SPLASH
2012 Tucson, Arizona, USA, October 2012
64
Barišić, Monteiro, Amaral, Goulão, Monteiro:
"Patterns for Evaluating Usability of Domain-Specific
Languages“, InProceedings of the 19th Conference
on pattern languages of programs (PLoP), SPLASH
2012 Tucson, Arizona, USA, October 2012
65
Barišić, Monteiro, Amaral, Goulão, Monteiro:
"Patterns for Evaluating Usability of Domain-Specific
Languages“, In Proceedings of the 19th Conference
on pattern languages of programs (PLoP), SPLASH
2012 Tucson, Arizona, USA, October 2012
66
67
Query solution in
C++/BEE
(pseudo code based on real code)
Query solution in
Pheasant
Errorrates
Statistical
meaningfulness
68
Sho
uld
we?
Do
we?
How
can
we?
Life
in
the
tren
Time
Statistical
meaningfulness
69
Sho
uld
we?
Do
we?
How
can
we?
Life
in
the
tren
Belgrade2013Barišić:UsabilityevaluationofDSLs
Selfassessment
(0-5)
Statistical
meaningfulness
70
Sho
uld
we?
Do
we?
How
can
we?
Life
in
the
tren
Mean confidence / query
Non -
Inf
C++/BEE 1,04
Pheasant 4,75
Inf
C++/BEE 4,88
Pheasant 4,83
71
MVC1- developed as a proof-of-concept to validate the key
underlying principles and domain concepts
MVC2 - developed in the form of a platform easily customizable by
experts and extensible by developers of the organization's team.
● Usability requirements: Understandability, Readability, Expressiveness,
Efficiency
● Participants:
● Participant 1: Domain Expert (DSL Development), Campaign Manager
(Organization), Product Owner (Agile processes)
● Participant 2: DSL Developer (DSL Development), System Manager
(Organization), Scrum Master (Agile processes)
● Participant 3: DSL Developer (DSL Development), System Manager
(Organization), Scrum Team (Agile processes)
● Participant4: Domain Expert (DSL development), Flow Manager (Organization),
Product Owner (Agile processes)
● Intervention type: Interview
● Results:
● Understandability and readability is much higher than previously
● User is able to express all the concepts
● Editor is still to complex to be used by Campaign Manager – there is a need for
having more simple view to support his needs
● Interaction improvements with language interface, its integration to platform
environment and multi user support are pointed as main lack of this editor
72
73
74
RQ1 Which approaches are reported for DSL development?
RQ2 How the Domain Analysis of DSL is performed?
RQ2.1 Which techniques were used for Domain Analysis?
RQ2.2 Which stakeholders are involved into Domain Analysis?
RQ3 How the Evaluation of DSL was performed?
RQ3.1 What methods are used for Evaluation?
RQ3.2 When Evaluation was performed?
75
76
LEGO VISUALINO
Comparison criteria
● Accuracy of solution
● Time to solve a
problem
● Personal preference
● Age
● Gender
● Programming
experience
Results:
LEGO VISUALINO
CHILDREN
8-18 years
non-programmers
Majority solved
problem
Time (4-10min)
Strong preference
Just few solved
problem
Time (12-15min)
No preference
ADULTS
18-40 years
programmers
Majority solved
problem
Time (2-6min)
Small preference
Majority solved
problem
Time (10-15min)
No preference
GENDER No significant
difference
No significant
difference

More Related Content

Similar to Usability evaluation of DSLs (PhD defence)

DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...
DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...
DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...Luca Mazzola
 
Using NLP to understand textual content at scale
Using NLP to understand textual content at scaleUsing NLP to understand textual content at scale
Using NLP to understand textual content at scaleParsa Ghaffari
 
Beaconing - General presentation and main achievements so far
Beaconing - General presentation and main achievements so farBeaconing - General presentation and main achievements so far
Beaconing - General presentation and main achievements so farSylvester Arnab
 
Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)Benoit Combemale
 
IBM Connections Middleware – Connecting Blue/Green and PINK
IBM Connections Middleware – Connecting Blue/Green and PINKIBM Connections Middleware – Connecting Blue/Green and PINK
IBM Connections Middleware – Connecting Blue/Green and PINKLetsConnect
 
Hello, meet Hola! Design for mixed-language interfaces
Hello, meet Hola! Design for mixed-language interfacesHello, meet Hola! Design for mixed-language interfaces
Hello, meet Hola! Design for mixed-language interfacesDesign for Context
 
New Research Articles 2020 May Issue International Journal of Software Engin...
New Research Articles 2020 May  Issue International Journal of Software Engin...New Research Articles 2020 May  Issue International Journal of Software Engin...
New Research Articles 2020 May Issue International Journal of Software Engin...ijseajournal
 
#Paris Meeting 2018 - Presentation of @chist_era_AMIS
#Paris Meeting 2018 - Presentation of @chist_era_AMIS#Paris Meeting 2018 - Presentation of @chist_era_AMIS
#Paris Meeting 2018 - Presentation of @chist_era_AMISMikolaj Leszczuk
 
The Ring programming language version 1.10 book - Part 6 of 212
The Ring programming language version 1.10 book - Part 6 of 212The Ring programming language version 1.10 book - Part 6 of 212
The Ring programming language version 1.10 book - Part 6 of 212Mahmoud Samir Fayed
 
Streaming-based Text Mining using Deep Learning and Semantics
Streaming-based Text Mining using Deep Learning and SemanticsStreaming-based Text Mining using Deep Learning and Semantics
Streaming-based Text Mining using Deep Learning and SemanticsLinked Enterprise Date Services
 
Ontos NLP Stack, Sep. 2016
Ontos NLP Stack, Sep. 2016Ontos NLP Stack, Sep. 2016
Ontos NLP Stack, Sep. 2016Martin Voigt
 
Martin Voigt | Streaming-based Text Mining using Deep Learning and Semantics
Martin Voigt | Streaming-based Text Mining using Deep Learning and SemanticsMartin Voigt | Streaming-based Text Mining using Deep Learning and Semantics
Martin Voigt | Streaming-based Text Mining using Deep Learning and Semanticssemanticsconference
 
Sudipta_Mukherjee_Resume-Nov_2022.pdf
Sudipta_Mukherjee_Resume-Nov_2022.pdfSudipta_Mukherjee_Resume-Nov_2022.pdf
Sudipta_Mukherjee_Resume-Nov_2022.pdfSudipta Mukherjee
 
ELKL 5 Language documentation for linguistics and technology
ELKL 5 Language documentation for linguistics and technologyELKL 5 Language documentation for linguistics and technology
ELKL 5 Language documentation for linguistics and technologyDafydd Gibbon
 
Dybdahl - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl  - Getting the Rules Ready for Your Flight to LavaCon DublinDybdahl  - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl - Getting the Rules Ready for Your Flight to LavaCon DublinLavaCon
 
OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018
OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018
OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018OW2
 
The Ring programming language version 1.9 book - Part 6 of 210
The Ring programming language version 1.9 book - Part 6 of 210The Ring programming language version 1.9 book - Part 6 of 210
The Ring programming language version 1.9 book - Part 6 of 210Mahmoud Samir Fayed
 
A pattern language for microservices (#SFMicroservices)
A pattern language for microservices (#SFMicroservices)A pattern language for microservices (#SFMicroservices)
A pattern language for microservices (#SFMicroservices)Chris Richardson
 
Rajas mhaskar resume2k19
Rajas mhaskar resume2k19Rajas mhaskar resume2k19
Rajas mhaskar resume2k19Rajas Mhaskar
 

Similar to Usability evaluation of DSLs (PhD defence) (20)

DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...
DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...
DLP: a Web-based Facility for Exploration and Basic Modification of Ontologie...
 
Using NLP to understand textual content at scale
Using NLP to understand textual content at scaleUsing NLP to understand textual content at scale
Using NLP to understand textual content at scale
 
Beaconing - General presentation and main achievements so far
Beaconing - General presentation and main achievements so farBeaconing - General presentation and main achievements so far
Beaconing - General presentation and main achievements so far
 
Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)
 
IBM Connections Middleware – Connecting Blue/Green and PINK
IBM Connections Middleware – Connecting Blue/Green and PINKIBM Connections Middleware – Connecting Blue/Green and PINK
IBM Connections Middleware – Connecting Blue/Green and PINK
 
Hello, meet Hola! Design for mixed-language interfaces
Hello, meet Hola! Design for mixed-language interfacesHello, meet Hola! Design for mixed-language interfaces
Hello, meet Hola! Design for mixed-language interfaces
 
New Research Articles 2020 May Issue International Journal of Software Engin...
New Research Articles 2020 May  Issue International Journal of Software Engin...New Research Articles 2020 May  Issue International Journal of Software Engin...
New Research Articles 2020 May Issue International Journal of Software Engin...
 
SOAT Agile Day 2017 DDD
SOAT Agile Day 2017 DDDSOAT Agile Day 2017 DDD
SOAT Agile Day 2017 DDD
 
#Paris Meeting 2018 - Presentation of @chist_era_AMIS
#Paris Meeting 2018 - Presentation of @chist_era_AMIS#Paris Meeting 2018 - Presentation of @chist_era_AMIS
#Paris Meeting 2018 - Presentation of @chist_era_AMIS
 
The Ring programming language version 1.10 book - Part 6 of 212
The Ring programming language version 1.10 book - Part 6 of 212The Ring programming language version 1.10 book - Part 6 of 212
The Ring programming language version 1.10 book - Part 6 of 212
 
Streaming-based Text Mining using Deep Learning and Semantics
Streaming-based Text Mining using Deep Learning and SemanticsStreaming-based Text Mining using Deep Learning and Semantics
Streaming-based Text Mining using Deep Learning and Semantics
 
Ontos NLP Stack, Sep. 2016
Ontos NLP Stack, Sep. 2016Ontos NLP Stack, Sep. 2016
Ontos NLP Stack, Sep. 2016
 
Martin Voigt | Streaming-based Text Mining using Deep Learning and Semantics
Martin Voigt | Streaming-based Text Mining using Deep Learning and SemanticsMartin Voigt | Streaming-based Text Mining using Deep Learning and Semantics
Martin Voigt | Streaming-based Text Mining using Deep Learning and Semantics
 
Sudipta_Mukherjee_Resume-Nov_2022.pdf
Sudipta_Mukherjee_Resume-Nov_2022.pdfSudipta_Mukherjee_Resume-Nov_2022.pdf
Sudipta_Mukherjee_Resume-Nov_2022.pdf
 
ELKL 5 Language documentation for linguistics and technology
ELKL 5 Language documentation for linguistics and technologyELKL 5 Language documentation for linguistics and technology
ELKL 5 Language documentation for linguistics and technology
 
Dybdahl - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl  - Getting the Rules Ready for Your Flight to LavaCon DublinDybdahl  - Getting the Rules Ready for Your Flight to LavaCon Dublin
Dybdahl - Getting the Rules Ready for Your Flight to LavaCon Dublin
 
OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018
OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018
OSS Projects Knowledge Mining with CROSSMINER, OW2con'18, June 7-8, 2018
 
The Ring programming language version 1.9 book - Part 6 of 210
The Ring programming language version 1.9 book - Part 6 of 210The Ring programming language version 1.9 book - Part 6 of 210
The Ring programming language version 1.9 book - Part 6 of 210
 
A pattern language for microservices (#SFMicroservices)
A pattern language for microservices (#SFMicroservices)A pattern language for microservices (#SFMicroservices)
A pattern language for microservices (#SFMicroservices)
 
Rajas mhaskar resume2k19
Rajas mhaskar resume2k19Rajas mhaskar resume2k19
Rajas mhaskar resume2k19
 

Recently uploaded

Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxJiesonDelaCerna
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 

Recently uploaded (20)

Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 

Usability evaluation of DSLs (PhD defence)

  • 1. Usability evaluation of Domain-Specific Languages Ankica Barišić supervisors: Vasco Amaral, Miguel Goulão December, 2017
  • 2. Language A language is a means of communication • The user interface is a realization of a language • A language is a model that describes the allowed terms and how to compose them into valid sentences 2 Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017
  • 3. Domain-Specific Language (DSL) 3 December 2017Usability evaluation of Domain-Specific LanguagesAnkica Barišić • Close the gap between problem and solution domains • Reduce the need to use computation concepts • Focus on the domain concepts
  • 4. DSL benefits 4 December 2017Usability evaluation of Domain-Specific LanguagesAnkica Barišić • Productivity gains • Better time to market • Avoid error-prone mappings between domain and software development concepts • Leverage the expertise of domain experts through higher abstraction level • Narrow the design space
  • 5. Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 20175 [Mernik, 2005] DSL Lifecycle
  • 6. DSL Verification Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 20176 Did I build the DSL right? [Mernik, 2005]
  • 7. DSL Validation Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 Did I build the right DSL??? 7 Did I build the DSL right? [Mernik, 2005]
  • 8. Quality in Use i.e. Usability Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 20178 [ISO/IEC 25010, 2011]
  • 9. Research Goal Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 How to systematically engineer Usability in Domain-Specific Languages (DSLs)? Thesis objective: Promote quality in use of DSLs by building a conceptual framework that supports their development process, leveraging usability to a first-class concern 9
  • 10. Research Questions Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RQ1: How are we able to model the DSL usability evaluation? RQ2: How can we promote usability concerns since an early stage of development of the DSL? RQ3: How can we integrate the proposed methodological approach to build usability evaluation into the development process of the DSL? 10
  • 11. Research method Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201711 [Wieringa, 2009]
  • 12. Understand evaluation model Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 Pheasant 12 Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca. 2011. Quality in Use of Domain-Specific Language: a Case Study. InProceedings of the Workshop on Evaluation and Usability of Programming Languages and Tools (PLATEAU) at SPLASH 2011, Portland, Oregon, USA, ACM, October 2011. DOI: 10.1145/2089155.2089170
  • 13. DSL development experience Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RPG Games 13 Bruno Barroca, Eduardo Marques, Valter Balegas, Vasco Amaral, Ankica Barišić. 2012. The RPG DSL: a case study of language engineering using MDD for Generating RPG Games for Mobile Phones, InProceedings of the 12th Workshop on Domain-Specific Modeling at SPLASH 2012, Tucson, Arizona, ACM, October 2012. DOI: 10.1145/2420918.2420923
  • 14. Usability evaluation modelling Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201714 Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca. 2012. Evaluating the Usability of Domain-Specific Language. InBook: Formal and Practical Aspects of Domain-Specific Languages: Recent Developments, edited by Marjan Mernik, IGI Global, September 2012, pages: 386-407. DOI: 10.4018/978-1-4666-2092-6 Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca. 2011. Quality in Use of DSLs: Current Evaluation Methods. InProceedings of the INFORUM'2011, Coimbra, Portugal, September, 2011. http://doi.org/10.5281/zenodo.889940
  • 15. Patterns for usability evaluation Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201715 Ankica Barišić, Vasco Amaral, Miguel Goulão, Bruno Barroca. How to reach a usable DSL? Moving toward a Systematic Evaluation. InProceedings of the 5th International Workshop on Multi-Paradigm Modeling (MPM'2011) at Models 2011, Wellington, New Zealand, EASST Journal, October, 2011. DOI: 10.14279/tuj.eceasst.50.741 Ankica Barišić, Pedro Monteiro, Vasco Amaral, Miguel Goulão, Miguel Monteiro. 2012. Patterns for Evaluating Usability of Domain-Specific Languages. InProceedings of the 19th Conference on pattern languages of programs (PLoP), SPLASH 2012 Tucson, Arizona, USA, October 2012. http://doi.org/10.5281/zenodo.889927
  • 16. Agile DSL development Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201716 Ankica Barišić, Vasco Amaral, Miguel Goulão, Ademar Aguiar. 2014. Introducing usability concerns early in the DSL development cycle: FlowSL experience report, InProceedings of the 1st International Workshop on Model-Driven Development Processes and Practices at the 17th International MoDELS Conference, Valencia, Spain, October, 2014, Zenodo. http://doi.org/10.5281/zenodo.889685 FlowSL
  • 17. Semi-automated evaluation Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201717 Ankica Barišić. 2016. STSM Report: Evaluating the efficiency in use of search-based automated model merge technique", Multi-Paradigm Modelling for Cyber-Physical Systems (MPM4CPS). COST action IC1404. European cooperation in science and technology (COST). http://doi.org/10.5281/zenodo.237420 DSE Merge
  • 18. Usability-driven DSL evolution Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201718 Ankica Barišić, Vasco Amaral, Miguel Goulão. 2018. Leveraging teens feedback in the development of a Domain-Specific Language: the case of programming low-cost robots. InProceeding of The 33rd ACM/SIGAPP Symposium On Applied Computing, Pau, France, April, 2018. Visualino
  • 19. Usability Software Engineering - Modeling Environment (USE-ME) Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201719 Ankica Barišić, Vasco Amaral, Miguel Goulão. 2017. Usability Driven DSL development with USE-ME. Computer Languages, Systems & Structures. https://doi.org/10.1016/j.cl.2017.06.005 Ankica Barišić. 2017. Framework Support for Usability Evaluation of Domain-Specific Languages. In Proceedings of SPLASH ’17 Companion, Vancouver, BC, Canada, October 23–27, 2017, https://doi.org/10.1145/3135932.3135953 Impact Factor: 1.615
  • 20. Usability evaluation of Domain-Specific LanguagesAnkica Barišić Usability Software Engineering - Modeling Environment (USE-ME) 20 December 2017
  • 21. Usability evaluation of Domain-Specific LanguagesAnkica Barišić USE-ME architecture 21 December 2017 Evaluation of UML diagram specification with a members of NOVA-LINCS research centar. Evaluation of USE-ME prototype tool with a novice language engineers in four DSL development projects.
  • 22. Usability evaluation of Domain-Specific LanguagesAnkica Barišić Usability Software Engineering - Modeling Environment (USE-ME) 22 December 2017
  • 23. Usability evaluation of Domain-Specific LanguagesAnkica Barišić Context Modelling Activity 23 December 2017
  • 24. Usability evaluation of Domain-Specific LanguagesAnkica Barišić24 December 2017 User Profile classification WHO?
  • 25. Usability evaluation of Domain-Specific LanguagesAnkica Barišić25 December 2017 Context Environment definition WHERE?
  • 26. Usability evaluation of Domain-Specific LanguagesAnkica Barišić26 December 2017 Workflow definition HOW?
  • 27. Usability evaluation of Domain-Specific LanguagesAnkica Barišić USE-ME Activity diagram 27 December 2017
  • 28. Usability evaluation of Domain-Specific LanguagesAnkica Barišić28 December 2017 USE-ME Goal Modeling WHY?
  • 29. Usability evaluation of Domain-Specific LanguagesAnkica Barišić USE-ME Activity diagram 29 December 2017
  • 30. Usability evaluation of Domain-Specific LanguagesAnkica Barišić USE-ME Activity diagram 30 December 2017
  • 31. Usability evaluation of Domain-Specific LanguagesAnkica Barišić USE-ME Activity diagram 31 December 2017
  • 32. Research method Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201732 Ankica Barišić, Dominique Blouin, Vasco Amaral, Miguel Goulão. 2017. A Requirements Engineering Approach for Usability-Driven DSL Development. InProceedings of SLE’17, Vancouver, BC, Canada, October 23–24, 2017, DOI: 10.1145/3136014.3136027 RDAL USE-ME
  • 33. USE-MEinDSLlifecycle Usability evaluation of Domain-Specific LanguagesAnkica Barišić33 December 2017
  • 34. DefiningContextandGoals 34 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
  • 35. DefiningContextandGoals 35 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
  • 36. ExtendingContextandGoals withdetailsneededfor Evaluation 36 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
  • 37. SpecifyingtheEvaluation SurveysandInteractions 37 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
  • 38. ExecutingEvaluationand creatingaReport 38 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
  • 39. CalculatingSuccessCoverage 39 December 2015Usability evaluation of Domain-Specific LanguagesAnkica Barišić
  • 40. Evaluation survey Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201740 goo.gl/forms/ Js4Nh8V6VCZvmsAB2 youtu.be/RjIGFex-zQM
  • 41. Survey participants Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201741
  • 42. Main Contributions Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RQ1 - How are we able to model the DSL usability evaluation? ❏ To address the problem of the absence of the systematic approach for the DSL usability evaluation we proposed a conceptual modelling framework called The Usability Software Engineering Modelling Environment (USE-ME) 42
  • 43. Main Contributions Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RQ1 - How are we able to model the DSL usability evaluation? ❏ To address the problem of the absence of the systematic approach for the DSL usability evaluation we proposed a conceptual modelling framework called The Usability Software Engineering Modelling Environment (USE-ME) 43 Does the USE-ME conceptual framework enable End Users to model DSL usability evaluations?
  • 44. Main Contributions Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RQ2 - How can we promote usability concerns since an early stage of development of the DSL? ❏ To promote usability concerns since an early stage of development of DSLs, we proposed a set of patterns and specified an iterative process which integrates well with the DSL development phases 44
  • 45. Main Contributions Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RQ2 - How can we promote usability concerns since an early stage of development of the DSL? ❏ To promote usability concerns since an early stage of development of DSLs, we proposed a set of patterns and specified an iterative process which integrates well with the DSL development phases 45 Does the USE-ME conceptual framework enable End Users in promoting usability concerns since an early stage of DSL development?
  • 46. Main Contributions Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RQ3 - How can we integrate the proposed methodological approach to build usability evaluation into development process of the DSL? ❏ To integrate existing IDE support for development of DSLs with high Quality in Use, we developed a functional tool prototype 46
  • 47. Main Contributions Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 RQ3 - How can we integrate the proposed methodological approach to build usability evaluation into development process of the DSL? ❏ To integrate existing IDE support for development of DSLs with high Quality in Use, we developed a functional tool prototype 47 Does the USE-ME tool support enable End Users to built usability evaluation into the development process of the DSL?
  • 48. Future Work Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201748 Improving the usability of approach support ● Evolution of the tool ○ implementation of guiding wizard ○ implementation of verification of rules and goal coverage engine ● Development of usability catalogue ● Identification and illustration of integration points ○ requirements for DSL construction ○ integration with existing approaches from related work (e.g. collaborative concrete syntax specification) ○ integration with a survey and interaction modeling supports
  • 49. Acknowledgments ● FCT/MEC NOVA LINCS; PEst UID/ CEC/04516/ 2013 ● DSML4MA TUBITAK/0008/2014 ● COST Action IC1404 MPM4CPS ● MOVERCADO; FEUP ● CITI/FCT/UNL; PEst-OE/EEI/UI0527/2011
  • 50. Usability Software Engineering - Modeling Environment (USE-ME)Ankica Barišić USE-ME Goal Modeling 50
  • 51. Usability evaluation of Domain-Specific LanguagesAnkica Barišić51 December 2017 Context Model Class diagram
  • 52. Usability evaluation of Domain-Specific LanguagesAnkica Barišić52 December 2017 Context Modeling Activity
  • 53. Usability evaluation of Domain-Specific LanguagesAnkica Barišić53 December 2017 Context Modeling Activity
  • 54. Usability evaluation of Domain-Specific LanguagesAnkica Barišić54 December 2017 Context Modeling Activity
  • 55. Usability evaluation of Domain-Specific LanguagesAnkica Barišić55 December 2017 Context Modeling Activity
  • 56. Survey results Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 201756 ● Q1: Does the USE-ME conceptual framework enable End Users to model DSL usability evaluations? ● Q2: Does the USE-ME conceptual framework enable End Users in promoting usability concerns since an early stage of DSL development? ● Q3: Does the USE-ME tool support enable End Users to built usability evaluation into the development process of the DSL?
  • 57. Usability evaluation of Domain-Specific LanguagesAnkica Barišić USE-ME Utility 57 December 2017
  • 58. Evaluation survey Usability evaluation of Domain-Specific LanguagesAnkica Barišić December 2017 MATERIALS: 1. Video presentation of USE-ME 2. Article about USE-ME approach 3. Prototype tool 4. Background questionnaire 5. Feedback questionnaire 58 Jul 1 Jul 15 Jul 25 Aug 10 Aug 25 Sep 12 Sep 20 Sep 30 OPTIONAL OPTIONAL Pilot run of survey Interview run / Survey update Survey run Result analysisgoo.gl/forms/ Js4Nh8V6VCZvmsAB2 youtu.be/RjIGFex-zQM Survey report
  • 59. Case studies Usability evaluation of Domain-Specific LanguagesAnkica Barišić Visualino RPG Games FlowSLPheasant DSE Merge 59 December 2017
  • 60. Case studies Usability evaluation of Domain-Specific LanguagesAnkica Barišić Visualino RPG Games FlowSLPheasant DSE Merge 60 December 2017
  • 61. Case studies Usability evaluation of Domain-Specific LanguagesAnkica Barišić Visualino RPG Games FlowSLPheasant DSE Merge 61 December 2017
  • 62. Case studies 62 Usability evaluation of Domain-Specific LanguagesAnkica Barišić Visualino RPG Games FlowSLPheasant DSE Merge December 2017
  • 63. 63 Barišić, Monteiro, Amaral, Goulão, Monteiro: "Patterns for Evaluating Usability of Domain-Specific Languages“, InProceedings of the 19th Conference on pattern languages of programs (PLoP), SPLASH 2012 Tucson, Arizona, USA, October 2012
  • 64. 64 Barišić, Monteiro, Amaral, Goulão, Monteiro: "Patterns for Evaluating Usability of Domain-Specific Languages“, InProceedings of the 19th Conference on pattern languages of programs (PLoP), SPLASH 2012 Tucson, Arizona, USA, October 2012
  • 65. 65 Barišić, Monteiro, Amaral, Goulão, Monteiro: "Patterns for Evaluating Usability of Domain-Specific Languages“, In Proceedings of the 19th Conference on pattern languages of programs (PLoP), SPLASH 2012 Tucson, Arizona, USA, October 2012
  • 66. 66
  • 67. 67 Query solution in C++/BEE (pseudo code based on real code) Query solution in Pheasant
  • 70. Selfassessment (0-5) Statistical meaningfulness 70 Sho uld we? Do we? How can we? Life in the tren Mean confidence / query Non - Inf C++/BEE 1,04 Pheasant 4,75 Inf C++/BEE 4,88 Pheasant 4,83
  • 71. 71 MVC1- developed as a proof-of-concept to validate the key underlying principles and domain concepts MVC2 - developed in the form of a platform easily customizable by experts and extensible by developers of the organization's team.
  • 72. ● Usability requirements: Understandability, Readability, Expressiveness, Efficiency ● Participants: ● Participant 1: Domain Expert (DSL Development), Campaign Manager (Organization), Product Owner (Agile processes) ● Participant 2: DSL Developer (DSL Development), System Manager (Organization), Scrum Master (Agile processes) ● Participant 3: DSL Developer (DSL Development), System Manager (Organization), Scrum Team (Agile processes) ● Participant4: Domain Expert (DSL development), Flow Manager (Organization), Product Owner (Agile processes) ● Intervention type: Interview ● Results: ● Understandability and readability is much higher than previously ● User is able to express all the concepts ● Editor is still to complex to be used by Campaign Manager – there is a need for having more simple view to support his needs ● Interaction improvements with language interface, its integration to platform environment and multi user support are pointed as main lack of this editor 72
  • 73. 73
  • 74. 74
  • 75. RQ1 Which approaches are reported for DSL development? RQ2 How the Domain Analysis of DSL is performed? RQ2.1 Which techniques were used for Domain Analysis? RQ2.2 Which stakeholders are involved into Domain Analysis? RQ3 How the Evaluation of DSL was performed? RQ3.1 What methods are used for Evaluation? RQ3.2 When Evaluation was performed? 75
  • 76. 76
  • 78. Comparison criteria ● Accuracy of solution ● Time to solve a problem ● Personal preference ● Age ● Gender ● Programming experience
  • 79. Results: LEGO VISUALINO CHILDREN 8-18 years non-programmers Majority solved problem Time (4-10min) Strong preference Just few solved problem Time (12-15min) No preference ADULTS 18-40 years programmers Majority solved problem Time (2-6min) Small preference Majority solved problem Time (10-15min) No preference GENDER No significant difference No significant difference