Formal Engineering for Industrial Software Development: Using the SOFL Method

Front Cover
Springer Science & Business Media, Mar 9, 2013 - Computers - 408 pages

In any serious engineering discipline, it would be unthinkable to construct a large system without having a precise notion of what is to be built and without verifying how the system is expected to function. Software engineering is no different in this respect.

Formal methods involve the use of mathematical notation and calculus in software development; such methods are difficult to apply to large-scale systems with practical constraints (e.g., limited developer skills, time and budget restrictions, changing requirements). Here Liu claims that formal engineering methods may bridge this gap. He advocates the incorporation of mathematical notation into the software engineering process, thus substantially improving the rigor, comprehensibility and effectiveness of the methods commonly used in industry.

This book provides an introduction to the SOFL (Structured Object-Oriented Formal Language) method that was designed and industry-tested by the author. Written in a style suitable for lecture courses or for use by professionals, there are numerous exercises and a significant real-world case study, so the readers are provided with all the knowledge and examples needed to successfully apply the method in their own projects.

 

Contents

Introduction
1
Propositional Logic
21
3
35
Hierarchical CDFDs and Modules 117
116
Explicit Specifications
133
Basic Data Types
143
The Set Types 151
150
The Sequence and String Types
165
The Software Development Process 235
234
Approaches to Constructing Specifications
261
A Case Study Modeling an ATM
269
Rigorous Review
303
Specification Testing 323
322
Transformation from Designs to Programs
349
Intelligent Software Engineering Environment 371
370
References
383

The Composite and Product Types 179
178
The Map Types
191
The Union Types 203
202
A Syntax of SOFL 391
390
Index
405
Copyright

Other editions - View all

Common terms and phrases

About the author (2013)

Shaoying Liu holds a B.Sc and a M.Sc degree in Computer Science from Xi'an Jiaotong University, China, and a Ph.D in Formal Methods from the University of Manchester, U.K. He worked as an Assistant Lecturer and then Lecturer at Xi'an Jiaotong University, a Research Associate at the University of York, and a Research Assistant at the Royal Holloway and Bedford New College of the University of London, respectively, in the period of 1982 -- 1994. He joined the Department of Computer Science at Hiroshima City University as an Associate Professor in April 1994, and then became a faculty member of the Department of Computer Science of the Faculty of Computer and Information Sciences at Hosei University in April 2000. In April 2001 he was promoted to a full Professor . He was invited as a Visiting Research Fellow by The Queen's University of Belfast from December 1994 to February 1995, and a Visiting Professor to Oxford University from December 1998 to February 1999. He is a member of IEEE Computer Society.

Bibliographic information