Emotion-Oriented Requirements Engineering
Total Page:16
File Type:pdf, Size:1020Kb
Emotion-Oriented Requirements Engineering Faculty of Science, Engineering and Technology Swinburne University of Technology Melbourne, Australia Submitted for the degree of Doctor of Philosophy Maheswaree Kissoon Curumsing 2017 Abstract In requirements elicitation and modelling, the current emphasis is pre- dominantly on capturing functional requirements and quality goals. Evidence suggests that even though many software systems deliver most key functional and quality expectations, post-delivery user feedback highlights gaps. A key finding is that the emotional goals of users are an important determinant of the acceptance of a solution, yet they are not adequately addressed in many projects, causing them to fail. The importance of human emotions cannot be underestimated. Unfortu- nately, little consideration is given to how stakeholders feel, or would like to feel, when using a software product. Incorporating user emotional expectations in software engineering can be very challenging, considering that emotions are complex and sub- jective. Additionally, existing software engineering methodologies or frameworks provide little guidance to software professionals on how to address emotional expectations. In this thesis, we argue that emo- tional goals are a critical determinant to the success of a technology and should, therefore, be considered with equal importance as functional and quality goals. Given that emotional goals describe the user’s feel- ings, perceptions and emotions generated from users’ experience with the technology, they relate mostly to non-functional goals but are differ- ent from other quality goals. Quality goals are properties of the system while emotional goals are the properties of the user. The importance of user emotional goals with regard to the acceptance of a technology cannot be ignored and we, therefore, argue that a new set of goals be created under the taxonomies of non-functional requirements to repre- sent user emotional expectations. We present two elicitation techniques to identify key emotional goals, along with functional and quality goals, at the very early stages of the software development life cycle. Next, we extend a set of agent- oriented models to represent the emotional goals from different view- i points. We also provide a technique to generate emotion-informed per- sonas to highlight the emotional goals identified during the elicitation process. Lastly, we present a simple validation tool, namely the emotion- oriented questionnaire, to validate the extent to which user emotional goals have been addressed by the system. These emotion-oriented techniques have been trialed within three real life case studies in different domains. Our findings show that our elic- itation techniques were successful in eliciting key user requirements. The emotion-oriented models have proved to be a helpful tool during dis- cussions with different stakeholders while the emotion-informed per- sonas were used by designers to bridge the gap between the require- ments phase and the design phase. The emotion-oriented question- naire, was designed after several iterations and the final version proved to be a successful emotion assessment tool. Given their lightweight na- ture, these techniques can be applied to any domain where user emo- tional goals are of paramount importance. ii Dedicated to my family iii Acknowledgements I would like to acknowledge with particular gratitude the assistance of my supervisors, Assoc Prof. Jean-Guy Schneider, Prof. Rajesh Vasa and Prof. John Grundy. I am also indebted to a number of other people, in particular, Prof. Leon Sterling, Dr. Tim Miller, Assoc Prof. Sonja Pedell, Dr. Antonio Alejandro Lopez Lorca, Dr. Antonette Mendoza, Dr. Neil Thomas, Prof. Michael Kyrios, Bambi Price and Frederick Price who collaborated with me on various research projects and provided much needed support. Thanks also to all the people who participated in my projects and provided valuable feedback. Finally, I would like to thank my family for their loving forbearance dur- ing the long period it has taken me to conduct the research and write up this thesis. Maheswaree Kissoon Curumsing, 2017 iv Declaration I declare that this thesis contains no material that has been accepted for the award of any other degree or diploma and to the best of my knowl- edge contains no material previously published or written by another person except where due reference is made in the text of this thesis. Maheswaree Kissoon Curumsing, 2017 v Publications Arising from this Thesis The work described in this thesis has been published as described in the following list: 1. M. Kissoon Curumsing, S. Pedell, R. Vasa. Designing an Evalua- tion Tool to Measure Emotional Goals. IJPOP 3(1): 22-43, 2014. 2. M. Kissoon Curumsing, A. A. Lopez-Lorca, T. Miller, L. Sterling, R. Vasa. Viewpoint Modelling with Emotions: A Case Study. IJPOP 4(2): 25-53, 2015. Although the thesis is written as a linear document, the actual research work involved substantial exploration, idea formation, modelling, ex- perimenting and some backtracking as we hit dead-ends. The following text outlines how the publications relate to this thesis. Both articles helped lay the foundation and scope of the work presented in this thesis. Specifically, the first paper contributed to identify the gap in existing literature (Chapter 2), linked to the little consideration given to user emotional expectations when developing software. This paper introduced the concept of ‘Emotional Goals’ (Chapter 4). It also helped establish and refine the design of the emotion-oriented assessment tool (Chapter 7). The second paper contributed to the content presented in Chapter 6 of this thesis which describes the way agent-oriented models can be extended to represent user emotional goals. vi Contents 1 Introduction 1 1.1 Research Goals . 4 1.2 Research Methodology . 5 1.3 Key Research Contributions . 5 1.4 Thesis Organisation . 7 1.5 Disclaimer . 9 2 Background 10 2.1 Emotion . 10 2.1.1 Approaches to Defining Emotion . 11 2.1.2 Theories of Emotion . 11 2.1.3 Classification of Emotion . 14 2.1.4 Ways of Expressing Emotion . 16 2.1.5 Measures of Emotion . 19 2.1.6 Key Findings . 20 2.2 Emotion in Relation to Software . 21 2.3 Summary . 24 vii Contents 3 Research Methodology 26 3.1 Case Study Research Methodology . 27 3.2 Designing Case Studies . 30 3.2.1 The Research Questions . 30 3.2.2 Unit of Analysis . 31 3.2.3 Linking Data to Propositions . 32 3.2.4 Criteria for Interpreting a Case Study’s Findings . 36 3.3 Preparing for Data Collection . 36 3.4 Data Collection . 37 3.5 Criteria for Judging the Quality of Research Designs . 38 3.6 Evaluating and Analysing Case Study Evidence . 39 3.7 Presenting the Report . 40 4 Emotional Goals 41 4.1 Background and Related Work . 42 4.1.1 Emotions in Affective Computing . 42 4.1.2 Emotions in Information Systems . 44 4.1.3 Emotions in Software Design and User Experience . 45 4.1.4 Emotions in Requirements Engineering and Agent- oriented Requirements Engineering . 47 4.2 Emotional Goals as a Separate Category of Non-Functional Goals . 48 4.3 Summary . 51 5 Case Study 1: TouchFrame 53 viii Contents 5.1 Rationale and Objectives of the Case Study . 54 5.1.1 Emergency Alarm Systems (EAS) . 55 5.1.2 Objectives of the TouchFrame Case Study . 58 5.2 Case Study Design . 58 5.2.1 Research Questions . 59 5.2.2 Participants . 66 5.2.3 Ethics . 66 5.2.4 Data Gathering Techniques . 66 5.2.5 Prototype Deployment and Evaluation Methodology . 67 5.3 Pilot Study . 69 5.3.1 PictureFrame . 69 5.3.2 Evaluation of the PictureFrame . 70 5.3.3 Discussion of Results from Pilot Study . 74 5.4 Revised Case Study Design . 76 5.5 Main Study . 78 5.5.1 TouchFrame . 78 5.5.2 Evaluation of the TouchFrame . 80 5.6 Findings and Discussion . 82 5.7 Reflections on the Evaluation Tool . 84 5.8 Threats to Validity . 85 5.8.1 Construct Validity . 86 5.8.2 Internal Validity . 86 5.8.3 External Validity . 87 ix Contents 5.8.4 Reliability . 87 5.9 Summary . 87 5.10Research Contributions in this Case Study . 89 6 Capturing Emotional Goals 91 6.1 Background . 93 6.1.1 Agent-Oriented Software Engineering . 93 6.2 Modelling Emotional Goals . 96 6.2.1 Emotion-Oriented Viewpoint Framework . 97 6.2.2 Conceptual Domain Modelling . 100 6.2.3 Platform-Independent Computational design . 103 6.3 Emotion-Oriented Elicitation Techniques . 107 6.3.1 Emotion-informed requirements elicitation technique with direct user interaction . 109 6.3.2 Emotion-informed requirements elicitation technique without direct user interaction . 112 6.3.3 Converting the identified goals into an emotion-oriented goal model . 116 6.4 Deriving Emotion-Informed Personas . 117 6.5 Summary . 120 7 Emotion-Oriented Software Validation Method 122 7.1 Iterative Design of the Validation Tool . 123 7.2 Version 5: Refined Emotional Goals Based Design of Ques- tionnaire . 127 7.2.1 Validity of the Tool . 129 x Contents 7.3 Version 6: Feedback Based Design of Questionnaire . 130 7.3.1 Validity of the Tool . 135 7.4 Summary . 135 8 Case Study 2: SMART 137 8.1 Research Contributions in this Case Study . 138 8.2 Rationale and objectives of the Case Study . 139 8.3 Case Study Design . 141 8.3.1 Research Questions . 141 8.3.2 Participants . 142 8.3.3 Ethics . 142 8.3.4 Data gathering techniques . 143 8.4 Capturing and Modelling User Emotional Expectations . 143 8.4.1 Elicitation technique involving stakeholders - Brain- storming session . 144 8.4.2 Elicitation technique without stakeholders - Con- tent analysis . 146 8.4.3 Interactions with the Software Development Team . 149 8.4.4 Emotion-Informed Personas .