<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Architectures of Smart Ecosystems: Theory and Practice</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Valdemar Vicente Graciano Neto</string-name>
          <email>valdemarneto@ufg.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wallace Manzano</string-name>
          <email>wallace.manzano@usp.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pablo Oliveira Antonino</string-name>
          <email>pablo.antonino@iese.fraunhofer.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Elisa Yumi Nakagawa</string-name>
          <email>elisa@icmc.usp.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CEUR Workshop Proceedings</institution>
          ,
          <addr-line>CEUR-WS.org</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Federal University of Goiás</institution>
          ,
          <country country="BR">Brazil</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Fraunhofer IESE</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>University of São Paulo</institution>
          ,
          <country country="BR">Brazil</country>
        </aff>
        <aff id="aff4">
          <label>4</label>
          <institution>Workshop Proce dings</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <abstract>
        <p>Smart ecosystems combine various heterogeneous and independent software-intensive systems to enable complex functionalities for highly dynamic smart applications, such as Industry 4.0, smart cities, transportation, automotive, and many other critical domains. Due to their complex nature, such ecosystems, which are often referred as to Systems-of-Systems (SoS), should be completely reliable and work without interruption or failures that could cause serious losses and damages. During the smart-ecosystem architectural design, the impact of eventual failures or architectural changes should then be predicted to avoid potential losses or damages. This tutorial presents a simulation-based approach to support the prediction, at design time, of the structure and behavior of smart-ecosystem architectures (which are inherently dynamic at runtime), aiming to evaluate whether the smart ecosystems can sustain their operation. To do that, we present the foundations and concepts associated with smart ecosystems/SoS and simulation, as well as the results of our multiple studies. We also ofer hands-on experience in the simulation of software architectures, using artifacts associated with a pre-specified smart-ecosystem architecture and a free commercial simulator. We share with the European Conference on Software Architecture (ECSA 2021) audience the theoretical knowledge and practical experience that could leverage the adoption of simulation approaches during the development of software-intensive systems, in particular, those so complex and dynamic as smart ecosystems.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Software has been increasingly embedded into several
types of systems, making them smarter and
softwareintensive, i.e., software has crosscut the entire system
development life cycle. Such software-intensive and
indenication technologies, raising alliances of highly
interoperable constituent systems and forming what is known as
4]. Smart ecosystems combine heterogeneous and
independent constituent systems to ofer complex
functionaltems have a considerably dynamic software architecture,
i.e., the architecture has its structure changing over time
due to constituents that join and leave the ecosystems or
nEvelop-O
CEUR
htp:/ceur-ws.org
ISN1613-073</p>
      <sec id="sec-1-1">
        <title>1For sake of simplicity, smart ecosystems and SoS are used</title>
        <p>interchangeably in the context of this text.
are replaced or reorganized at runtime. Due to the critical
nature of the domains supported by them, smart
ecosystems should be reliable and work without interruption
or failures that could cause serious losses or damages.</p>
      </sec>
      <sec id="sec-1-2">
        <title>However, given the dynamic nature of smart-ecosystem architectures, assuring the feasibility of each architecat runtime requires a prior analysis, still at design time, to assure that both the smart-ecosystem structure and</title>
        <p>Over the past years, diferent initiatives have been
proposed to assure the quality of the software
architecof our research projects, we have explored the adoption
of simulation and observed its capability to address the
prediction of the structure and behavior of such
architectures at runtime [10, 11, 12, 13, 14]. In particular, we can
mention ASAS [11] and Dynamic-SoS [13]. The former
comprises a simulation-based process-oriented approach
for evaluating smart-ecosystem coalitions (i.e., each
different architectural arrangements that a smart ecosystem
can present at runtime), whereas the latter is a method
for evaluating smart-ecosystem dynamic architectures,
benchmarking them still at design time to predict the
architecture properties.</p>
      </sec>
      <sec id="sec-1-3">
        <title>Motivated by the results achieved in our research in</title>
        <p>volving smart ecosystems/SoS and simulation, this
