A Specification Pattern System

A Specification Pattern System


These pages are under construction. They could undergo drastic changes in terms of organization and content in the next few months. Eventually we hope the structure will become fixed, but that additional useful material will continue to be added.
This page is the home of an online repository for information about property specification for finite-state verification. The intent of this repository is to collect patterns that occur commonly in the specification of concurrent and reactive systems. Most specification formalisms in this domain are a bit tricky to use. To make them easier to use our patterns come with descriptions that illustrate how to map well-understood, but imprecise, conceptions of system behavior into precise statements in common formal specification languages. We're currently planning on mappings to a number of formalisms that have tool support for automated analysis (see the list below for our current plans).

This isn't a static repository. We imagine that additional formalisms may be supported, the set of patterns will be extended, and different organizations of the patterns will be produced catering to different users.

Hopefully lots of people will contribute to and use the information on these pages.

We've collected and answered some frequently asked questions about the specification pattern system. If you have additional questions/comments please send them along to us.


People involved in the Project


Papers


The Patterns

The information in the patterns can be presented in a variety of ways. Our first organization, illustrated below, is based on classifying the patterns in terms of the kinds of system behaviors they describe.


An alternative organization for this information is to group pattern to formalism mappings by specification formalism. The supported formalisms are listed below. Clicking on the formalism will bring you to pages with mappings for each property pattern in that formalisms. Right now we're only supplying the mappings on those pages and you are refered to the complete patterns for information about relationships and example uses.


Pattern Usage

We are making use of the patterns in our applied FSV research. We'll be linking a variety of different specification case studies that have been developed. These serve as both anecdotal evidence of the utility of the patterns and examples of how they can be applied.

Feedback

If you use these patterns in some significant way drop us some email. We'd like to hear about your experiences.

So far people have visited.


Thanks

This work is partially funded by NSF under grants CCR-9308067, CCR-9407182, and CCR-9703094.
Last updated Feb 1998.