[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Methodology Task Group - plans, meeting



Dear All,

I believe it is time now to actively plan the future activities of the
CoFI Methodology Task Group. Clearly, most of the discussions about the
design of CASL were methodology-driven, but if we want CASL and CoFI to be
successful we must very seriously organize our future work and produce
documents that will demonstrate and illustrate our views on the role of
algebraic (axiomatic) specifications in software development. Let me
remind you the Aims and Scope of this task group:

-------------------------------------------------------------------------------
Aims and Scope:

The aim of the Methodology task group is to enrich the formalism designed
under the Common Framework Initiative with ideas on the methodology of
system specification and development that we would like to support,
encourage and propagate. We intend to influence the overall design of the
formalism to support these methodological views.

We plan to address methodological issues arising throughout the software
development life cycle. For instance:  

  *  the role of specifications in the development process (relationship
between specifications and programs, formal vs. semi-formal specifications); 
  *  an abstract view of the development process (refinement and proof
obligations, design specifications in-the-large and structuring issues,
behavioural interpretation of specifications, reusability of
modules/specifications/developments, flexibility and evolution); 
  *  techniques for writing specifications of individual system modules
(algebraic specifications vs. other specification techniques,
reachability/initiality, verifying specifications via theorem proving,
testing, checking completeness properties). 

The expected outcome is a proposal for how a naive user should proceed with
the development of a simple system, propped up by a number of more advanced
methods which we believe would be useful in the context of more complex
systems and/or when larger development teams are involved. We also would
like to present these ideas to the user in a readable and self-contained
document.
-------------------------------------------------------------------------------

During the last (very short) meeting of the CoFI Methodology Task Group in
Edinburgh last november, the following issues have been proposed:

XL (Extra large):
	Role of algebraic (axiomatic) specifications in software
engineering. E.g. requirements engineering (from informal requirements to
formal requirements), formal vs. semi-formal specifications, applications to
software testing, software reuse, software reverse engineering.
	Relationship between specifications and programs.
	Reusability of specifications, of developments.

L (Large):
	Formal software development: from a formal requirements
specification to a formal design specification and then possibly a program
written in some existing programming language. Role of architectural
specifications. Behavioural refinement. 

S (Small):
	How to use the various features of the language. E.g. partial
functions vs. total functions on subsorts, generic specifications, 
architectural specifications. How to avoid misusing the language constructs
(e.g. existential equality vs. strong equality). Guidelines for writing
individual pieces of specifications, for structuring large specifications.
	Tutorial on CASL
	Illustrative examples
	Case studies
	
The most urgent thing to do now is to:
* Clarify the list of volunteers for this Methodology task group.
* Establish a workplan with clearly identified items and documents to be
  produced. 
* Allocate volunteers to the identified sub-tasks.

I would therefore like to know your opinion on the above. In particular, if
you are more specially interested in one of the issues listed above, or if
you feel that other issues should be added, please let me know asap how you
intend to contribute to this task group.

Please note that a Methodology Task Group meeting will be held jointly with
the IFIP WG1.3 + WADT meeting next June. We need to organize ourselves
before and during this meeting, and start to produce documents soon !

Best regards,
Michel