{"title":"Making sense of recursion patterns","authors":"P. Bailes, L. Brough","doi":"10.1109/FORMSERA.2012.6229782","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229782","url":null,"abstract":"Recursion patterns (such as “foldr” and elaborations thereof) have the potential to supplant explicit recursion in a viable subrecursive functional style of programming. Especially however in order to be able to eschew explicit recursion entirely, even in the definition of new recursion patterns, it's essential to identify and validate a minimal set of basic recursion patterns. The immediate plausibility of foldr is validated by its application to the implementation of functions and recursion patterns, and especially by an abstract characterization of the programming devices used in these applications used to overcome complementary information deficiencies in data and control.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122746488","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Language engineering as an enabler for incrementally defined formal analyses","authors":"D. Ratiu, B. Schätz, M. Völter, Bernd Kolb","doi":"10.1109/FORMSERA.2012.6229790","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229790","url":null,"abstract":"There is a big semantic gap between today's general purpose programming languages on the one hand and the input languages of formal verification tools on the other hand. This makes integrating formal analyses into the daily development practice artificially complex. In this paper we advocate that the use of language engineering techniques can substantially improve this situation along three dimensions. First, more abstract and thus more analyzable domain specific languages can be defined, avoiding the need for abstraction recovery from programs written in general purpose languages. Second, restrictions on the use of existing languages can be imposed and thereby more analyzable code can be obtained and analyses can be incrementally defined. Third, by expressing verification conditions and the verification results at the domain level, they are easier to define and the results of analyses are easier to interpret by end users. We exemplify our approach with three domain specific language fragments integrated into the C programming language, together with a set of analyses: completeness and consistency of decision tables, model-checking-based analyses for a dialect of state machines and consistency of feature models. The examples are based on the mbeddr stack, an extensible C language and IDE for embedded software development.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127909553","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Revisiting modal interface automata","authors":"Ivo Krka, N. Medvidović","doi":"10.1109/FORMSERA.2012.6229786","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229786","url":null,"abstract":"Modern software systems are typically built of components that communicate through their external interfaces. A component's behavior can be effectively described using finite state automata-based formalisms (e.g., statecharts [5]). The basic formalism, labelled transition systems, describes the behavior of a component in terms of states and labeled transitions. The more advanced formalisms, such as modal transition systems and interface automata, extend LTS to incorporate additional information related to interface operation controllability - distinguishing between input, output, and internal actions - and the possible partiality of a component's specification - distinguishing between required and unknown (maybe) behaviors. Capturing the controllability and partiality aspects of a component's specification facilitates (1) checking interface compatibility, (2) checking whether one component can safely replace another component, and (3) checking whether one specification is a proper refinement of another specification. In this paper, we study the existing definitions of these three types of checks, and then exemplify their limitations in the context of modal interface automata (MIA); MIA is a class of component behavior specifications that incorporates both controllability and partiality information. We outline a set of enhancements to MIA as possible solutions to the identified limitations.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133154354","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Further steps towards efficient runtime verification: Handling probabilistic cost models","authors":"A. Filieri, C. Ghezzi","doi":"10.1109/FORMSERA.2012.6229785","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229785","url":null,"abstract":"We consider high-level models that specify system behaviors probabilistically and support the specification of cost attributes. Specifically, we focus on Discrete Time Markov Reward Models (D-MRMs), i.e. state machines where probabilities can be associated with transitions and rewards (costs) can be associated with states and transitions. Through probabilities we model assumptions on the behavior of environment in which an application is embedded. Rewards can instead model the cost assumptions involved in the system's operations. A system is designed to satisfy the requirements, under the given assumptions. Design-time assumptions, however, can turn out to be invalid at runtime, and therefore it is necessary to verify whether changes may lead to requirements violations. If they do, it is necessary to adapt the behavior in a self-healing manner to continue to satisfy the requirements. We have previously presented an approach to support efficient runtime probabilistic model checking of DTMCs for properties expressed in PCTL. In this paper we extend the approach to D-MRMs and reward properties. The benefits of the approach are justified both theoretically and empirically on significant test cases.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128462226","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Johannes Neubauer, B. Steffen, Oliver Bauer, Stephan Windmüller, Maik Merten, T. Margaria, Falk Howar
{"title":"Automated continuous quality assurance","authors":"Johannes Neubauer, B. Steffen, Oliver Bauer, Stephan Windmüller, Maik Merten, T. Margaria, Falk Howar","doi":"10.1109/FORMSERA.2012.6229787","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229787","url":null,"abstract":"We present a case study that illustrates the power of active learning for enabling the automated quality assurance of complex and distributed evolving systems. We illustrate how the development of the OCS, Springer Verlag's Online Conference System, is supported by continuous learning-based testing, that by its nature maintains the synchrony of the running application and the learned (test) model. The evolution of the test model clearly indicates which portions of the system remain stable and which are altered. Thus our approach includes classical regression testing and feature interaction detection. We show concretely how model checking, automata learning, and quantitative analysis concur with the holistic quality assurance of this product.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115433665","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Iliasov, A. Romanovsky, L. Laibinis, E. Troubitsyna, T. Latvala
{"title":"Augmenting Event-B modelling with real-time verification","authors":"A. Iliasov, A. Romanovsky, L. Laibinis, E. Troubitsyna, T. Latvala","doi":"10.1109/FORMSERA.2012.6229789","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229789","url":null,"abstract":"A large number of dependable embedded systems have stringent real-time requirements imposed on them. Analysis of their real-time behaviour is usually conducted at the implementation level. However, it is desirable to obtain an evaluation of real-time properties early at the development cycle, i.e., at the modelling stage. In this paper we present an approach to augmenting Event-B modelling with verification of real-time properties in Uppaal. We show how to extract a process-based view from an Event-B model that together with introducing time constraints allows us to obtain a timed automata model - an input model of Uppaal. We illustrate the approach by development and verification of the data processing software of the BepiColombo Mission.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125417639","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Scrum goes formal: Agile methods for safety-critical systems","authors":"Sune Wolff","doi":"10.1109/FORMSERA.2012.6229784","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229784","url":null,"abstract":"Formal methods have had a relative low penetration in industry but have the potential for much wider use. The use of agile methods has been highly limited in development of safety-critical systems due to the lack of formal evaluation techniques and rigorous planning. A combination of formal methods and agile development processes can potentially widen the use of formal methods in industry as well as enabling the use of agile methods in development of safety-critical systems. This paper describes a way to add the use of formal methods to the agile development process Scrum. Experiences from using a variant of the strategy in an industrial case are summarised.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122115304","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Carlos A. González, Fabian Büttner, R. Clarisó, Jordi Cabot
{"title":"EMFtoCSP: A tool for the lightweight verification of EMF models","authors":"Carlos A. González, Fabian Büttner, R. Clarisó, Jordi Cabot","doi":"10.1109/FORMSERA.2012.6229788","DOIUrl":"https://doi.org/10.1109/FORMSERA.2012.6229788","url":null,"abstract":"The increasing popularity of MDE results in the creation of larger models and model transformations, hence converting the specification of MDE artefacts in an error-prone task. Therefore, mechanisms to ensure quality and absence of errors in models are needed to assure the reliability of the MDE-based development process. Formal methods have proven their worth in the verification of software and hardware systems. However, the adoption of formal methods as a valid alternative to ensure model correctness is compromised for the inner complexity of the problem. To circumvent this complexity, it is common to impose limitations such as reducing the type of constructs that can appear in the model, or turning the verification process from automatic into user assisted. Since we consider these limitations to be counterproductive for the adoption of formal methods, in this paper we present EMFtoCSP, a new tool for the fully automatic, decidable and expressive verification of EMF models that uses constraint logic programming as the underlying formalism.","PeriodicalId":192140,"journal":{"name":"2012 First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA)","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134381509","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}