CAST QA Suite - CPRW sales training slides Jun2005

Transcripción

CAST QA Suite - CPRW sales training slides Jun2005
CAST Application Intelligence Platform
for automated technical acceptance & pro-active “inside the
box” software quality enforcement
Alfredo Landa
Director General
CAST Software
Tel.: 91 789 34 84
[email protected]
V 1.3, noviembre 2005 / ALN
Copyright CAST 2005
En esta presentación le comentaremos cómo puede:
ƒ Comprender los factores de calidad del Software
ƒ Reducir los costes de mantenimiento de aplicaciones
ƒ Responder más rápidamente a las necesidades de cambios
en el negocio
ƒ Mejorar el rendimiento por la reducción de las caídas del
sistema
¿Cómo?:
ƒ Gestionando proactivamente la Calidad de las Aplicaciones
ƒ Mientras se reducen los costes de la Calidad
Copyright CAST 2005
2
Calidad Software
Factores de Calidad
ƒ Los Factores de Calidad permiten establecer el grado de calidad
de un producto software. Se miden indirectamente utilizando
métricas.
ƒ Factores que afectan a la Operación del Producto:
ƒ Corrección, Fiabilidad, Facilidad de Uso, Integridad y Eficiencia.
ƒ Factores que afectan a la Revisión del Producto
ƒ Facilidad de Mantenimiento, Flexibilidad y Facilidad de Prueba.
ƒ Factores que afectan a la Transición del Producto
ƒ Reusabilidad, Portabilidad e Interoperatividad
Copyright CAST 2005
3
Calidad Software
ƒ Modelos y Medidas de Calidad
Copyright CAST 2005
4
Calidad Software
ƒ Métricas de Producto (características medibles de Software)
ƒ Atributos internos: Son aquellos que pueden ser medidos examinando
el proceso, producto o recurso mismo.
ƒ Atributos externos: se miden con respecto a como el proceso, producto
o recurso se relaciona con su entorno.
Copyright CAST 2005
5
Calidad Técnica frecuentemente no tenida en cuenta en QA
Enfoque Tradicional QA
Calidad Funcional
Rendimiento
CALIDAD
Calidad Técnica
¿ Por Qué ? ¡Mirar « dentro de la caja »
es muy difícil!
Copyright CAST 2005
6
ƒ Demasiado Trabajo
ƒ Falta de capacidad
técnica
ƒ Sin Tiempo
La Calidad Técnica es Importante
Caida del coste RFC
9 Costes de mantenimiento mayores
9 Lentitud en la respuesta a los cambios en
el negocio
Calidad Técnica
Pobre
ƒ Caidas en la Mantenibilidad
ƒ Documentación & Trazabilidad
deterioradas
9 Peor Rendimiento de las Aplicaciones
ƒ Falta de cumplimiento de las mejores prácticas
ƒ Fallos de arquitectura indetectables
9 Estabilidad Deteriorada
ƒ Regression bugs
Æ ¡ Vale la pena realizar revisiones Técnicas de Aceptación !
Copyright CAST 2005
7
Tiempo Relativo para la
corrección de defectos
... Y cuanto antes se haga, mejor…
40 a 1,000
30 a 70
15 a 40
1
3a6
10
Requisitos - Diseño - Codificación - Pruebas - Revisiones - Operación
Aceptación
Source: TRW data, from W.S. Humphrey, Discipline for Software Engineering, Add. Wesley
9 Corrigiendo un defecto en OPERACIÓN cuesta hasta más de 10 veces más que en
REVISIONES ACEPTACIÓN
9 Corrigiendo un defecto en REVISIONES ACEPTACIÓN cuesta hasta 7 veces más
que en CODIFICACIÓN
Æ ¡ Vale la pena forzar el cumplimiento de reglas y normas !
Copyright CAST 2005
8
Pero forzar la Calidad Técnica es una tarea intimidante
Enormes cantidades de código complejo que analizar repetitivamente
Cobol
C++
Oracle
Power Builder
Delphi
Sybase
ABAP
Lenguajes
Exóticos
J2EE
.Net
•
X
ƒ
ƒ
ƒ
Especialista
QA
ƒ
ƒ
ƒ
ƒ
Copyright CAST 2005
Millones de líneas de código
Miríadas de lenguajes
Necesidad de que sea un proceso repetible
regularmente
Necesidad de verificar muchas reglas
Necesidad de ser exhaustivo
Necesidad de tener consistencia en los
resultados
Necesidad de facilitar las correcciones a los
equipos de desarrollo
9
Las herramientas tradicionales de Calidad Técnica no son de gran ayuda
ƒ Cubren pocos lenguajes
ƒ No todas las aplicaciones se cubren -> uso de muestreos
ƒ Herramientas diversas crean inconsistencias en Calidad
ƒ Se analizan lenguajes, no aplicaciones
ƒ No se cubren todas las capas.
ƒ ¡Análisis de un lenguaje al tiempo!
ƒ Imposible analizar la arquitectura de la aplicación
No « A la Carta »
ƒ Se producen solo métricas predefinidas
ƒ No se tienen en cuenta las reglas y normas internas
ƒ Se hace un juicio de valor, no se ayuda a su corrección
ƒ El muestreo evita disponer de informes de elementos a corregir
Copyright CAST 2005
10
Consecuencias
ƒ La Calidad Técnica cuesta demasiado
ƒ Los planes de Calidad Técnica no se cumplen
ƒ No se facilita la corrección de defectos
ƒ Las correcciónes se realizan cuando cuestan más
Copyright CAST 2005
11
CAST: el nuevo paradigma en el cumplimiento de la Calidad Técnica
erez
CAST Application Intelligence Platform analiza automáticamente:
ƒ TODAS las capas de la MAYORÍA de las aplicaciones
ƒ Almacena el resultado en un Repositorio (Knowledge Base)
ƒ Proporciona información de acciones a tomar por los grupos de
Calidad para forzar el cumplimiento de reglas y normas (de mercado
e internas) de arquitectura y desarrollo
Como resultado, una mejora drástica en la Calidad del software
Copyright CAST 2005
12
Modelo CAST
Modelo basado en cinco índices orientados a medir las
Aplicaciones en su totalidad
ƒ
ƒ
ƒ
ƒ
ƒ
Copyright CAST 2005
Tamaño Funcional
Complejidad Técnica
Granularidad
Acoplamiento
Cumplimiento de Estándares
13
Impacto de Índices CAST
La relación de Factores afectados por los índices CAST se presentan
en la siguiente tabla
Tamaño
Funcional
Facilidad de Uso
Integridad
Eficiencia
Corrección
Fiabilidad
Facilidad de
Mantenimiento
Facilidad de
Prueba
Flexibilidad
Capacidad de
Reutilización
Portabilidad
Interoperabilidad
Copyright CAST 2005
Complejidad
Técnica
Acoplamiento
Granularidad
Estándares
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
14
X
X
X
Como Trabaja CAST
DISTRIBUYE
Application
Intelligence
A Info. de cumplimientos de
Calidad
ƒ
Información de acciones a tomar
para el cumplimiento de estándares
ANALIZA
Código Fuente
Automáticamente
ORGANIZA
Información
Al orden en el Repositorio
Copyright CAST 2005
ƒ
Descripción empírica de las aplicaciones
ƒ
Lista para realizar consultas sobre Calidad
Desde la Complejidad de Software
15
ƒ
Millones de líneas de código
ƒ
Miríadas de lenguajes
Qué proporciona CAST
MEDIDA
DETECCIÓN
CORRECCIÓN
la calidad técnica
de incumplimientos
facilita listados
Métricas
Tamaño Funcional
Granularidad
Acoplamiento
Complejidad Técnica
Cumplimiento Estándares
Mejores Prácticas
Arquitectura
Documentación
Copyright CAST 2005
Cumplimiento de Reglas
Ratios de incumplimientos
+400 reglas del mercado verificadas
Reglas internas verificadas
Nomenclatura
+de 60 métricas de mercado
Rendimiento
16
Listas de incumplimientos
(componentes)
Listados detallados para los
equipos de desarrollo
CAST Analiza la mayoría del portafolio de aplicaciones
ƒ La Mayoría de los Sistemas Distribuídos y Mainframe
ƒ Todas las capas de la aplicación
ƒ Analizadores dedicados para:
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
J2EE
.Net / VB / ASP
C / C++ / Pro C
Oracle Forms & Reports / Power Builder / Delphi
P
BA
A
HTML / Scripting Languages
Cobol / JCL / CICS / DB2 / IMS
SAP ABAP
TIBCO
Business Objects
Oracle PL SQL / Microsoft & Sybase T SQL / DB2 SQL
ƒ Y mucho más con el Analizador Universal
ƒ Programable para cualquier lenguaje
ƒ Resultados menos detallados
Copyright CAST 2005
17
Medición Automática … de todo el portafolio
ƒ Gestión mejorada de la Calidad basada en hechos y medidas
Todos los
Sistemas
Inventario de
métricas
Indicadores Clave
Alertas
Obtención Automática de una foto del estado de la aplicación, en cuanto a calidad
Copyright CAST 2005
18
Visión global o detallada
ƒ Detalles por aplicación o tecnología
Navegación por diversas vistas: tecnología o aplicación
Copyright CAST 2005
19
Monitorización Automática de Indicadores Clave
ƒ Gestione proactivamente calidad, mantenibilidad y rendimiento
Generación Automática de Vistas sobre evolución
Copyright CAST 2005
20
Detección inmediata de cambios en indicador
Producción de Métricas Estándar de Calidad
Indicadores para el Portafolio completo
5 índices estándar por aplicación
Copyright CAST 2005
Vistas y cuadros gráficos
21
CAST cubre todas las capas de la aplicación
Ejemplo: aplic. Java/Oracle multi nivel
Todos los niveles
Análisis de tendencia sobre varias versiones de la aplic.
ƒ Permite el cumplimiento de reglas para aplicaciones completas
ƒ Permite comprobar reglas de Arquitectura
Copyright CAST 2005
22
CAST permite cumplir reglas de mercado e internas
Reglas Estándar (de mercado)
Reglas internas
El motor de reglas permite la creación y
ejecución de reglas para verificar su
cumplimiento
+ 400 Reglas Estándar verificadas…
Motor de Reglas Programable
14 lenguajes de programación…
Mainframe y sistemas distribuidos
Ejemplo de Reglas
Architecture rules
Avoid Classes using multiple inheritance
78%
Avoid Header File circular references
97%
Avoid Directly Accessing database tables
93%
Performance rules
Avoid using Dynamic Instantiation
82%
Avoid using cursors in stored procedures
91%
Avoid queries involving more than 4 tables
73%
Copyright CAST 2005
23
Listado Exhaustivo de componentes defectuosos
ƒ Facilita la corrección
ƒ Control de Calidad basado en acciones a tomar
Índice de
Documentación Java
deteriorado
Navegación
para saber el
porqué
Seleccione Objeto
Listado de todos los objetos a corregir
Copyright CAST 2005
24
Vista del Objeto
CAST permite la evaluación rápida y navegación al detalle
Alerta en Arquitectura
Más Detalle...
Copyright CAST 2005
25
Desde ratios de cumplimiento a información de valor
Esta regla para los procs. de BD no se respeta lo
suficiente
Más Detalle hasta el
listado de componentes
que no cumplen la regla
Copyright CAST 2005
26
Ejemplo de verificación de Reglas de Arquitectura
Regla que verifica que el framework
« hibernate » se utiliza para
persistencia
97% de cumplimientos significa que
existen algunos componentes que
acceden directamente a la BD
Æ Impacto Potencial en integridad de
datos
Todos los componentes que
incumplen la regla identificados
para su corrección
Copyright CAST 2005
27
Ejemplo de verificación de Reglas de Nomenclatura
Se definió una regla como:
« Métodos de Acceso a Datos
deben llevar un prefijo que indica
la acción realizada »
(e.j.: I para inserciones.)
2 métodos no cumplen:
Æ Puede llevar a engaños para
programadores Java e inducir errores
Se identifican Todos los objetos que no
cumplen la regla o norma, y se
enumeran para controlar su corrección
Copyright CAST 2005
28
Otras Aplicaciones de CAST Application Intelligence Platform
ƒ Monitorización y control de calidad en aplicaciones externalizadas
(cumplimiento de ANS, etc)
ƒ Monitorización y control de calidad en aplicaciones de desarrollo interno
ƒ Iniciativas de reducción de costes en mantenimiento (evitar las caidas de los
índices y mejoras en la mantenibilidad)
ƒ Cumplimiento de reglas e iniciativas de los reguladores (Basilea II, SOX, etc.)
ƒ Validación en el uso de « frameworks » de desarrollo
ƒ Validación del uso de servicios comunes en SOA
Copyright CAST 2005
29
¿ Preguntas ?

Documentos relacionados