towards quality-aware development of big data applications...

17
DICE Horizon 2020 Project Grant Agreement no. 644869 http://www.dice-h2020.eu Funded by the Horizon 2020 Framework Programme of the European Union Towards Quality-Aware Development of Big Data Applications with DICE Pooyan Jamshidi Imperial College London, UK Project Coordinator: Giuliano Casale Imperial College London, UK

Upload: others

Post on 15-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE Horizon 2020 Project Grant Agreement no. 644869 http://www.dice-h2020.eu Funded by the Horizon 2020

Framework Programme of the European Union

Towards Quality-Aware Development of Big Data Applications with DICE

Pooyan Jamshidi Imperial College London, UK

Project Coordinator: Giuliano Casale

Imperial College London, UK

Page 2: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE RIA - Overview

DICE Project

o Horizon 2020 Research & Innovation Action (RIA) Quality-Aware Development for Big Data applications Feb 2015 - Jan 2018, 4M Euros budget 9 partners (Academia & SMEs), 7 EU countries

2 ©DICE 09/15/2015

Page 3: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

o Software market rapidly shifting to Big Data 32% compound annual growth rate in EU through 2016 35% Big data projects are successful [CapGemini 2015]

o ICT-9 call focused on SW quality assurance (QA) ISTAG: call to define environments “for understanding the

consequences of different implementation alternatives (e.g. quality, robustness, performance, maintenance, evolvability, ...)”

o QA evolving too slowly compared to the technology trends (Big data, Cloud, DevOps ...) DICE aims at closing the gap

DICE RIA - Overview

Motivation

3 ©DICE 09/15/2015

Page 4: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

o Reliability

o Efficiency

o Safety & Privacy

Quality Dimensions

Availability Fault-tolerance

Performance Costs

Verification (e.g., deadlines) Data protection

DICE RIA - Overview 4 ©DICE 09/15/2015

Page 5: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE RIA - Overview

High-Level Objectives

o Tackling skill shortage and steep learning curves Data-aware methods, models, and OSS tools

o Shorter time to market for Big Data applications Cost reduction, without sacrificing product quality

o Decrease development and testing costs Select optimal architectures that can meet SLAs

o Reduce number and severity of quality incidents Iterative refinement of application design

5 ©DICE 09/15/2015

Page 6: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE RIA - Overview

Some Challenges in Big Data…

o Lack of quality-aware development for Big Data o How to described in MDE Big Data technologies

o Spark, Hadoop/MapReduce, Storm, Cassandra, ... oCloud storage, auto-scaling, private/public/hybrid, ...

o Today no QA toolchain can help reasoning on data-intensive applications

oWhat if I double memory? oWhat if I parallelize more the application?

6 ©DICE 09/15/2015

Page 7: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE RIA - Overview

… in a DevOps fashion

o Software development methods are evolving o DevOps closes the gap between Dev and Ops From agile development to agile delivery Lean release cycles with automated tests and tools Deep modelling of systems is the key to automation

7 ©DICE 09/15/2015

Agile Development DevOps

Business Dev Ops

Page 8: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE RIA - Overview

Demonstrators

8 ©DICE 09/15/2015

Case study Domain Features & Challenges Distributed data-intensive media system (ATC)

• News & Media • Social media

• Large-scale software • Data velocities • Data volumes • Data granularity • Multiple data sources and channels • Privacy

Big Data for e-Government (Netfective)

• E-Gov application

• Data volumes • Legacy data • Data consolidation • Data stores • Privacy • Forecasting and data analysis

Geo-fencing (Prodevelop)

• Maritime sector

• Vessels movements • Safety requirements • Streaming & CEP • Geographical information

Page 9: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

Bringing QA and DevOps together

©DICE 09/15/2015

Requirements

SLAs

Compare Alternatives

Load testing

Cost Tradeoffs

Monitoring

Capacity Management

Incident Analysis Deployment

Profiling SPE

Regression

Bottleneck Identification

Root Cause Analysis

DICE

User behaviour

Adaptation

DICE RIA - Overview 9 ©DICE 09/15/2015

Page 10: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DevOps in DICE: Measurement

MySQL

NoSQL

S3

DIA Node 1

DIA Node 2 Users Dev

jenkins

chef

monitoring and incident report

release

Ops

incident report

(performance unit tests)

Deployment & CI

DICE RIA - Overview 10 ©DICE 09/15/2015

Page 11: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

MySQL

NoSQL

S3

DIA Node 1

DIA Node 2 Users Dev

jenkins

chef

monitoring and incident report

early-stage quality

assessment

Ops

incident report

release

(performance unit tests)

DevOps in DICE: Early-stage MDE

Deployment & CI

DICE RIA - Overview 11 ©DICE 09/15/2015

Page 12: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

• UML MARTE profile, UML DAM profile, Palladio, …

©DICE 09/15/2015 DICE RIA - Overview 12

Failure Probability

Usage Profile System

Behaviour

Quality-Aware MDE

Page 13: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

Platform-Indep. Model

Domain Models

Quality-Aware MDE

QA Models

Architecture Model

Platform-Specific Model

Code stub generation

Platform Description

MARTE

Simulation Tools

Cost Optimization Tools

Data Intensive Application

DICE RIA - Overview 13 ©DICE 09/15/2015

Page 14: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

MySQL

NoSQL

S3

DIA Node 1

DIA Node 2 Users Dev

jenkins

chef

incident report & model correlation

continuous quality engineering

(“shared system view” via MDE)

Ops

incident report

continuous monitoring and enhancement

release

(performance unit tests)

DevOps in DICE: Enhancement

Deployment & CI

DICE RIA - Overview 14 ©DICE 09/15/2015

Page 15: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

Platform-Indep. Model

Domain Models

DICE Integrated Solution

Continuous Enhancement

Continuous Monitoring

Data Awareness

Architecture Model

Platform-Specific Model

Platform Description

DICE MARTE

Deployment & Continuous Integration

DICE IDE QA

Models

Data Intensive Application

DICE RIA - Overview 15 ©DICE 09/15/2015

Page 16: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE RIA - Overview

Year 1 Milestones

16 ©DICE 09/15/2015

Milestone Deliverables

Baseline and Requirements - July 2015 [COMPLETED]

• State of the art analysis • Requirement specification • Dissemination, communication,

collaboration and standardisation report • Data management plan

Architecture Definition - January 2016

• Design and quality abstractions • DICE simulation tools • DICE verification tools • Monitoring and data warehousing tools • DICE delivery tools • Architecture definition and integration plan • Exploitation plan

Page 17: Towards Quality-Aware Development of Big Data Applications ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/sites/75/2018/01/ES… · Towards Quality-Aware Development of Big Data

DICE RIA - Overview

Thanks

www.dice-h2020.eu

17 ©DICE 09/15/2015