O'Reilly logo

Codecharts: Roadmaps and blueprints for object-oriented programs by J. Nicholson, Amnon H. Eden

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 2

Design Description Languages

Let us examine some of the vices and virtues of existing modelling and specification languages, thereby introducing some of the key terms in our discussion.

We take software modelling to be an activity concerned with representing descriptions of programs at some level (or levels) of abstraction. These descriptions are commonly called specifications. Specifications may represent programs, subprograms, libraries, application frameworks, design patterns, or categories of programs at many possible levels of abstraction. Class Diagrams, Interaction Diagrams, Data Flow Diagrams, and Statecharts are some of the most common forms of specification. The languages used for articulating them are commonly referred to as modelling languages but occasionally also as specification languages.

The division of labour between modelling and specification languages is not always clear, but specification languages (such as Z, B, CSP, and VDM) tend to be more rigorous and cater to a mathematical taste (in particular formal specification languages). Modelling languages such as the Unified Modelling Language (UML) and Data Flow Diagrams, on the other hand, emphasize practical benefits and intuitive appeal over mathematical rigour. Also, specification languages are more commonly used to express functional requirements, namely the behavioural demands set by its end user of the program under specification. We are concerned with nonfunctional specifications. Central to ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required