Sunteți pe pagina 1din 21

Java Master Application

Developer

Objetivos
Logro:
Entender cmo es el ciclo de vida de desarrollo de
software con JEE.
Al finalizar el captulo, el alumno podr
Situar su trabajo dentro del ciclo de vida de un
proyecto.
Verificar qu modelo de ciclo de vida emplean en
su organizacin.
Conocer las tecnologas que se emplean en la
implementacin y despliegue en proyectos JEE.
Ejecutar pruebas unitarias con Junit.

Importancia
Desarrollo de software est ntimamente ligado a ciclo
de vida.
A lo largo de la historia, se han propuesto diferentes
paradigmas o ciclos de vida para el software: desde el
ciclo en cascada, pasando por el modelo en espiral, y
recientemente ciclos de vida con orientacin gil.
Organizaciones profesionales en conjunto con
organismos internacionales se han venido ocupando de
esto durante varios aos y han publicado sendas
normas para entenderlo y gestionarlo.

Diseando la Arquitectura e Infraestructura


de una Aplicacin

Captulo 1: Ciclo de Vida del


Software
Temas
1. Ciclo de vida de un proyecto de
software
2. Fase de Implementacin: Tecnologas
para la implementacin en proyectos
JEE. Pruebas unitarias
3. Fase de Despliegue: Tecnologas para
el despliegue de proyectos JEE

Diseando la Arquitectura e Infraestructura


de una Aplicacin

Captulo 1: Ciclo de Vida del


Software
Temas
1. Ciclo de vida de un proyecto de
software
2. Fase de Implementacin: Tecnologas
para la implementacin en proyectos
JEE. Pruebas unitarias
3. Fase de Despliegue: Tecnologas para
el despliegue de proyectos JEE

Ciclo de vida de software


Ciclo de vida abarca toda la
vida de sistema, comenzando
con su concepcin y finalizando
cuando ya no se utiliza.
Por ciclo de vida, se entiende la
sucesin de etapas por las que
pasa el software desde que un
nuevo proyecto es concebido
hasta que se deja de usar.
En ISO 12207-1, durante ciclo
de vida, se puede realizar
actividades
agrupadas
en
procesos principales, procesos
de
soporte
y
procesos
generales.

Procesos de
la
Organizacin

Procesos
de Soporte

Procesos
Principales

Modelos de Ciclo de Vida

Son representaciones de las relaciones entre


las etapas del ciclo de vida para atacar
problemtica de sistema y lograr objetivos
planteados en un proyecto de software.
La eleccin de modelo para proyecto es de vital
importancia, se tiene que escoger uno acorde a
naturaleza de proyecto.

Modelos Tradicionales vs giles

Tradicionales

Cascada

Espiral

Otros

giles

UP

Otros

Fases Consideradas Normalmente en Ciclo de Vida

Captura
Requerimientos

Despliegue

Fases
Aseguramiento
De Calidad

Implementacin

Fases Consideradas Normalmente en Ciclo de Vida

Captura
Requerimientos

Despliegue

Fases
Aseguramiento
De Calidad

Implementacin

Diseando la Arquitectura e Infraestructura


de una Aplicacin

Captulo 1: Ciclo de vida del


Software
Temas
1. Ciclo de vida de un proyecto de
software
2. Fase de Implementacin:
Tecnologas para la implementacin
en proyectos JEE. Pruebas unitarias
3. Fase de Despliegue: Tecnologas para
el despliegue de proyectos JEE

Fase de Implementacin

Es la fase en que se va generando el producto


core del proyecto: el cdigo.
Se toman requisitos y productos de fase anterior
y se implementan mediante tecnologas
apropiadas.
Para asegurar un producto de calidad,
dependiendo del proyecto, es bueno considerar
en esta fase desarrollar pruebas unitarias.

Tecnologas de Implementacin para Proyectos JEE

IDEs
Herramientas para gestin del ciclo de vida
Repositorio de cdigo (SCM)
Libreras para pruebas (unit tests, integration
tests, mocks)
Servidor
de
aplicaciones
(pruebas
de
integracin)
Herramientas adicionales de apoyo (integracin
continua, anlisis de cdigo esttico, etc.)

Unit Testing

Debo
verificar
que sea Z

Dado X

Cuando
ejecuto Y

Diseando la Arquitectura e Infraestructura


de una Aplicacin

Captulo 1: Ciclo de vida del


Software
Temas
1. Ciclo de vida de un proyecto de
software
2. Fase de Implementacin: Tecnologas
para la implementacin en proyectos
JEE. Pruebas unitarias
3. Fase de Despliegue: Tecnologas
para el despliegue de proyectos JEE

Tecnologas para el despliegue

Para poder desplegar un proyecto debemos


considerar el tipo de proyecto (escritorio, mvil,
web, mltiple-dispositivo, de servicios).
En el caso de una aplicacin web en java,
necesitaremos un servidor de aplicaciones.

Servidor de aplicaciones

Es un programa
que provee un
conjunto de
servicios para
la gestin de
aplicaciones de
software.
En Java se
tiene una gran Tomcat
variedad de
stos.

Web

Jetty

JEE

Glassfish

JBoss

Diseando la Arquitectura e Infraestructura


de una Aplicacin

Laboratorio N 1.1
Ejecucin de pruebas unitarias
de los servicios con JUnit
Tiempo Estimado
30 minutos

Diseando la Arquitectura e Infraestructura


de una Aplicacin

Laboratorio N 1.2
La herramienta Maven para la gestin de
dependencias, ejecucin de pruebas unitarias
y generacin del binario del proyecto
Tiempo Estimado
30 minutos

Tarea

Cules seran las tecnologas que emplee si


usted estuviera a cargo del proyecto GCH en los
siguientes puntos?. Investigue.
IDE
Gestor del ciclo de vida
Repositorio de cdigo (SCM)
Libreras para pruebas
Herramientas adicionales de apoyo
(integracin continua, anlisis de cdigo
esttico, etc.)

Referencias

Software Architecture in the Agile Life Cycle


http://msdn.microsoft.com/enus/architecture/ff476940.aspx
Apache Maven Project
http://maven.apache.org/
Junit Practical methods for programmer testing
- J.B.Rainsberger. Manning (2005)

S-ar putea să vă placă și