scieee AI-readable full text Open interactive document viewer

Pruebas de sistemas software

Fernández Sáez, Aurelio

Abstract

En el marco de la ingeniería de sistemas, la conferencia versa sobre algunos de los aspectos centrales de la disciplina: la ingeniería de requisitos, la verificación y la validación de sistemas. El eje central es la labor del ingeniero de pruebas y, haciendo uso de un ejemplo, se presentan tanto las ideas clave de esta actividad como la experiencia del conferenciante a lo largo de su trayectoria profesional. Un repaso a las lecciones aprendidas cierra la conferencia

Full text

Pruebas de Sistemas SW Los requisitos SW desde otro punto de vista Málaga, 30 noviembre 2015 1ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Pruebas de sistemas SW Los requisitos SW desde otro punto de vista Sistemas y SW Sistemas SW Los requisitos de usuario El ingeniero de pruebas La misión de las pruebas Las limitaciones Lo necesario Las fuentes de problemas El papel de las pruebas en V&V Las técnicas de diseño Los objetivos La cobertura La medida de la calidad El lugar El proceso Una visión operativa Los niveles de madurez Y para terminar: Ingeniería de Sistemas Algunas lecciones aprendidas Contenidos 2ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Sistemas y Software Unas definiciones y… una declaración de principios El software va a tratarse siempre como una parte integral de un sistema y… El software importa en cuanto es parte de un sistema al que aporta funcionalidad Un sistema es un modelo de un objeto de interés caracterizado por: una frontera que lo delimita, unos flujos de información a través de ésta (interfaces) y una estructura interna. Un sistema es un conjunto integrado de elementos, subsistemas o montajes que logran un objetivo definido. Estos elementos incluyen productos, procesos, personas, información, técnicas, instalaciones, servicios y otros elementos de soporte. Ref. ISO/IEC: Systems and software engineering — Software life cycle processes. ISO/IEC 12207: 2008. Ref. ISO/IEC/IEEE: Systems and software engineering — Vocabulary. ISO/IEC/IEEE 24765: 2010. Software es la totalidad o una parte de los programas —combinaciones de instrucciones y definiciones de datos que dotan a un ordenador de la capacidad de realizar funciones de computación y control—, procedimientos, reglas, documentación y datos pertenecientes a la operación de un sistema de proceso de información. As… Essentially, all models are wrong, but some are useful G. Box Ref. INCOSE: Systems engineering handbook. 4th ed. INCOSE-TP-2003-002-04. 2015. Ref. BOX, G.: Empirical Model-Building and Response Surfaces. John Wiley & Sons, INC; 1987. 3ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Sistema Software O sea, un sistema de un sistema de, al menos, un sistema Ref. ISO/IEC/IEEE: Systems and software engineering — Vocabulary. ISO/IEC/IEEE 24765: 2010. Un sistema de software intensivo cuyo único elemento objeto de desarrollo o modificación es el software Un sistema en el que el software ejerce una influencia esencial sobre su diseño, construcción, desarrollo y la evolución Un sistema en el que el software, además de ejercer una influencia esencial sobre su diseño, construcción, desarrollo y evolución, es el único elemento objeto de desarrollo o modificación Y un sistema de software intensivo es… Luego un sistema software es… Un sistema software es… Ref. ISO/IEC/IEEE: Systems and software engineering — Architecture description. ISO/IEC/IEEE 42010: 2011. 4ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Un requisito es algo que necesita alguien que importa Un requisito de usuario es algo que necesita un usuario que importa Luego… Ahora… Ya sólo falta saber quién es ese usuario que importa Deducir lo que necesita a partir de lo que quiere y… Los Requisitos de Usuario ¿Qué entiendes por requisito de usuario? 5ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista El ingeniero de pruebas es quien aporta información, significativa para alguien, sobre los fallos o defectos que descubre en un sistema Sin embargo Jefe de proyecto Analista Programador Experto de negocio Soporte técnico Comercial Órgano de decisión Cliente Usuario del sistema ni asegura la calidad del producto ni veta ni autoriza el lanzamiento del producto El Ingeniero de Pruebas ¿Quién prueba? Ref. KANER, C; BACH, J; PETTICHORD B.: Lessons Learned in Software Testing: A Context Driven Approach. John Willey & Sons, Inc., 2002. 6ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista VERIFICAR VALIDAR CERTIFICAR El sistema NO es correcto bajo unas condiciones de operación El sistema desarrollado NO es correcto El sistema NO está desarrollado correctamente La misión de las pruebas ¿Qué quieres probar? Ref. FOX, A.; PATTERSON, D.: Engineering software as a service. Strawberry Canyon LLC, 2nd Beta Ed. 0.10.2, 2013 Se lee: <A> es buscar evidencias de que <B> 7ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Las limitaciones intrínsecas ¿Qué puedes probar? Localizable Orgánico Contagioso Ostensible Sólo somos capaces de pillar un defecto Salvo con la suerte de cara… Error Estado (interno) incorrecto Fallo Funcionamiento incorrecto respecto a lo esperado Defecto Carencia o imperfección propia del sistema ¿Bajo qué condiciones el defecto produce el fallo? ¿Y por qué va a ser un único defecto el que produce el fallo? ¿Bajo qué condiciones el defecto se manifiesta en un error? ¿Cuáles son los errores característicos de un defecto?¿Son únicos? 8ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Un producto a tiempo con especificaciones Productos de la competencia Productos relacionados Versiones anteriores Actas de reunión, e-mails Opiniones de los usuarios Artículos publicados Libros de texto Guías de estilo Opinión experta Unas especificaciones que respondan a los requisitos Unos requisitos que representen las necesidades reales de los usuarios y… y… Lo necesario para las pruebas ¿Qué necesitas para empezar a probar? ¿Y si no? O sea, (casi) siempre 15 ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista El lugar de las pruebas (i) DESARROLLO NIVELES DE PRUEBA Especificación de Requisitos Diseño Funcional Diseño Técnico Especificación de Componentes Codificación Pruebas de ACEPTACIÓN Pruebas de SISTEMA Pruebas de INTEGRACIÓN Pruebas de COMPONENTES Pruebas de CÓDIGO Revisión y Diseño de Pruebas En un modelo en “V” de desarrollo-pruebas Seleccionar los niveles de prueba 16 ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista El lugar de las pruebas (ii) Faceta de negocio Faceta tecnológica Soporte a eq. desarrollo Valoración del producto C1 C2 C3 C4 Pruebas funcionales Ejemplos Pruebas de “guión” Prototipos Simulaciones Pruebas exploratorias Pruebas de aceptación Pruebas de “escenario” Pruebas de usabilidad “Alpha/Beta” Pruebas de código Pruebas de componentes Pruebas de integración Pruebas de rendimiento Pruebas de carga y estabilidad Pruebas de seguridad Automatizado/Manual Automatizado Manual Herramientas En un modelo “ágil” de desarrollo-pruebas Ref. CRISPIN, L.; GREGORY, J.: Agile Testing: A Practical Guide for Testers and Agile Teams. Addison-Wesley Signature Series (Cohn), 2008. Seleccionar los sectores de prueba 17 ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Procesos de gestión de pruebas Realimentación: Política Realimentación: Estrategia organizativa Procesos de pruebas dinámicas Procesos organizativos El proceso de pruebas ¿Cómo te organizas? Ref. ISO/IEC/IEEE FDIS: Software and systems engineering –Software testing–. Part 2: Test process. ISO/IEC/IEEE FDIS 29119-2: 2013(E) Planificación Finalización Plan de pruebas Resultados Informe final Plan de pruebas Directrices de control Plan de pruebas Informes de estado Informe final Medidas Medidas Política Estrategia organizativa Actualización plan de pruebas Procesos de gestión de pruebas Plan de pruebas Directrices de control Procesos de pruebas dinámicas Medidas Plan de pruebas Directrices de control Resultados Especificación Requisitos de entorno Informe de disponibilidad Informe de incidentes Diseño e implement. Configuración y mantenimiento del entorno Información de incidentes Ejecución Sin comentarios Comentarios o resultados de regresión Monitorización y Control 18 ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Una visión operativa de las pruebas ¿Cómo, cuándo y dónde pruebas? FASES DE LAS PRUEBAS 19 ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista N2 N3 N1 Las pruebas son una disciplina intelectual que asiste a los profesionales TIC en el desarrollo de sistemas SW con niveles de calidad crecientes Las pruebas no buscan evaluar nada específico sino reducir el riesgo que asume quien utiliza un sistema SW determinado Las pruebas van dirigidas a mostrar que un sistema SW no funciona Las pruebas se orientan a comprobar que un sistema SW funciona Los niveles de madurez en el proceso de pruebas ¿Qué eres capaz de probar? Ref. BEIZER, B.: Software testing techniques. Dreamtech Press, 2003. N4 Las pruebas consisten en depurar el código de un sistema SW N0 20 ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Algunas lecciones aprendidas El hombre es el ¿único? animal que tropieza dos veces en la misma piedra 5 rasgos de una buena prueba: Ágil Repetible Puntual Independiente Autoverificable * Arpía: ave fabulosa, con rostro de mujer y cuerpo de ave de rapiña; persona codiciosa que con arte o maña saca cuanto puede Distingue prioridad de impacto No sigas caminos “trillados” Un fallo no es un defecto pero… Primero los fallos importantes El riesgo dirige las pruebas Tu CV es el informe de errores Di la verdad, pero no muy alto Busca el usuario que importa No lo puedes probar todo Desarrollo miente siempre Tómatelo en serio: el coste de las pruebas es el 50% del total de un desarrollo SW Sistemas y SW Sistemas SW Los requisitos de usuario 21 ISGOTI-154470-1LL 30.11.2015 Pruebas de Sistemas SW. Los requisitos SW desde otro punto de vista Y para terminar: Ingeniería de Sistemas Perseverancia, observación, ensayos y… un almacén de bicicletas SUCCESS FOUR FLIGHTS THURSDAY MORNING ALL AGAINST TWENTY ONE MILE WIND STARTED FROM LEVEL WITH ENGINE POWER ALONE AVERAGE SPEED THROUGH AIR THIRTY ONE MILES LONGEST 57 SECONDS INFORM PRESS HOME FOR CHRISTMAS. OREVELLE WRIGHT Ref. WRIGHT, O.: Telegrama enviado el 17-dic-1903 (Kitty Hawk, Carolina del Norte) Isdefe C/ Beatriz de Bobadilla, 3 28040 Madrid Tel.: +34 91 411 50 11 Email: [email protected] www.isdefe.es