tutorial provides for the ECSA attendees the theoretical
foundations and hands-on experience on using simulation
models to evaluate, still at design time, the structure and
behaviors of smart-ecosystem architectures at runtime.
More specifically, we provide (i) theoretical foundation on
smart ecosystems/SoS, dynamic software architectures,
and simulation; (ii) hands-on experience with a free and
well-known commercial simulator (MS4Me2) in which
participants have the opportunity to run simulation
models using a pre-conceived software architecture specified
in a simulation formalism (i.e., DEVS [15]).</p>
        <p>The remainder of this text is structured as follows:
Section 2 covers the tutorial learning aspects, Section 3
provides the technical aspects, and Section 4 introduces
the presenters’ background.</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>2. Tutorial Learning Aspects</title>
      <sec id="sec-2-1">
        <title>This section provides the tutorial structure, the topics covered, learning objectives, key takeaways for the audience, and the relevance of the theme addressed in this tutorial for ECSA.</title>
        <sec id="sec-2-1-1">
          <title>2.1. Tutorial structure</title>
        </sec>
      </sec>
      <sec id="sec-2-2">
        <title>This tutorial is organized in two phases: instructional</title>
        <p>phase and practical phase. The first phase refers to an
explanatory presentation on: (i) Fundamentals on smart
ecosystems, smart-ecosystem architectures, and
DynamicASAS; and (ii) DEVS basics. The practical phase addresses
a supervised MS4Me installation in the attendees’
machines and a hands-on experience applying what was
presented in the previous phase, as follows:
• Step 1. Design of the Architecture: Architects
design the smart-ecosystem architecture from the
specifications of the requirements and missions, which were
established in the early phases of the engineering life
cycle. During the tutorial: Considering the time
constraints of this tutorial, we provide the artifacts of
a pre-conceived architecture and explain and discuss
the structure of this small-scale smart ecosystem.
• Step 2. Evaluation Planning: An evaluation plan
prepared in this step is composed of one or more
smartecosystem missions to be observed, a set of diferent
coalitions to be analyzed, and a set of metrics related
to a given quality attribute to be measured. We
provide and discuss an evaluation plan with parameters
to be measured during the simulation. These
parameters include: (i) variables (metrics) to support the
measurement during the simulation execution; and (ii)
behaviors to be observed that are often defined at the
requirements level as a set of missions to be evaluated
through behaviors that emerge during the simulations.
During the tutorial: We provide an artifact for the
attendees with a pre-established evaluation plan,
followed by an explanation and a discussion. The
evaluation plan is composed of, for instance, a set of three
missions of a smart ecosystem and a set of metrics
associated with quality attributes such as functional
suitability. An example of metrics is Functional
Completeness (FCom), i.e., the degree to which the set of
functions covers all specified tasks and user objectives.
Considering the set of the three pre-established
missions, the simulation verifies how many of them are
efectively achieved [ 14].
• Step 3. Specification of DEVS Simulation Models :
DEVS simulation models are built in conformance to
the architectural design. During the tutorial: We
provide a set of pre-built simulation artifacts such as
the Dynamic Reconfiguration Controller (which is a
mechanism to manage the SoS reconfigurations to
exercise the multiple coalitions that a SoS can assume). We
also provide the specification in DEVS of the
smartecosystem architecture, followed by an explanation
and discussion.
• Step 4. Environment Installation and Simulation
Deployment: This step involves the management of
the artifacts obtained in Step 3 and their deployment
into MS4Me. During the tutorial: We supervise the
attendees with the tool installation in their machines.
Following, we present the way to accordingly deploy
the DEVS models into MS4Me and support them.
• Step 5. Simulation Execution and Architectural
Analysis: This step consists in the launching of the
simulation in MS4Me, monitoring it through
observation, possibly interacting with the simulation, and
exercising multiple architectural configurations. Data
and execution traces are logged during this process for
further examination. During the tutorial: We
stimulate attendees to run the simulations over MS4Me
and accordingly evaluate the SoS architecture being
simulated.
• Step 6. Analysis Execution: This step performs an
inspection of the execution traces in log files.
Conclusions are obtained according to the pre-established set
of missions, the manifested behaviors of the simulation
model, and corresponding metrics. During the
tutorial: We provide for the attendees a guided tour on
the analysis of the execution logs so that conclusions
can be drawn on the properties analyzed regarding the
SoS architecture being simulated.</p>
        <sec id="sec-2-2-1">
          <title>2.2. Covered topics</title>
          <p>The main topics covered in this tutorial are smart
