Validated Designs for Object-oriented Systems

Fitzgerald, John.

Validated Designs for Object-oriented Systems [electronic resource] / by John Fitzgerald, Peter Gorm Larsen, Paul Mukherjee, Nico Plat, Marcel Verhoef. - XII, 404 p. 65 illus. online resource.

Models and Software Development -- Building a Model in VDM++: An Overview -- VDM++ Tool Support -- Modelling Object-oriented Systems in VDM++ -- Defining Data -- Defining Functionality -- Modelling Unordered Collections -- Modelling Ordered Collections -- Modelling Relationships -- Modelling in Practice: Three Case Studies -- Model Structuring: The Enigma Cipher -- Combining Views: The CSLaM System -- TradeOne: From Enterprise Architecture to Business Application -- From Models to Code -- Concurrency in VDM++ -- Model Quality -- Implementing in Java.

Object-oriented design methods are commonplace in computing systems development, but are often dismissed as 'boxes & arrows'. If systems developers are to gain full advantage from such methods, they should be able to achieve designs that are not merely the subject of heated argument, but can be improved by careful, rigorous & machine-supported analysis. This book describes an object-oriented design approach that combines the benefits of abstract modelling with the analytic power of formal methods, to give designs that can be rigorously validated & assured with automated support. Aimed at software architects, designers & developers as well as computer scientists, no prior knowledge of formal methods is assumed. The elements of functional modelling are introduced using numerous examples & exercises, industrial case studies & experience reports. Industry-strength tools support the text. Go to www.vdmbook.com to download free-of-charge VDMTools Lite, which gives the possibility to try out examples from the book

9781846281075

10.1007/b138800 doi


Computer science.
Software engineering.
Computational complexity.
Computer Science.
Software Engineering/Programming and Operating Systems.
Software Engineering.
Discrete Mathematics in Computer Science.

QA76.758

005.1

Maintained by VTU Library