Ir al contenido principal

Destacado

Introducción a Axon Framework - Parte 1

Investigando sobre arquitecturas CQRS encontre el Axon Framework.  Te comparto mis apuntes en mi camino a aprender este framework.


¿Que es CQRS?
CQRS es una forma de crear sistemas de software que hace hincapié en separar la parte  que cambia el estado de la aplicación y la parte que consulta el estado de la aplicación. 

¿Que es el Framework Axon? Es un framework para implementar CQRS en Java. Se describe asi mismo como un framework que te permite construir aplicaciones escalables, extensibles y mantenibles; permitiendo a los desarrolladores aplicar el patrón arquitectónico Command Query Responsibility Segregation (CQRS). El cual nos da ciertos bloques importantes con sus implementaciones respectivas para crear estos sistemas como: agregados, repositorios y bus de eventos (el mecanismo de envío para eventos).  Estos últimos términos provienen del Domain Driven Design (DDD). 
En palabras simples: CQRS es escribir y leer en forma separada. 
En búsqueda de tener bajo acoplamiento, el tr…

Professional Agil Developer

Para Octubre vamos a lanzar el taller Professional Agil Developer.

En el cual pensamos cubrir TDD en Java y .NET, así como Integración Continua para Java y NET Developers.

Syllabus

TDD en .NET (12 horas)

1. Iniciando con Test Unitarios
   1.1 Por que no testeamos software?
   1.2 Viendo como un bug acontece
   1.3 Testeando con NUnit
   1.4 Nomenclatura para clases test
   1.5 Ventajas de test unitarios

 2. Testeando lo que realmente es necesario
   2.1 Escribiendo test para nuestras reglas de negocio
   2.2 Concepto de clases de equivalencia
   2.3 Conociendo la clase Assert
   2.4 Ventajas de los test de regresion

 3. Practicando TDD
   3.1 El ciclo rojo-verde-refactorizacion
   3.2 Baby steps
   3.3 Trabajando la simplicidad
   3.4 Refactorizando
   3.5 ventajas de TDD

 4. Conociendo sus test
   4.1 Mejorando la calidad de nuestro codigo de prueba
   4.2 Simplificando escenarios con [SetUp] o
   [TearDown]
   4.3 Creando escenarios de manera simple con Test Data Builders

 5. Testeando excepciones
   5.1 Testeando metodos que lanzan excepciones



TDD en Java (12 horas)

1. Iniciando con Test Unitarios
   1.1 Por que no testeamos software?
   1.2 Viendo como un bug acontece
   1.3 Testeando con JUnit
   1.4 Nomenclatura para clases test
   1.5 Ventajas de test unitarios

 2. Testeando lo que realmente es necesario
   2.1 Escribiendo test para nuestras reglas de negocio
   2.2 Concepto de clases de equivalencia
   2.3 Conociendo la clase Assert
   2.4 Ventajas de los test de regresion

 3. Practicando TDD
   3.1 El ciclo rojo-verde-refactorizacion
   3.2 Baby steps
   3.3 Trabajando la simplicidad
   3.4 Refactorizando
   3.5 ventajas de TDD

 4. Conociendo sus test
   4.1 Mejorando la calidad de nuestro codigo de prueba
   4.2 Simplificando escenarios con @Before y
   @After
   4.3 Creando escenarios de manera simple con Test Data Builders

 5. Testeando excepciones
   5.1 Testeando metodos que lanzan excepciones
   5.2 Verificaciones mas interesantes con Hamcrest


Integración Continua Bamboo  5 (12 horas)

1. Automatización de proceso de deploy
e integración continua con Bamboo

    1.1 Conociendo e instalando bamboo
    1.2 Configurando primer proyecto java en bamboo
    1.3 Configurando primer proyecto net en bamboo
    1.4 Configurando planes


2. Automatización y ejecución de test
antes del proceso de deploy para proyectos net y java
    2.1 Configurando ejecución de test
    unitarios
    2.2 Causando una falla en un test para
    quebrar el build

3. Notificando a su equipo por email en
casos de fallas en el build
    3.1 Configurando envio de e-mail en casos
    de fallas
    3.2 Testeando un caso de falla/envio de notificacion

4. Garantizando la cobertura de tests y de su codigo
    4.1 Instalación de plugins para cobertura
    4.2 Configurando bamboo para uso de nuevo
    plugin
    4.3 Analisis de de cobertura de test unitarios

5. Ejecutando test de aceptacion

    5.1 Configurando bamboo para ejecución de test de aceptacion
    5.2 Ejecutando test en diferentes navegadores

6. Integración con otros proyectos de atlassian

Integración Continua Jenkis (12 horas)

1. Automatización de proceso de deploy
e integración continua con Jenkis

    1.1 Conociendo e instalando Jenkis
    1.2 Configurando primer proyecto java en Jenkis
    1.3 Configurando planes


2. Automatización y ejecución de test
antes del proceso de deploy para proyectos java
    2.1 Configurando ejecución de test
    unitarios
    2.2 Causando una falla en un test para
    quebrar el build

3. Notificando a su equipo por email en
casos de fallas en el build
    3.1 Configurando envío de e-mail en casos
    de fallas
    3.2 Testeando un caso de falla/envío de notificación

4. Garantizando la cobertura de tests y de su código
    4.1 Instalación de plugins para cobertura
    4.2 Configurando Jenkis para uso de nuevo
    plugin
    4.3 Análisis de de cobertura de test unitarios

5. Ejecutando test de aceptación

    5.1 Configurando bamboo para ejecución de test de aceptación
    5.2 Ejecutando test en diferentes navegadores

Son 48 horas. 

Ahora habrá que ver si la preferencia será el online o presencial?

Así que espero sus comentarios mientras coordinamos por interno.

Saludos, este es para Octubre 2013.


Joe


Comentarios