ecosystems, smart-ecosystem software architectures, and
simulation. Smart ecosystem is the main topic and refers to
an emerging topic in the software architecture research;
so, they are presented herein under theoretical and
applied perspectives. Smart-ecosystem software
architectures have been mentioned in several studies over
the past years [5, 8, 9], demonstrating the importance
of this topic. We address it in this tutorial compilating
the theoretical basis accumulated by our group and
presenting a practical analysis of such architectures using
simulation. Simulation is broadly recognized as one of
the main techniques to evaluate software architectures
[16]. Herein, we adopt DEVS simulation formalism for
evaluating multiple smart-ecosystem coalitions.</p>
        </sec>
        <sec id="sec-2-2-2">
          <title>2.3. Learning objectives</title>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>This tutorial provides practical experience in evaluating</title>
        <p>smart-ecosystem architectures. We rely on MS4Me and
DEVS language, one of the main simulation formalisms
used in software engineering empirical studies and a
language prepared to simulate SoS architectures [15].
This tutorial copes with the following learning objectives:
• Knowledge of fundamentals of smart-ecosystem
architectures: Before ofering a practical experience
for the attendees, we aim to consolidate a consensual
understanding of what we consider (in the context of
this tutorial) as smart ecosystems, their dynamic
architectures, and simulation. Hence, we discuss the nature
of smart ecosystems besides the reconfigurations that
can take place over their architecture at runtime;
highly dynamic; (ii) The structure and behaviors of smart
ecosystems must be planned and assessed at design time;
and (iii) A simulation-based approach can evaluate
smartecosystem architectures and predict their properties.</p>
        <sec id="sec-2-3-1">
          <title>2.5. Relevance for the ECSA Audience</title>
        </sec>
      </sec>
      <sec id="sec-2-4">
        <title>Smart ecosystems are one of the topics of interest of</title>
        <p>ECSA 2021 and an emerging relevant topic that
represents cutting-edge technology, imposing important
challenges, including for the software architecture area. They
also support critical domains in which failures can cause
damages, losses, and financial harm. Hence, the
establishment of approaches to evaluate their architectures
accordingly is imperative [8, 11]. Simulation supports
software architecture assessment [ 16, 17] and allows
architects to (i) prototype large-scale systems and test their
structure and behaviors at design time, (ii)
anticipate/predict the consequences of architectural changes on the
overall systems, and (iii) ofer a visual appeal to enable
the architects to draw new architectural alternatives to
accordingly conform to the pre-established requirements.
Hence, the dissemination of knowledge on simulation,
simulators, and languages becomes very relevant in the
software architecture community. Finally, this tutorial
not only copes with the conference scope but also updates
the audience with findings, results recently published,
and experience from the industry.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Tutorial Technical Aspects</title>
      <sec id="sec-3-1">
        <title>The target audience comprises any ECSA attendees only</title>
        <p>requiring experience in basic programming. This
