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

Detalles Bibliográficos
Autor Principal: Arévalo, Gabriela Beatriz
Formato: Libro
Lengua:inglés
Datos de publicación: Berna : University of Berne, 2005
Temas:
Acceso en línea:Consultar en el Cátalogo
Resumen: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.
Notas:Tesis doctoral -- University of Berne, 2005. --
Descripción Física:Datos electrónicos (1 archivo : 4,5 MB)

MARC

LEADER 00000nam a2200000 a 4500
003 AR-LpUFIB
005 20250423183005.0
008 230201s2005 xx o 000 0 eng d
024 8 |a DIF-M2701  |b 2793  |z DIF002608 
040 |a AR-LpUFIB  |b spa  |c AR-LpUFIB 
100 1 |a Arévalo, Gabriela Beatriz  |9 45006 
245 1 0 |a High level views in object oriented systems using formal concept analysis [recurso electrónico] 
260 |a Berna :  |b  University of Berne,  |c 2005 
300 |a Datos electrónicos (1 archivo : 4,5 MB) 
500 |a Tesis doctoral -- University of Berne, 2005. -- 
505 0 |a  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) 
520 |a 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. 
650 4 |a ANÁLISIS FORMAL DE CONCEPTOS  |9 46151 
650 4 |a ORIENTACIÓN A OBJETOS  |9 46164 
650 4 |a INGENIERÍA INVERSA  |9 46152 
650 4 |a MANTENIMIENTO DE SOFTWARE  |9 43117 
942 |c BK 
952 |0 0  |1 0  |4 0  |7 0  |9 77074  |a DIF  |b DIF  |d 2009-04-01  |i DIF-L004  |l 0  |p DIF-L004  |r 2025-03-11 17:02:49  |w 2025-03-11  |y BK 
952 |0 0  |1 0  |4 0  |7 3  |8 BD  |9 77075  |a DIF  |b DIF  |d 2025-03-11  |l 0  |r 2025-03-11 17:02:49  |u /www.lifia.info.unlp.edu.ar/papers/2005/Arevalo2005b.pdf  |w 2025-03-11  |y BK 
999 |c 52485  |d 52485