High level views in object oriented systems using formal concept analysis [recurso electrónico]

By: Material type: TextTextPublication details: Berna : University of Berne, 2005Description: Datos electrónicos (1 archivo : 4,5 MB)Subject(s): Online resources:
Contents:
Dependencies in Object-Oriented Systems -- Formal Concept Analysis in High-Level Views -- XRay Views -- Hierarchy Schemas -- Collaboration Patterns -- ConAn Framework -- Introduction to Formal Concept Analysis. -- Formato de archivo: PDF. -- Disponible también en línea (Cons. 20/03/2009)
Summary: Within object-oriented systems there are different meaningful dependencies between different objects. These dependencies reveal contracts, collaborations and relationships between classes, methods, packages and any development unit in the systems. In most of the cases, these dependencies are not explicit in the code. This problem is due to inadequate or out-of-date documentation and mechanisms such as dynamic binding, inheritance and polymorphism that obscure the presence of existing dependencies. These dependencies play an important part in implicit contracts between the various software artifacts of the system. It is therefore essential that a developer, who has to make changes or extensions to an objectoriented system, understands the dependencies among the classes. Lack of understanding increases the risk that seemingly innocuous changes break the implicit existing contracts in the system. In short, implicit, undocumented dependencies lead to fragile systems that are difficult to extend or modify correctly. In this thesis we develop an approach – based on a methodology and a tool support – to recover this implicit information and generate high-level views of a system at different abstraction levels, using a formal clustering technique called Formal Concept Analysis (FCA). With these views, we help to build the first mental model of a system. Thus the implicit or lost information is made explicit and we are able to find uses of coding styles, possible bottlenecks and weakpoints of a system, identify eventual contracts between the entities, patterns based on the dependencies and – if possible – propose possible solutions to correct problems in the code. With this approach we also evaluate which are the advantages and disadvantages of using a clustering technique in software reverse engineering.
Tags from this library: No tags from this library for this title. Log in to add tags.
Star ratings
    Average rating: 0.0 (0 votes)
Holdings
Item type Current library Call number Status Date due Barcode
Libros Libros Biblioteca Fac.Informática Available DIF-L004

Tesis doctoral -- University of Berne, 2005. --

Dependencies in Object-Oriented Systems -- Formal Concept Analysis in High-Level Views -- XRay Views -- Hierarchy Schemas -- Collaboration Patterns -- ConAn Framework -- Introduction to Formal Concept Analysis. -- Formato de archivo: PDF. -- Disponible también en línea (Cons. 20/03/2009)

Within object-oriented systems there are different meaningful dependencies between different objects. These dependencies reveal contracts, collaborations and relationships between classes, methods, packages and any development unit in the systems. In most of the cases, these dependencies are not explicit in the code. This problem is due to inadequate or out-of-date documentation and mechanisms such as dynamic binding, inheritance and polymorphism that obscure the presence of existing dependencies. These dependencies play an important part in implicit contracts between the various software artifacts of the system. It is therefore essential that a developer, who has to make changes or extensions to an objectoriented system, understands the dependencies among the classes. Lack of understanding increases the risk that seemingly innocuous changes break the implicit existing contracts in the system. In short, implicit, undocumented dependencies lead to fragile systems that are difficult to extend or modify correctly. In this thesis we develop an approach – based on a methodology and a tool support – to recover this implicit information and generate high-level views of a system at different abstraction levels, using a formal clustering technique called Formal Concept Analysis (FCA). With these views, we help to build the first mental model of a system. Thus the implicit or lost information is made explicit and we are able to find uses of coding styles, possible bottlenecks and weakpoints of a system, identify eventual contracts between the entities, patterns based on the dependencies and – if possible – propose possible solutions to correct problems in the code. With this approach we also evaluate which are the advantages and disadvantages of using a clustering technique in software reverse engineering.

There are no comments on this title.

to post a comment.

Powered by Koha