Programa del Curso
Ingeniería de Software 5 días
Día 1: Project Management
- Gestión de proyectos frente a líneas, mantenimiento y soporte
- Definición del proyecto y formularios del proyecto
- Gestión: normas generales y gestión de proyectos
- Estilos de gestión
- ¿Qué tiene de especial los proyectos de TI?
- Proceso básico del proyecto
- Proceso de proyecto iterativo, incremental, en cascada, ágil y lean
- Fases del proyecto
- Roles del proyecto
- Documentación del proyecto y otros artefactos
- Factores blandos y peopleware
- PRINCE 2, PMBOK, PMI, IPMA y otras normas de proyectos
Día 2: Análisis de Negocios y Requirements Engineering Fundamentos
- Definición de objetivos empresariales
- Business Análisis, Gestión de Procesos de Negocio, Mejora de Procesos de Negocio
- El límite entre el negocio y el análisis de sistemas
- Partes interesadas del sistema, usuarios del sistema, contexto del sistema y boudaries del sistema
- ¿Por qué son necesarios los requisitos?
- ¿Qué nos importa la ingeniería de requisitos?
- El límite entre la ingeniería de requisitos y el diseño arquitectónico
- ¿Dónde se esconde a menudo la ingeniería de requisitos?
- Ingeniería de requisitos en desarrollo iterativo, lean y ágil y en integración continua – FDD, DDD, BDD, TDD
- Proceso, funciones y artefactos básicos de ingeniería de requisitos
- Normas y certificaciones: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA
Día 3: Fundamentos de Arquitectura y Desarrollo
- Lenguajes de programación: paradigmas estructurales y orientados a objetos
- Desarrollo orientado a objetos: cuánto es la historia, cuánto es el futuro
- Modularidad, portabilidad, mantenibilidad y escalabilidad de las arquitecturas
- Definición y tipo de arquitecturas de software
- Arquitectura empresarial y arquitectura de sistemas
- Estilos de programación
- Entornos de programación
- Errores de programación y cómo evitarlos y prevenirlos
- Modelado de arquitectura y componentes
- SOA, Web Services y microservicios
- Compilación automática e integración continua
- ¿Cuánto diseño arquitectónico hay en un proyecto?
- Programación extrema, TDD y refactorización
Día 4: Garantía de calidad y fundamentos de las pruebas
- Calidad del producto: ¿qué es? ISO 25010, FURPS, etc.
- Calidad de producto, experiencia de usuario, Modelo Kano, gestión de la experiencia del cliente y calidad integral
- Diseño centrado en el usuario, personas y otras formas de hacer que la calidad sea individual
- Calidad justa
- Aseguramiento y control de calidad
- Estrategias de riesgo en el control de calidad
- Los componentes del aseguramiento de la calidad: requisitos, control de procesos, configuración y gestión de cambios, verificación, validación, pruebas, pruebas estáticas y análisis estático
- Aseguramiento de la calidad basado en el riesgo
- Pruebas basadas en el riesgo
- Desarrollo basado en el riesgo
- La curva de Boehm en el aseguramiento de la calidad y en las pruebas
- Las cuatro escuelas de exámenes: ¿cuál se adapta a sus necesidades?
Día 5: Tipos de Procesos, Madurez y Mejora de Procesos
- La evolución de los procesos informáticos: de Alan Turing a Big Blue a lean startup
- Organización orientada a procesos y procesos
- La historia de los procesos en la artesanía y las industrias
- Modelado de procesos: UML, BPMN y más
- Gestión de procesos, optimización de procesos, reingeniería de procesos y sistemas de gestión de procesos
- Enfoques de procesos innovadores: Deming, Juran, TPS, Kaizen
- ¿Es (el proceso) libre de calidad? (Philip Crosby)
- La necesidad y la historia de la mejora de la madurez: CMMI, SPICE y otras escalas de madurez
- Tipos especiales de madurez: TMM, TPI (para pruebas), Madurez de ingeniería de requisitos (Gorschek)
- Madurez del proceso frente a madurez del producto: ¿alguna correlación? ¿Alguna relación causal?
- Madurez de procesos versus éxito empresarial: ¿alguna correlación? ¿Alguna relación causal?
- Una lección olvidada: la prevención automatizada de defectos y el próximo salto en productividad
- Intentos: TQM, SixSigma, retrospectivas ágiles, marcos de procesos
Requirements Engineering - 2 días
Día 1: Obtención de Requisitos, Negociación, Consolidación y Management
- Requisitos de búsqueda: qué, cuándo y por quién
- Clasificación de las partes interesadas
- Grupos de interés olvidados
- Definición del contexto del sistema: definición de fuentes de requisitos
- Métodos y técnicas de elicitación
- Creación de prototipos, perfiles y obtención de requisitos a través de pruebas (exploratorias y de otro tipo)
- Marketing y obtención de requisitos – MDRA ("Market-Driven Requirements Engineering")
- Priorización de requisitos: MoSCoW, Karl Wiegers y otras técnicas (incluida la MMF ágil)
- Requisitos de refinamiento: "especificación ágil con ejemplo"
- Negociación de requerimientos: tipos de conflictos, métodos de resolución de conflictos
- Resolver la incongruencia interna entre algunos tipos de requisitos (por ejemplo, la seguridad frente a la facilidad de uso)
- Trazabilidad de requisitos: por qué y cómo
- Cambios en el estado de los requisitos
- Requisitos de CCM, control de versiones y líneas de base
- Vista del producto y vista del proyecto sobre los requisitos
- Gestión de productos y gestión de requisitos en proyectos
Día 2: Análisis de Requisitos, Modelización, Especificación, Verificación y Validación
- El análisis es el pensamiento y el replanteamiento que se hace entre la elicitación y la especificación
- El proceso de requisitos es siempre iterativo, incluso en proyectos secuenciales
- Descripción de los requisitos en lenguaje natural: riesgos y beneficios
- Modelización de requisitos: beneficios y costes
- Las reglas para usar el lenguaje natural para la especificación de requisitos
- Glosario de definición y gestión de requisitos
- UML, BPMN y otras notaciones de modelización formal y semiformal para requisitos
- Uso de plantillas de documentos y oraciones para la descripción de requisitos
- Verificación de requisitos: objetivos, niveles y métodos
- Validación: con creación de prototipos, revisiones e inspecciones, y pruebas
- Validación de requisitos y validación del sistema
Pruebas - 2 días
Día 1: Diseño de la prueba, ejecución de la prueba y pruebas exploratorias
- Diseño de la prueba: después de las pruebas basadas en el riesgo, elegir la forma óptima de utilizar el tiempo y los recursos disponibles
- Diseño de pruebas "desde el infinito hasta aquí": no es posible realizar pruebas exhaustivas
- Casos de prueba y escenarios de prueba
- Diseño de pruebas en varios niveles de prueba (desde la unidad hasta el nivel de prueba del sistema)
- Diseño de pruebas para pruebas estáticas y dinámicas
- Business Diseño de pruebas orientado y orientado a la técnica ("caja negra" y "caja blanca")
- Intentar romper el sistema ("pruebas negativas") y apoyar a los desarrolladores (pruebas de aceptación)
- Diseño de pruebas para lograr la cobertura de pruebas: varias medidas de cobertura de pruebas
- Diseño de pruebas basado en la experiencia
- Diseño de casos de prueba a partir de requisitos y modelos de sistemas
- Heurística de diseño de pruebas y pruebas exploratorias
- ¿Cuándo diseñar casos de prueba? – Enfoque tradicional y exploratorio
- Descripción de casos de prueba: ¿con qué detalle?
- Ejecución de la prueba: aspectos psicológicos
- Ejecución de pruebas: registro e informes
- Diseño de pruebas para pruebas "no funcionales"
- Diseño automático de pruebas y MBT (Model-Based Testing)
Día 2: Organización de pruebas, Management y automatización
- Niveles de prueba (o fases)
- ¿Quién realiza las pruebas y cuándo? – Varias soluciones
- Entornos de prueba: costo, administración, acceso, responsabilidad
- Simuladores, emuladores y entorno virtual de pruebas
- Pruebas en scrum ágil
- Organización y función del equipo de pruebas
- Proceso de prueba
- Automatización de pruebas: ¿qué se puede automatizar?
- Automatización de la ejecución de pruebas: enfoques y herramientas
Testimonios (8)
Adquisición de nueva información.
Nada - Tamkeen Technologies
Curso - API Testing with Postman
Traducción Automática
Método de enseñanza
Negritu - OMNIASIG VIENNA INSURANCE GROUP S.A.
Curso - SoapUI for API Testing
Traducción Automática
Disfruté todo, ya que todo es nuevo para mí y puedo ver el valor agregado que puede sonar a mi trabajo.
Zareef - BMW South Africa
Curso - Tosca: Model-Based Testing for Complex Systems
Traducción Automática
Los ejercicios prácticos, el buen humor del entrenador. Un gran agradecimiento a Augustin por lograr poner un buen ambiente a distancia para los participantes que no ve. Esto hace que el entrenamiento sea agradable e interesante.
Jean-Noël - Cegid
Curso - TestComplete
Traducción Automática
Muy buen enfoque del tema y basado en ejemplos prácticos
Tomasz - Biuro Rachunkowe Magda Sp. z o.o.
Curso - Automate Windows Desktop Applications with AutoIt
Traducción Automática
Las ejecuciones
Cristina Esquivel Guzmán - RADIOMOVIL DIPSA, S.A. DE C.V.
Curso - Robot Framework: Keyword Driven Acceptance Testing
To get acquainted with the screenplay pattern and learn why this is better dan the old pattern.
Peter Moors
Curso - Serenity BDD for Automated Acceptance Tests
El entrenador era amable y bien hablado. Se notaba que sabía de lo que hablaba.
Tom - Leeds Building Society
Curso - SpecFlow: Implementing BDD for .NET
Traducción Automática