dice: developing data-intensive cloud applications with...

18
DICE Horizon 2020 Project Grant Agreement no. 644869 http://www.dice-h2020.eu Funded by the Horizon 2020 Framework Programme of the European Union DICE: Developing Data-Intensive Cloud Applications with Iterative Quality Enhancements Daniel Pop Institute e-Austria Timisoara, Romania Project Coordinator: Giuliano Casale Imperial College London, UK

Upload: others

Post on 01-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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

Framework Programme of the European Union

DICE: Developing Data-Intensive Cloud Applications with Iterative Quality Enhancements

Daniel Pop Institute e-Austria Timisoara, Romania

Project Coordinator: Giuliano Casale

Imperial College London, UK

Page 2: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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

2 ©DICE 09/22/2015

Page 3: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

Overview and goals o MDE often features quality assurance (QA)

techniques for developers

o How should quality-aware MDE support data-intensive software systems? o Existing models and QA techniques largely ignore

properties of data o Characterize the behavior of new technologies

o DICE: a quality-aware MDE methodology inspired by

DevOps for data-intensive cloud applications

DICE RIA - Overview 3 ©DICE 09/22/2015

Page 4: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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

4 ©DICE 09/22/2015

Page 5: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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/22/2015

Page 6: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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/22/2015

Page 7: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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/22/2015

Agile Development DevOps

Business Dev Ops

Page 8: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

DICE RIA - Overview

Demonstrators

8 ©DICE 09/22/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: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

Bringing QA and DevOps together

©DICE 09/22/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/22/2015

Page 10: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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/22/2015

Page 11: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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/22/2015

Page 12: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

o Reliability

o Efficiency

o Safety & Privacy

Quality Dimensions

Availability Fault-tolerance

Performance Costs

Verification (e.g., deadlines) Data protection

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

Page 13: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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

Failure Probability

Usage Profile System

Behaviour

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

Quality-Aware MDE

Page 14: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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

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

Page 15: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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 15 ©DICE 09/22/2015

Page 16: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

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 16 ©DICE 09/22/2015

Page 17: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

DICE RIA - Overview

Year 1 Milestones

17 ©DICE 09/22/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 18: DICE: Developing Data-Intensive Cloud Applications with ...wp.doc.ic.ac.uk/dice-h2020/wp-content/uploads/...32% compound annual growth rate in EU through 2016 ... From agile development

DICE RIA - Overview

Thank you

www.dice-h2020.eu

18 ©DICE 09/22/2015