Software Architecture: Trends

16
Università degli Studi dell’Aquila 1 Software Architecture: trends Henry Muccini DISIM, University of L’Aquila [email protected] , @muccinihenry, www.henrymuccini.com @University of SPLIT, Croatia – May 2014

description

This presentation highlights some of the current trends in Software Architecture.

Transcript of Software Architecture: Trends

Page 1: Software Architecture: Trends

Università degli Studi dell’Aquila

1

Software Architecture: trends

Henry Muccini DISIM, University of L’Aquila

[email protected], @muccinihenry, www.henrymuccini.com

@University of SPLIT, Croatia – May 2014

Page 2: Software Architecture: Trends

Myself

Researcher at the University of L’Aquila, Italy

Ph.D. in Computer Science in year 2002 PostDoc at the University of California, Irvine Assistant Professor since 2002 at the University of

L’Aquila

Research Software Architecture

Software Testing, Verification and Validation Model Driven Engineering

Mobile Applications

2

Page 3: Software Architecture: Trends

My

Back

grou

ndResearch interests

on developing methods and tools for the analysis and design of software architectures

→Architecture-driven Model-based Testing, Model-checking, and V&V

→Models Interoperability in Software Architecture Descriptions

→Group Decision Making in Software Architecture→Multi-view Software Architecture Description

→Architecting Wireless Sensor Network→Engineering Mobile Applications

MDE

Page 4: Software Architecture: Trends

SOFTWARE ARCHITECTURE: BRIEF INTRODUCTION

4

Page 5: Software Architecture: Trends

Software Engineering

Engineered Software SystemSoftware System

Page 6: Software Architecture: Trends

Software Architecture definitions

Perry and Wolf, ’92 (aspects):→“Architecture is concerned with the selection of architectural elements, their interactions, and the constraints on those elements and their interactions necessary to provide a framework in which to satisfy the requirements and serve as a basis for the design.”

→Elements are divided into processing elements, data elements and connection elements

Garlan and Shaw, ’93 (elements):→ Architecture for a specific system may be captured as “a collection of computational components - or simply components - together with a description of the interactions between these components - the connectors –”

Page 7: Software Architecture: Trends

7

Let us reason about the Gaudi’s Sagrada Familia

Soft

war

e/Sy

stem

Arc

hite

ctur

e

Page 8: Software Architecture: Trends

STM-4/16

ADMADM

ADMADM

STM-1/4

ADMADM

ADMADM ADMADM

SXC4/1

SXC4/1

Urban Level

SXASXA

STM-1/4

ADMADM

ADMADM ADMADM

ADMADM

STM-4/16

ADMADM

ADMADM

Regional level

STM-1/4

ADMADM

ADMADM

ADMADM ADMADM

SXASXA

TELECOM ITALIA NETWORK ARCHITECTURE

WDM

STM-4/16

ADMADM

ADMADM

SXASXA

WLWL

STM-16 Ring

National Level

ADMADMADMADM

ADMADM

ADMADMADMADM

ADMADM

ADMADMADMADM

ADMADM WLWL ADMADMADMADM

ADMADM

ADMADMADMADM

ADMADM

ADMADMADMADM

ADMADM

STM-16 Ring

Exam

ple

Page 9: Software Architecture: Trends

Exam

ple:

Ecl

ipse

Arc

hite

ctur

e

Java Development

Tools

Plugin Development Environment

JFace

SWT

Workbench

WorkspaceRuntime

User Interface

Core

Page 10: Software Architecture: Trends

SOFTWARE ARCHITECTURE: TRENDS

10

Page 11: Software Architecture: Trends

Trend #1: research trends11

Architecture Description Languages

Design Decisions/ Architectural Knowledge

Multi-view descriptions

Page 12: Software Architecture: Trends

Trend #2: from pieces to sys of sys 12

Component-based Architectures

Service-Oriented Architectures

Product Line Architectures

Systems of Systems Architectures

Page 13: Software Architecture: Trends

Trend #3: from software to CPS13

Software Architecture

System Architecture

Cyber Physical Systems Architecture

Page 14: Software Architecture: Trends

Trend #4: Architecture Description14

Informal

Formal Architecture Description Languages

UML & UML Profiles

Informal but Formal

Page 15: Software Architecture: Trends

Trend #4: analysis15

Conformance & Model Checking

Testing

Extra Functional

Page 16: Software Architecture: Trends

16