From: lagemaat@cs.utwente.nl (Jeroen van de Lagemaat)
Subject: Re: Functional Spec. Lang???
Organization: University of Twente, Dept. of Computer Science
Date: Wed, 14 Oct 1992 08:21:12 GMT

In article <Bw3C8C.LHn@world.std.com>, boag@world.std.com (Scott A Boag) writes:
|> I am looking for a "functional specification language".  
|> I came up with this term before I saw Z, and after 
|> looking at a book on Z today, I'm pretty sure that Z 
|> isn't what I want.  So, maybe someone out there can tell 
|> me if they know of anything like the following 
|> description:
|> 
|> After having done many functional specifications for GUI 
|> applications, I notice that, though we try, a couple of 
|> zillion holes end up in the specifications every time.  
|> The kind of work we do is more function/feature-driven 
|> rather than data-driven.  Since our formal methodology 
|> (P+) is based on Maurice data modiling, it hasn't helped 
|> or at least seems to confuse people more than it helps.  
|> State tables could help except they are far too large on 
|> GUI systems (in my experience).  So...
|> 
|> I thought it would be neat if there were something that 
|> would force the specifier to take care of certain 
|> details such as context sensitivity, data in/out, 
|> functional description, requirements fullfillment, input 
|> field range bounds, mockup picture, etc.  Ideally the 
|> document could produce a functional specification 
|> suitable for management review, as well as a more 
|> detailed spec, with implementation directions, for the 
|> programmers.
|> 
|> I suppose I'm just dreaming...
|> 
|> 
|> -- 
|> **********************************************************
|> *  Scott Boag
|> *  
|> **********************************************************

Dear Scott,

From your description of the problem at hand I would assume that the
results of the Lotosphere project could be of great help to you.

In Lotosphere a method and tools where developed for the functional specification,
validation, implementation and testing of complex hard/software systems.

The language we used is LOTOS, an international standard (IS 8807).

The method accomodates your stated needs in the following respect:
- LOTOS is a language to describe functional aspects of systems,
  both in very abstract way and implementation oriented.
- The tools we produced include:
  editors (syntax driven)
  an animator (to play the specified functions for review, analysis, 
     validation etc.)
  report generators for review and analysis
  verifiers to verify certain aspects (e.g. robustness)
  a compiler to generate prototypes (in C)
- The method allows you to systematically derive an implementation of your
  system, all the way from your most abstract (user requirements oriented)
  specification. This is not automatic, one needs human intelligence in this
  process, but tool support is provided (e.g. transformation tools).
  The method assumes that LOTOS is used all over this trajectory towards
  implementation, so only functional aspects are taken into account by it.

LOTOS itself has a textual and graphical variant, the tools support both. 
LOTOS consists of a process part to desceribe functionalities, and a data part
to describe the data exchanged between functionalities.

As you can imagine from the above, I think a lot of the capabilities 
of LOTOS and the tools for it. The reason for this is that I am convinced that
formal methods as a systematic support for high quality design of systems are
THE WAY to go. I see some justification for this view in the numerous problems
software companies have at the moment, where clients are getting more aware
of the possibilities of systems and the quality of the systems delivered to 
them.

If you are interested in more about the above, contact me.


Regards, Jeroen. 

   
-- 
    ___
 __/   \__________  Jeroen van de Lagemaat    <lagemaat@cs.utwente.nl>
|  \___/          |         
|___     __   ___ | University of Twente     
| |  |  /  \ (__  | Tele-Informatics & Open Systems
| |__|__\__/____) | P.O. Box 217  NL-7500 AE Enschede  The Netherlands
|_________________| tel. +31 53 893684              tfx. +31 53 333815

                    Humour, you're making me laugh.
                                    - Herman Finkers, Dutch comedian -