The SUPERSEDE project will provide advancements in several research areas, from end-user feedback and contextual data analysis, to decision making support in software evolution and adaptation. But the major novel contribution will be in integrating methods and tools from the mentioned areas, thus providing a new solution framework for software evolution and adaptation for data-intensive applications.
2. 2
For who is SUPERSEDE:
• For Software developers who want to increase the acceptance of their
software.
What is SUPERSEDE:
• The SUPERSEDE toolset helps you, as developer, to make the best
decision to improve your software product.
Why is SUPERSEDE is unique:
• Unlike other toolkits, SUPERSEDE adopts a feedback-driven software engineering
perspective thus helping software developers understand the evolving
user's needs.
SUPERSEDE Who, What and Why
3. 3
• An HORIZON 2020 project
• Call: H2020-ICT-2014-1 (Tools and methods for Software Development)
• Title: SUpporting evolution and adaptation of PERsonalized Software by Exploiting contextual Data
and End-user feedback
• Started on: May 1, 2015 (Duration: 36 months)
• Type of Action: RIA
- to establish new knowledge and/or to explore the feasibility of a
new or improved technology, product, process, service or solution
- basic and applied research, technology development and
integration, testing and validation on a small-scale prototype in a
laboratory or simulated environment
• Consortium: 8 Partners (4 Academic/Research; 4 Industrial)
SUPERSEDE project details
4. 4
• Context & Vision
• Project Objective
• Approach
• Knowledge areas & their challenges
• Use Case iterative validation
• Expected Impact
• Consortium
Outline
5. 5
Context
Big data
• Networked smart objects (e.g. smart shoes that
monitor your practice), smart appliances (e.g.
energy metering and app to help reducing
consumption) … smart city services (healthcare,
transportation, e-government,…) become
available at increasing speed
• These software applications exploits contextual
data collected at runtime through various sensors
and online data sources
• Logs on their usage produce additional data
Online End-users feedback
• Users express their feedback upon their
experience in using a software application through
online forums, app stores, social networks, or
customized user feedback platforms, accessible on
the go
• Feedback can be in the form of ratings, emoticons,
textual comments … multi-modal, e.g. written text
+ voice or images or emoticons
iRequire
[SeyffEtal.RE’10
http://myexperience.sourceforge.net
6. 6
• Can we exploit feedback from end-user and big data to support the
development of better quality services and applications?
• … and to accelerate their evolution life-cycle, independently of
the size of the software company?
• For examples, enabling:
• continuous validation of requirements
• continuous improvement of service qualities (integrity, robustness, …)
• continuous evolution and dynamic reconfiguration
• semi-automatic identification of business use cases
• tool-supported prioritization for release planning
• …
Context: Challenges
7. 7
Vision
1) Collect: gathering of data both from the end-user, the
execution context, usage logs
2) Analyse: reasoning about the collected data
• e.g. extracting user intentions from their textual comments;
automatically generating user models from patterns of usage;
derive indicators for QoS compliance / QoE
3) Decide: derive appropriate decision-making models that can
be fed by user feedback and big data to enable automated
and semi-automated decision-making
• software evolution tasks, for instance: identifying new
requirements; identifying issues to be solved through software
maintenance or evolution; etc.
• software dynamic adaptation, e.g. getting recommendations
about actions to be implemented to keep QoS and QoE at a good
level
4) Act: implementing the decided changes at the right moment,
i.e. schedule & assess the impact of the executed actions
Adopt a feedback-driven software engineering perspective
8. 8
Vision
• for better software
applications
- context-awareness, personalization
(improve QoE)
Ø End-user
• for software engineering
- better quality decisions in evolving
software application and services (improve
resource management; artifacts coherence; final
product’s quality)
- Integrated and extended mechanisms for
a more situated run-time dynamic
adaptation
ØSoftware engineer
For what? For whom?
10. 10
• provide methods & tools to collect end-users’ feedback and context / usage data which
will be efficient, scalable and adaptable
• provide methods & tools to perform an integrated analysis of the collected
data
• provide methods & tools to support decision-making in the evolution and
runtime adaptation of services and applications based on user’s feedback and contextual
data
• provide methods and tools to enact
the decisions made together with
means to assess the impact of these decisions
both in terms of users’ quality of experience
and organization productivity
Approach: 4 main sub-objectives
12. 12
• Area 1: Feedback Gathering
• Multimodal feedback communication channels
• User engagement mechanisms
• Area 2: Run-time monitoring
• comprehensive monitoring solution
• mechanisms to ensure the correctness of the
collected data
• Area 3: User-Feedback Analysis
• combining opinion mining and conversation analysis
approaches
• Area 4: Big data analysis
• Integration of heterogeneous sources
• Data changes/evolution
• Area 5: Software Quality
• Framework that integrates QoE and QoS
• Area 6: Decision-making support
• Models for decision-making (integrating data
analytics/ end-user feedback) – customizable
to specific domain settings
• Area 7: Run-time Adaptation &
Personalisation
• Scalable solutions – customizable to specific
domain settings
Research challenges
All the 7 research areas have their own research agendas, communities, and open challenges
SUPERSEDE will focus on a subset, including the following:
13. 13
Three use cases proposed by companies will ensure:
• the elicitation of relevant domain knowledge
• a progressive validation of the methods and tools produced to ultimately provide evidence of potential for productivity gains
Approach: Use Cases
Demo Apps
City Info API:
Management
and
Operation
SMART CITY INFORMATION
API PLATFORM - SIEMENS
•Smart City Information API provision
and consumption
•Ecosystem for Smart City
Information exchange
•Advanced Smart City Apps and
Services for energy providers, grid
operators and citizens
•Runtime monitoring of platform
•API access patterns and KPIs
Interactive Energy
Savings Account - SeEnerCON
•SENERCON (software developer,
management) Home Energy
Efficiency - Energy evaluation
application
(https://www.energiesparkonto.de)
SMART PLAYER
Sport Media Application in Real
Time - ATOS
•Webscasting Media platform for
large sport events
•Sports Event Live
•Allows people to watch sport
videos on demand
•Application in Real Time
•Give stats with: live results and
sport info
•Multi-audio in different languages
14. 14
Expected Impact
• Foster the use of inputs from end-users
• users will feed the team developing software
• Allow to collect feedback along the software lifecycle
• Get support from monitor, listen and communicate with users
• Foster runtime adaptation capacity and dynamic personalisation
• Accelerate software life-cycle dynamic development process
• Foster the design of applications to fulfill users’ needs (QoE) and
expectations