Skip to content

Formal Concept Analysis

lucianoMarchezan edited this page Nov 5, 2017 · 12 revisions

Definition:

A mathematical method that provides a way to identify "meaningful groupings of objects that have common attributes".

Variations:

Clarified:

The context does not have duplicate rows or columns

Reduced:

No context rows can be expressed as intersection of other rows. The lattice of such context is meet-reduced. No context columns can be expressed as intersection of other columns. The lattice of such context is join-reduced

Priority Order:

Extraction > Categorize > Group

Inputs:

Outputs:

  • Concept lattice.

Examples:

Tools:

There are a lot of different tools and plugins for FCA that can be found in here

Related Techniques:

Recommended situations

Formal Concept Analysis is recommended when program elements (such as classes, methods, etc.) have meaningful names ("attribute" instead of "atr" or "home" instead of "hm"). Besides that, is highly recommended to use this technique in products well documented.

Not Recommended situations

A Information Retrieval Technique cannot achieve quality results when applied to products with no documentation and no meaningful identifiers names. For that reason we don't recommend the use of Formal Concept Analysis or any other Information Retrieval Technique in those situations.

πŸ”„ Prepare, Assemble and Execute Process for SPL (PAxSPL)

Process Overview

⏩ Phases

πŸ“Ÿ LESSE

PAxSPL is a project developed within the Laboratory of Empirical Studies in Software Engineering

πŸ“Œ Authors:

Luciano Marchezan; Elder Rodrigues; and Maicon Bernardino.

Clone this wiki locally