A logic-based framework for reasoning support in software evolution

  • Vassilios C. Vescoukis
  • Nikolaos Papaspyrou
  • Emmanuel Skordalakis
Case Environments
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1080)


Software development has been acknowledged as a complicated problem-solving activity done in a complex, multi-dimensional space. People actively involved in software development need support in understanding and documenting not only the description of the software developed, but also the problem domain and the reasons behind decisions taken during evolution. Development methods do not provide such support, and researchers begin to explore the recording of reasoning in specific phases of software evolution. Several data models have been presented, aiming to support developers by maintaining a repository of deliberation elements of decisions taken during development; these models are usually supported by a special CASE tool that can be classified as a Software decision management system. Using experience gained in the development of large-scale applications in an industrial environment, and experimenting with prototype software design decision management systems, we introduce PROFILE, a conceptual logic-based meta-model that integrates software evolution process modelling with deliberation representation and decision factors. PROFILE enhances existing models by providing support throughout the whole software evolution, by capturing assumptions as real-world reasoning elements, and by maintaining a Knowledge Base of decision-making factors. A prototype Software Evolution Decision Support System based on an instance of PROFILE is also presented in this paper.


meta-models decision-based software development logic-based models knowledge-based software engineering conceptual modelling reasoning software evolution support 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [Arango93]
    Arango, Guillermo, and Eric Schoen, and Robert Pettengill, A Process for Consolidating and Reusing Design Knowledge, Proceedings of the 15th International Conference on Software Engineering, IEEE Computer Society Press, pp. 231–242, 1993.Google Scholar
  2. [Arango93b]
    Arango, G., and E. Shoen, R.Pettengill, and J.Hoskins, The Graft-Host Method for Design Evolution, Proceedings of the 15th International Conference on Software Engineering, IEEE Computer Society Press, 1993.Google Scholar
  3. [Conklin88]
    Conclin, J., and M.L., Begeman, IBIS: A Hypertext Tool for Exploratory Policy Discussion, Vol 6, No 4, pp. 303–331, 1988.Google Scholar
  4. [Devanbu91]
    Devanbu, P., and R. Brachman, P. Selfridge, and B. Ballard, LaSSIE: A Knowledge-Based Software Information System, Communications of the ACM, Vol 34, No 5, pp. 3549, May 1991.Google Scholar
  5. [Dong91]
    Dong, Jinghuan, and Chris Wild, and Kurt Maly, A Software Development and Evolution Model Based on Decision-making, Proceedings of the 3rd International Conference on Software Engineering and Knowledge Engineering, Knowledge Systems Inst., Skokie, IL, USA, pp. 9–14, 1991.Google Scholar
  6. [Fischer92]
    Fischer, Gerhard, and A. Girgensohn, K. Nakakoji, and David Redmiles, Supporting Software Designers with Integrated Domain-Oriented Design Environments, IEEE Transactions on Software Engineering, Vol 18, No 6, pp. 511–522, June 1992.Google Scholar
  7. [Jarke91]
    Jarke, M., Conceptbase 3.0 user manual, Univ. Passau, Passau, Germany, Tech. Rep. MIP-9107, March 1991.Google Scholar
  8. [Lease90]
    Lease, M., and M. Lively, and J. Leggett, Using an Issue-based hypertext system to capture the software life-cycle process, Hypermedia, vol. 2, no. 1, 1990.Google Scholar
  9. [Lee90]
    Lee, Jintae, SIBYL: A Qualitative Decision Management System, Artificial Intelligence at MIT: Expanding Frontiers, Winston and Shellard, editors, MIT Press, Cambridge, MA, Vol 1, Ch. 5, 1990.Google Scholar
  10. [Lee91]
    Lee, Jintae, Extending the Potts and Bruns Model for Recording Design Rationale, Proceedings of the 13th International Conference on Software Engineering, IEEE Computer Society Press, pp. 114–125, 1991.Google Scholar
  11. [Lehman80]
    Lehman, M.M., Program life cycles and laws of software evolution, Proceedings IEEE special issue on Software Engineering, pp. 1060–1076, September 1980.Google Scholar
  12. [Lehman91]
    Lehman, M.M., Software Engineering, the software process and their support, IEE Software Engineering Journal, special issue on Software Environments and Factories, 6(5), pp. 243–258, September 1991Google Scholar
  13. [Mylop90]
    Mylopoulos, J., and A. Borgida, and M. Jarke, and M. Koubarakis, Telos: Representing knowledge about information systems, ACM Trans. Inform. Syst., vol 8, pp. 325–362, October 1990.Google Scholar
  14. [Oivo90]
    Oivo, Markku, Knowledge-Based Support for Embedded Computer Software Analysis and Design, Technical Research Centre of Finland, ISBN 951-38-3763-7, September 1990.Google Scholar
  15. [Potts88]
    Potts, Collin, and Glenn Bruns, Recording the Reasons for Design Decisions, Proceedings of the 10th International Conference on Software Engineering, IEEE Computer Society Press, pp. 418–427, 1988.Google Scholar
  16. [Ramesh92]
    Ramesh, B., and V. Dhar, Supporting Systems Development by Capturing Deliberations During Requirements Engineering, IEEE Transactions on Software Engineering, Vol 18, No 6, pp. 498–510, June 1992.Google Scholar
  17. [Rose91]
    Rose, T., and M. Jarke, and M. Gocek, and M. Maltzahn, and H. Nissen, A decision based configuration process environment, Software Eng. J., vol. 6 no.5, pp. 332–346, 1991.Google Scholar
  18. [Rich92]
    Rich, Charles, and Yishai A. Feldman, Seven Layers of Knowledge Representation and Reasoning in Support of Software Development, IEEE Transactions on Software Engineering, Vol 18, No 6, pp. 451–469, June 1992.Google Scholar
  19. [Siddiqi90]
    Siddiqi, J.I., and J.H. Sumiga, and B. Khazaei, Use of a Blackboard Framework to Model Software Design, Empirical Foundations of Information and Software Science V, Edited by P. Zunde and D. Hocking, Plenum press, NY, pp. 99–107, 1990.Google Scholar
  20. [Toulmin84]
    Toulmin, S., and R. Rieke, and A. Janik, An introduction to reasoning, 2nd edition, NY Macmillan, 1984Google Scholar
  21. [Vesc95]
    V.C.Vescoukis, Software Design Decisions, proceedings of CAiSE 95 W3, Jyvaskyla, Finland, June 1995.Google Scholar
  22. [Humphrey89]
    Humphrey, S. Watt, Managing the Software Process, SEI, Addison-Wesley 1989, ISBN 0-201-18095-2.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Vassilios C. Vescoukis
    • 1
  • Nikolaos Papaspyrou
    • 1
  • Emmanuel Skordalakis
    • 1
  1. 1.National Technical University of Athens, Electrical & Computer Engineering Department Computer Science DivisionSoftware Engineering LaboratoryGreece

Personalised recommendations