SAFe® Agile Software Engineering (ASE)

Curso oficial con certificación SAFe® 4 Agile Software Engineer

SAFe Scaled Agile Framework® es un soporte metodológico para Agile/Scrum en todo tipo de proyectos, incluyendo específicamente grandes proyectos y programas de proyectos que son desarrollados por múltiples equipos ágiles adecuadamente orquestados. Estos proyectos estarán compuestos por equipos que utilizan Scrum para la gestión y XP para la construcción técnica.


La disciplina de la ingeniería de software ha evolucionado en las últimas décadas con la introducción de los principios y prácticas de Lean-Agile y DevOps. Las nuevas habilidades y enfoques ayudan a las organizaciones a ofrecer soluciones centradas en software de forma más rápida, más predecible y con mayor calidad. Durante este curso de tres días, los asistentes aprenden los principios y prácticas fundamentales que conforman la disciplina de Ingeniería de Software Agile.

Los asistentes aprenderán cómo el flujo continuo de la entrega de valor y la calidad de construcción se habilitan mediante técnicas de XP, Behavioral-Driven Development (BDD) y Test-Driven Development (TDD). Los asistentes aprenderán como modelar, diseñar, implementar, verificar y validar historias mediante SAFe Continuous Delivery Pipeline. Conocerán las prácticas que integran la calidad en el código (abstracción, encapsulación, programación intencional) y diseños (SOLID, patrones de diseño). Los asistentes también comprenderán cómo la ingeniería de software se adapta al contexto de la solución global y su función colaborativa para implantar una arquitectura intencional y DevOps. 


Objetivos
  1. A la finalización de este curso los asistentes estarán preparados para:
  2. Definir Agile Software Engineering y los valores, principios y prácticas subyacentes.
  3. Aplicar el principio Test-First para crear una alineación entre las pruebas y los requisitos
  4. Crear un entendimiento compartido con Behavior-Driven Development (BDD).
  5. Comunicarse con el modelado ágil.
  6. Diseño desde el contexto para testabilidad.
  7. Construir aplicaciones con código y calidad de diseño
  8. Utilizar el entorno de prueba para pruebas automatizadas
  9. Colaborar en arquitectura intencional y diseño emergente
  10. Aplicar los principios Lean-Agile para optimizar el flujo de valor
  11. Crear un plan de ingeniería de software ágil

Audiencia
Este curso está dirigido a los miembros técnicos de un equipo Agile: desarrolladores y testers. Product Owners, Scrum Master, Managers y otros con una formación menos técnica también se beneficiarían obteniendo una comprensión del proceso de desarrollo para que la colaboración del equipo sea más efectiva.


Prerrequisitos
Todos son bienvenidos a asistir al curso, independientemente de la experiencia. Sin embargo, cumplir con los siguientes requisitos previos hará que la capacitación sea más productiva:
  • Conocimientos de SAFe for Teams
  • Experiencia en ingeniería, desarrollo, gestión de desarrollo o control de calidad

El curso incluye
  1. Curso presencial de 24 horas, incluidos talleres y actividades impartidos por un profesor certificado SPC para impartir el curso oficial SAFe® for Agile Software Engineering.
  2. Material de alumno: Cuaderno de trabajo, fichas de actividades y ejercicios.
  3. Examen de certificación con sus costes de registro para la certificación “SAFe® 4 Agile Software Engineer”. Los asistentes que aprueben el examen online posterior al curso serán miembros de la Scaled Agile Academy por un periodo de un año, con acceso a un área privada asociada a la certificación obtenida con este curso accediendo a descargas de webminars, cuadernos de trabajo, presentaciones, noticias sobre próximos productos de SAFe®.
  4. Para PMPs del PMI el curso proporciona 15 PDUs teniendo en cuenta que Estratecno es REP de PMI desde el año 2011.
  5. Para CSPs de la Scrum Alliance el curso proporciona 15 SEUs de categoría C. Estratecno es REP de la Scrum Alliance desde 2013.

Metodología
El modelo pedagógico utilizado se basa en la comprensión de los principios subyacentes para desarrollar las prácticas del marco SAFe reforzada por ejercicios, prácticas y debates. Estos se realizan por grupos que ayudan a interiorizar conceptos y maximizar la comprensión y retención del marco. El alumno aprenderá no sólo de la experiencia del formador sino también de la del resto de alumnos interactuando con ellos.

Una vez registrados en el curso los alumnos recibirán tres emails de SAFe® (De bienvenida, con el plan de estudios, y las instrucciones de la encuesta). Desde el plan de estudios se puede descargar el material, y una vez finalizado el curso se activará el link al examen online. Aprobado el examen se puede descargar el Kit del certificado.

El examen se ha de realizar en los 30 días posteriores a la finalización del curso, consta de 60 preguntas tipo test de múltiple opción y es en inglés. Una vez comenzado el examen el alumno tiene 120 minutos (2:00 horas) para completar el examen y para aprobar es necesario responder correctamente 42 de 60 preguntas (70%).
 
Temario

1. Conectando Principios y Prácticas en Built-In Quality
  • Conectar los Principios a las Prácticas
  • Describir prácticas XP
  • Explorar definiciones clave
  • Describir Built-In Quality
  • Describir intercambios
2. Flujo de aceleración
  • Resumir el flujo de valor
  • Validar la hipótesis de beneficio
3. Aplicando Arquitectura Intencional
  • Aplicar el pensamiento sistémico/system-thinking
  • Explicar el rol de la arquitectura Agile en el desarrollo Lean-Agile
  • Diseño y arquitectura orientado testabilidad
4. Pensamiento Test-First
  • Shift testing left
  • Explicar la base Agile testing
  • Describir el rol de Requerimientos no Funcionales (NFRs)
  • Construir calidad durante todo el pipeline
5. Descubriendo detalles de la historia
  • Examinar los criterios de la historia
  • Dividir las historias para reducir la característica mínima comercializable/Minimum Marketable Feature (MMF)
  • Crear flujos de trabajo o mapas de historias
  • Identificar suposiciones y riesgos
6. Crear una visión común sobre Behavior-Driven Development (BDD)
  • Aplicar BDD para la visión compartida
  • Especificar el comportamiento deseado para los términos de dominio
  • Describir el comportamiento de las reglas de negocio y algoritmos con pruebas
  • Probar la interfaz de usuario (UI)
  • Aplicar pruebas dobles a BDD
  • Encontrar pruebas existentes afectadas por nuevos requerimientos
7. Comunicándose con modelos
  • Explicar el uso de modelos.
  • Esquema de modelos estáticos
  • Técnica de Class-Responsibility-Collaboration (CRC)
  • Esquema de modelos dinámicos
  • Esquema de modelos de estado
8. Construyendo sistemas con calidad de código
  • Identificar las cualidades del código
  • Describir la cohesión y el acoplamiento
  • Describir otras cualidades del código
  • Explicar los beneficios del collective ownership
9. Construyendo sistemas con calidad de diseño
  • Explorar los intercambios de diseño
  • Explicar el diseño orientado a la interfaz
  • Aplicar prácticas de descomposición respecto a calidad
  • Aplicar diferenciación y síntesis
  • Aplicar patrones de diseño de software
10. Implementando con calidad
  • Diseñar con pruebas
  • Aplicar prácticas de Desarrollo Basado en Pruebas/Test-Driven Development (TDD) 
  • Implementar pruebas dobles y pruebas de datos
  • Refactorizar para soportar el nuevo comportamiento del código
  • Practicar diseño emergente