http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-2.xsd
Formal Engineering for Industrial Software Development
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.
Introduction -- Propositional Logic -- Predicate Logic -- The Module -- Hierarchical CDFDs and Modules -- Explicit Specifications -- Basic Data Types -- Set Types -- Sequence and String Types -- Composite and Product Types -- Map Types -- Union Types -- Classes -- The Software Development Process -- Approaches to Constructing Specifications -- A Case Study of Modeling ATM -- Rigorous Review -- Specification Testing -- Transformation from Designs to Programs -- Intelligent Software Engineering Environment -- Appendix A: Syntax of SOFL.