DREMS ML: A wide spectrum architecture design language for distributed computing platforms

Complex sensing, processing and control applications running on distributed platforms are difficult to design, develop, analyze, integrate, deploy and operate, especially if resource constraints, fault tolerance and security issues are to be addressed. While technology exists today for engineering distributed, real-time component-based applications, many problems remain unsolved by existing tools. Model-driven development techniques are powerful, but there are very few existing and complete tool chains that offer an end-to-end solution to developers, from design to deployment. There is a need for an integrated model-driven development environment that addresses all phases of application lifecycle including design, development, verification, analysis, integration, deployment, operation and maintenance, with supporting automation in every phase. Arguably, a centerpiece of such a model-driven environment is the modeling language. To that end, this paper presents a wide-spectrum architecture design language called DREMS ML that itself is an integrated collection of individual domain-specific sub-languages. We claim that the language promotes "correct-by-construction" software development and integration by supporting each individual phase of the application lifecycle. Using a case study, we demonstrate how the design of DREMS ML impacts the development of embedded systems. We describe an architecture design language for distributed platforms.We describe a software component model for complex, distributed applications.We describe how all implementation and deployment artifacts can be generated.Our language supports design, development, analysis, deployment and maintenance.

[1]  Rolf Johansson,et al.  The EAST-ADL Architecture Description Language for Automotive Embedded Software , 2007, Model-Based Engineering of Embedded Real-Time Systems.

[2]  Dimitra Giannakopoulou,et al.  Behaviour Analysis of Software Architectures , 1999, WICSA.

[3]  Steve Vestal,et al.  The SAE Architecture Analysis & Design Language (AADL) a standard for engineering performance critical systems , 2006, 2006 IEEE Conference on Computer Aided Control System Design, 2006 IEEE International Conference on Control Applications, 2006 IEEE International Symposium on Intelligent Control.

[4]  Ian A. Coutts,et al.  Model-driven distributed systems , 1997, IEEE Concurrency.

[5]  Bran Selic,et al.  Extending SysML with AADL Concepts for Comprehensive System Architecture Modeling , 2011, ECMFA.

[6]  Marion Kee,et al.  Analysis , 2004, Machine Translation.

[7]  A. Gokhale,et al.  A MODEL-DRIVEN SOFTWARE COMPONENT FRAMEWORK FOR FRACTIONATED SPACECRAFT , 2013 .

[8]  Gabor Karsai,et al.  Colored Petri Net-based Modeling and Formal Analysis of Component-based Applications , 2014, MoDeVVa@MoDELS.

[9]  Gordon S. Blair,et al.  Component-based architecture: the Fractal initiative , 2009, Ann. des Télécommunications.

[10]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[11]  Yi Deng,et al.  Model checking software architecture specifications in SAM , 2002, SEKE '02.

[12]  Aniruddha S. Gokhale,et al.  Analysis, verification, and management toolsuite for cyber-physical applications on time-varying networks , 2014, CyPhy '14.

[13]  Peter H. Feiler,et al.  The Architecture Analysis & Design Language (AADL): An Introduction , 2006 .

[14]  G. Karsai,et al.  A software platform for fractionated spacecraft , 2012, 2012 IEEE Aerospace Conference.

[15]  Joseph Sifakis,et al.  Translating AADL into BIP - Application to the Verification of Real-Time Systems , 2009, MoDELS.

[16]  Aniruddha S. Gokhale,et al.  Infrastructure for component-based DDS application development , 2011, GPCE '11.

[17]  Gabor Karsai,et al.  Composing Domain-Specific Design Environments , 2001, Computer.

[18]  Aniruddha S. Gokhale,et al.  F6COM: A component model for resource-constrained and dynamic space-based computing environments , 2013, 16th IEEE International Symposium on Object/component/service-oriented Real-time distributed Computing (ISORC 2013).

[19]  Gabor Karsai,et al.  Model-Integrated Computing , 1997, Computer.

[20]  Séverine Sentilles,et al.  Progress Component Model Reference Manual - version 0.5 , 2008 .

[21]  Anneke Kleppe,et al.  The Object Constraint Language: Getting Your Models Ready for MDA , 2003 .

[22]  Michael Westergaard,et al.  CPN Tools for Editing, Simulating, and Analysing Coloured Petri Nets , 2003, ICATPN.

[23]  Henry Muccini,et al.  What Industry Needs from Architectural Languages: A Survey , 2013, IEEE Transactions on Software Engineering.

[24]  Kim G. Larsen,et al.  The Impressive Power of Stopwatches , 2000, CONCUR.

[25]  Henry Muccini,et al.  CHARMY: A Framework for Designing and Verifying Architectural Specifications , 2009, IEEE Transactions on Software Engineering.

[26]  J. Aronson Safety , 2009, BMJ : British Medical Journal.

[27]  Séverine Sentilles,et al.  ProCom - the Progress Component Model Reference Manual, version 1.0 , 2008 .

[28]  Gabor Karsai,et al.  Smart Dust: communicating with a cubic-millimeter computer , 2001 .

[29]  Ulrik Pagh Schultz,et al.  Proceedings of the 10th ACM international conference on Generative programming and component engineering , 2011, GPCE 2011.

[30]  Joost-Pieter Katoen,et al.  Safety, Dependability and Performance Analysis of Extended AADL Models , 2011, Comput. J..

[31]  L.,et al.  SECURE COMPUTER SYSTEMS : MATHEMATICAL FOUNDATIONS , 2022 .

[32]  Lars Michael Kristensen,et al.  Coloured Petri Nets - Modelling and Validation of Concurrent Systems , 2009 .

[33]  Aniruddha S. Gokhale,et al.  Distributed Real-Time Managed Systems: A Model-Driven Distributed Secure Information Architecture Platform for Managed Embedded Systems , 2014, IEEE Software.

[34]  Ismael Ripoll,et al.  Period Selection for Minimal Hyperperiod in Periodic Task Systems , 2013, IEEE Transactions on Computers.