ABSTRACT
Dataflow modelling languages such as SCADE or Simulink are the de-facto standard for the Model Driven Development of safety critical embedded control and command systems. Software is mainly being produced by Automated Code Generators whose correctness can only be assessed meaningfully if the input language semantics is well known. These semantics share a common part but are mainly defined through block libraries. The writing of a complete formal specification for the block libraries of the usual languages is highly challenging due to the high variability of the structure and semantics of each block. This contribution relates the use of software product line principles in the design of a domain specific language targeting the formal specification of block libraries. It summarises the advantages of this DSL regarding the writing, validation and formal verification of such specifications. These experiments have been carried out in the context of the GeneAuto embedded code generator project targeting Simulink and Scicos; and are being extended and applied in its follow up projects ProjetP and Hi-MoCo.
- A. Dieumegard, A. Toom, and M. Pantel, "Model-based formal specification of a DSL library for a qualified code generator," in Proceedings of the 12th Workshop on OCL and Textual Modelling. New York, NY: ACM, 2012, pp. 61--62. Google ScholarDigital Library
- A. Dieumegard, A. Toom, and M. Pantel, "Formal specification of block libraries in dataflow languages," in Embedded Real-Time Software and Systems, ERTS2, 2014. {Online}. Available: http://www.erts2014.org/Site/0R4UXE94/Fichier/erts2014 6D4.pdfGoogle Scholar
- N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud, "The synchronous dataflow programming language LUSTRE," Proceedings of the IEEE, vol. 79, no. 9, pp. 1305--1320, September 1991.Google ScholarCross Ref
- K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson, "Feature-oriented domain analysis (FODA) feasibility study," Carnegie-Mellon University Software Engineering Institute, Tech. Rep., November 1990.Google ScholarCross Ref
- J. Sun, H. Zhang, Y. Fang, and H. Wang, "Formal semantics and verification for feature modeling," in 10th IEEE International Conference on Engineering of Complex Computer Systems, 2005. ICECCS 2005. Proceedings, June 2005, pp. 303--312. Google ScholarDigital Library
- R. Gheyi, T. Massoni, and P. Borba, "A theory for feature models in Alloy," in In: Proceedings of the 1st Alloy Workshop, 2006, pp. 71--80.Google Scholar
- D. Benavides, S. Segura, and A. Ruiz-Cortés, "Automated analysis of feature models 20 years later: A literature review," Information Systems, vol. 35, no. 6, pp. 615--636, 2010. Google ScholarDigital Library
- O. Haugen, B. Moller-Pedersen, J. Oldevik, G. Olsen, and A. Svendsen, "Adding standardized variability to domain specific languages," in 12th International Software Product Line Conference, 2008, ser. SPLC'08, Sept 2008, pp. 139--148. Google ScholarDigital Library
- I. Schaefer, "Variability modelling for model-driven development of software product lines," in VaMoS, ser. ICB-Research Report, D. Benavides, D. S. Batory, and P. Grünbacher, Eds., vol. 37. Universität Duisburg-Essen, 2010, pp. 85--92.Google Scholar
- M. Voelter and E. Visser, "Product line engineering using domain-specific languages," in 15th International Software Product Line Conference, 2011, ser. SPLC'11, Aug 2011, pp. 70--79. Google ScholarDigital Library
- OMG. OCL specification. {Online}. Available: http://www.omg.org/spec/OCL/Google Scholar
- Blocklibrary repository. {Online}. Available: http://block-library.enseeiht.fr/htmlGoogle Scholar
- P.-Y. Schobbens, P. Heymans, J.-C. Trigaux, and Y. Bontemps, "Generic semantics of feature diagrams," Comput. Netw., vol. 51, no. 2, pp. 456--479, Feb. 2007. Google ScholarDigital Library
- ACSL: ANSI/ISO C Specification Language. {Online}. Available: http://frama-c.com/download/acsl.pdfGoogle Scholar
- J. B. Almeida, M. J. Frade, and J. S. Pinto, Rigorous software development: an introduction to program verification. London: Springer, 2011. Google ScholarDigital Library
- F. Bobot, J.-C. Filliâtre, C. Marché, and A. Paskevich, "Why3: Shepherd Your Herd of Provers," in Boogie 2011: First International Workshop on Intermediate Verification Languages, Wroclaw, Poland, 2011, pp. 53--64.Google Scholar
- S. Sankaranarayanan, H. B. Sipma, and Z. Manna, "Non-linear loop invariant generation using größner bases," in Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, ser. POPL '04. New York, NY: ACM, 2004, pp. 318--329. {Online}. Available: http://doi.acm.org/10.1145/964001.964028 Google ScholarDigital Library
- D. Déharbe, S. Ranise, and J. Vidal, "A prototype implementation of a distributed satisfiability modulo theories solver in the toolbus framework," Journal of the Brazilian Computer Society, vol. 14, no. 1, pp. 71--86, 2008. {Online}. Available: http://dx.doi.org/10.1007/BF03192553Google ScholarCross Ref
- S. Apel, C. Lengauer, B. Möller, and C. Kästner, "An algebra for features and feature composition," in Proceedings of the 12th International Conference on Algebraic Methodology and Software Technology, ser. AMAST 2008. Berlin, Heidelberg: Springer-Verlag, 2008, pp. 36--50. Google ScholarDigital Library
- A. Haber, C. Kolassa, P. Manhart, P. M. S. Nazari, B. Rumpe, and I. Schaefer, "First-class variability modeling in matlab/simulink," in Proceedings of the Seventh International Workshop on Variability Modelling of Software-intensive Systems, ser. VaMoS '13. New York, NY: ACM, 2013, pp. 4:1--4:8. {Online}. Available: http://doi.acm.org/10.1145/2430502.2430508 Google ScholarDigital Library
- J. Weiland and P. Manhart, "A classification of modeling variability in simulink," in Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems, ser. VaMoS'14. New York, NY: ACM, 2013, pp. 7:1--7:8. {Online}. Available: http://doi.acm.org/10.1145/2556624.2556632 Google ScholarDigital Library
- D. Batory, "Feature models, grammars, and propositional formulas," in Proceedings of the 9th International Conference on Software Product Lines, ser. SPLC'05. Berlin, Heidelberg: Springer-Verlag, 2005, pp. 7--20. Google ScholarDigital Library
Index Terms
- A software product line approach for semantic specification of block libraries in dataflow languages
Recommendations
Model-based formal specification of a DSL library for a qualified code generator
OCL '12: Proceedings of the 12th Workshop on OCL and Textual ModellingCritical embedded systems development is a complex and highly sensitive task. Model-driven engineering (MDE) intends to bridge the gaps between the different parts of this process: high-level requirements, design, implementation and verification, by ...
Informal and Formal Requirements Specification Languages: Bridging the Gap
The differences between informal and formal requirements specification languages are noted, and the issue of bridging the gap between them is discussed. Using structured analysis (SA) and the Vienna development method (VDM) as surrogates for informal ...
Translation of IEC 61131-3 Function Block Diagrams to PVS for Formal Verification with Real-Time Nuclear Application
The trip computers for the two reactor shutdown systems of the Ontario Power Generation (OPG) Darlington Nuclear Power Generating Station are being refurbished due to hardware obsolescence. For one of the systems, the general purpose computer originally ...
Comments