halfday workshop is structured as follows: (i) Instructional
Phase: Instructors presentation - 10 minutes;
Funda• Introduction of DEVS for newcomers: We intro- mentals on smart ecosystems, their architectures, and
duce DEVS as a formalism suitable for smart-ecosystem Dynamic-ASAS - 50 minutes; DEVS basics - 30 minutes;
architectures by presenting the basics of DEVS mod- and (ii) Practical Phase: MS4Me Installation - 20
minels (both atomic and coupled models), their canonical utes; Hands-on lab following the six steps presented in
structure, and DEVSNL (DEVS Natural Language) used Section 2.1 - 60 to 120 minutes. Hence, this tutorial
to specify DEVS simulation models in MS4Me; mixes expositive lecture and hands-on practical
experi• Introduction of a simulation approach: We ex- ence. This tutorial is conducted in a virtual mode, raising
plain the steps to specify and evaluate smart-ecosystem specific technical challenges. Hence, we send the MS4Me
architectures according to Dynamic-ASAS; and installation instructions before the workshop, and
supplementary materials are available in https://ww2.inf.ufg.
• Practical experience of smart-ecosystem simula- br/~insight/tutorialecsa2021/. We also record videos that
tion: We equip the attendees with pre-programmed show the main activities as well as the expected results
DEVS codes so they can deploy them in the MS4Me of those activities.
platform and run simulations for assessing a
smartecosystem architecture.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Background of Presenters</title>
      <sec id="sec-4-1">
        <title>2.4. Key takeaways for the audience</title>
        <p>VALDEMAR VICENTE GRACIANO-NETO received
The essential messages that we intend the audience re- his Ph.D. degree from the University of São Paulo, Brazil
tains are: (i) Smart-ecosystem software architectures are and the Docteur degree from the Université Bretagne-Sud,
France, in 2018. He is an Assistant Professor at the Fed- [5] P. Baumann, R. Samlaus, L. Mikelsons, T. Kuhn,
eral University of Goiás, Brazil. He has co-authored more J. Jahic, Towards virtual validation of distributed
than 80 peer-reviewed papers, besides co-organizing sci- functions, in: SummerSim, 2019, pp. 1–12.
entific events, such as the Workshop on Modeling and [6] M. Guessi, F. Oquendo, E. Y. Nakagawa, Checking
Simulation of Software-Intensive Systems (MSSiS) and the architectural feasibility of systems-of-systems
Workshop on Blockchain-Based Software Architectures using formal descriptions, in: SoSE, 2016, pp. 1–6.
(BlockArch at ICSA). He serves as a reviewer for impor- [7] M. Guessi, F. Oquendo, E. Y. Nakagawa, Ark: a
tant vehicles, such as IEEE SoSE, IST, and IEEE Computer. constraint-based method for architectural synthesis
He is a member of the Brazilian Computer Society. of smart systems, Software System Modeling 19
WALLACE MANZANO is a Masters’ candidate at the (2020) 741–762.</p>
        <p>University of São Paulo, Brazil. He has an Information [8] H. Cadavid, V. Andrikopoulos, P. Avgeriou,
