Deriving Modular Designs from Formal Specifications Deriving Modular Designs from Formal Speciications

We consider the problem of designing the top-level modular structure of an implementation. Our starting point is a formal speciication of the system. Our approach is to analyse the references to the state variables by the operations of the system. Those variables that are referenced/modiied together are likely candidates for forming the state of a module. We evaluate the strategy by applying it to a large Z speciication of a language-based editor.

[1]  Jim Welsh,et al.  A design rationale for a language‐based editor , 1991, Softw. Pract. Exp..

[2]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[3]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[4]  William C. Chu,et al.  A measure for composite module cohesion , 1992, International Conference on Software Engineering.

[5]  Graeme Smith,et al.  The object-Z specification language: version 1 , 1991 .

[6]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

[7]  Luke Wildman,et al.  UQ2: A Multilingual Document Editor , 1990 .

[8]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[9]  Anthony Hall,et al.  Seven myths of formal methods , 1990, IEEE Software.

[10]  David W. Embley,et al.  Assessing the quality of abstract data types written in Ada , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[11]  Song C. Choi,et al.  Extracting and restructuring the design of large systems , 1990, IEEE Software.

[12]  David A. Carrington,et al.  Object-Z: An Object-Oriented Extension to Z , 1989, FORTE.

[13]  Yun Yang,et al.  Tool Integration Techniques , 1991 .