Results 1  10
of
12
Assessing modular structure of legacy code based on mathematical concept analysis
, 1997
"... We apply mathematical concept analysis in order to modularize legacy code. By analysing the relation between procedures and global variables, a socalled concept lattice is constructed. The paper explains how module structures show up in the lattice, and how the lattice can be used to assess cohesio ..."
Abstract

Cited by 113 (3 self)
 Add to MetaCart
We apply mathematical concept analysis in order to modularize legacy code. By analysing the relation between procedures and global variables, a socalled concept lattice is constructed. The paper explains how module structures show up in the lattice, and how the lattice can be used to assess cohesion and coupling between module candidates. Certain algebraic decompositions of the lattice can lead to automatic generation of modularization proposals. The method is applied to several examples written in Modula2, Fortran, and Cobol; among them a>100kloc aerodynamics program.
Reengineering of Configurations Based on Mathematical Concept Analysis
 ACM Transactions on Software Engineering and Methodology
, 1996
"... We apply mathematical concept analysis to the problem of reengineering configurations. Concept analysis will reconstruct a taxonomy of concepts from a relation between objects and attributes. We use concept analysis to infer configuration structures from existing source code. Our tool NORA/RECS will ..."
Abstract

Cited by 50 (6 self)
 Add to MetaCart
We apply mathematical concept analysis to the problem of reengineering configurations. Concept analysis will reconstruct a taxonomy of concepts from a relation between objects and attributes. We use concept analysis to infer configuration structures from existing source code. Our tool NORA/RECS will accept source code, where configurationspecific code pieces are controlled by the preprocessor. The algorithm will compute a socalled concept lattice, which —when visually displayed — offers remarkable insight into the structure and properties of possible configurations. The lattice not only displays tinegrained dependencies between configurations, but also visualizes the overall quality of configuration structures according to software engineering principles. In a second step, interferences between configurations can be analyzed in order to restructure or simplify configurations. Interferences showing up in the lattice indicate high coupling and low cohesion between configuration concepts. Source files can then be simplified according to the lattice structure. Finally, we show how governing expressions can be simplified by utilizing an isomorphism theorem of mathematical concept analysis.
Congruence lattices of lattices
"... In the early sixties, we characterized congruence lattices of universal algebras as algebraic lattices; then our interest turned to the characterization of congruence lattices of lattices. Since these lattices are distributive, we gured that this must be an easier job. After more then 35 years, we k ..."
Abstract

Cited by 25 (13 self)
 Add to MetaCart
In the early sixties, we characterized congruence lattices of universal algebras as algebraic lattices; then our interest turned to the characterization of congruence lattices of lattices. Since these lattices are distributive, we gured that this must be an easier job. After more then 35 years, we know that we were wrong. In this Appendix, we give a brief overview of the results and methods. In Section 1, we deal with nite distributive lattices; their representation as congruence lattices raises many interesting questions and needs specialized techniques. In Section 2, we discuss the general case. A related topic is the lattice of complete congruences of a complete lattice. In contrast to the previous problem, we can characterize complete congruence lattices, as outlined in Section 3.
Algorithms for Concept Lattice Decomposition and their Application
, 1995
"... We present algorithms for horizontal decomposition, subdirect decomposition, and subtensorial decomposition of concept lattices. The implementations of these algorithms are described, and their complexity is investigated. We then apply the decomposition algorithms to reengineering problems in softwa ..."
Abstract

Cited by 9 (0 self)
 Add to MetaCart
