CAMILA: Prototyping and refinement of constructive specifications

  • J. J. Almeida
  • L. S. Barbosa
  • F. L. Neves
  • J. N. Oliveira
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1349)


This paper accompanies the demonstration of Camila, an experimental platform for formal software development, rooted in the tradition of constructive specification methods. The Camila approach is an attempt to make available at software development level the basic problem solving strategy one got used to from school physics - create, experiment and reason on a mathematical model. Based on a notion of formal software component, it encompasses a set-theoretic language and an inequational calculus for classification and refinement. Its kernel is a functional prototyping environment, fully connectable to external applications, equipped with a classified component repository and distribution facilities.


Constructive specification prototyping program calculation 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [Bar98]
    L. S. Barbosa. Reification of Processes. PhD thesis, Universidade do Minho (to appear), 1998.Google Scholar
  2. [Dar82]
    J. Darlington. Program transformation. In Funct. Prog. and Its Applications: An Advanced Course. Cambridge Univ. Press, 1982.Google Scholar
  3. [Geo91]
    C. George. The raise specification language: a tutorial. In Proc. of VDM'91. LNCS (551), 1991.Google Scholar
  4. [Hen84]
    P. Hendersen. me too: A language for software specification and model building. Preliminary Report, University of Stirling, 1984.Google Scholar
  5. [Jon86]
    Cliff B. Jones. Systematic Software Development Using VDM. Series in Computer Science. Prentice-Hall International, 1986.Google Scholar
  6. [Mic94]
    Zbigniew Michalewicz. Genetic Algorithms + Data Structures = Evolution Programs. Springer-Verlag, 1994. Second, Extended Edition.Google Scholar
  7. [Mor90]
    C. Morgan. Programming from Specification. Series in Computer Science. Prentice-Hall International, 1990. C. A. R. Hoare, series editor.Google Scholar
  8. [MS96]
    F. Moller and P. Stevens. The edinburgh concurrency workbench (version 7). User's manual, LFCS, Edinburgh University, 1996.Google Scholar
  9. [NO95]
    F. Luís Neves and José N. Oliveira. Software Reuse by Model Reification. Seventh Annual Workshop on Software Reuse, August 1995.Google Scholar
  10. [Oli90]
    J. N. Oliveira. A reification calculus for model-oriented software specification. Formal Aspects of Computing, 2(1):1–23, 1990.Google Scholar
  11. [Oli92]
    J. N. Oliveira. Software reification using the Sets calculus. In Proc. of the BCS FACS 5th Refinement Workshop, Theory and Practice of Formal Software Development, London, UK, pages 140–171. Springer-Verlag, 8–10 January 1992. (Invited paper).Google Scholar
  12. [Oli95a]
    J. N. Oliveira. Formal specification and prototyping of a building description language. In Proc. CIVIL-COMP'95, Cambridge, August 1995.Google Scholar
  13. [Oli95b]
    J. N. Oliveira. Fuzzy object comparasion and its application to a selfadaptable query mechanism. In Proc. IFSA '95, S. Paulo, July 1995.Google Scholar
  14. [Oli97]
    J. N. Oliveira. Sets: A data structuring calculus and its application to program development. Technical Report Lecture Notes for the Macau Course, UNU/IIST, May 1997.Google Scholar
  15. [Spi89]
    J. M. Spivey. The Z Notation: A Reference Manual. Series in Computer Science. Prentice-Hall International, 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • J. J. Almeida
    • 1
  • L. S. Barbosa
    • 1
  • F. L. Neves
    • 1
  • J. N. Oliveira
    • 1
  1. 1.Computer Science DepartmentUniversity of MinhoBragaPortugal

Personalised recommendations