Chronicles of Concept lattices: Unveiling Structure in the Software World
Résumé
Human activities, including software design, development, evolution and maintenance, produce many datasets with various sizes and various degrees of data complexity. Many knowledge discovery (KD) methods have been designed over the years. These methods aim to analyze datasets, identify knowledge patterns, classify, reason or produce new data. KD literature provides a diversity of symbolic or statistical approaches that have different purposes, benefits and drawbacks. Formal Concept Analysis (FCA) is a KD method which can help in the context of medium-sized and complex data. Its purpose is to highlight an underlying structure composed of knowledge chunks (concepts) and logical dependencies. It can support interactivity and explanation in a KD process. In this talk, I will review the roots of FCA in lattice theory, several typical extensions for complex data and its links with other KD approaches. I will approach the main obstacles in its usage and a few remediation techniques. I will give a particular focus on the application of FCA to Software Engineering, a field where it has been explored to address many different issues, like locating features, identifying design patterns, class model reengineering or component classification. FCA has also been applied for years in Software Product Line Engineering, e.g. for its ability to build clusters of products provided with a symbolic description, to establish correspondences between several description spaces, or to shed light on variability structuring. I will present a few representative researchworks in this domain and I will outline opportunities for FCA in the future, in particular in synergy with other AI methods, such as association rules or statistical machine learning.
Origine | Fichiers produits par l'(les) auteur(s) |
---|