Diagnóstico software
Diagnóstico software (también: software de diagnósticos) se refiere a conceptos, técnicas y herramientas que permiten la obtención de resultados, conclusiones y evaluaciones sobre sistemas de software y su implementación, composición, comportamiento y evolución. Sirve como medio para controlar, dirigir, observar y optimizar el desarrollo de software, mantenimiento de software y software reingeniería en el sentido de un inteligencia de negocios enfoque específico para sistemas de software. Generalmente se basa en la extracción automática, análisis y visualización de fuentes de información correspondiente del sistema de software.
Contenido
- 1 Aplicaciones
- 2 Características
- 3 Principios
- 4 Ejemplos
- 5 Críticos
- 5.1 Temas relacionados
- 6 Referencias
- 7 Enlaces externos
Aplicaciones
Diagnóstico software es compatible con todas las ramas de Ingeniería de software, en particular del proyecto gestión, gestión de la calidad, gestión de riesgos, así como implementación y prueba. Su principal fortaleza es apoyar a todas las partes interesadas de los proyectos de software (en particular, durante mantenimiento de software y para el software de reingeniería tareas[1]) y proporcionar los medios de comunicación eficaz para desarrollo de software proyectos. Por ejemplo, diagnóstico software facilita "cerrar una brecha de información esencial entre la administración y desarrollo, mejorar la conciencia y servir como instrumento de detección de riesgo temprano".[2] Diagnóstico de software incluye métodos de evaluación para el "mantenimiento perfectivo" que, por ejemplo, aplicarán "técnicas de análisis visual para combinar múltiples indicadores de bajo mantenimiento, incluyendo la complejidad del código y entrelazamiento con otras partes del sistema y recientes cambios aplicados al código".[3]
Características
En contraste con múltiples enfoques y técnicas en Ingeniería de software, diagnóstico de software no depende de los lenguajes de programación, técnicas, procesos de desarrollo de software o las técnicas específicas utilizadas en las distintas etapas del proceso de desarrollo software de modelado. En cambio, diagnóstico de software tiene como objetivo analizar y evaluar el sistema de software en su como-es el estado y en base a información generados por el sistema de bybass fuentes de información subjetiva o potencialmente anticuada (por ejemplo, modelos de software inicial). Para ello, diagnóstico software combina y relaciona las fuentes de información normalmente no están directamente vinculados. Ejemplos:
- Métricas de código fuente están relacionadas con la actividad de desarrollador de software para profundizar en los efectos específicos de Desarrollador en calidad de código de software.[4]
- Rastros de ejecución de estructura y tiempo de ejecución de sistema están correlacionados para facilitar la comprensión del programa a través de análisis dinámico en las tareas de mantenimiento de software.[5]
Principios
Es el principio fundamental del diagnóstico software para extraer automáticamente la información de todas las fuentes de información disponibles un determinado de proyectos de software como código fuente base, repositorio de projectos, métricas de código, rastros de ejecución,[6] resultados de la prueba, etc. Para combinar información, se aplican técnicas de minería, análisis y visualización de datos específicas de software. Sus resultados de fuerza, entre varias razones, desde la integración desemparejan espacios de información en el ámbito de un proyecto de software típico, por ejemplo las actividades de desarrollo y Desarrollador (grabadas por el repositorio) y código y métricas de calidad (derivadas mediante el análisis de código fuente) o clave de indicadores de rendimiento (KPI).
Ejemplos
Ejemplos de herramientas de software de diagnóstico software de mapas y métricas de software.
Críticos
Diagnóstico de software — en contraste con muchos enfoques en ingeniería del software — no asume que las funciones para desarrolladores, métodos de desarrollo, programación o lenguajes de modelado están bien o mal (o mejor o peor en comparación con los demás): diagnóstico Software pretende dar penetración en un sistema de software determinado y su estado independientemente de los métodos, modelos o idiomas, utiliza para crear y mantener el sistema.
Temas relacionados
- Estimación de coste en ingeniería de software
- Productividad de programación
- Desarrollo rápido de aplicaciones
- Diseño de software
- Desarrollo de software
- Documentación del software
- Mapa de software
- Ciclo de vida de la versión de software
- Diseño de sistemas
- Ciclo de vida de desarrollo de sistemas
Referencias
- ^ Martin Beck, Jonas Trümper, Jürgen Döllner: un análisis Visual y herramienta de diseño para la planificación de Software Reengineerings. Proceedings of the 6th Workshop Internacional IEEE en visualizar Software para la comprensión y análisis, IEEE Computer Society, pp. 54-61, 2011.
- ^ Johannes Bohnet, Jürgen Döllner: "monitoreo de calidad del código y actividades de desarrollo de Software de mapas". Proceedings of the IEEE ACM CISE Workshop sobre gestión de deuda técnica, págs. 9-16, 2011.
- ^ Jonas Trümper et al.: "Un enfoque de análisis Visual para apoyar el mantenimiento del Software perfectivo". Actas de la XVI Conferencia Internacional sobre visualización de información, IEEE Computer Society, pp. 308-315, 2012.
- ^ Daniel Limberger et al.: "Análisis del código Software interactivo mapas para fuente basada en Web". Actas de la Conferencia Internacional Web3D, ACM, págs. 8, 2013.
- ^ Jonas Trümper et al.: "ViewFusion: correlación de estructura y actividad vistas de trazas de ejecución". Actas de la 10ª teoría y práctica de Computer Graphics Conferencia, European Association for Computer Graphics, págs. 45-52, 2012.
- ^ Johannes Bohnet: "visualización de ejecución rastros y su aplicación para mantenimiento de Software". Tesis doctoral, Hasso Plattner-Instituto, Universidad de Potsdam, 2011.
Enlaces externos
- Un conjunto de herramientas basado en mapas de software por Software de diagnósticos2014
- Video demo mapas de software interactivo para el análisis de código fuente2013
|