Formal Specification Techniques for Engineering Modular C Programs


Book Description

Software is difficult to develop, maintain, and reuse. Two factors that contribute to this difficulty are the lack of modular design and good program documentation. The first makes software changes more difficult to implement. The second makes programs more difficult to understand and to maintain. Formal Specification Techniques for Engineering Modular C Programs describes a novel approach to promoting program modularity. The book presents a formal specification language that promotes software modularity through the use of abstract data types, even though the underlying programming language may not have such support. This language is structured to allow useful information to be extracted from a specification, which is then used to perform consistency checks between the specification and its implementation. Formal Specification Techniques for Engineering Modular C Programs also describes a specification-driven, software re-engineering process model for improving existing programs. The aim of this process is to make existing programs easier to maintain and reuse while keeping their essential functionalities unchanged. Audience: Suitable as a secondary text for graduate level courses in software engineering, and as a reference for researchers and practitioners in industry.




Formal Specification Techniques for Engineering Modular C Programs


Book Description

Software is difficult to develop, maintain, and reuse. Two factors that contribute to this difficulty are the lack of modular design and good program documentation. The first makes software changes more difficult to implement. The second makes programs more difficult to understand and to maintain. Formal Specification Techniques for Engineering Modular C Programs describes a novel approach to promoting program modularity. The book presents a formal specification language that promotes software modularity through the use of abstract data types, even though the underlying programming language may not have such support. This language is structured to allow useful information to be extracted from a specification, which is then used to perform consistency checks between the specification and its implementation. Formal Specification Techniques for Engineering Modular C Programs also describes a specification-driven, software re-engineering process model for improving existing programs. The aim of this process is to make existing programs easier to maintain and reuse while keeping their essential functionalities unchanged. Audience: Suitable as a secondary text for graduate level courses in software engineering, and as a reference for researchers and practitioners in industry.




Formal Specification Techniques for Engineering Modular C Programs


Book Description

Begins a series for software engineers discussing current research topics and their applications, updated versions of ideas and notations, and authoritative references on specialized topics. Describes a new approach to making software more modular and so easier to change. Presents a formal specification language that promotes modularity through the use of abstract data types even though the underlying programming language does not have such support. The language allows useful information to be extracted from a specification and used to perform some consistency checks between the specification and its implementation. A reference for researchers and practitioners and a secondary text for a graduate course in software engineering. Based on Tan's 1994 doctoral thesis for MIT. Annotation copyright by Book News, Inc., Portland, OR




FM'99 - Formal Methods


Book Description

Formal methods are coming of age. Mathematical techniques and tools are now regarded as an important part of the development process in a wide range of industrial and governmental organisations. A transfer of technology into the mainstream of systems development is slowly, but surely, taking place. FM’99, the First World Congress on Formal Methods in the Development of Computing Systems, is a result, and a measure, of this new-found maturity. It brings an impressive array of industrial and applications-oriented papers that show how formal methods have been used to tackle real problems. These proceedings are a record of the technical symposium ofFM’99:alo- side the papers describingapplicationsofformalmethods,youwill ndtechnical reports,papers,andabstracts detailing new advances in formaltechniques,from mathematical foundations to practical tools. The World Congress is the successor to the four Formal Methods Europe Symposia, which in turn succeeded the four VDM Europe Symposia. This s- cession re?ects an increasing openness within the international community of researchers and practitioners: papers were submitted covering a wide variety of formal methods and application areas. The programmecommittee re?ects the Congress’s international nature, with a membership of 84 leading researchersfrom 38 di erent countries.The comm- tee was divided into 19 tracks, each with its own chair to oversee the reviewing process. Our collective task was a di cult one: there were 259 high-quality s- missions from 35 di erent countries.







FME '96: Industrial Benefit and Advances in Formal Methods


Book Description

This book presents the refereed proceedings of the Third International Symposium of Formal Methods Europe, FME '96, held in Oxford, UK, in March 1996. FME '96 was co-sponsored by IFIP WG 14.3 and devoted to "the application and demonstrated industrial benefit of formal methods, their new horizons and strengthened foundations". The 35 full revised papers included were selected from a total of 103 submissions; also included are three invited papers. The book addresses all relevant aspects of formal methods, from the point of view of the industrial R & D professional as well as from the academic viewpoint, and impressively documents the significant progress in the use of formal methods for the solution of real-world problems.




