首页 > 最新文献

2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)最新文献

英文 中文
Recommendations for improving the usability of formal methods for product lines 改进产品线形式化方法可用性的建议
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612276
J. Atlee, Sandy Beidu, N. Day, Fathiyeh Faghih, Pourya Shaker
While there may be general agreement on what it means for a formal method to be usable (e.g., ease of modelling, automated and scalable analysis), there is no consensus in the software-engineering or formal-methods communities on what strategies lead to more usable formalisms. In this paper, we aim to raise discussion around such strategies by proposing fourteen concrete recommendations for achieving practical formal methods. Our recommendations apply to research in formal modelling, automated analysis, and automated transformation (e.g., transforming a model into the input to an analysis tool). Our recommendations focus on formal methods for functional requirements of software product lines, as per our experience in this area as part of a research project in collaboration with an automotive manufacturer; however, most of the recommendations apply to formal methods in general. We also provide a brief overview of a formal modelling language and an underdevelopment tool chain that realizes our recommendations.
虽然对于形式化方法的可用性(例如,易于建模、自动化和可伸缩分析)的含义可能存在普遍的共识,但在软件工程或形式化方法社区中,对于哪种策略导致更可用的形式化并没有达成共识。在本文中,我们的目标是通过提出实现实用的形式化方法的14个具体建议来提出围绕这些策略的讨论。我们的建议适用于形式化建模、自动化分析和自动化转换(例如,将模型转换为分析工具的输入)方面的研究。我们的建议侧重于软件产品线功能需求的形式化方法,根据我们在该领域的经验,作为与一家汽车制造商合作的研究项目的一部分;然而,大多数建议一般适用于正式方法。我们还简要概述了一种正式的建模语言和一个尚未开发的工具链,以实现我们的建议。
{"title":"Recommendations for improving the usability of formal methods for product lines","authors":"J. Atlee, Sandy Beidu, N. Day, Fathiyeh Faghih, Pourya Shaker","doi":"10.1109/FormaliSE.2013.6612276","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612276","url":null,"abstract":"While there may be general agreement on what it means for a formal method to be usable (e.g., ease of modelling, automated and scalable analysis), there is no consensus in the software-engineering or formal-methods communities on what strategies lead to more usable formalisms. In this paper, we aim to raise discussion around such strategies by proposing fourteen concrete recommendations for achieving practical formal methods. Our recommendations apply to research in formal modelling, automated analysis, and automated transformation (e.g., transforming a model into the input to an analysis tool). Our recommendations focus on formal methods for functional requirements of software product lines, as per our experience in this area as part of a research project in collaboration with an automotive manufacturer; however, most of the recommendations apply to formal methods in general. We also provide a brief overview of a formal modelling language and an underdevelopment tool chain that realizes our recommendations.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122064569","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}
引用次数: 16
Towards a formalism-based toolkit for automotive applications 面向汽车应用程序的基于形式的工具包
Pub Date : 2013-05-25 DOI: 10.1109/FORMALISE.2013.6612275
Rainer Gmehlich, K. Grau, F. Loesch, A. Iliasov, Michael Jackson, M. Mazzara
The success of a number of projects has been shown to be significantly improved by the use of a formalism. However, there remains an open issue: to what extent can a development process based on a singular formal notation and method succeed. The majority of approaches demonstrate a low level of flexibility by attempting to use a single notation to express all of the different aspects encountered in software development. Often, these approaches leave a number of scalability issues open. We prefer a more eclectic approach. In our experience, the use of a formalism-based toolkit with adequate notations for each development phase is a viable solution. Following this principle, any specific notation is used only where and when it is really suitable and not necessarily over the entire software lifecycle. The approach explored in this article is perhaps slowly emerging in practice - we hope to accelerate its adoption. However, the major challenge is still finding the best way to instantiate it for each specific application scenario. In this work, we describe a development process and method for automotive applications which consists of five phases. The process recognizes the need for having adequate (and tailored) notations (Problem Frames, Requirements State Machine Language, and Event-B) for each development phase as well as direct traceability between the documents produced during each phase. This allows for a stepwise verification/validation of the system under development. The ideas for the formal development method have evolved over two significant case studies carried out in the DEPLOY project.
由于采用了形式主义,一些项目的成功得到了显著改善。然而,仍然存在一个开放的问题:基于单一形式化符号和方法的开发过程在多大程度上可以成功。大多数方法都试图使用单一的符号来表达软件开发中遇到的所有不同方面,从而表现出较低的灵活性。通常,这些方法会留下许多可伸缩性问题。我们更喜欢折衷的方法。根据我们的经验,为每个开发阶段使用带有适当符号的基于形式化的工具包是一种可行的解决方案。遵循这一原则,任何特定的符号只在真正合适的地方和时间使用,而不必在整个软件生命周期中使用。本文中探讨的方法可能在实践中慢慢出现-我们希望加速它的采用。然而,主要的挑战仍然是为每个特定的应用程序场景找到实例化它的最佳方法。在这项工作中,我们描述了汽车应用程序的开发过程和方法,包括五个阶段。该过程认识到需要为每个开发阶段提供足够的(和定制的)符号(问题框架、需求状态机语言和事件- b),以及在每个阶段产生的文档之间的直接可追溯性。这允许对开发中的系统进行逐步的验证/确认。正式开发方法的思想是在DEPLOY项目中执行的两个重要案例研究中发展起来的。
{"title":"Towards a formalism-based toolkit for automotive applications","authors":"Rainer Gmehlich, K. Grau, F. Loesch, A. Iliasov, Michael Jackson, M. Mazzara","doi":"10.1109/FORMALISE.2013.6612275","DOIUrl":"https://doi.org/10.1109/FORMALISE.2013.6612275","url":null,"abstract":"The success of a number of projects has been shown to be significantly improved by the use of a formalism. However, there remains an open issue: to what extent can a development process based on a singular formal notation and method succeed. The majority of approaches demonstrate a low level of flexibility by attempting to use a single notation to express all of the different aspects encountered in software development. Often, these approaches leave a number of scalability issues open. We prefer a more eclectic approach. In our experience, the use of a formalism-based toolkit with adequate notations for each development phase is a viable solution. Following this principle, any specific notation is used only where and when it is really suitable and not necessarily over the entire software lifecycle. The approach explored in this article is perhaps slowly emerging in practice - we hope to accelerate its adoption. However, the major challenge is still finding the best way to instantiate it for each specific application scenario. In this work, we describe a development process and method for automotive applications which consists of five phases. The process recognizes the need for having adequate (and tailored) notations (Problem Frames, Requirements State Machine Language, and Event-B) for each development phase as well as direct traceability between the documents produced during each phase. This allows for a stepwise verification/validation of the system under development. The ideas for the formal development method have evolved over two significant case studies carried out in the DEPLOY project.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130047272","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}
引用次数: 20
A framework for the rigorous design of highly adaptive timed systems 一个高度自适应定时系统严格设计的框架
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612279
Maxime Cordy, Axel Legay, Pierre-Yves Schobbens, Louis-Marie Traonouez
Adaptive systems can be regarded as a set of static programs and transitions between these programs. These transitions allow the system to adapt its behaviour in response to unexpected changes in its environment. Modelling highly dynamic systems is cumbersome, as these may go through a large number of adaptations. Moreover, often they must also satisfy real-time requirements whereas adaptations may not complete instantaneously. In this paper, we propose to model highly adaptive systems as dynamic real-time software product lines, where software products are able to change their features at runtime. Adaptive features allow one to design systems equipped with runtime reconfiguration capabilities and to model changes in their environment, such has failure modes. We define Featured Timed Game Automata, a formalism that combines adaptive features with discrete and real-time behaviour. We also propose a novel logic to express real-time requirements on adaptive systems, as well as algorithms to check a system against them. We implemented our method as part of PyECDAR, a model checker for timed systems.
自适应系统可以看作是一组静态程序和这些程序之间的转换。这些转换允许系统调整其行为以响应其环境中的意外变化。对高度动态的系统进行建模是很麻烦的,因为这些系统可能会经历大量的调整。此外,它们通常还必须满足实时需求,而适应可能不会立即完成。在本文中,我们建议将高度自适应系统建模为动态实时软件产品线,其中软件产品能够在运行时改变其特性。自适应特性允许设计具有运行时重新配置能力的系统,并对其环境中的变化进行建模,例如具有故障模式。我们定义了有特色的定时游戏自动机,这是一种将自适应特征与离散和实时行为相结合的形式。我们还提出了一种新的逻辑来表达对自适应系统的实时要求,以及根据这些要求检查系统的算法。我们将我们的方法作为PyECDAR的一部分实现,PyECDAR是一个定时系统的模型检查器。
{"title":"A framework for the rigorous design of highly adaptive timed systems","authors":"Maxime Cordy, Axel Legay, Pierre-Yves Schobbens, Louis-Marie Traonouez","doi":"10.1109/FormaliSE.2013.6612279","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612279","url":null,"abstract":"Adaptive systems can be regarded as a set of static programs and transitions between these programs. These transitions allow the system to adapt its behaviour in response to unexpected changes in its environment. Modelling highly dynamic systems is cumbersome, as these may go through a large number of adaptations. Moreover, often they must also satisfy real-time requirements whereas adaptations may not complete instantaneously. In this paper, we propose to model highly adaptive systems as dynamic real-time software product lines, where software products are able to change their features at runtime. Adaptive features allow one to design systems equipped with runtime reconfiguration capabilities and to model changes in their environment, such has failure modes. We define Featured Timed Game Automata, a formalism that combines adaptive features with discrete and real-time behaviour. We also propose a novel logic to express real-time requirements on adaptive systems, as well as algorithms to check a system against them. We implemented our method as part of PyECDAR, a model checker for timed systems.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124731227","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}
引用次数: 9
An integrated data model verifier with property templates 带有属性模板的集成数据模型验证器
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612274
J. Nijjar, Ivan Bocic, T. Bultan
Most modern web applications are built using development frameworks based on the Model-View-Controller (MVC) pattern. In MVC-based web applications the data model specifies the types of objects used by the application and the relations among them. Since the data model forms the foundation of such applications, its correctness is crucial. In this paper we present a tool, IDAVER, that 1) automatically extracts a formal data model specification from applications implemented using the Ruby on Rails framework, 2) provides templates for specifying data model properties, 3) automatically translates the verification of properties specified using these templates to satisfiability queries in three different logics, and 4) uses automated decision procedures and theorem provers to identify which properties are satisfied by the data model, and 5) reports counterexample instances for the properties that fail. Our tool achieves scalable automated verification by exploiting the modularity in the MVC pattern. IDAVER does not require formal specifications to be written manually; thus, our tool enables automated verification and increases the usability by combining automated data model extraction with template-based property specification.
大多数现代web应用程序都是使用基于模型-视图-控制器(MVC)模式的开发框架构建的。在基于mvc的web应用程序中,数据模型指定了应用程序使用的对象类型以及它们之间的关系。由于数据模型构成了此类应用程序的基础,因此其正确性至关重要。在本文中,我们提出了一个工具,IDAVER,它1)自动从使用Ruby on Rails框架实现的应用程序中提取正式的数据模型规范,2)提供用于指定数据模型属性的模板,3)自动将使用这些模板指定的属性的验证转换为三种不同逻辑的可满足性查询,4)使用自动决策过程和定理证明器来识别哪些属性是由数据模型满足的。5)报告失败属性的反例实例。我们的工具通过利用MVC模式中的模块化来实现可伸缩的自动验证。IDAVER不需要手动编写正式的规范;因此,我们的工具支持自动验证,并通过将自动数据模型提取与基于模板的属性规范相结合来提高可用性。
{"title":"An integrated data model verifier with property templates","authors":"J. Nijjar, Ivan Bocic, T. Bultan","doi":"10.1109/FormaliSE.2013.6612274","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612274","url":null,"abstract":"Most modern web applications are built using development frameworks based on the Model-View-Controller (MVC) pattern. In MVC-based web applications the data model specifies the types of objects used by the application and the relations among them. Since the data model forms the foundation of such applications, its correctness is crucial. In this paper we present a tool, IDAVER, that 1) automatically extracts a formal data model specification from applications implemented using the Ruby on Rails framework, 2) provides templates for specifying data model properties, 3) automatically translates the verification of properties specified using these templates to satisfiability queries in three different logics, and 4) uses automated decision procedures and theorem provers to identify which properties are satisfied by the data model, and 5) reports counterexample instances for the properties that fail. Our tool achieves scalable automated verification by exploiting the modularity in the MVC pattern. IDAVER does not require formal specifications to be written manually; thus, our tool enables automated verification and increases the usability by combining automated data model extraction with template-based property specification.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128439560","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}
引用次数: 8
Lightweight formal models of software weaknesses 软件弱点的轻量级形式化模型
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612277
R. Gandhi, Harvey P. Siy, Yan Wu
Many vulnerabilities in today's software products are rehashes of past vulnerabilities. Such rehashes could be a result of software complexity that masks inadvertent loopholes in design and implementation, developer ignorance/disregard for security issues, or use of software in contexts not anticipated for the original specification. While weaknesses and exposures in code are vendor, language, or environment specific, to understand them we need better descriptions that identify their precise characteristics in an unambiguous representation. In this paper, we present a methodology to develop precise and accurate descriptions of common software weaknesses through lightweight formal modeling using Alloy. Natural language descriptions of software weaknesses used for formalization are based on the community developed Common Weakness Enumerations (CWE).
当今软件产品中的许多漏洞都是过去漏洞的翻版。这样的重复可能是由于软件的复杂性掩盖了设计和实现中无意的漏洞,开发人员对安全问题的无知/忽视,或者在原始规范没有预料到的环境中使用软件。虽然代码中的弱点和暴露是特定于供应商、语言或环境的,但为了理解它们,我们需要更好的描述,以明确的表示来识别它们的精确特征。在本文中,我们提出了一种方法,通过使用Alloy的轻量级形式化建模来开发对常见软件缺陷的精确和准确描述。用于形式化的软件弱点的自然语言描述是基于社区开发的公共弱点枚举(Common Weakness enumeration, CWE)。
{"title":"Lightweight formal models of software weaknesses","authors":"R. Gandhi, Harvey P. Siy, Yan Wu","doi":"10.1109/FormaliSE.2013.6612277","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612277","url":null,"abstract":"Many vulnerabilities in today's software products are rehashes of past vulnerabilities. Such rehashes could be a result of software complexity that masks inadvertent loopholes in design and implementation, developer ignorance/disregard for security issues, or use of software in contexts not anticipated for the original specification. While weaknesses and exposures in code are vendor, language, or environment specific, to understand them we need better descriptions that identify their precise characteristics in an unambiguous representation. In this paper, we present a methodology to develop precise and accurate descriptions of common software weaknesses through lightweight formal modeling using Alloy. Natural language descriptions of software weaknesses used for formalization are based on the community developed Common Weakness Enumerations (CWE).","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129473943","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}
引用次数: 1
Trace based reachability verification for statecharts 基于跟踪的状态图可达性验证
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612273
Kumar Madhukar, Ravindra Metta, U. Shrotri, R. Venkatesh
Statecharts are widely used to model the behavior of reactive systems. While this visual formalism makes modeling easier, the state of the art in verification of statechart specifications is far from satisfactory due to the state explosion problem. We present History ion, a trace-based verification technique to address this problem. Given a set of traces in a statechart model, the model is abstracted to contain at most three states per statechart: current, history and future. A path to a desired state in the abstract model is a sketch of a potential path to that state in the original model. We follow an incremental concretization procedure to extend the sketch to a complete path in the original model. This paper presents our technique. Our experiments suggest that the technique scales to large industry models.
状态图被广泛用于模拟反应系统的行为。虽然这种可视化的形式化使建模更容易,但由于状态爆炸问题,状态图规范验证的技术水平远不能令人满意。我们提出了History - ion,一种基于跟踪的验证技术来解决这个问题。给定状态图模型中的一组轨迹,该模型被抽象为每个状态图最多包含三个状态:当前状态、历史状态和未来状态。在抽象模型中通往期望状态的路径是原始模型中通往该状态的潜在路径的草图。我们遵循增量具体化过程,将草图扩展到原始模型中的完整路径。本文介绍了我们的技术。我们的实验表明,该技术适用于大型工业模型。
{"title":"Trace based reachability verification for statecharts","authors":"Kumar Madhukar, Ravindra Metta, U. Shrotri, R. Venkatesh","doi":"10.1109/FormaliSE.2013.6612273","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612273","url":null,"abstract":"Statecharts are widely used to model the behavior of reactive systems. While this visual formalism makes modeling easier, the state of the art in verification of statechart specifications is far from satisfactory due to the state explosion problem. We present History ion, a trace-based verification technique to address this problem. Given a set of traces in a statechart model, the model is abstracted to contain at most three states per statechart: current, history and future. A path to a desired state in the abstract model is a sketch of a potential path to that state in the original model. We follow an incremental concretization procedure to extend the sketch to a complete path in the original model. This paper presents our technique. Our experiments suggest that the technique scales to large industry models.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130204120","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}
引用次数: 0
Functional SMT solving with Z3 and racket 用Z3和球拍求解功能SMT
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612272
S. Agarwal, Amey Karkare
Satisfiability Modulo Theories (SMT) solvers are powerful tools that can quickly solve complex constraints involving Booleans, integers, first-order logic predicates, lists, and other data types. They have a vast number of potential applications, from constraint solving to program analysis and verification. However, they are so complex to use that their power is inaccessible to all but experts in the field. We present an attempt to make using SMT solvers simpler by integrating the Z3 solver into a host language, Racket. The system defines a programmer's interface in Racket that makes it easy to harness the power of Z3 to discover solutions to logical constraints. The interface, although in Racket, retains the structure and brevity of the SMT-LIB format. This system is expected to be useful for a wide variety of applications, from simple constraint solving to writing tools for debugging, verification, and automatic test generation for functional programs.
可满足模理论(Satisfiability Modulo Theories, SMT)求解器是功能强大的工具,可以快速求解涉及布尔值、整数、一阶逻辑谓词、列表和其他数据类型的复杂约束。它们有大量潜在的应用,从约束求解到程序分析和验证。然而,它们的使用非常复杂,除了该领域的专家之外,所有人都无法使用它们的力量。我们提出了一种尝试,通过将Z3求解器集成到宿主语言Racket中来简化SMT求解器的使用。该系统在Racket中定义了一个程序员接口,使得利用Z3的强大功能来发现逻辑约束的解决方案变得容易。该接口虽然是在Racket中,但保留了SMT-LIB格式的结构和简洁性。该系统有望用于各种各样的应用程序,从简单的约束求解到编写用于调试、验证和功能程序自动测试生成的工具。
{"title":"Functional SMT solving with Z3 and racket","authors":"S. Agarwal, Amey Karkare","doi":"10.1109/FormaliSE.2013.6612272","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612272","url":null,"abstract":"Satisfiability Modulo Theories (SMT) solvers are powerful tools that can quickly solve complex constraints involving Booleans, integers, first-order logic predicates, lists, and other data types. They have a vast number of potential applications, from constraint solving to program analysis and verification. However, they are so complex to use that their power is inaccessible to all but experts in the field. We present an attempt to make using SMT solvers simpler by integrating the Z3 solver into a host language, Racket. The system defines a programmer's interface in Racket that makes it easy to harness the power of Z3 to discover solutions to logical constraints. The interface, although in Racket, retains the structure and brevity of the SMT-LIB format. This system is expected to be useful for a wide variety of applications, from simple constraint solving to writing tools for debugging, verification, and automatic test generation for functional programs.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"248 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132573395","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}
引用次数: 3
Do you speak Z? Formal methods under the perspective of a cross-cultural adaptation problem 你会说Z语吗?形式方法视角下的跨文化适应问题
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612271
A. Bollin
The use of formal specifications seems to be a silver bullet in a world where technical systems become more and more software intensive and where quality considerations become increasingly important. However, formal methods and the use of formal specifications are by far not so widespread as they should and could be. This position paper argues that a broader view onto this situation can be very helpful. It introduces the formal development process as a cross-cultural adaptation problem, discusses pros and cons, and, finally, comes up with a refined model for a formal software development process.
在一个技术系统变得越来越软件密集,质量考虑变得越来越重要的世界里,使用正式规范似乎是一颗银弹。然而,到目前为止,正式方法和正式规范的使用并没有像它们应该和可能的那样广泛。这份立场文件认为,对这一局势有更广泛的看法是非常有益的。它将正式的开发过程作为一个跨文化适应问题进行介绍,讨论了正反两方面的问题,最后提出了一个正式软件开发过程的精细化模型。
{"title":"Do you speak Z? Formal methods under the perspective of a cross-cultural adaptation problem","authors":"A. Bollin","doi":"10.1109/FormaliSE.2013.6612271","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612271","url":null,"abstract":"The use of formal specifications seems to be a silver bullet in a world where technical systems become more and more software intensive and where quality considerations become increasingly important. However, formal methods and the use of formal specifications are by far not so widespread as they should and could be. This position paper argues that a broader view onto this situation can be very helpful. It introduces the formal development process as a cross-cultural adaptation problem, discusses pros and cons, and, finally, comes up with a refined model for a formal software development process.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123378535","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}
引用次数: 3
Though this be madness, yet there is method in it? (Keynote) 虽然这是疯狂,但其中有方法吗?(主题)
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612270
Alan Wassyng
After decades of research, and despite significant advancement, formal methods are still not widely used in industrial software development. Industry practitioners believe that the methods and tools coming out of academia are, to a large extent, irrelevant and ineffective in tackling real-life projects. They are difficult to use, esoteric, and do not scale (at all). This paper reflects more than twenty years spent in first experiencing the problems in industry, and then struggling to do something about it in academia. We present some examples of formal method madness/blindness, as well as a few successes. We believe the problem is deep. To start to address it and make progress in producing methods that are truly usable in industry, and rigorous enough to make them effective engineering methods, we need to reconsider the role of computer scientists, software engineers, software developers, as well as the hurdles to promotion for academics. Along the way, the paper will present a few fundamental principles that we think spell the difference between success and failure in producing usable formal methods, and convincing software professionals in industry to adopt them.
经过几十年的研究,尽管取得了显著的进步,形式化方法仍然没有在工业软件开发中广泛使用。行业从业者认为,在很大程度上,来自学术界的方法和工具在处理现实生活中的项目时是不相关和无效的。它们难以使用、深奥难懂,而且(根本)无法扩展。这篇论文反映了二十多年来,我首先经历了工业界的问题,然后在学术界努力做一些事情。我们提出了一些形式方法疯狂/盲目的例子,以及一些成功的例子。我们认为问题很严重。为了开始解决这个问题,并在产生真正可用于工业的方法方面取得进展,并且足够严格,使其成为有效的工程方法,我们需要重新考虑计算机科学家,软件工程师,软件开发人员的角色,以及学术界晋升的障碍。在此过程中,本文将提出一些基本原则,我们认为这些原则在产生可用的形式化方法和说服行业中的软件专业人员采用它们方面拼出了成功与失败之间的区别。
{"title":"Though this be madness, yet there is method in it? (Keynote)","authors":"Alan Wassyng","doi":"10.1109/FormaliSE.2013.6612270","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612270","url":null,"abstract":"After decades of research, and despite significant advancement, formal methods are still not widely used in industrial software development. Industry practitioners believe that the methods and tools coming out of academia are, to a large extent, irrelevant and ineffective in tackling real-life projects. They are difficult to use, esoteric, and do not scale (at all). This paper reflects more than twenty years spent in first experiencing the problems in industry, and then struggling to do something about it in academia. We present some examples of formal method madness/blindness, as well as a few successes. We believe the problem is deep. To start to address it and make progress in producing methods that are truly usable in industry, and rigorous enough to make them effective engineering methods, we need to reconsider the role of computer scientists, software engineers, software developers, as well as the hurdles to promotion for academics. Along the way, the paper will present a few fundamental principles that we think spell the difference between success and failure in producing usable formal methods, and convincing software professionals in industry to adopt them.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"100 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125325332","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}
引用次数: 7
Automatic validation of infinite real-time systems 无限实时系统的自动验证
Pub Date : 2013-05-25 DOI: 10.1109/FormaliSE.2013.6612278
Thomas Göthel, S. Glesner
In safety-critical areas, complete and machine-assisted verification techniques for infinite real-time systems are required to ensure their correctness in all cases and to cope with their complexity. Previously, we presented a theorem prover-based comprehensive and compositional verification approach using the Timed CSP process calculus to model and verify possibly infinite real-time systems. However, it lacks support for employing automatic verification approaches to validate finite sub-processes of the overall system model. This mainly comes from insufficient automatic verification support for finite Timed CSP processes. In this paper, we present a real-time logic and a transformation of the Timed CSP process calculus to UPPAAL timed automata. We discuss their integration into our comprehensive verification approach as part of a prior validation phase. This is crucial because the effort for interactive verification in the theorem prover is thereby reduced considerably. By this, we provide a comprehensive machine-assisted verification approach without losing the benefits of automatic verification.
在安全关键领域,需要无限实时系统的完整和机器辅助验证技术,以确保其在所有情况下的正确性并应对其复杂性。之前,我们提出了一种基于定理证明的综合组合验证方法,使用定时CSP过程演算来建模和验证可能无限的实时系统。然而,它缺乏对采用自动验证方法来验证整个系统模型的有限子过程的支持。这主要是因为有限时间CSP进程的自动验证支持不足。本文给出了一种实时逻辑,并将定时CSP过程演算转化为UPPAAL时间自动机。我们讨论将它们集成到我们的综合验证方法中,作为先前验证阶段的一部分。这是至关重要的,因为在定理证明中进行交互验证的工作量因此大大减少。通过这种方式,我们提供了一种全面的机器辅助验证方法,而不会失去自动验证的好处。
{"title":"Automatic validation of infinite real-time systems","authors":"Thomas Göthel, S. Glesner","doi":"10.1109/FormaliSE.2013.6612278","DOIUrl":"https://doi.org/10.1109/FormaliSE.2013.6612278","url":null,"abstract":"In safety-critical areas, complete and machine-assisted verification techniques for infinite real-time systems are required to ensure their correctness in all cases and to cope with their complexity. Previously, we presented a theorem prover-based comprehensive and compositional verification approach using the Timed CSP process calculus to model and verify possibly infinite real-time systems. However, it lacks support for employing automatic verification approaches to validate finite sub-processes of the overall system model. This mainly comes from insufficient automatic verification support for finite Timed CSP processes. In this paper, we present a real-time logic and a transformation of the Timed CSP process calculus to UPPAAL timed automata. We discuss their integration into our comprehensive verification approach as part of a prior validation phase. This is crucial because the effort for interactive verification in the theorem prover is thereby reduced considerably. By this, we provide a comprehensive machine-assisted verification approach without losing the benefits of automatic verification.","PeriodicalId":269932,"journal":{"name":"2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133823055","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}
引用次数: 2
期刊
2013 1st FME Workshop on Formal Methods in Software Engineering (FormaliSE)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1