The keynote lecture video is now available at http://www.icsoft.org/KeynoteSpeakers.aspx?y=2016
This presentation covers the main topics discussed by the software architecture conferences in the past 15+ years. It provides a systematic, unbiased view on research trends with reflections on the future challenges.
This speech has been provided as a keynote at ICSOFT 2016.
Exploring the Temporal Aspects of Software Architecture
1. Università degli Studi dell’Aquila
ExploringExploringExploringExploring the Temporalthe Temporalthe Temporalthe Temporal AspectsAspectsAspectsAspects
of Software Architectureof Software Architectureof Software Architectureof Software Architecture
Henry MucciniHenry MucciniHenry MucciniHenry Muccini
DISIM,DISIM,DISIM,DISIM, UniversityUniversityUniversityUniversity of L’Aquila,of L’Aquila,of L’Aquila,of L’Aquila, ItalyItalyItalyItaly
henry.muccini@univaq.ithenry.muccini@univaq.ithenry.muccini@univaq.ithenry.muccini@univaq.it, @, @, @, @muccinihenrymuccinihenrymuccinihenrymuccinihenry, www.henrymuccini.com, www.henrymuccini.com, www.henrymuccini.com, www.henrymuccini.com
Keynote at ICSOFT 2016
Slides available at:
http://www.slideshare.net/henry.muccini/
2. Henry Muccini @ www.slideshare.net/henry.muccini/
Exploring the TemporalExploring the TemporalExploring the TemporalExploring the Temporal
Aspects ofAspects ofAspects ofAspects of SoftwareSoftwareSoftwareSoftware
ArchitectureArchitectureArchitectureArchitecture
3
6. Henry Muccini @ www.slideshare.net/henry.muccini/
Exploring theExploring theExploring theExploring the TemporalTemporalTemporalTemporal
AspectsAspectsAspectsAspects of Softwareof Softwareof Softwareof Software
ArchitectureArchitectureArchitectureArchitecture
7
7. Henry Muccini @ www.slideshare.net/henry.muccini/
8 For WICSA 2016 the
theme
was “Architecting in
time” – exploring the
temporal aspects of
software architecture.
continuity, evolution and
decay,
the benefits, consequences
and debt from delaying
decisions,
architecting practices and
experiences in different
software development
processes, or the related
collaborative design activities
that fit into the life cycles of
systems and applications.
9. Henry Muccini @ www.slideshare.net/henry.muccini/
The softwareThe softwareThe softwareThe software architecturearchitecturearchitecturearchitecture fieldfieldfieldfield
evolutionevolutionevolutionevolution over timeover timeover timeover time
TemporalTemporalTemporalTemporal aspectsaspectsaspectsaspects in softwarein softwarein softwarein software architecturearchitecturearchitecturearchitecture
designdesigndesigndesign
10
1992 today
1
2
Architecting
Requirements Architecture Code Operation
This talk
10. Henry Muccini @ www.slideshare.net/henry.muccini/
11
? How the Software
Architecture field evolvedevolvedevolvedevolved
over timeover timeover timeover time?
1
1992 today
13. Henry Muccini @ www.slideshare.net/henry.muccini/
14
The historyhistoryhistoryhistory
artifactsartifactsartifactsartifacts andandandand worksworksworksworks
(decorations, wigs,
scents) talk about
the culture of that
time.
They are not only
historical relic, but
they speak about
that time
Val Parks: https://www.youtube.com/watch?v=LMJh1WTkxws
14. Henry Muccini @ www.slideshare.net/henry.muccini/
15
? How the Software Architecture
field evolved over time?
topic
topic
topic
topic
1992 today
15. Henry Muccini @ www.slideshare.net/henry.muccini/
16
The study (specifically)
conducted for this
speech
16. Henry Muccini @ www.slideshare.net/henry.muccini/
MixedMixedMixedMixed methodmethodmethodmethod used for this study:
1. Topics extraction:
Personal knowledge + Seminal papers
2. Data mining
From the WICSA, CBSE, ECSA, and QoSA
conferences
From 1999 to 2016
3. Reasoning on the results
17
1
2
3
17. Henry Muccini @ www.slideshare.net/henry.muccini/
Mixed method used for this study:
1.1.1.1. TopicsTopicsTopicsTopics extractionextractionextractionextraction::::
PersonalPersonalPersonalPersonal knowledgeknowledgeknowledgeknowledge ++++ SeminalSeminalSeminalSeminal paperspaperspaperspapers
2. Data mining
From the CBSE, WICSA, ECSA, and QoSA
conferences
From 1999 to 2016
3. Reasoning on the results
18
1
2
3
18. Henry Muccini @ www.slideshare.net/henry.muccini/
20202020 yearsyearsyearsyears ofofofof experienceexperienceexperienceexperience
in thein thein thein the fieldfieldfieldfield
_______________________
WICSA 2016 PC co-chair
ICSA steering committee
member
PC of WICSA, CBSE,
ECSA (ICSE, FSE, ASE)
Member of the IFIP WG
2.10 on Software
Architecture
19
Design
Decisions
Assessment
SA Description
SPL
architectures
Agile
DevOps
ADLs
CPS
1
Style
Views
…
23. Henry Muccini @ www.slideshare.net/henry.muccini/
24
Mixed method used for this study:
1. Topics extraction:
Personal knowledge + Seminal papers
2. Data mining
From the CBSE, WICSA, ECSA, and QoSA
conferences
From 1999 to 2016
3. Reasoning on the results
1
2
3
24. Henry Muccini @ www.slideshare.net/henry.muccini/
25
1999 2001 2002 2004 2005 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016
WICSA’99
San Antonio
WICSA’01
Amsterdam
WICSA’02
Montreal
WICSA’04
Oslo
WICSA’05
Pittsburgh
WICSA’08
Vancouver
WICSA&
CompArch
Boulder
WICSA’07
Mumbai
WICSA&ECSA’09
Cambridge
WICSA&ECSA’12
Helsinki
WICSA’14
Sydney
WICSA&
CompArch’15
Montreal
CompArch’07
Medford
CompArch’08
Karlsruhe
CompArch’09
E. Stroudsburg
CompArch’10
Prague
CompArch’12
Bertinoro
CompArch’13
British Columbia
CompArch’14
Lille
WICSA&
CompArch’16
Venice
CBSE 2003-2016
2
ECSA’07
ECSA’08
ECSA’10
ECSA’11
ECSA’13
ECSA’14
ECSA’15
25. Henry Muccini @ www.slideshare.net/henry.muccini/
What: 4 conferences, 42 editions, 1999-2016,
811811811811 articlesarticlesarticlesarticles analysed
How: topicstopicstopicstopics searchsearchsearchsearch
• Search of topics and synonyms in
• TitleTitleTitleTitle
• KeywordKeywordKeywordKeyword
• AbstractAbstractAbstractAbstract
26
2
27. Henry Muccini @ www.slideshare.net/henry.muccini/
SUM
28
Max
(1*0,8);(1*0,5)
Max
(0*0,8);(0*0,5)
If Title contains the keyword,
paper highly ranked with
respect to the keyword
If Keyword/abstract contains
the keyword, …
If synonym contains the
keyword, …
28. Henry Muccini @ www.slideshare.net/henry.muccini/
This approximation formula has been tested
on:
• 50 papers
• Two topics:
• Ecosystems
• Design Decisions
29
29. Henry Muccini @ www.slideshare.net/henry.muccini/
The results presented here are
preliminary and partial, with respect to
the…
30
25 Years of Software Architecture:
impact on the Software discipline
31. Henry Muccini @ www.slideshare.net/henry.muccini/
32
Mixed method used for this study:
1. Topics extraction:
Personal knowledge + Seminal papers
2. Data mining
From the CBSE, WICSA, ECSA, and QoSA
conferences
From 1999 to 2016
3.3.3.3. Reasoning on the resultsReasoning on the resultsReasoning on the resultsReasoning on the results
1
2
3
33. Henry Muccini @ www.slideshare.net/henry.muccini/
Topics Granularity (look at the trend!)
«Only» four (domain-specific) conferences
2016 is incomplete! (ECSA 2016 missing)
34
35. Henry Muccini @ www.slideshare.net/henry.muccini/
36
17 18
11
17
44
49
34
52
71
52
42
88
49
56
76
60
74
0
10
20
30
40
50
60
70
80
90
100
YEAR
1999
YEAR
2001
YEAR
2002
YEAR
2003
YEAR
2004
YEAR
2005
YEAR
2006
YEAR
2007
YEAR
2008
YEAR
2009
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
Publications (WICSA/CBSE/QoSA/ECSA) 1999-2016*
36. Henry Muccini @ www.slideshare.net/henry.muccini/
37
Risks
Design
Decisions
Assessment
Product Line
Architecture
Analysis
Quality
Architecture
Description
Languages
Style
Views
40. Henry Muccini @ www.slideshare.net/henry.muccini/
41
0%
10%
20%
30%
40%
50%
60%
YEAR
1999
YEAR
2001
YEAR
2002
YEAR
2003
YEAR
2004
YEAR
2005
YEAR
2006
YEAR
2007
YEAR
2008
YEAR
2009
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
% of Top5 topics (over the total papers)
46. Henry Muccini @ www.slideshare.net/henry.muccini/
• AgileAgileAgileAgile [0% -> 3%] {emerging since 2009}
• DevOpsDevOpsDevOpsDevOps [0,5% -2%] {emerging since 2011}
• TechTechTechTech DebtDebtDebtDebt [0% - 2%] {emerging since 2012}
• CPSCPSCPSCPS [0% - 2%] {emerging since 2012} (pick 4% in 2016)
• EcosystemsEcosystemsEcosystemsEcosystems [0% -2%] {emerging since 2012} (pick 5% in
2016)
• RiskRiskRiskRisk [0% -> 3%] (non null since 2005)
47
47. Henry Muccini @ www.slideshare.net/henry.muccini/
48
8% 9% 8%
5%
8% 8%
6%
0%
2%
4%
6%
8%
10%
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
Style: % of papers 2010-2016
2%
11%
8% 7%
5%
16%
7%
0%
5%
10%
15%
20%
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
View: % of papers 2010-2016
19%
28% 30%
23% 25% 27% 26%
0%
5%
10%
15%
20%
25%
30%
35%
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
Analysis: % of papers 2010-2016
19% 18% 17%
22%
19%
22%
12%
0%
5%
10%
15%
20%
25%
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
Design Decisions: % of papers 2010-2016
13%
18%
17%
12% 12%
18%
11%
0%
2%
4%
6%
8%
10%
12%
14%
16%
18%
20%
YEAR 2010 YEAR 2011 YEAR 2012 YEAR 2013 YEAR 2014 YEAR 2015 YEAR 2016
Quality: % of papers 2010-2016
48. Henry Muccini @ www.slideshare.net/henry.muccini/
49
1%
4%
0%
1%
2%
4%
3%
0%
1%
1%
2%
2%
3%
3%
4%
4%
5%
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
Agility: % of papers 2010-2016
0% 0%
2% 2%
1%
4%
2%
0%
1%
1%
2%
2%
3%
3%
4%
4%
5%
5%
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
Technical Debt: % of papers 2010-2016
0% 0%
2%
0%
1%
2%
4%
-1%
0%
1%
2%
3%
4%
5%
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
CPS: % of papers 2010-2016
0% 0%
2%
1% 1%
2%
5%
-1%
0%
1%
2%
3%
4%
5%
6%
YEAR 2010 YEAR 2011 YEAR 2012 YEAR 2013 YEAR 2014 YEAR 2015 YEAR 2016
EcoSys: % of papers 2010-2016
50. Henry Muccini @ www.slideshare.net/henry.muccini/
52
? How the Software Architecture
field evolvedevolvedevolvedevolved over timeover timeover timeover time?
REFLECTIONSREFLECTIONSREFLECTIONSREFLECTIONS
lookinglookinglookinglooking atatatat thethethethe nearnearnearnear future from thefuture from thefuture from thefuture from the pastpastpastpast
1
1992 today
51. Henry Muccini @ www.slideshare.net/henry.muccini/
application domains: CPS, IoT, Smart mobile
systems
type of (concern): Self-Adaptive, autonomous,
dynamic, uncertain
process: DevOps & Agile
style: micro services
analysis: security, resilience
description: collaborative, MDE, decisions
53
52. Henry Muccini @ www.slideshare.net/henry.muccini/
MultiMultiMultiMulti----ViewViewViewView boom: trends andboom: trends andboom: trends andboom: trends and issuesissuesissuesissues
Practitioners’ need for SAPractitioners’ need for SAPractitioners’ need for SAPractitioners’ need for SA----based Analysisbased Analysisbased Analysisbased Analysis
It is time to «collaborate»!It is time to «collaborate»!It is time to «collaborate»!It is time to «collaborate»!
CPS, IoT, Smart Systems: again from SoftwareCPS, IoT, Smart Systems: again from SoftwareCPS, IoT, Smart Systems: again from SoftwareCPS, IoT, Smart Systems: again from Software
to Systemto Systemto Systemto System
From dependable to resilient systems in the eraFrom dependable to resilient systems in the eraFrom dependable to resilient systems in the eraFrom dependable to resilient systems in the era
of selfof selfof selfof self----Adaptive and Autonomous architecturesAdaptive and Autonomous architecturesAdaptive and Autonomous architecturesAdaptive and Autonomous architectures
54
53. Henry Muccini @ www.slideshare.net/henry.muccini/
An industrialAn industrialAn industrialAn industrial practicepracticepracticepractice,,,, beingbeingbeingbeing
consolidatedconsolidatedconsolidatedconsolidated over 15over 15over 15over 15 yearsyearsyearsyears!!!!
ButButButBut stillstillstillstill…………
55
MultiMultiMultiMulti----ViewViewViewView Boom!Boom!Boom!Boom!
0%
10%
20%
YEAR
1999
YEAR
2001
YEAR
2002
YEAR
2003
YEAR
2004
YEAR
2005
YEAR
2006
YEAR
2007
YEAR
2008
YEAR
2009
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
6% 7% 12%
6% 10%
6%
1% 7% 10% 11%
2%
11%
8% 7%
5%
16%
7%
View: % of papers
54. Henry Muccini @ www.slideshare.net/henry.muccini/
56
IEEE Std 1471 (2000) ->
ISO/IEC/IEEE 42010:2011
Using multiple views has
become standard practice in
industry!! [TSE2013]
85% uses multiple views
0
5
10
15
20
25
30
35
40
45
Type of viewsType of viewsType of viewsType of views
Multi-view
consistency:
missing feature
55. Henry Muccini @ www.slideshare.net/henry.muccini/
AnalysisAnalysisAnalysisAnalysis isisisis a biga biga biga big needneedneedneed… and… and… and… and
practicedpracticedpracticedpracticed………… butbutbutbut practitionerspractitionerspractitionerspractitioners areareareare
quitequitequitequite unhappyunhappyunhappyunhappy!!!!
57
PractitionersPractitionersPractitionersPractitioners’’’’ needneedneedneed forforforfor SASASASA----basedbasedbasedbased AnalysisAnalysisAnalysisAnalysis
0%
20%
40%
YEAR
1999
YEAR
2001
YEAR
2002
YEAR
2003
YEAR
2004
YEAR
2005
YEAR
2006
YEAR
2007
YEAR
2008
YEAR
2009
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
24%
9% 18% 14% 18% 28% 28%
19% 27%
17% 19% 28% 30%
23% 25% 27% 26%
Analysis: % of papers
56. Henry Muccini @ www.slideshare.net/henry.muccini/
58
-1
+1
-1
+1
0
5
10
15
20
25
Architectural Languages: Type of
needs
63%
37%
10%
Need for analysis
yes no blank
48%
4%8%
24%
12%
Kind of analyzed properties
Extra-functional
properties
Functional properties
HW/SW integration
Behavior
No info
35%
20%
45%
Level of satisfaction
Satisfied
Neutral
Not satisfied
Dissatisfaction
with ALs
57. Henry Muccini @ www.slideshare.net/henry.muccini/
ArchitectingArchitectingArchitectingArchitecting = Group= Group= Group= Group DecisionDecisionDecisionDecision
MakingMakingMakingMaking and Collaborativeand Collaborativeand Collaborativeand Collaborative
ArchitecturalArchitecturalArchitecturalArchitectural DesignDesignDesignDesign
59
ItItItIt isisisis time to «time to «time to «time to «ccccollaborate»!ollaborate»!ollaborate»!ollaborate»!
Serie1
0%
10%
20%
YEAR
1999
YEAR
2001
YEAR
2002
YEAR
2003
YEAR
2004
YEAR
2005
YEAR
2006
YEAR
2007
YEAR
2008
YEAR
2009
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
15%18%17%
4% 7% 6% 4% 5% 3% 5% 7% 5% 11%
6% 8%
5% 5%
Architecture Description: % of papers
58. Henry Muccini @ www.slideshare.net/henry.muccini/
60
Data
View
oth
er
mo
dels
Hardwar
e View
Software
Architect
ure
Descripti
on
Busin
ess
View
Structure
View
oth
er
mo
dels
oth
er
vie
ws
5555----10101010 peoplepeoplepeoplepeople involvedinvolvedinvolvedinvolved inininin
decisiondecisiondecisiondecision makingmakingmakingmaking
21 different macro-
roles represented
[WICSA2014]
NeedNeedNeedNeed::::
Collaborative (group)
decision making
Collaborative Design
59. Henry Muccini @ www.slideshare.net/henry.muccini/
New views, new challenges
61
CPS,CPS,CPS,CPS, IoTIoTIoTIoT, Smart Systems:, Smart Systems:, Smart Systems:, Smart Systems:
FromFromFromFrom Software toSoftware toSoftware toSoftware to System ArchitectureSystem ArchitectureSystem ArchitectureSystem Architecture
Serie1
0%
2%
4%
6%
YEAR
1999
YEAR
2001
YEAR
2002
YEAR
2003
YEAR
2004
YEAR
2005
YEAR
2006
YEAR
2007
YEAR
2008
YEAR
2009
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
0% 0% 0% 0% 0% 0% 1%
0% 1% 0% 0% 0% 2%
0% 1% 2% 4%
CPS: % of papers
60. Henry Muccini @ www.slideshare.net/henry.muccini/
62
4
9
13
14
20
23
24
26
44
51
52
0 10 20 30 40 50 60
TESTABILITY
SECURITY
MAINTAINABI…
FLEXIBILITY
RELIABILITY
DEPENDABILITY
COMPATIBILITY
MODIFIABILITY
PORTABILITY
SURVIVABILITY
PERFORMANCE
[SANCS2015]
NeedNeedNeedNeed::::
Sensors and Actuators
New Modelling Languages
Control theory
Physical components
61. Henry Muccini @ www.slideshare.net/henry.muccini/
63
From dependable to resilient systems inFrom dependable to resilient systems inFrom dependable to resilient systems inFrom dependable to resilient systems in
the era of selfthe era of selfthe era of selfthe era of self----Adaptive and AutonomousAdaptive and AutonomousAdaptive and AutonomousAdaptive and Autonomous
architecturesarchitecturesarchitecturesarchitectures
Serie1
0%
10%
20%
YEAR
1999
YEAR
2001
YEAR
2002
YEAR
2003
YEAR
2004
YEAR
2005
YEAR
2006
YEAR
2007
YEAR
2008
YEAR
2009
YEAR
2010
YEAR
2011
YEAR
2012
YEAR
2013
YEAR
2014
YEAR
2015
YEAR
2016
9%
7%
16%
9% 11%
4% 6% 11%
6% 8%
18%
5%
15%
10% 12% 13%
10%
Adaptive: % of papers
SelfSelfSelfSelf----AdaptiveAdaptiveAdaptiveAdaptive applicationsapplicationsapplicationsapplications shallshallshallshall selfselfselfself----
fixfixfixfix themselvesthemselvesthemselvesthemselves????
63. Henry Muccini @ www.slideshare.net/henry.muccini/
65
www.henrymuccini.com
http://mobilesoftconf.org/2017/
www.softwarearchitecture.org
64. Henry Muccini @ www.slideshare.net/henry.muccini/
[WICSA2014] V. Smrithi Rekha, Henry Muccini:
A Study on Group DecisionA Study on Group DecisionA Study on Group DecisionA Study on Group Decision----Making in SoftwareMaking in SoftwareMaking in SoftwareMaking in Software
Architecture.Architecture.Architecture.Architecture. WICSA 2014: 185-194
[TSE2013] Ivano Malavolta, Patricia Lago, Henry
Muccini, Patrizio Pelliccione, Antony Tang: What
Industry Needs from Architectural Languages: A Survey.
IEEE Trans. Software Eng. 39(6): 869-891 (2013)
[SANC2015] Ivano Malavolta, Henry Muccini,
Mohammad Sharaf: A Preliminary Study on Architecting
Cyber-Physical Systems. ECSA Workshops 2015: 20:1-
20:6
66
65. Università degli Studi dell’Aquila
ExploringExploringExploringExploring the Temporalthe Temporalthe Temporalthe Temporal AspectsAspectsAspectsAspects
of Software Architectureof Software Architectureof Software Architectureof Software Architecture
Henry MucciniHenry MucciniHenry MucciniHenry Muccini
DISIM,DISIM,DISIM,DISIM, UniversityUniversityUniversityUniversity of L’Aquila,of L’Aquila,of L’Aquila,of L’Aquila, ItalyItalyItalyItaly
henry.muccini@univaq.ithenry.muccini@univaq.ithenry.muccini@univaq.ithenry.muccini@univaq.it, @, @, @, @muccinihenrymuccinihenrymuccinihenrymuccinihenry, www.henrymuccini.com, www.henrymuccini.com, www.henrymuccini.com, www.henrymuccini.com
Keynote at ICSOFT 2016
Slides available at:
http://www.slideshare.net/henry.muccini/