Model and Data Engineering


Book Description

This book constitutes the refereed proceedings of the 2nd International Conference on Model and Data Engineering, MEDI 2012, held in Poitiers, France, in October 2012. The 12 revised full papers presented together with 5 short papers were carefully reviewed and selected from 35 submissions. The papers are cover the topics of model driven engineering, ontology engineering, formal modeling, security, and data mining.




Software Maintenance - A Management Perspective


Book Description

Computer systems play an important role in our society. Software drives those systems. Massive investments of time and resources are made in developing and implementing these systems. Maintenance is inevitable. It is hard and costly. Considerable resources are required to keep the systems active and dependable. We cannot maintain software unless maintainability characters are built into the products and processes. There is an urgent need to reinforce software development practices based on quality and reliability principles. Though maintenance is a mini development lifecycle, it has its own problems. Maintenance issues need corresponding tools and techniques to address them. Software professionals are key players in maintenance. While development is an art and science, maintenance is a craft. We need to develop maintenance personnel to master this craft. Technology impact is very high in systems world today. We can no longer conduct business in the way we did before. That calls for reengineering systems and software. Even reengineered software needs maintenance, soon after its implementation. We have to take business knowledge, procedures, and data into the newly reengineered world. Software maintenance people can play an important role in this migration process. Software technology is moving into global and distributed networking environments. Client/server systems and object-orientation are on their way. Massively parallel processing systems and networking resources are changing database services into corporate data warehouses. Software engineering environments, rapid application development tools are changing the way we used to develop and maintain software. Software maintenance is moving from code maintenance to design maintenance, even onto specification maintenance. Modifications today are made at specification level, regenating the software components, testing and integrating them with the system. Eventually software maintenance has to manage the evolution and evolutionary characteristics of software systems. Software professionals have to maintain not only the software, but the momentum of change in systems and software. In this study, we observe various issues, tools and techniques, and the emerging trends in software technology with particular reference to maintenance. We are not searching for specific solutions. We are identifying issues and finding ways to manage them, live with them, and control their negative impact.




Object-Oriented Behavioral Specifications


Book Description

Object-Oriented Behavioral Specifications encourages builders of complex information systems to accelerate their move to using the approach of a scientific discipline in analysis rather than the approach of a craft. The focus is on understanding customers' needs and on precise specification of understanding gained through analysis. Specifications must bridge any gaps in understanding about business rules among customers, Subject Matter Experts, and `computer people', must inform decisions about reuse of software and systems, and must enable review of semantics over time. Specifications need to describe semantics rather than syntax, and to do that in an abstract and precise manner, in order to create software systems that satisfy business rules. The papers in this book show various ways of designing elegant and clear specifications which are reusable, lead to savings of intellectual effort, time, and money, and which contribute to the reliability of software and systems. Object-Oriented Behavioral Specifications offers a fresh treatment of the object-oriented paradigm by examining the limitations of traditional OO methodologies and by describing the significance of competing trends in OO modeling. The book builds on four years of successful OOPSLA workshops (1991-1995) on behavior semantics. This book deals with precise specifications of `what' is accomplished by the business and `what' is to be done by a system. The book includes descriptions of successful use of abstract and precise specification in industry. It draws on the experience of experts from industrial and academic settings and benefits from international participation. Collective behavior, neglected in some treatment of the OO paradigm, is addressed explicitly in this book. The book does not take `reuse' of specifications or software for granted, but furnishes a foundation for taking as rigorous an approach to reuse decisions as to precise specifications in original developments.




Formal Techniques for Networked and Distributed Systems - FORTE 2003


Book Description

This book constitutes the refereed proceedings of the 23rd IFIP WG 6.1 International Conference on Formal Techniques for Networked and Distributed Systems, FORTE 2003, held in Berlin, Germany in September/October 2003. The 24 revised full papers presented together with 3 invited papers were carefully reviewed and selected from 55 submissions. The papers are organized in topical sections on application of formal description techniques (FDTs), verification, timed automata, verification of security protocols, testing, and FDT-based design.