Component types qualification in Java legacy code driven by communication integrity rules

Component Based Software Engineering is a way to improve software modularization and to embed architectural concerns in the source code. Making explicit the architectural concerns in code helps to mitigate the problem of architectural erosion. The restructuring of legacy code with components in mind...

Full description

Autores:
Arboleda Jiménez, Hugo Fernando
Royer, Jean Claude
Tipo de recurso:
http://purl.org/coar/resource_type/c_c94f
Fecha de publicación:
2011
Institución:
Universidad ICESI
Repositorio:
Repositorio ICESI
Idioma:
eng
OAI Identifier:
oai:repository.icesi.edu.co:10906/81946
Acceso en línea:
http://dx.doi.org/10.1145/1953355.1953377
http://portal.acm.org/citation.cfm?doid=1953355.1953377
http://hdl.handle.net/10906/81946
Palabra clave:
Arquitectura
Evaluación de la calidad
Comunicación - Innovaciones tecnológicas
Ingeniería de software
Automatización y sistemas de control
Automation Command and control system
Rights
openAccess
License
https://creativecommons.org/licenses/by-nc-nd/4.0/
Description
Summary:Component Based Software Engineering is a way to improve software modularization and to embed architectural concerns in the source code. Making explicit the architectural concerns in code helps to mitigate the problem of architectural erosion. The restructuring of legacy code with components in mind requires the use of tools to assess compliance with component programming principles. The property of communication integrity is one of the major principles for implementing software architectures. However, there is a paucity of tools for assessing the quality of code components. To cope with this issue, we define a component model in Java and a tool for identifying component types, which relies on a set of rules to statically check potential violations of the communication integrity property in Java source code. We illustrate its application with a case study and report the results of our experiments with it.