Publicado el 1 de Agosto del 2018
1.062 visualizaciones desde el 1 de Agosto del 2018
3,0 MB
89 paginas
Creado hace 14a (20/06/2010)
Evaluación de métricas de
calidad del software sobre un
programa Java.
Proyecto de Fin de Máster en
Programación y Tecnología Software
Curso 2009-2010
Máster en Investigación en Informática.
Facultad de Informática.
Universidad Complutense de Madrid.
______________________________________________________________________
Autor:
Ana María García Sánchez.
Dirigido por:
Dtor. Manuel García Clavel.
Dpto. de Sistemas Informáticos y Computación.
Autorización
El abajo firmante, matriculado en el Máster en Investigación en Informática de la
Facultad de Informática, autoriza a la Universidad Complutense de Madrid (UCM) a
difundir y utilizar con fines académicos, no comerciales y mencionando expresamente
a su autor el presente Trabajo Fin de Máster: “Evaluación de métricas de calidad del
software sobre un programa Java”, realizado durante el curso académico 2009-2010
bajo la dirección del Prof. Manuel García Clavel en el Departamento de Sistemas
Informáticos y Computación, y a la Biblioteca de la UCM a depositarlo en el Archivo
Institucional E-Prints Complutense con el objeto de incrementar la difusión, uso e
impacto del trabajo en Internet y garantizar su preservación y acceso a largo plazo.
Firmado:
Ana María García Sánchez.
i
“Cuando puedas medir lo que estás diciendo y expresarlo en números, sabrás algo acerca de eso;
pero cuando no puedes medirlo, cuando no puedes expresarlo en números, tus conocimientos
serán escasos y no satisfactorios”
Lord Kelvin
“Lo que no sea medible, hazlo medible”
Galileo Galilei
“No se puede controlar lo que no se puede medir”
Tom De Marco
“No se puede predecir lo que no se puede medir”
Norman Fenton
ii
Agradecimientos
En primer lugar, me gustaría dar las gracias al director del proyecto Manuel García
Clavel por la idea inicial y por la ayuda recibida en cada uno de los objetivos
propuestos, a Marina Egea por la revisión final del presente documento y muy
especialmente, me gustaría agradecer a Miguel Ángel García toda la ayuda que me ha
proporcionado a nivel técnico en todas las tecnologías utilizadas, sus explicaciones y
soluciones han sido imprescindible para resolver todos los problemas, así como para
conseguir todos los objetivos propuestos.
A Pablo, por su constante apoyo y ayuda, especialmente durante estos meses en los
que hemos estado trabajando para sacar adelante nuestros respectivos proyectos.
Por último, quiero dar las gracias a mis amigos con los que he compartido estos años
en la Universidad Complutense y muy especialmente quiero agradecer el apoyo de mi
familia, mis hermanas y mis padres, cuyo esfuerzo y trabajo diario ha sido
imprescindible para conseguir todos mis retos, como es el caso del Máster en
Investigación en Informática y en concreto, este proyecto.
iii
iv
Índice de contenidos
RESUMEN DEL PROYECTO ...................................................................................................................... VII
RESUMEN .............................................................................................................................................. VII
PALABRAS CLAVE...................................................................................................................................... VII
ABSTRACT ............................................................................................................................................... IX
KEYWORDS .............................................................................................................................................. IX
APPROACH ............................................................................................................................................... X
1.
INTRODUCCIÓN ................................................................................................................................ 1
1.1
1.2
1.3
METODOLOGÍA ............................................................................................................................. 1
OBJETIVOS DEL PROYECTO ................................................................................................................ 1
Fase I: Estado del arte ....................................................................................................................... 2
Fase II: Metamodelo de Java ............................................................................................................. 2
Fase III: Representación de métricas. ................................................................................................. 3
Fase IV: Generación de código. .......................................................................................................... 3
Fase V: Evaluación de métricas. ......................................................................................................... 3
COMPONENTES UTILIZADOS.............................................................................................................. 3
1.3.1 Metamodelo de Java ............................................................................................................. 3
1.3.2
SpoonEMF ............................................................................................................................ 4
1.3.3
JET Java Emitter Template..................................................................................................... 5
1.3.4 OCL Object Constraint Language ........................................................................................... 5
1.3.5
EOS A Java component for OCL evaluation ............................................................................ 6
2.
ESTADO DEL ARTE ............................................................................................................................. 7
2.1
2.2
MÉTRICAS DE CALIDAD DEL SOFTWARE ............................................................................................... 7
2.1.1 Métricas CK Chidamber y Kemerer ........................................................................................ 9
2.1.2 Métricas de Lorenz y Kidd (1994) ......................................................................................... 11
2.1.3 Métricas R. Martin (1994) ................................................................................................... 12
2.1.4 Métricas de Li-Henry ........................................................................................................... 12
HERRAMIENTAS DE EVALUACIÓN DE MÉTRICAS PARA PROGRAMAS JAVA. .................................................... 12
2.2.1
JCSC – Java Coding Standard Checker .................................................................................. 12
2.2.2 CheckStyle .......................................................................................................................... 14
2.2.3
JavaNCSS ............................................................................................................................ 15
2.2.4
JMT .................................................................................................................................... 17
2.2.5 Metrics Eclipse plugin ......................................................................................................... 19
2.2.6 RSM Resource Standard Metrics .......................................................................................... 21
SDMetrics ........................................................................................................................... 22
2.2.7
2.2.8
SONAR ................................................................................................................................ 23
2.2.9 Kemis “Kybele Environment Mesaurement Information System” .......................................... 25
3. DISEÑO TÉCNICO ............................................................................................................................ 27
3.1
MÓDULO ES.UCM.SPOON.CLIENT .................................................................................................... 28
3.1.1 Descripción ......................................................................................................................... 28
3.1.2
Tipo .................................................................................................................................... 28
Estructura ........................................................................................................................... 28
3.1.3
v
3.2
3.1.4 Procesamiento .................................................................................................................... 29
MÓDULO SPOONTOEOS .............................................................................................................. 30
3.2.1 Descripción ......................................................................................................................... 30
3.2.2
Tipo .................................................................................................................................... 30
3.2.3
Estructura........................................................................................................................... 30
3.2.4 Procesamiento .................................................................................................................... 31
4.
RESULTADOS OBTENIDOS ..................................................................................
Comentarios de: Evaluación de métricas de calidad del software sobre un programa Java (0)
No hay comentarios