Skip to main content
Log in

A logical framework for evolving software systems

  • Published:
Formal Aspects of Computing

Abstract

In this paper we present a logical framework for evolving software systems in which the critical aspects of large-scale software systems maintenance are treated by an approach which considers that configuration management is essentially concerned with the management of system changes. The basis of this framework is a formal description of transitions that might be made in the soft-ware change process, the purpose of the formalism is to allow deductions to be made about the validity of such transitions. A generalised formal description of software system architectures from the viewpoint of evolving software systems is also provided in the paper. Reasoning about functional aspects of these descriptions is achieved through the interaction of a theorem prover for the proposed metalogic formalism and a theorem prover for reasoning about sequential programs. In our approach the alterations of software descriptions can be viewed as programming-in-the-large transformations which are stated by means of the descriptive/prescriptive (deontic) features of actions.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Alencar, P.S.C. and Lucena, C.J.P.: A Formal Description of Evolving Software Systems Architectures.Science of Programming (to appear), 1994.

  2. Alencar, P.S.C. and Lucena, C.J.P.: A Formal Description of Evolving Software Systems Architectures, Technical Report CS-92-12, Computer Science Department, University of Waterloo, 1992.

  3. Alencar, P.S.C.: An Evolving Logical Approach to Software Systems (in portuguese), PhD Thesis, Depto de Informatica, Catholic University of Rio de Janeiro (PUC-Rio), 1992.

  4. Alencar, P.S.C. and Lucena, C.J.P.: Formalization of Concepts in Configuration Management (in portuguese),Proceedings of the V Brazilian Symposium on Software Engineering, 1991.

  5. Alencar, P.S.C.: A Logical Approach for Evolving Software Systems (in portuguese), Monografias da Ciência da Computação, Depto de Informática, PUC-Rio, 1989.

  6. Alencar, P.S.C. and Buchsbaum, A. R. V.: An Automated Reasoning Method for a Many-Sorted Deontic Action Logic, Monografias em Ciência da Computação, Depto de Informática, PUC-Rio, 1989.

  7. Ambriola, V., Bendix, L. and Ciancarini, P.: The Evolution of Configuration Management and Version Control.Software Engineering Journal, November, 1990.

  8. Babich, W.:Software Configuration Management. Addison-Wesley, Reading, MA, 1986.

    Google Scholar 

  9. Barringer, H., Chen, J. and Jones, C.: A Logic Covering Undefinedness in Program Proofs.Acta Informatica, vol.21, 251–259, 1984.

    Article  MATH  MathSciNet  Google Scholar 

  10. Bell, J. and Machover, M.:A Course in Mathematical Logic. North-Holland Pub. Co., 1977.

  11. Costa, M. and Cunningham, R. J.: Mechanized Deduction and Modal Action Logic, Forest Report 5, Imperial College, University of London.

  12. Dijkstra, E.:A Discipline of Programming. Prentice-Hall, Englewood Cliffs, NJ, 1976.

    MATH  Google Scholar 

  13. Enderton, H. B.:A Mathematical Introduction to Logic. Academic Press, 1972.

  14. Fikes, R. E. and Nilsson, N. J.: Strips: A New Approach to the Application of Theorem Proving to Problem Solving.Artificial Intelligence,2, 189–208, 1971.

    Article  MATH  Google Scholar 

  15. Fitting, M.:Proof Methods for Modal and Intuitionistic Logics. D. Reidel Pub. Co., Dordrecht, 1983.

    Book  MATH  Google Scholar 

  16. Ginsberg, M. L.: Possible Worlds Planning,Proceedings of the 1986 Workshop on Planning and Reasoning about Action, pp. 213–243, Timberline, OR, 1986.

  17. Ginsberg, M. L.and Smith, D. E.: Reasoning about Action I: A Possible Worlds Approach.Artificial Intelligence,35, pp. 165–195, 1988.

    Article  MATH  MathSciNet  Google Scholar 

  18. Goldblatt, R.: Axiomatizing the Logic of Computer Programming.Lecture Notes in Computer Science,130, Springer-Verlag, 1982.

  19. Gries, D.:The Science of Programming. Springer-Verlag, New York, 1981.

    Book  MATH  Google Scholar 

  20. Habermann, A.: System Composition and Version Control for Ada.Software Engineering Environments, H. Hunke (ed.), North Holland, 1981.

  21. Hoare, C. A. R.: An Axiomatic Basis for Computer Programming.Communications of the ACM, vol.21, October, 1969.

  22. Jackson,P. and Reichgelt, H.: A General Proof Method for First-Order Modal Logic,Proceedings of the IJCAI, pp. 942–944, 1987.

  23. Jeremaes, P., Khosla, S. and Maibaum, T.: A Modal Action Logic for Requirements Specification.Software Engineering 86, eds. P. Brown and D. Barnes, Pub. Peter Peregrinus, 1986.

  24. Jones, C. B.:Software Development: a Rigorous Approach. Prentice-Hall, International Series in Computer Science, 1980.

  25. Jones, C. B.:Systematic Software Development Using VDM. Prentice-Hall, International Series in Computer Science, 1986.

  26. Khosla, S.: System Specification: A Deontic Approach, PhD Thesis, Department of Computing, Imperial College of Science and Technology, 1988.

  27. Narayanaswamy, K. and Scacchi, W.: Maintaining Configurations of Evolving Software Systems.IEEE Trans. Soft. Eng., vol.SE-13, no. 3, pp. 324–334, 1987.

    Article  Google Scholar 

  28. Narayanaswamy, K. and Scacchi, W.: A Database Foundation to Support Software System Evolution.The Journal of Systems and Software,7, pp. 37–49, 1987.

    Article  Google Scholar 

  29. Reiter, R.: A Logic for Default Reasoning.Artificial Intelligence, vol.13, pp. 81–132, 1980.

    Article  MATH  MathSciNet  Google Scholar 

  30. Smullyan, R. M.:First Order Logic. Springer-Verlag, Berlin, 1968.

    Book  MATH  Google Scholar 

  31. Tichy, W.: Software Development Control Based on Module Interconnection,Proceedings of the International Conference on Software Engineering, p. 29–41, IEEE, 1979.

  32. Tichy, W.: Software Development Control Based on System Structure Description, Ph.D. Thesis, CMU Computer Science Department, CMU-CS-80-120, 1980.

  33. Tichy, W.: Design, Implementation, Evaluation of a Revision Control System, 6thInternational Conference on Software Engineering, pp. 58–67, IEEE, September, 1982.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Paulo S. C. Alencar.

Additional information

P. S. C. de Alencar is a Visiting Professor in the Computer Science Department at the University of Waterloo, Waterloo, Ontario, Canada and is currently on leave from the Departamento de Ciência da Computação, Universidade de Brasília, Brasília, Brazil.

C. J. P. Lucena is a Visiting Professor in the Computer Science Department at the University of Waterloo, Waterloo, Ontario, Canada and is currently on leave from the Departamento de Informática, Pontifícia Universidade Católica do Rio de Janeiro, Brazil.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Alencar, P.S.C., de Lucena, C.J.P. A logical framework for evolving software systems. Formal Aspects of Computing 8, 3–46 (1996). https://doi.org/10.1007/BF01211049

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01211049

Keywords

Navigation