A Software Architecture Framework for Quality-Aware DevOps D. A. - - PowerPoint PPT Presentation

a software architecture
SMART_READER_LITE
LIVE PREVIEW

A Software Architecture Framework for Quality-Aware DevOps D. A. - - PowerPoint PPT Presentation

A Software Architecture Framework for Quality-Aware DevOps D. A. Tamburri , E. Di Nitto, M. Guerriero, P. Jamshidi, I. Spais DICE Horizon 2020 Research & Innovation Action Grant Agreement no. 644869 Funded by the Horizon 2020 Framework


slide-1
SLIDE 1

DICE Horizon 2020 Research & Innovation Action Grant Agreement no. 644869 http://www.dice-h2020.eu

Funded by the Horizon 2020 Framework Programme of the European Union

A Software Architecture Framework for Quality-Aware DevOps

  • D. A. Tamburri, E. Di Nitto, M. Guerriero,
  • P. Jamshidi, I. Spais
slide-2
SLIDE 2

What are we up to, today?

2

  • Architecture Frameworks, bits and pills
  • Quality-Aware DevOps Concerns
  • Quality-Aware DevOps Architecture Descriptions

& Requirements

  • What’s missing from the state of the art
  • Our research solution, SQUID!
  • SQUID implementation and usage in Data-Intensive

Architectures (DIA)

slide-3
SLIDE 3

Architecture Frameworks, bits and pills

  • The ISO/IEC/IEEE 42010 Conceptual Model of

Architecture Description[1] defines the term architecture framework as: “a (set of) common practice(s) for creating, interpreting, analyzing and using architecture descriptions within a particular domain of application or stakeholder community”

3

slide-4
SLIDE 4

Architecture Frameworks, bits and pills

  • The ISO/IEC/IEEE 42010 Conceptual Model of

Architecture Description[1] defines the term architecture framework as: “a (set of) common practice(s) for creating, interpreting, analyzing and using architecture descriptions within a particular domain of application or stakeholder community”

4

slide-5
SLIDE 5

Architecture Frameworks, in DevOps!

  • The ISO/IEC/IEEE 42010 Conceptual Model of

Architecture Description[1] defines the term architecture framework as: “a (set of) common practice(s)* for creating, interpreting, analyzing and using architecture* descriptions* within a particular domain of application* or stakeholder community”

5

* Continuously!

slide-6
SLIDE 6

Architecture Frameworks, in DevOps!

  • The ISO/IEC/IEEE 42010 Conceptual Model of

Architecture Description[1] defines the term architecture framework as: “a (set of) common practice(s)* for creating, interpreting, analyzing and using architecture* descriptions* within a particular domain of application* or stakeholder community”

6

* Continuously**! ** With Quality!

slide-7
SLIDE 7
  • Concerns
  • Automation
  • Heterogeneous maturity

(systems & orgs.)

  • End-to-end Architecting
  • QoS-, Business- and

Technical-driven Continuous Architecting

  • Practices
  • Trial-and-error!

7

Quality-Aware DevOps Concerns*

* 30+ Interviews and 7 Focus-Groups with industrial partners in the EU H2020 DICE and other industrials

slide-8
SLIDE 8

1. Fine-grained architecture descriptions specific to DevOps frameworks and middleware; 1. Architecture blueprints with infrastructure, platform and application topology specs; 2. Model-based synch of all

  • f the above;

8

Quality-Aware DevOps Architecture Descriptions: Requirements!

slide-9
SLIDE 9
  • Comparative evaluation of previous well-

known/established arch. Frameworks:

  • MODAF
  • RM-ODP
  • DODAF
  • TOGAF
  • 4+1-Views

9

Systematic mapping of previous architecture frameworks[2]

Quality-Aware DevOps Architecture Descriptions *

slide-10
SLIDE 10
  • Comparative evaluation of previous well-

known/established arch. Frameworks:

  • MODAF
  • RM-ODP
  • DODAF
  • TOGAF
  • 4+1-Views

10

Systematic mapping of previous architecture frameworks[2]

Quality-Aware DevOps Architecture Descriptions *

slide-11
SLIDE 11

11

The 4+1 Views[3] model offers a basis consistent with the identified stakeholders and concerns for quality-aware DevOps…

Quality-Aware DevOps Architecture Descriptions

slide-12
SLIDE 12

12

The 4+1 Views[3] model offers a basis consistent with the identified stakeholders and concerns for quality-aware DevOps…

RQ1: Fine-grained architecture descriptions

Quality-Aware DevOps Architecture Descriptions

slide-13
SLIDE 13

13

The 4+1 Views[3] model offers a basis consistent with the identified stakeholders and concerns for quality-aware DevOps…

RQ1: Infrastructure, platform & app topology specs

Quality-Aware DevOps Architecture Descriptions

slide-14
SLIDE 14

14

The 4+1 Views[3] model offers a basis consistent with the identified stakeholders and concerns for quality-aware DevOps…

RQ1: Model-based synching of arch. views

Quality-Aware DevOps Architecture Descriptions

slide-15
SLIDE 15

Quality-Aware DevOps Architecture Descriptions But…

15 <…moment of suspense…>

slide-16
SLIDE 16

Something is missing, for example…

  • 1. The Logical architecture view needs synch with quality properties

verification views

16 Quality Properties View Privacy Safety …

slide-17
SLIDE 17
  • 2. The Dev- architecture view needs synch with the -Ops view (i.e.,

special Physical view)

17 Operations

Something is missing, for example*…

* More on the paper

slide-18
SLIDE 18
  • 18 -

Summing it all up: SQUID Views and Transformations

slide-19
SLIDE 19

Summing it all up: SQUID Views and Transformations

  • 19 -

Dev Area Views (Development structure, business logic, quality verification) Ops Area Views (Deployment, process, monitoring)

slide-20
SLIDE 20

SQUID continuous architecting in action

  • 1. Specify Architecture components and restrictions… UML

profile!

  • 20 -
slide-21
SLIDE 21
  • 2. Transform architecture elements in techs. Using

ad-hoc tech-packs

  • 21 -

SQUID continuous architecting in action

slide-22
SLIDE 22
  • 3. Verify quality properties by means of ad-hoc

annotations and tools

  • 22 -

SQUID continuous architecting in action

slide-23
SLIDE 23
  • 4. Deploy improved architecture
  • 23 -

SQUID continuous architecting in action

slide-24
SLIDE 24
  • 5. Monitor and continuously enhance/architect/(re-)deploy
  • 24 -

SQUID continuous architecting in action

slide-25
SLIDE 25

For example*…

25 Featuring the DICE H2020 EU Project

slide-26
SLIDE 26

In conclusion… Take-home messages!

  • MDE and DevOps are made for each other
  • SQUID offers a complete approach for Quality-Aware

MDE-based continuous architecting (e.g., of DIAs)

  • Heavy use of M2M and M2T transformations
  • Needs in DevOps rotate around multi-view and

continuous-architecting

  • Speedy modeling, synch and (re-)deployment are

critical

  • 26 -
slide-27
SLIDE 27

Bibliography

  • [1] Group, I. A. W. (2000), 'IEEE Std 1471-2000, Recommended

practice for architectural description of software-intensive systems' , Technical report, IEEE , IEEE , i--23 .

  • [2]http://www.iso-architecture.org/42010/afs/frameworks-

table.html

  • [3] Kruchten, P. (1995), 'Architectural Blueprints: The "4+1" View

Model of Software Architecture', IEEE Software 12 (6), 42-50.

27