Formal concept analysis used for software analysis and modelling

  • Authors:
  • Wolfgang Hesse;Thomas Tilley

  • Affiliations:
  • FB Mathematik und Informatik, Philipps-Universität, Marburg, Germany;School of Information Technology and Electrical Engineering, University of Queensland, Brisbane, Australia

  • Venue:
  • Formal Concept Analysis
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Formal Concept Analysis (FCA) has shown its benefits in many application areas – including the field of Software Engineering. In general, FCA can successfully be used in almost all phases of the software life cycle. Several applications deal with software architecture, modularisation, program/code and configuration analysis while the early phases of the software life cycle – including requirements analysis, domain and system modelling – have not been considered to the same extent so far. This article focuses on the use of FCA during the early phases of software development. First of all, the software life cycle and the importance of concepts – in particular for object oriented modelling (OOM) – are discussed. In principle, FCA can be used wherever concepts play a significant role in the software process. Reported work in this area focuses on requirements engineering (RE), use case analysis (UCA), object-oriented modelling, the analysis of class/object hierarchies and component retrieval. As a typical application, the task of finding or deriving class candidates from a given use case description is considered in more detail. FCA offers valuable support to bridge this well-known gap existing in almost all OO methods. FCA allows a “crossing of perspectives” – between the functional view represented by the use cases and the data view implied by the “things” occurring there. Finally, future perspectives for using FCA as an encompassing tool supporting major parts of the software process are discussed. Such an approach might open a new vision on a thorough concept-based software engineering process.