On Exploiting End-User Feedback in Requirements Engineering Center for Information and Communication Technology, FBK-ICT International Doctoral School ICT- University of Trento, Italy Advisor Anna Perini Doctoral Symposium at REFSQ2013 Essen, Germany,
Outline 1.- Introduc=on Context & Problem? 2.- Research Methodology 3.- Related Work End- user Feedback in RE Vs. Mul=disciplinary perspec=ve 4.- Progress & Conclusion 1
Introduction Definition What is feedback? Primary results of introducing the implemented software system into the real world. There is an immediate response to the system. [Madhavji06] Information about reactions to a person's performance of a task, etc., used as a basis for improvement. [Oxford American Dictionary] 2
End-user feedback Introduction Context Descrip=on Meaningful information For instance with the purpose of suggesting to software applications. New needs Modifica=ons open- source sonware Strategic behaviours, etc. Unstructured feedback organised by topics. Semi-structured feedback by product, component, version, summary. 3
Problem of managing end-user feedback Classified as a bug Heterogeneity of abstrac=ons levels Huge amount of feedback and discussions Mismatching of the purpose We believe that end-user feedback can be a valuable source of requirements knowledge contained in discussion forums of open-source software. 4
Research objective Define a systematic approach for acquiring end-user feedback and deriving requirements knowledge from it RQ1. What is the appropriate conceptualisation of end-user feedback? RQ2. Which are the suitable techniques to collect explicit, direct and indirect, end-user feedback? RQ3. How can analysts derive requirements knowledge from it? 5
Research Methodology Definition of the problem Reading of the state of the art Observation of the problem Reading related work Software evolution Gathering of feedback Definition of end-user feedback Revisiting the definition Conceptual model Basis } Mo=va=on of the research } RQ1. Conceptualisa=on of feedback 6
Research Methodology Research Selection of case study Defining the motivation Establishing fine-grained problems Investigating current end-user feedback Design of experiments } Sampling data Revealing hidden structure of feedback Analysing current discussion } RQ1. Conceptualisa=on of feedback RQ3. Discovering RE knowledge RQ1 RQ2. Techniques to collect feedback RQ3 7
Related works End- User feedback Mobile devices Dashboards Discussion forums - irequire [Seyff et al. 10] - ConTexter [Schneider 11] - IdeaScale - User voice - HabboHotel - LiquidFeedback Semi- structured feedback, filtered by sensed en==es, votes, forms with fields to fill in. Bug repor=ng - Mozilla bugzilla - OpenOffice bugzilla 8
Proposed approach Multidisciplinary perspective base on Feedback structured by system s behaviour RE techniques Giorgini et al. 2010 Tropos methodology Requirements modelling 9
Proposed approach Multidisciplinary perspective HCI principles Conceptualisa1on of feedback purpose Apply Emoticons Mohammad 2011 Colourful language 10
Proposed approach Multidisciplinary perspective NL techniques Direc1ve and Expressive acts VS Noise Written speech acts Searle 1975 Speech acts 11
Progress so far RQ1. What is the appropriate conceptualisation of end-user feedback? Case study: Apache OpenOffice Looking at the textual component RQ3. How can analysts derive requirements knowledge from it? 12
Progress so far End-user feedback meta-model Conceptualisation centred on the purpose of the feedback. End-user +iduser 1 provides 0..n End-user Feedback +content 1 has 1..n Purpose User feedback metamodel 0..n Speech act formulated 1 Comment Clarification Improvement Correction Negotiation Others Directive Expressive 0..n <<enumeration>> Action addition deletion modification Function Improvement Quality Improvement Execution Improvement Support Rejection 13
Progress so far End-user feedback patterns Identification of patterns by revealing written speech acts. 14
Conclusion Context: software evolution driven by end-user feedback Problem: acquiring feedback and deriving requirements knowledge Methodology: steps followed towards the research objective Progress: Selected case study in the context of open-source software Patterns and conceptualisation 15
Conclusion Expected impact Helping analysts in managing feedback Avoiding missing feedback which is relevant for requirements (not simply for bug-fixing) Future work Investigation of argumentation-based platforms Compare text processing techniques (natural language vs. structured feedback) 16
Thank you for your attention! Questions? 17
References [Giorgini et al. 2010] P. Giorgini, J. Mylopoulos, A. Perini, and A. Susi, The Tropos Methodology and Software Development Environment, in Social Modeling for Requirements Engineering, Yu, Giorgini, Maiden, and Mylopoulos, Eds. MIT Press, 2010, pp. 405 423. [Jureta et al. 2009] I. Jureta, J. Mylopoulos, and S. Faulkner. Analysis of multi-party agreement in requirements validation. In RE, pp. 57-66. IEEE Computer Society, 2009. [Searle 1975] J. R. Searle, A taxonomy of illocutionary acts. Minneapolis: University of Minnesota Press, 1975c, pp. 334 369. [Mohammad 2011] S. Mohammad. Colourful language: measuring word-colour associations. CMCL '11, pp. 97-106, Stroudsburg, PA, USA, 2011. FlexiGuided GmbH. Liquidfeedback. http://liquidfeedback.com/ #Software, 2012. 18