ArSystems Bachelors’ degree and a large experience on SoS, chitecting systems of systems: A tertiary study,
model-driven development, and software architecture. Information and Software Technology 118 (2020).
He is also an expert in DEVS language and simulators [9] H. Cadavid, V. Andrikopoulos, P. Avgeriou,
(including MS4Me) and has accumulated large experience P. Broekema, System- and software-level
architectin simulations models over the past five years. ing harmonization practices for systems-of-systems
PABLO OLIVEIRA ANTONINO is Head of the Embed- - an exploratory case study on a long-running
largeded Software Engineering department of the Fraunhofer scale scientific instrument, in: ICSA, 2021, pp.
IESE, Germany. He holds a PhD in Computer Science 13–24.
from Technische Universität Kaiserslautern, and has ex- [10] V. Graciano Neto, C. Paes, L. Garcés, M. Guessi,
perience with the design, evaluation, and integration of F. Oquendo, E. Y. Nakagawa, Stimuli-SoS: A
modeldependable embedded systems from various domains, based approach to derive stimuli generators in
simsuch as automotive, avionics, agricultural and construc- ulations of software architectures of
systems-oftion machines, medical devices, and smart industries. The systems, Journal of the Brazilian Computer Society
Industry 4.0 middleware BaSyx is mainly developed by 23 (2017) 13:1–13:22.
employees in the department managed by Dr. Antonino. [11] V. V. Graciano Neto, L. Garcés, M. Guessi, C. Paes,
ELISA YUMI NAKAGAWA is an associate professor W. Manzano, F. Oquendo, E. Y. Nakagawa, ASAS:
at the University of São Paulo - USP, Brazil. She was a An approach to support simulation of smart
sysvisiting researcher in 2020 at the Fraunhofer IESE, Ger- tems, in: HICSS, 2018, pp. 5777–5786.
many, conducted her post-doctoral research at the Uni- [12] V. Graciano Neto, C. Paes, A. Rohling, W. Manzano,
versity of South Brittany, France, in 2015, and Fraunhofer E. Y. Nakagawa, Modeling &amp; simulation of software
IESE, in 2012. She received her Ph.D. degree from USP in architectures of systems-of-systems: An industrial
2016. She has coordinated several international research report on the Brazilian space system, in: SpringSim,
projects, has organized international conferences, and 2019, pp. 1–12.
has served as a program committee member at many [13] W. Manzano, V. Graciano Neto, E. Y. Nakagawa,
conferences and as a reviewer of various journals. She Dynamic-SoS: An approach for the simulation of
published more than 180 papers in selective journals and systems-of-systems dynamic architectures,
Comconferences, in addition to books and book chapters. She puter Journal 63 (2020) 709–731.
is a CNPq fellow and a member of IEEE and Brazilian [14] V. Graciano Neto, F. Horita, R. Santos, D. Viana,
Computer Society. M. Kassab, W. Manzano, E. Y. Nakagawa, S.O.B
(Save Our Budget) - A Simulation-Based Method
for Prediction of Acquisition Costs of Constituents
References of a System-of-Systems, iSys - Brazilian Journal on
Information Systems 12 (2019) 6–35.
[15] B. Zeigler, H. S. Sarjoughian, R. Duboz, J.-C. Souli,</p>
        <p>Guide to Modeling and Simulation of Systems of</p>
        <p>Systems, Springer-Verlag London, 2012.
[16] L. Dobrica, E. Niemele, A survey on software
architecture analysis methods, IEEE Transactions on</p>
        <p>Software Engineering 28 (2002) 638–653.
[17] V. Bogado, S. Gonnet, H. Leone, Modeling and
simulation of software architecture in discrete event
system specification for quality evaluation,
Simulation 90 (2014) 290–319.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>M.</given-names>
            <surname>Goncalves</surname>
          </string-name>
          , E. Cavalcante,
          <string-name>
            <given-names>T.</given-names>
            <surname>Batista</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Oquendo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. Y.</given-names>
            <surname>Nakagawa</surname>
          </string-name>
          ,
          <article-title>Towards a conceptual model for software-intensive system-of-systems</article-title>
          , in: SMC,
          <year>2014</year>
          , pp.
          <fpage>1605</fpage>
          -
          <lpage>1610</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>B.</given-names>
            <surname>Boehm</surname>
          </string-name>
          ,
          <article-title>A view of 20th and 21st century software engineering</article-title>
          , in: ICSE,
          <year>2006</year>
          , pp.
          <fpage>12</fpage>
          -
          <lpage>29</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M.</given-names>
            <surname>Jamshidi</surname>
          </string-name>
          ,
          <article-title>System of systems engineering - new challenges for the 21st century</article-title>
          ,
          <source>IEEE Aerospace and Electronic Systems Magazine</source>
          <volume>23</volume>
          (
          <year>2008</year>
          )
          <fpage>4</fpage>
          -
          <lpage>19</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M.</given-names>
            <surname>Maier</surname>
          </string-name>
          ,
          <article-title>Architecting principles for systems-ofsystems</article-title>
          ,
          <source>Systems Engineering</source>
          <volume>1</volume>
          (
          <year>1998</year>
          )
          <fpage>267</fpage>
          -
          <lpage>284</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>