Modeling Dynamic Architectures Using Nets-within-Nets
Kurzfassung: Current modeling techniques are not well equipped to design dynamic software architectures. In this work we present the basic concepts for a dynamic architecture modeling using nets-within-nets. Nets-within-nets represent a powerful formalism that allows active elements, i.e. nets, to be nested in arbitrary and dynamically changeable hierarchies. Applying the concepts from nets-within-nets, therefore, allows us to model complex dynamic system architectures in a simple way, which enables us to design the system at different levels of abstractions using refinements of net models.
Additionally to the conceptual modeling of such architecture, we provide a practical example where the concept has been successfully applied in the development of the latest release of Renew (Version 2 of the multi-formalism Petri net IDE). The overall monolithic architecture has been exchanged with a system that is divided into a plug-in management system and plug-ins that provide functionality for the users. By combining plug-ins the system can be adapted to the users' needs. Through the introduction of the Petri net concepts, the new architecture is now - at runtime - dynamically extensible by registering plug-ins with the management system. The introduced architecture is applicable for any kind of architecture but most suitable for applications with dynamic structure.
@InProceedings{Cabac+05b,
author = {Cabac, Lawrence and Duvigneau, Michael and Moldt, Daniel and R{\"o}lke, Heiko},
title =  {Modeling Dynamic Architectures Using Nets-within-Nets},
booktitle = {Applications and Theory of {Petri} Nets 2005. 26th International Conference, ICATPN 2005, Miami, USA, June 2005. Proceedings},
editor =   {Ciardo, Gianfranco and Darondeau, Philippe},
volume =   3536,
series =   LNCS,
pages =   {148--167},
ISBN =   {978-3-540-26301-2},
doi =   {10.1007/11494744_10},
url =      {http://dx.doi.org/10.1007/11494744\_10},
keywords = {High-level Petri nets, Nets-within-nets, reference nets, Renew, plug-ins, components, dynamic software architecture, modeling},
abstract = {Current modeling techniques are not well equipped to
design dynamic software architectures. In this work we
present the basic concepts for a dynamic architecture
modeling using nets-within-nets. Nets-within-nets
represent a powerful formalism that allows active
elements, i.e. nets, to be nested in arbitrary and
dynamically changeable hierarchies. Applying the concepts
from nets-within-nets, therefore, allows us to model
complex dynamic system architectures in a simple way,
which enables us to design the system at different levels
of abstractions using refinements of net models.
\par
Additionally to the conceptual modeling of such
architecture, we provide a practical example where the
concept has been successfully applied in the development
of the latest release of Renew (Version 2 of the
multi-formalism Petri net IDE). The overall monolithic
architecture has been exchanged with a system that is
divided into a plug-in management system and plug-ins
that provide functionality for the users. By combining
plug-ins the system can be adapted to the users'
needs. Through the introduction of the Petri net
concepts, the new architecture is now - at runtime -
dynamically extensible by registering plug-ins with the
management system. The introduced architecture is
applicable for any kind of architecture but most suitable
for applications with dynamic structure.},
annotate = {Filename: sw-architecture}