We present algorithms for horizontal decomposition, subdirect decomposition, and subtensorial decomposition of concept lattices. The implementations of these algorithms are described, and their complexity is investigated. We then apply the decomposition algorithms to reengineering problems in software engineering, and present several examples. It turns out that concept lattice decomposition is useful not only for understanding old software, but also for restructuring it. 1 Introduction Analysing old software has become an important topic in software technology, as there are millions of lines of legacy code which lack proper documentation; due to ongoing modifications, software entropy has increased steadily. If nothing is done, such software will die of old age  and the knowledge embodied in the software is inevitably lost. As a first step in "software geriatry", one must understand the structure of old software and reconstruct abstract concepts from the source code (called "software...
Formal Concept Analysis on its Way from Mathematics to Computer Science
 Proc. 10th Intl. Conf. on Conceptual Structures (ICCS 2002). LNCS
, 2002
"... In the last years, the main orientation of Formal Concept Analysis (FCA) has turned from mathematics towards computer science. ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
In the last years, the main orientation of Formal Concept Analysis (FCA) has turned from mathematics towards computer science.
Efficient algorithms on the Moore family associated to an implicational system
 Discr. Math. and Theoret. Comput. Sci
"... An implication system (IS) Σ on a finite set S is a set of rules called Σimplications of the kind A →Σ B, with A,B ⊆ S. A subset X ⊆ S satisfies A →Σ B when “A ⊆ X implies B ⊆ X ” holds, so ISs can be used to describe constraints on sets of elements, such as dependency or causality. ISs are formall ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
An implication system (IS) Σ on a finite set S is a set of rules called Σimplications of the kind A →Σ B, with A,B ⊆ S. A subset X ⊆ S satisfies A →Σ B when “A ⊆ X implies B ⊆ X ” holds, so ISs can be used to describe constraints on sets of elements, such as dependency or causality. ISs are formally closely linked to the well known notions of closure operators and Moore families. This paper focuses on their algorithmic aspects. A number of problems issued from an IS Σ (e.g. is it minimal, is a given implication entailed by the system) can be reduced to the computation of closures ϕΣ(X), where ϕΣ is the closure operator associated to Σ. We propose a new approach to compute such closures, based on the characterization of the directoptimal IS Σdo which has the following properties: 1. it is equivalent to Σ 2. ϕΣdo (X) (thus ϕΣ(X)) can be computed by a single scanning of Σdoimplications 3. it is of minimal size with respect to ISs satisfying 1. and 2. We give algorithms that compute Σdo, and from Σdo closures ϕΣ(X) and the Moore family associated to ϕΣ.
Building SubKnowledge Bases Using Concept Lattices
 The Computer Journal
, 1996
"... A theory of concept (Galois) lattices was first introduced by R. Wille ([1]). An extension of his work to simple structures called concept sublattices was given in [2]. In this paper we show that concept sublattices can be applied for (i) determining subsumption of specifications, and (ii) decomposi ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
A theory of concept (Galois) lattices was first introduced by R. Wille ([1]). An extension of his work to simple structures called concept sublattices was given in [2]. In this paper we show that concept sublattices can be applied for (i) determining subsumption of specifications, and (ii) decomposing specifications in terms of other ones. We show that the latter application of the theory may provide us with new conceptualizations of a specification.
Characterization of Lattices Induced by (extended) Chip Firing Games
 In Discrete Mathematics and Theoretical Computer Science, Proceedings of the 1st international conference Discrete Models: Combinatorics, Computation, and Geometry (DMCCG '01
, 2001
"... this paper are finite, therefore they have a least and a greatest element, respectively denoted by 0 L and 1 L . A subset L 1 of a lattice L is a sublattice of L if L 1 is stable by the join and meet in L: that is if, for each x;y 2 L 1 ; x _ L y 2 L 1 and x ^ L y 2 L 1 . A lattice is ranked if all ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
this paper are finite, therefore they have a least and a greatest element, respectively denoted by 0 L and 1 L . A subset L 1 of a lattice L is a sublattice of L if L 1 is stable by the join and meet in L: that is if, for each x;y 2 L 1 ; x _ L y 2 L 1 and x ^ L y 2 L 1 . A lattice is ranked if all the paths in the covering relation from the maximal to the minimal element have the same length.
A Data Representation for Abstract Reasoning
, 1997
"... Straightforward representation of relational specications by trees, graphs etc. are usually inadequate when a relation on specications has to be determined. A remedy for this problem is provided by the Galois lattice representation of relations. By extending Galois lattices with semantical infor ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Straightforward representation of relational specications by trees, graphs etc. are usually inadequate when a relation on specications has to be determined. A remedy for this problem is provided by the Galois lattice representation of relations. By extending Galois lattices with semantical information we get a supporting representation for abstract reasoning. We exemplify this lattice representation by a specication of card games. 1 Introduction Whether a specication (or part of it) is an instance of a more general one can be useful information when one aims at improving his(her) specication, e.g. by introducing more suitable abstractions. This problem arises, amongst others, in the topdown development of specications. In such a case, one gives rst a general description of the problem and then renes it, makes it more specic, such that it nally covers a large part of the problem domain. The one uncovered is then used to complete the specication in an ad hoc way, usual...
Laboratoire de l'Informatique du Paralllisme
, 1998
"... This paper discusses some algorithmic issues when computing with a heterogeneous network of workstations (the typical poor man's parallel computer). Dealing with processors of dioeerent speeds requires to use more involved strategies than blockcyclic data distributions ..."
Abstract
 Add to MetaCart
This paper discusses some algorithmic issues when computing with a heterogeneous network of workstations (the typical poor man's parallel computer). Dealing with processors of dioeerent speeds requires to use more involved strategies than blockcyclic data distributions