Design Automation : Making Formal Methods
نویسنده
چکیده
y Formal methods are easily dismissed as heavy weight and irrelevant. People legitimately ask to see what impact formal methods have had on software development practices outside of those areas where governments or regulatory agencies have mandated their use. We argue that design automation is an opportunity for the insertion of formal methods into software development practice. In particular, we advocate the development of small, domain-speciic design languages, and the use of these languages as front-ends to program generation systems. Software Design for Reliability and Reuse (SDRR) is a method developed at the Paciic Software Research Center to support the development of generators for domain-speciic languages 1]. Our method, which utilizes a robust suite of reusable transformation tools, has been used to implement a software component generator for a message translation and validation problem domain identiied by the Air Force. Independent contractors have used our system as part of an experiment comparing our generation-based technology to an existing solution that uses a program templates based reuse technologyy16, 18]. Preliminary results show a productivity improvement factor of 2.9 over templates, which already represents a signiicant productivity improvement over ad hoc methodss12]. The formal methods community is currently in a phase of critical self-evaluation. At the recent 1994 Monterey workshop on formal methods, the emerging consensus was that there needed to be a new, more realistic vision for future research. Participants universally concurred that formal methods are critical to the emergence of software engineering as a well-organized discipline based, as are other engineering disciplines, on sound and well-tested mathematical models. To this end, future research must be focused on approaches that would have a direct positive impact on large-scale software development. Crucial to this eeort are the following goals Incorporate formal models and algorithms in computer tools designed to solve problems of practical signiicance Recognize that practical software development is largely driven by user requirements changes Authors supported in part by Air Force Materiel Command.
منابع مشابه
Guest Editorial: Special section on software engineering in industrial automation
A CCORDING to many undisputable evidences, the complexity and importance of software in industrial automation systems is growing with a tremendous rate, making software engineering one of the major activities of automation systems developers. In general, software engineering is an established discipline with its methods, traditions and curriculum. Most of its methods and tools are applicable ac...
متن کاملPanel: given that hardware verification has been an uphill battle, what is the future of software verification?
This industrial panel is organized to discuss the views, experiences and opinions of formal methods practitioners from design automation, hardware and software industries, in order to understand the industrial needs and trends in using formal methods. In particular, we discuss the current thrust on application of formal verification in software development, and what hardware formal verification...
متن کاملFixture Design Automation and Optimization Techniques: Review and Future Trends
Fixture design is crucial part of manufacturing process. Fixture design is a critical design activity process, in which automation plays an integral role in linking computer-aided design (CAD) and computer-aided manufacturing (CAD). This paper presents a literature review in computer aided fixture design (CAFD) in terms of automation and optimization techniques over the past decades. First, the...
متن کاملResearch Results in Equivalence Checking
Formal methods for the verification of Integrated Circuits (ICs) are a collection of techniques used to ensure the correctness of a design before fabrication. Formal methods have been investigated recently and continue to be an area of active research in the Computer Aided Design (CAD) for Electronic Design Automation (EDA) community. While many important results and CAD tools have resulted, th...
متن کاملFormal Methods in PLC Control Demonstrated at a Flexible Manufacturing Line
This paper presents various formal approaches in the development of logic control algorithms. Programmable Logic Controllers (PLCs) are commonly used in automation and the algorithms running on them tend to be quite complex. This motivates the application of formal approaches to PLC programming. The approaches range from completely formalized design methods on the one end over the verification ...
متن کامل