Socially-Driven Software Adaptation

Download Socially-Driven Software Adaptation

Post on 22-Nov-2014

76 views

Category:

Software

1 download

Embed Size (px)

DESCRIPTION

Malik Almaliki, Funmilade Faniyi, Rami Bahsoon, Keith Phalp, Raian Ali. Requirements-driven Social Adaptation: Expert Survey. The 20th International Working Conference on Requirements Engineering: Foundation for Software Quality (REFSQ 2014), Essen, Germany. April 2014. Self-adaptation empowers software systems with the capability to meet stakeholders requirements in a dynamic environment. Such systems autonomously monitor changes and events which drive adaptation decisions at runtime. Social Adaptation is a recent kind of requirements-driven adaptation which enables users to give a runtime feedback on the success and quality of a systems configurations in reaching their requirements. The system analyses users feedback, infers their collective judgement and then uses it to shape its adaptation decisions. However, there is still a lack of engineering mechanisms to guarantee a correct conduction of Social Adaptation. These slides report on a two-phase Expert Survey to identify core benefits, domain areas and challenges for Social Adaptation.We provide practitioners and researchers in adaptive systems engineering with insights on this emerging role of users, or the crowd.

TRANSCRIPT

<ul><li> 1. www.bournemouth.ac.uk Requirements-Driven Social Adaptation: Expert Survey Malik Al Maliki1 , Funmilade Faniyi2 , Rami Bahsoon2 , Keith Phalp1 and Raian Ali1 1 Bournemouth University, UK 2 University of Birmingham, UK REFSQ, Essen, Germany, 7-10 April, 2014malmaliki@bournemouth.ac.uk </li> <li> 2. www.bournemouth.ac.uk 2 Outline Problem Aim of study Study Design Expert Survey (Phase 1) Expert Survey (Phase 2) Findings and Challenges for RE Conclusions </li> <li> 3. www.bournemouth.ac.uk 3 Introduction malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 4. www.bournemouth.ac.uk 4 Self-Adaptive Software Self-adaptive software evaluates its own behavior and changes behavior when the evaluation indicates that it is not accomplishing what the software is intended to do, or when better functionality or performance is possible. (Laddaga 1997) Why do we need adaptivity in software? Adapt to internal and external changes. Maximize operation in different conditions. Reduce the cost and time of manual adaptation. Keep the satisfaction of requirements. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 5. www.bournemouth.ac.uk 5 Towards Social Adaptation Self-adaptation is highly dependent on feedback that is provided by the system itself. Feedback is on current state( e.g. faults and errors, available resources, etc) and its environment (attacks, availability of external services, etc) Automated feedback is the driver for triggering and taking autonomous adaptation actions. There are other adaptation drivers which are not observable by automated means. How to get that? malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 6. www.bournemouth.ac.uk 6 Social Adaptation the system autonomous ability to analyse users feedback and choose upon an alternative behaviour which is collectively shown to be the best for meeting requirements in a context (Ali et al. 2012) A social driver for adaptation: users judgments on the quality and validity of the different ways through which a system can reach their requirements Socially-driven adaptation Giving users a voice in tailoring adaptation actions Maximize users satisfactions. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 7. www.bournemouth.ac.uk 7 Problem malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 8. www.bournemouth.ac.uk 8 Engineering Social Adaptation Lack of knowledge about the core benefits, domain areas and challenges of Social Adaptation. Lack of engineering practice for enabling Social Adaptation. For example: how to engineer the acquisition of users feedback malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 9. www.bournemouth.ac.uk 9 Aim of the Study malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 10. www.bournemouth.ac.uk 10 Aim of the study The aim is to poll experts opinion on: 1. The benefits and drawback of Social Adaptation, 2. Application areas for Social Adaptation 3. The role of users feedback in steering software adaptation, and 4. The engineering of software-based feedback acquisition malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 11. www.bournemouth.ac.uk 11 Study Design malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 12. www.bournemouth.ac.uk 12 Study design Two-phase Expert Survey. High response rate: 29 out of 35 experts in phase 1 and 26 out of 34 experts in phase 2. Experts from Requirement Engineering and Adaptive Systems research community (with additional focus on at least one different related domain such as HCI and Social Computing). Online questionnaires were used as a data collection method. Survey questions were deduced from two talks and a brainstorming sessions on Requirements-driven Social Adaptation (12 researchers) The survey script contained 25 questions discussing and investigating the objectives of our study. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 13. www.bournemouth.ac.uk 13 Expert Survey (Phase 1) malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 14. www.bournemouth.ac.uk 14 Overview of the first-phase survey Introduction to the survey malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 A snapshot of the first survey </li> <li> 15. www.bournemouth.ac.uk 15 Findings: Expert Survey (phase1) malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 16. www.bournemouth.ac.uk 16 Findings: Expert Survey Social Adaptation Highly valuable for both developers and users. Benefits of Social Adaptation for developers Rich understanding and knowledge of the SA system and its users. Reducing the upfront effort in design phase. Benefits of Social Adaptation for software developers malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 17. www.bournemouth.ac.uk 17 Findings: Expert Survey Benefits of Social Adaptation for users User satisfaction Transparency Confidence in the software system Benefits of Social Adaptation for software clients malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 18. www.bournemouth.ac.uk 18 Findings: Expert Survey Application Domains for Social Adaptation Mobility intensive systems: mobile apps such as driving navigation systems. Large-scale systems: such as SaaS clouds. Real time management systems: for example, evacuation scenarios or congestion management at train stations or airports. Highly interactive systems such as social networking applications. Prototyping tools. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 19. www.bournemouth.ac.uk 19 Findings: Expert Survey Areas outside the scope of Social Adaptation are: Critical systems such as Life-critical software used in hospitals. Security and Privacy sensitive applications. Non- or less-interactive systems under the control of centralised authorities. For example, space mission vehicles. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 20. www.bournemouth.ac.uk 20 Findings: Expert Survey What would influence the quality of collected users feedback The quality of collected feedback can be affected by the following factors: Time of asking for feedback. User interface. Language used. Quality of users. Users mood. The percentage of experts who indicate the quality of collected feedback can be affected by the way it is collected malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 21. www.bournemouth.ac.uk 21 Findings: Expert Survey Adaptation drivers for feedback acquisition: User experience: e.g. usage frequency and level of expertise with software. Context of use including the time, location, the computing device being used, the type of users, the current task the user is doing, etc. Configurable adaptation : involves users providing the system with the way they wish to provide feedback and how often they wish to do so. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 22. www.bournemouth.ac.uk 22 Challenges malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 23. www.bournemouth.ac.uk 23 Challenges for enabling Social Adaptation Utilising on-line learning (software-based process): Identifying appropriate learning models. Mining users feedbacks. Gauging users involvement: Freedom degree in configuring the system. Restrictions for their involvement. Monitoring adaptation spaces. Degree of autonomy : how much control users would give to software systems. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 24. www.bournemouth.ac.uk 24 Challenges for enabling Social Adaptation Technical challenges of software-based feedback acquisition: Users selection Interaction style such as incentivising users to give feedback when to ask for feedback how to interact with users without annoying them and the usability degree when giving feedback. Feedback acquisition drivers: Identifying the relevant drivers of the adaptive acquisition of users feedback. Engineer these drivers in a non-intrusive way to users. Impact importance of users mood when collecting feedback. Some domain-specific feedback acquisition languages and mechanisms might be needed. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 25. www.bournemouth.ac.uk 25 Expert Survey (phase2) malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 26. www.bournemouth.ac.uk 26 Overview of the second-phase survey A snapshot of the second survey A snapshot of the second survey malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 27. www.bournemouth.ac.uk 27 Aim of the second-phase survey The aim was to: Confirm debatable findings. Rate degree of relevance and difficulty of our extracted challenges to the Requirements Engineering research community. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 28. www.bournemouth.ac.uk 28 Findings: Expert Survey (phase2) malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 29. www.bournemouth.ac.uk 29 Brief overview of the findings A high degree of challenge was given to engineering challenges related to: Enabling users to steer the adaptation process and the degree in which they are willing to steer it such as : Monitoring adaptation spaces. Degree of autonomy (how much control users would give to software systems). Engineering feedback acquisition and empowering adaptivity in it such as: Some domain-specific feedback acquisition languages and mechanisms might be needed. Feedback acquisition drivers: Identifying the relevant drivers of the adaptive acquisition of users feedback. Engineer these drivers in a non-intrusive way to users. Users selection Interaction style such as incentivising users to give feedback malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 30. www.bournemouth.ac.uk 30 Brief overview of the findings A high degree of relevance to RE was given to challenges related to: Gauging users Involvement . Freedom degree in configuring the system. Restrictions for their involvement. Engineering Feedback collection and interaction styles. Feedback mining to inform adaptations. malmaliki@bournemouth.ac.uk REFSQ, Essen, Germany, 7-10 April, 2014 </li> <li> 31. www.bournemouth.ac.uk 31 Conclusion and future work Social Adaptation is a highly beneficial concept to both developers and clients of socially adaptive systems. Enabling Social Adaptation is a technically challenging process. Lack of models and mechanisms for enabling Social Adaptation. Engineering approaches are highly needed for Social Adaptation to: Empower use...</li></ul>