Software Development Process From Natural Language Specification
Abstract data types and software validation