stringtranslate.com

Métrica de software

En ingeniería y desarrollo de software , una métrica de software es un estándar de medida del grado en que un sistema o proceso de software posee alguna propiedad. [1] [2] Incluso si una métrica no es una medida (las métricas son funciones, mientras que las medidas son los números obtenidos mediante la aplicación de métricas), a menudo los dos términos se utilizan como sinónimos. Dado que las mediciones cuantitativas son esenciales en todas las ciencias, los profesionales y teóricos de la informática realizan un esfuerzo continuo para aportar enfoques similares al desarrollo de software. El objetivo es obtener mediciones objetivas, reproducibles y cuantificables, que pueden tener numerosas aplicaciones valiosas en la planificación de cronogramas y presupuestos, estimación de costos, control de calidad, pruebas, depuración de software , optimización del rendimiento del software y asignaciones óptimas de tareas del personal.

Mediciones de software comunes

Las mediciones de software comunes incluyen:

Limitaciones

Como el desarrollo de software es un proceso complejo, con una gran variación tanto en metodologías como en objetivos, es difícil definir o medir las cualidades y cantidades del software y determinar una métrica de medición válida y concurrente, especialmente cuando se hace dicha predicción antes del diseño detallado. Otra fuente de dificultad y debate es determinar qué métricas importan y qué significan. [8] [9] Por lo tanto, la utilidad práctica de las mediciones de software se ha limitado a los siguientes dominios:

Una medición específica puede apuntar a uno o más de los aspectos anteriores, o al equilibrio entre ellos, por ejemplo como indicador de la motivación del equipo o del desempeño del proyecto.

Además, las métricas varían entre el código de programa estático y dinámico, así como para el software (sistemas) orientado a objetos. [10] [11]

Aceptación y opinión pública

Algunos profesionales del desarrollo de software señalan que las mediciones simplistas pueden causar más daño que bien. [12] Otros han señalado que las métricas se han convertido en una parte integral del proceso de desarrollo de software. [8] El impacto de la medición en la psicología del programador ha generado preocupación por los efectos nocivos para el rendimiento debido al estrés, la ansiedad por el rendimiento y los intentos de engañar a las métricas, mientras que otros consideran que tiene un impacto positivo en el valor de los desarrolladores hacia su propio trabajo y les impide hacerlo. siendo infravalorado. Algunos argumentan que la definición de muchas metodologías de medición es imprecisa y, en consecuencia, a menudo no está claro cómo las herramientas para calcularlas llegan a un resultado particular, [13] mientras que otros argumentan que una cuantificación imperfecta es mejor que ninguna (“No se puede controlar lo que se hace”). no se puede medir”). [14] La evidencia muestra que las métricas de software están siendo ampliamente utilizadas por agencias gubernamentales, el ejército de EE. UU., la NASA, [15] consultores de TI, instituciones académicas, [16] y software de estimación de desarrollo comercial y académico .

Otras lecturas

Ver también

Referencias

  1. ^ Fenton, Norman E. (2014). Métricas de software: un enfoque riguroso y práctico. James Bieman (3ª ed.). Boca Ratón, Florida. ISBN 978-1-4398-3823-5. OCLC  834978252.{{cite book}}: CS1 maint: location missing publisher (link)
  2. ^ Timóteo, Aline Lopes; Álvaro, Re; Almeida, Eduardo Santana De; De, Silvio Romero; Meira, Lemos. Métricas de software: una encuesta . CiteSeerX 10.1.1.544.2164 . 
  3. ^ "Umbrales de métricas de información descriptiva (DI)". Centro de Ingeniería de Software Terrestre . Archivado desde el original el 6 de julio de 2011 . Consultado el 19 de octubre de 2010 .
  4. ^ Gill, GK; Kemerer, CF (diciembre de 1991). "Densidad de complejidad ciclomática y productividad de mantenimiento de software". Transacciones IEEE sobre ingeniería de software . 17 (12): 1284-1288. doi :10.1109/32.106988. ISSN  1939-3520.
  5. ^ "mantenibilidad: ¿tiene sentido calcular la relación complejidad ciclomática/líneas de código?". Intercambio de pilas de ingeniería de software . Consultado el 1 de marzo de 2021 .
  6. ^ "OMG adopta la especificación de puntos de función automatizada". Dios mío.org. 2013-01-17 . Consultado el 19 de mayo de 2013 .
  7. ^ Amit, Idan; Feitelson, Dror G. (21 de julio de 2020). "La métrica de calidad del código de probabilidad de compromiso correctivo". arXiv : 2007.10912 [cs.SE].
  8. ^ ab Binstock, Andrew (marzo de 2010). "Observación de la integración: uso eficaz de métricas". Tiempos SD . Medios BZ . Consultado el 19 de octubre de 2010 .
  9. ^ Kolawa, Adam (7 de agosto de 2008). "Cuándo, por qué y cómo: análisis de código". El proyecto del código . Consultado el 14 de febrero de 2021 .
  10. ^ Gosain, Anjana; Sharma, Ganga (2015). "Métricas de software dinámicas para software orientado a objetos: una revisión". En Mandal, JK; Satapatía, Suresh Chandra; Kumar Sanyal, Manas; Sarkar, Partha Pratim; Mukhopadhyay, Anirban (eds.). Diseño de Sistemas de Información y Aplicaciones Inteligentes . Avances en Sistemas Inteligentes y Computación. vol. 340. Nueva Delhi: Springer India. págs. 579–589. doi :10.1007/978-81-322-2247-7_59. ISBN 978-81-322-2247-7.
  11. ^ S, Parvinder Singh; Singh, Gurdev. Métricas dinámicas para polimorfismo en sistemas orientados a objetos . CiteSeerX 10.1.1.193.4307 . 
  12. ^ Kaner, Dr. Cem (2004), Métricas de ingenieros de software: ¿qué miden y cómo lo sabemos? , CiteSeerX 10.1.1.1.2542 
  13. ^ Lincke, Rüdiger; Lundberg, Jonás; Löwe, Welf (2008), "Comparación de herramientas de métricas de software" (PDF) , Simposio internacional sobre pruebas y análisis de software 2008 , págs.
  14. ^ DeMarco, Tom (1982). Control de Proyectos de Software: Gestión, Medición y Estimación . Prensa Yourdon. ISBN 0-13-171711-1.
  15. ^ "Grupo de trabajo de informes y planificación de métricas de la NASA (MPARWG)". Earthdata.nasa.gov. Archivado desde el original el 22 de octubre de 2011 . Consultado el 19 de mayo de 2013 .
  16. ^ "Centro de Ingeniería de Software y Sistemas de la USC". Sunset.usc.edu . Consultado el 19 de mayo de 2013 .
  17. ^ Savola, Reijo M. (1 de septiembre de 2013). "Calidad de las métricas y mediciones de seguridad". Computadoras y seguridad . 37 : 78–90. doi :10.1016/j.cose.2013.05.002. ISSN  0167-4048.

enlaces externos