Open Up - Fase de Elaboracion

download Open Up - Fase de Elaboracion

of 98

description

Meotodologia Agil

Transcript of Open Up - Fase de Elaboracion

Presentacin de PowerPoint

OPEN UP FASE DE ELABORACIN

1Iteracin: elaborar iteracin [1..N]La mayora de las actividades durante una iteracin tpica en la fase de elaboracin suceden en paralelo.

En esencia, los principales objetivos de Elaboracin estn relacionados con una mejor comprensin de los requisitos, la creacin y el establecimiento de una lnea de base de la arquitectura para el sistema, y mitigar los riesgos de alta prioridad.

La siguiente tabla resume los objetivos de la fase de elaboracin y qu actividades aborda cada objetivo:Iteracin: elaborar iteracin [1..N]La siguiente tabla resume los objetivos de la fase de elaboracin y qu actividades aborda cada objetivo:

OBJETIVOS DE FASEACTIVIDADES QUE ABORDA CADA OBJETIVOObtener una comprensin ms detallada de los requisitosIdentificar y Refine RequisitosDisear, implementar, validar, y definir la lnea base de la arquitecturaDesarrollar la Arquitectura

Desarrollar Incremento de la Solucin

Solucin de Prueba

Mitigar los riesgos esenciales, y producir horas exactas y costo estimadoPlanificar y gestionar iteracin

3Estructura DE LA DIVISIN DEL TRABAJOEsta plantilla iteracin define las actividades (y los roles asociados y productos de trabajo) realizadas en una iteracin tpica en la fase de elaboracin.

Estructura DE LA DIVISIN DEL TRABAJOFlujo de TrabajoACTIVIDAD: PLANEAR Y MANEJAR LA ITERACINInicia la iteracin y permiten a los miembros del equipo enrolarse a las tareas de desarrollo.

Monitorear y comunicar el estado del proyecto a los interesados externos.

Identificar y manejar excepciones y problemas.ACTIVIDAD: PLANEAR Y MANEJAR LA ITERACINDESCRIPCINEsta actividad se lleva a cabo durante todo el ciclo de vida del proyecto.

El objetivo de esta actividad es identificar riesgos y problemas lo suficientemente temprano para que pueden ser mitigados, establecer las metas para la iteracin, y para apoyar al equipo de desarrollo para alcanzar estos objetivos.

El director del proyecto y el equipo lanzan la iteracin. La priorizacin de trabajo para una iteracin dada toma lugar. El director del proyecto, las partes interesadas y los miembros del equipo estn de acuerdo en lo que se supone sera desarrollado durante esa iteracin.

ACTIVIDAD: PLANEAR Y MANEJAR LA ITERACINDESCRIPCINLos miembros del equipo se asignan a los elementos de trabajo que van a desarrollar en esa iteracin.

Cada miembro del equipo descompone los elementos de trabajo en tareas de desarrollo y estima el esfuerzo.

Esto proporciona una estimacin ms precisa de la cantidad de tiempo que se utilizara, y de lo que puede lograrse de manera realista, en una iteracin dada.

ACTIVIDAD: PLANEAR Y MANEJAR LA ITERACINDESCRIPCINConforme la iteracin se ejecuta, el equipo se rene regularmente para informar del estado del trabajo realizado, el trabajo a hacer a continuacin, y problemas que bloquean el progreso.

En algunos proyectos, esta comprobacin de estado se produce en las reuniones diarias, lo que permite una comprensin ms precisa de cmo el trabajo en la iteracin est progresando.

Si es necesario, el equipo hace correcciones para lograr lo que se haba previsto.

La idea general es que los riesgos y los problemas son identificados y gestionados a travs de la iteracin, y todo el mundo conoce el estado del proyecto en tiempo y forma.

ACTIVIDAD: PLANEAR Y MANEJAR LA ITERACINDESCRIPCINDurante las evaluaciones de la iteracin, el criterio clave para el xito es demostrar que la funcionalidad planeada se ha implementado.

Las lecciones aprendidas son capturadas con el fin de modificar el proyecto o mejorar el proceso.

Si el final de iteracin coincide con el final de fase, comprobar que se han cumplido los objetivos para esa fase.ACTIVIDAD: PLANEAR Y MANEJAR LA ITERACINESTRUCTURA DE LA DIVISIN DE TRABAJOPlanear la Iteracin.

Preparar el Entorno.

Manejar la Iteracin.

Esquema de Plan de Despliegue.

Evaluar Resultados.

TAREA: PLAN DE ITERACINPlanificar el alcance y las responsabilidades de una sola iteracin.

PROPSITO

El propsito de esta tarea es identificar el siguiente incremento de capacidad del sistema, y crear un plan detallador para lograr esa capacidad dentro de una sola iteracin.

TAREA: PLAN DE ITERACINDESCRIPCIN

Durante la planificacin del proyecto, se identifican las iteraciones, pero las estimaciones tienen una incertidumbre aceptable debido a la falta de detalle en el inicio del proyecto.

Esta tarea se repite para cada iteracin dentro de una liberacin (relase).

Esto permite al equipo aumentar la precisin de las estimaciones para una iteracin, a medida que se conoce ms detalle a lo largo del proyecto.

Asegrese de que el equipo se compromete en una cantidad razonable de trabajo para la iteracin, con base en el desempeo del equipo de iteraciones anteriores.TAREA: PLAN DE ITERACINPASOS:Priorizar la Lista de Items de Trabajo.

Definir los objetivos de la iteracin.

Identificar y revisar los riesgos

Comprometer trabajo para la iteracin.

Definir criterios de evaluacin

Refinar la definicin del proyecto y el alcanceACTIVIDAD: IDENTIFIAR Y REFINAR REQUERIMIENTOSDetalla un conjunto de requisitos (uno o ms casos de uso, requerimientos de escenarios o de todo el sistema).ACTIVIDAD: IDENTIFIAR Y REFINAR REQUERIMIENTOSDESCRIPCIN

Esta actividad describe las tareas que se realizan para obtener, especificar, analizar y validar un subconjunto de los requisitos del sistema antes de la implementacin y verificacin.

Esto no implica que todos los requisitos se detallan antes de comenzar la implementacin. Ms bien, esta actividad se realiza a lo largo del ciclo de vida con las partes interesadas y con todo el equipo de desarrollo; colaborando para asegurar que un conjunto claro, consistente, correcto, verificable y viable de los requisitos est disponible, segn sea necesario, para manejar la implementacin y verificacin.

ACTIVIDAD: IDENTIFIAR Y REFINAR REQUERIMIENTOSDESCRIPCIN

Durante el Inicio, la atencin se centra en la obtencin de un acuerdo sobre el problema a resolver, la recopilacin de las necesidades de las partes interesadas, y la captura de las caractersticas de alto nivel del sistema.

ACTIVIDAD: IDENTIFIAR Y REFINAR REQUERIMIENTOSDESCRIPCINDurante la Elaboracin, el foco se desplaza a la definicin de la solucin.

Esta consiste en la bsqueda de esos requerimientos que tienen el mayor valor para las partes interesadas, que son particularmente desafiantes o de riesgo, o que son de gran importancia arquitectnica.

A continuacin se describen los requisitos (que se priorizan, a travs de la lista de elementos de trabajo, para su implementacin en las iteraciones iniciales) con el suficiente detalle para validar el entendimiento de los requerimientos por parte del equipo de desarrollo, para asegurar la concurrencia con las partes interesadas, y para permitir el comienzo del desarrollo de software.

Para cada uno de estos requisitos, definir los casos de prueba asociados para garantizar que los requerimientos son verificables, y proporcionar la orientacin necesaria para la verificacin y validacin.

ACTIVIDAD: IDENTIFIAR Y REFINAR REQUERIMIENTOSDESCRIPCIN

Durante la Construccin, el foco se desplaza hacia el perfeccionamiento de la definicin del sistema.

Esto consiste en detallar los requisitos restantes y casos de prueba asociados como sea necesario para manejar la implementacin y verificacin, y la gestin de cambio de requerimientos.ACTIVIDAD: IDENTIFIAR Y REFINAR REQUERIMIENTOSESTRUCTURA DE LA DIVISIN DE TRABAJO

Identificar y Delinear Requerimientos.

Detallar Escenarios de Casos de Uso

Detallar Requerimientos que abarcan todo el Sistema

Crear Casos de Prueba

TAREA: IDENTIFICAR Y DELINEAR REQUERIMIENTOSEsta tarea describe cmo identificar y delinear los requisitos para el sistema de modo que el alcance del trabajo se puede determinar.

PROPSITO

El propsito de esta tarea es identificar y capturar los requisitos funcionales y no funcionales para el sistema.

Estos requisitos constituyen la base de la comunicacin y el acuerdo entre las partes interesadas y el equipo de desarrollo en lo que el sistema debe hacer para satisfacer las necesidades de las partes interesadas.

El objetivo es comprender los requisitos en un alto nivel de modo que el mbito de trabajo inicial se puede determinar. Futuros anlisis sern llevados a cabo para detallar estos requerimientos antes de su implementacin.TAREA: IDENTIFICAR Y DELINEAR REQUERIMIENTOS

TAREA: IDENTIFICAR Y DELINEAR REQUERIMIENTOSPASOSObtener informacin.Identificar y capturar trminos del dominio.Identificar los tipos de requerimientos relevantes al sistema.Identificar y capturar casos de uso y escenarios.Identificar y capturar requerimientos que abarcan todo el sistema.Lograr la concurrencia.Identificar y capturar Casos de Uso y Actores en un Modelo de Casos de Uso.

TAREA: DETALLA ESCENARIOS DE CASOS DE USOEsta tarea describe como detallar escenarios de casos de uso para el sistema.

PROPSITO

El propsito de esta tarea es describir escenarios de casos de uso en suficiente detalle para validar la comprensin de los requerimientos, para garantizar la concurrencia con las expectativas de las partes interesadas, y para permitir el comienzo del desarrollo de software.TAREA: DETALLA ESCENARIOS DE CASOS DE USO

TAREA: DETALLA ESCENARIOS DE CASOS DE USOPASOSDetallar casos de uso y escenariosDetallar el glosario de trminos.Lograr la concurrencia.Actualizar el Modelo de Casos de Uso.

CONSIDERACIONES CLAVESPara evitar el re trabajo innecesario, slo los escenarios de casos de uso que estn programados para su implementacin en el corto plazo (en la siguiente iteracin o dos) deben ser detalladas.

No todos los escenarios de casos de uso requieren detalle.TAREA: DETALLAR REQUERIMIENTOS QUE ABARCAN TODA LA APLICACINEsta tarea detalla uno o ms requerimientos que no se aplican a un caso de uso especfico.

PROPSITOEl propsito de esta tarea es describir uno o ms requisitos de todo el sistema con suficiente detalle para validar la comprensin de los requerimientos, para garantizar la concurrencia con las expectativas de las partes interesadas, y para permitir el inicio del desarrollo del software.TAREA: DETALLAR REQUERIMIENTOS QUE ABARCAN TODA LA APLICACIN

TAREA: DETALLAR REQUERIMIENTOS QUE ABARCAN TODA LA APLICACINPASOS:Detalllar requerimientso que abarcan todo el sistema.Detallara glosario de trminosLograr concurrencia.

CONSIDERACIONES CLAVESPara evitar re trabajo innecesario, slo aquellos requerimientos que estn programados para su implementacin en el corto plazo (en la siguiente iteracin o dos) deben ser detallados.TAREA: CREAR CASOS DE PRUEBADesarrollar casos de prueba y datos de prueba para testear los requerimientos.

PROPSITO

Para lograr un entendimiento compartido de las condiciones especficas que la solucin debe cumplir.TAREA: CREAR CASOS DE PRUEBA

TAREA: CREAR CASOS DE PRUEBAPASOSRevisar los requerimientos a ser testeados.Identificar Casos de Prueba relevantes.Delinear los Casos de Prueba.Identificar las necesidades de datos de pruebaCompartir y evaluar los Casos de Prueba.TAREA: CREAR CASOS DE PRUEBACONSIDERACIONES CLAVE

Desarrollar casos de prueba en paralelo con los requerimientos para que los analistas y los stakeholders pueden ponerse de acuerdo con las condiciones especficas de satisfaccin para cada requerimiento.

Los casos de prueba actan como criterios de aceptacin mediante la ampliacin de la intencin del sistema a travs de escenarios reales de uso. (The test cases act as acceptance criteria by expanding on the intent of the systemthrough actual scenarios of use)

Esto permite a los miembros del equipo medir el progreso en trminos de pasar casos de prueba.

DESARROLLAR LA ARQUITECTURADesarrollar los requisitos de gran importancia arquitectnica priorizados para esta iteracin.DESARROLLAR LA ARQUITECTURADESCRIPCINEsta actividad refina la arquitectura inicial de alto nivel en el software de trabajo.

El objetivo es producir software estable que aborde adecuadamente los riesgos tcnicos en su alcance.

El arquitecto y desarrolladores trabajan juntos para:

Refinar el boceto inicial de la arquitectura en los elementos de diseo concretos.Asegurar que las decisiones de arquitectura son capturadas y comunicadas adecuadamenteAsegurar que el equipo tiene suficiente informacin para hacer posible el software a desarrollarAsegurar que los requisitos que fueron priorizados para la presente iteracin se abordan adecuadamente en el softwareDESARROLLAR LA ARQUITECTURADESCRIPCIN

En un proyecto iterativo, el equipo no debe tratar de desarrollar la arquitectura de todo el proyecto en una sola pasada.

Ms bien, deben centrarse en el cumplimiento de los requisitos en mbito para la iteracin actual, mientras se toma de decisiones en el contexto del proyecto ms amplio.DESARROLLAR LA ARQUITECTURADESGLOSE DE ELEMENTOS

Desarrollar Solucin Incremental.

Refinar la Arquitectura.ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDisear, implementar, probar e integrar la solucin para un requerimiento dentro de un contexto dado.

PROPSITOPara los desarrolladores: Para crear una solucin para el elemento de trabajo para los que son responsables

Para los administradores de proyectos: Para tener una forma de dar seguimiento al estado del proyecto basada en metas.ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINIntroduccinEjecute esta actividad como una forma de llevar a cabo la planificacin y ejecucin basada en objetivos.

El trabajo es asumido por los desarrolladores, y al progreso del trabajo se realiza un seguimiento basado en las metas alcanzadas usando el cdigo fuente diseado, testeado en desarrollo, e integrado.ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINContexto de lo que se est desarrollando

Un contexto se puede especificar cuando se asigna un requerimiento a desarrollar, especificando la amplitud del requerimiento a desarrollar en una iteracin.

El desarrollo puede enfocarse en una capa (como la interfaz de usuario, la lgica de negocio, o el acceso de base de datos), en un componente, y as sucesivamente.ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINContexto de lo que se est desarrollandoSi se especifica un contexto o no, la responsabilidad de los desarrolladores es crear un diseo y la implementacin para este requerimiento.

El desarrollador tambin escribe y realiza pruebas de desarrollo contra la implementacin para asegurarse de que funciona como est diseada, tanto como una unidad as como integran en el cdigo base.ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINVisin general de flujo de trabajo

Los cambios tpicos requieren un poco de esfuerzo en el diseo de la solucin antes de pasar a la implementacin, incluso si es slo un ejercicio mental que resulta en ningn producto de trabajo a largo plazo.

El diseo de los cambios triviales para la implementacin existente(para, por ejemplo, soportar algn requerimiento) podra ser evidente en el contexto de la arquitectura y el diseo existente.ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINVisin general de flujo de trabajo

Una vez que la organizacin de la solucin tcnica es claro, definir pruebas para desarrolladores que comprobar la aplicacin.

Este enfoque basado en pruebas asegura que las consideraciones de diseo han hecho ocurrido antes de que se codifica la solucin.

Las pruebas se realizan en la delantera y, si no, definir claramente los criterios para determinar si la aplicacin funciona como est previsto.ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINVisin general de flujo de trabajoUna vez que la organizacin de la solucin tcnica es clara, definir pruebas de desarrollo que comprueben la implementacin.

Este enfoque basado en pruebas asegura que las consideraciones de diseo efectivamente han tomado lugar antes de que se codifique la solucin.

Las pruebas se realizan adelante, y si fallan, se deben definir claramente los criterios para determinar si la implementacin funciona como est previsto.

ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINVisin general de flujo de trabajo

Las pruebas fallidas conducen a una implementacin de la solucin, al trmino de los cuales se ejecuta las pruebas de nuevo.

Este bucle ms interno de implementacin y pruebas de desarrollo se repite hasta que pasen las pruebas.

Pasar las pruebas no significa necesariamente que la solucin es adecuada y de alta calidad. Es adecuada para revisar el diseo en este punto.

Ese camino vuelve de nuevo a travs del proceso, ya que cualquier cambio en el diseo podran afectar las pruebas de desarrollo y la implementacin.

ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDESCRIPCINVisin general de flujo de trabajo

Una vez que las pruebas pasan y el diseo de la solucin es apropiado, hay un posible loopback adicional.

Lo mejor es mantener los bucles internos de diseo evolutivo, basado en pruebas, lo ms ajustado posible.

Empezar con una solucin de diseo a pequea escala para una parte del elemento de trabajo, definir una o dos pruebas para la implementacin de esta parte de la solucin, pasar la prueba, verificar la calidad, y luego continuar en una prueba de primera manera hasta que la parte del diseo est trabajando.

Luego, en el bucle ms externo de la actividad, volver al elemento de trabajo y disear otro pedazo para acercarse a su finalizacin.

ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALFLUJO DE TRABAJO

ACTIVIDAD: DESARROLLAR SOLUCIN INCREMENTALDIVISIN DEL TRABAJO

Disear la solucinImplementar Pruebas de DesarrolloImplementar la SolucinEjecutar Pruebas de DesarrolloIntegrar y Construir la Aplicacin (Create Build).TAREA: DISEAR LA SOLUCINIdentificar los elementos y disear las interacciones, el comportamiento, las relaciones, y los datos necesarios para realizar algunas funcionalidad.

Reproducir el diseo visualmente para ayudar a resolver el problema y comunicar la solucin.

PROPSITOEl propsito de esta tarea es describir los elementos del sistema para que soporte el comportamiento requerido, son de alta calidad y se acoplan dentro de la arquitectura.

TAREA: DISEAR LA SOLUCIN

TAREA: DISEAR LA SOLUCINDESCRIPCIN PRINCIPAL

Esta tarea es sobre disear parte del sistema, no todo el sistema.

Se debe aplicar sobre la base de un pequeo subconjunto de requerimientos.

Los requisitos que conducen el diseo podran ser requerimientos funcionales basados en escenarios, requerimientos no funcionales, o una combinacin.

TAREA: DISEAR LA SOLUCINDESCRIPCIN PRINCIPAL

Esta tarea se puede aplicar en un contexto especfico, como los elementos de acceso de base de datos requeridos por algn escenario.

En este caso la tarea se podra aplicar de nuevo ms adelante para hacer frente a un contexto diferente en los mismos requerimientos.

Tenga en cuenta que para construir en realidad alguna funcionalidad de valor para los usuarios, todos los contextos tpicamente necesitan ser diseados e implementados.

Por ejemplo, para utilizar realmente cierta capacidad del sistema, tendrn que haber sido diseados e implementados todos su contextos como la interfaz de usuario, reglas de negocio, acceso a base de datos, etc.

TAREA: DISEAR LA SOLUCINDESCRIPCIN PRINCIPAL

Por cohesin y completitud, esta tarea se describe como un paso de extremo a extremo de diseo de un escenario de uso del sistema.

En la prctica, esta tarea ser revisada tantas veces cuando el diseo se consider por primera vez, las porciones son implementadas, ms diseo se realiza en base a lo aprendido, etc.

La aplicacin ms saludable de esta tarea es que est estrechamente aproximada a la implementacin.

TAREA: DISEAR LA SOLUCINDESCRIPCIN PRINCIPAL

Si esta tarea se est realizando en un elemento arquitectnico significativo los resultados de este diseo deben ser referenciados por la Arquitectura Tcnica.

TAREA: DISEAR LA SOLUCINPASOS

Entender los detalles del requerimientoEntender la arquitecturaIdentificar elementos de diseoDeterminar como los elementos colaboran para realizar el escenarioRefinar decisiones de diseo.Diseo interno (para elementos grandes o complejos)Comunicar el diseoEvaluar el diseo

TAREA: DISEAR LA SOLUCINCONSIDERACIONES CLAVES

Cada paso en esta tarea puede causar la revisin de todos los pasos anteriores a la luz de la nueva informacin y decisiones.

Por ejemplo, mientras se determina cmo los elementos colaboran se podra encontrar un hueco en los requerimientos que hace volver al principio despus de colaborar con el analista, o al evaluar el diseo el que lo revisa podra sealar que un elemento reutilizable que se est utilizando no funciona como se esperaba lo que podra causar la identificacin nuevos elementos para tomar su lugar.

TAREA: DISEAR LA SOLUCINCONSIDERACIONES CLAVESConsidere la arquitectura mientras se ejecuta esta tarea.

Todo el trabajo de diseo se debe con respecto a la arquitectura dentro de la cual existe el diseo.

Por otra parte, ciertos elementos de diseo sern considerados de gran importancia arquitectnica; estos elementos requerirn actualizaciones en la arquitectura.

Esta tarea se aplicara en numerosas ocasiones. El diseo se realiza mejor en pequeos trozos.

TAREA: DISEAR LA SOLUCINCONSIDERACIONES CLAVESIncluso cuando se inicia el diseo para un proyecto particular, se espera que habr frameworks existentes y elementos reutilizables.

Cada paso de esta tarea debe prestar atencin al diseo ya existente y a la implementacin existente, utilizando elementos existentes cuando sea posible y emulando o mejorando los elementos existentes como sea apropiado mientras se disea esta parte de la solucin.

Aplicar patrones a lo largo de esta tarea. Patrones representan diseos probados y su uso promueve la calidad y consistencia a travs del diseo.

TAREA: IMPLEMENTAR TESTS DE DESARROLLOImplementar una o ms pruebas que permitan la validacin elementos de implementacin individuales a travs de la ejecucin.

PROPSITO

Prepararse para validar un elemento de implemetnacion (por ejemplo, una operacin, una clase, un procedimiento almacenado) a travs de pruebas unitarias.

El resultado es una o mas pruebas de desarrollo nuevas.

TAREA: IMPLEMENTAR TESTS DE DESARROLLO

TAREA: IMPLEMENTAR TESTS DE DESARROLLODESCRPCIN PRINCIPALLas pruebas de desarrollo son diferentes de otras formas de pruebas en que se basan en el comportamiento esperado de unidades de cdigo en lugar de basarse directamente en los requisitos del sistema.

Es mejor hacer esto en una escala pequea, mucho ms pequea que el cdigo base completo a ser escrito por un desarrollador en el transcurso de una iteracin.

Esto se puede hacer para una sola operacin, un campo aadido a una interfaz de usuario, un procedimiento almacenado, etc.

A medida que el cdigo base se construye de forma incremental, nuevas pruebas sern escritas y las pruebas existentes podran revisarse para probar el comportamiento adicional.

TAREA: IMPLEMENTAR TESTS DE DESARROLLOPASOSRefinar el alcance e identificar el test(s)Escribir la configuracin de la prueba(setup test)Definir los resultados esperadosEscribir la lgica del test.Definir la respuesta del test.Escribir el cdigo de limpieza.Probar el test.

TAREA: IMPLEMENTAR TESTS DE DESARROLLOCONSIDERACIONES CLAVEAutomatizar las pruebas a travs de una herramienta de regresin unidad de prueba (por ejemplo, xUnit) de manera que las pruebas puedan ser ejecutadas por los desarrolladores cada vez que se hacen cambios en el cdigo.Probar en base al riesgo del elemento de implementacin. Por ejemplo, mientras mas critico un elemento, ms importante es para probarlo a fondo.Trabajar en pares con los miembros del equipo con habilidades de testing en todas las etapas de esta tarea para ganar penetracin en consideraciones de prueba y de calidad.

El [Trabajo del Proyecto (Project Work)] se utiliza implcitamente en las tareas de implementacin para manejar que requerimientos o requerimientos de cambio van a ser realizado en este cdigo.

TAREA: IMPLEMENTAR TESTS DE DESARROLLOALTERNATIVAS

Contar con pruebas de aceptacin para validar el software.

Esto probablemente consumir mucho tiempo, ser tarde, y no es tan eficaz como las pruebas de desarrollo en la identificacin de los errores (bugs) y encontrar su ubicacin en el cdigo.

TAREA: IMPLEMENTAR LA SOLUCINImplementar cdigo fuente para proporcionar nueva funcionalidad o corregir errores.

PROPSITO

El propsito de esta tarea es producir una implementacin para parte de la solucin (tal como una clase o componente), o para fijar uno o ms defectos.

El resultado es tpicamente cdigo fuente nuevo o modificado, el cual hace referencia a la aplicacin.

TAREA: IMPLEMENTAR LA SOLUCIN

TAREA: IMPLEMENTAR LA SOLUCINDESCRIPCIN PRINCIPAL

Usualmente, esta tarea se enfoca en un elemento de implementacin especfico, tal como una clase o componente, pero no necesariamente tiene que serlo.

Una porcin del diseo se implementa mediante la realizacin de esta tarea.

TAREA: IMPLEMENTAR LA SOLUCINDESCRIPCIN PRINCIPAL

Esta tarea se puede llevar a cabo cualquier nmero de veces durante una iteracin.

De hecho, es mejor hacer esta tarea con el menor alcance posible para estrechar el lazo entre ella y las tareas relacionadas involucrando pruebas de desarrollo y consideraciones de diseo.

TAREA: IMPLEMENTAR LA SOLUCINPASOSDETERMINAR UNA ESTRATEGIADeterminar una estrategia basada en el diseo de software y pruebas de desarrollador para saber cmo se va a implementar la solucin.

Las opciones fundamentales son:Aplicar codigo (assets) existente, reutilizable.Modelar el diseo en detalle y generar el cdigo fuente (por la transformacin del modelo).Escribe el cdigo fuente.Cualquier combinacin de las anteriores.

TAREA: IMPLEMENTAR LA SOLUCINPASOSIDENTIFICAR OPORTUNIDADES PARA LA REUTILIZACIN

Identificar cdigo existente u otros elementos de implementacin que pueden ser reutilizados en la porcin de implementacin que se est creando o cambiando.

Una comprensin integral del diseo general es til, porque lo mejor es aprovechar las oportunidades de reutilizacin cuando se tiene un conocimiento profundo de la solucin propuesta.

TAREA: IMPLEMENTAR LA SOLUCINPASOSTRANSFORMAR EL DISEO EN IMPLEMENTACIN

Si se est utilizando herramientas sofisticadas de modelado, se debe ser capaz de generar una parte del cdigo fuente requerido desde el modelo. Tenga en cuenta que la programacin es comnmente necesaria para completar la implementacin despus que el modelo de diseo se ha transformado en cdigo.

Incluso sin herramientas, por lo general hay una cierta cantidad de cdigo que puede ser creado por rutina mediante el examen de las pruebas de diseo y desarrollo.

TAREA: IMPLEMENTAR LA SOLUCINPASOSESCRIBIR CODIGO FUENTE

Escribir el cdigo fuente para que la implementacin se ajuste al diseo y comportamiento esperado.

Se debe tratar de reutilizar y/o generar cdigo siempre que sea posible, pero todava se tendr que hacer un poco de programacin.

TAREA: IMPLEMENTAR LA SOLUCINPASOSESCRIBIR CODIGO FUENTE

Para ello, tenga en cuenta lo siguiente:

Examinar los requerimientos tcnicos. Debido a que algunos requerimientos de informacin no se traducen directamente al diseo, se debe examinar el requerimiento(s) para asegurarse de que se realicen plenamente en la implementacin.

Refactorizar el cdigo para mejorar su diseo. La refactorizacin es una tcnica donde se mejora la calidad del cdigo a travs de cambios pequeos y seguros.

TAREA: IMPLEMENTAR LA SOLUCINPASOSESCRIBIR CODIGO FUENTE

Afinar los resultados de la implementacin existente para mejorar el rendimiento, la interfaz de usuario, la seguridad y otras reas no funcionales.

Agregar detalles que faltan, como completar la lgica de las operaciones o agregar clases de soporte y estructuras de datos

Manejar las condiciones del entorno.

TAREA: IMPLEMENTAR LA SOLUCINPASOSESCRIBIR CODIGO FUENTEHacer frente a circunstancias inusuales o estados de error.

Restringir el comportamiento (evitando que los usuarios o cdigo de cliente ejecute flujos ilegales, escenarios, o combinaciones de opciones).

Aadir secciones crticas de cdigo multi-hilo o re-entrante.

TAREA: IMPLEMENTAR LA SOLUCINPASOSESCRIBIR CODIGO FUENTE

Aunque muchas consideraciones diferentes se enumeran aqu, hay una manera clara de saber cundo el cdigo fuente ha terminado.

La solucin ha sido implementada cuando pasa las pruebas de desarrollo.

Algunas otras consideraciones pueden ser atendidas en un paso de refactorizacin sobre el cdigo para mejorarlo una vez que est completo y correcto.

TAREA: IMPLEMENTAR LA SOLUCINPASOSEVALUAR LA IMPLEMENTACINComprobar que la implementacin es apta para su propsito.

Examinar el cdigo de su idoneidad para llevar a cabo su funcin.

Este es un paso de control de calidad que se realiza adems de las pruebas que se describe en otras tareas.

TAREA: IMPLEMENTAR LA SOLUCINPASOSEVALUAR LA IMPLEMENTACIN

Considere las siguientes estrategias:

La programacin en parejas. Emparejando para implementar el cdigo en primer lugar, el cdigo se evala efectivamente conforme se escribe.

Leer a travs del cdigo para encontrar errores comunes. Considerar la posibilidad de mantener una lista de los errores comunes que se hacen, como referencia de recordatorio.

Utilizar herramientas para comprobar los errores de implementacin y cdigo inapropiado. Por ejemplo, utilice un corrector esttico de reglas de cdigo o establecer al compilador al nivel de mensajes ms detallado.

TAREA: IMPLEMENTAR LA SOLUCINPASOSEVALUAR LA IMPLEMENTACIN

Utilizar herramientas que pueden visualizar el cdigo. Visualizacin de cdigo, como las visualizaciones UML en el IDE Eclipse, ayudan a los desarrolladores a identificar problemas tales como acoplamiento excesivo o dependencias circulares.

Realizar inspecciones de cdigo informales, dirigidas. Pregunte a sus colegas para revisar pequeas secciones crticas de cdigo y el cdigo con rotacin significativa. Evite revisar grandes secciones de cdigo.

TAREA: IMPLEMENTAR LA SOLUCINPASOSEVALUAR LA IMPLEMENTACIN

Usar un tester para garantizar que la implementaciones es comprobable y comprensible a los recursos de prueba.

Mejorar la aplicacin sobre la base de los resultados de estas evaluaciones.

TAREA: IMPLEMENTAR LA SOLUCINPASOSCOMUNICAR DECISIONES SIGNIFICATIVAS

Comunicar el impacto de los cambios inesperados en el diseo y los requerimientos.

Los problemas y restricciones que se descubren al implementar el sistema deben ser comunicados al equipo.

El impacto de los problemas detectados durante la implementacin deben ser incorporado en las decisiones futuras.

TAREA: IMPLEMENTAR LA SOLUCINPASOSCOMUNICAR DECISIONES SIGNIFICATIVAS

Si es apropiado, utilizar el proceso de gestin de cambios para reflejar las ambigedades que se identifican y resuelven en la implementacin para que puedan someterse a pruebas y se puede manejar las expectativas de los stakeholders de manera apropiada.

Del mismo modo, aprovechar el proceso de diseo para actualizar el diseo para reflejar las nuevas restricciones y los problemas detectados durante la implementacin para asegurar de que la nueva informacin se comunica a otros desarrolladores.

TAREA: IMPLEMENTAR LA SOLUCINPASOSCOMUNICAR DECISIONES SIGNIFICATIVASPor lo general, no hay necesidad de una solicitud de cambio si el cambio requerido es pequeo y la misma persona esta diseando e implementando el elemento de cdigo.

Esa persona puede hacer el cambio de diseo directamente.

Si el cambio requerido tiene un amplio impacto, puede ser necesario comunicar este cambio a los otros miembros del equipo a travs de un requerimiento de cambio.

TAREA: IMPLEMENTAR LA SOLUCINCONSIDERACIONES CLAVE

Es mejor cuando los test de desarrollo ya existen por lo que hay una definicin inequvoca de lo que se considera un comportamiento correcto. La aplicacin debe ser probada de inmediato.

El [Project Work] se utiliza implcitamente en las tareas de implementacin para gestionar que requerimientos o solicitudes de cambio se est realizando en el cdigo.

TAREA: EJECUTAR TEST DE DESARROLLOEjecutar pruebas contra los elementos individuales de implementacion para verificar que sus estructuras internas funcionan segn lo especificado.

PROPSITOPara comprobar que la implementacin funciona como se especifica.

TAREA: EJECUTAR TEST DE DESARROLLO

Relationships

TAREA: EJECUTAR TEST DE DESARROLLOPASOSEJECUTAR PRUEBAS DE DESARROLLO

Ejecutar las pruebas de desarrollo. El procedimiento puede variar, dependiendo de si la prueba es manual o automatizada y si los componentes de prueba adicionales son necesarias, como controladores o stubs.

Para ejecutar las pruebas, es necesario asegurarse de que se ha inicializado el entorno de prueba con todos los elementos necesarios, tales como software, hardware, herramientas, datos, y as sucesivamente.

Las pruebas automatizadas suelen actualizar los resultados de las pruebas que se pueden evaluar para determinar si las pruebas salieron mal.

TAREA: EJECUTAR TEST DE DESARROLLOPASOSEVALUAR LA EJECUCIN DEL TESTEvaluar la ejecucin de la prueba mediante el anlisis del funcionamiento de la prueba.

La prueba se completar ya sea normal o anormal. Para las pruebas realizadas correctamente, una finalizacin normal representa una prueba pasada, aunque podra justificar un examen adicional del log de los resultados de la prueba para asegurar que la prueba se ejecut como se esperaba.

Una terminacin anormal podra ser la terminacin prematura o simplemente una prueba que no se completa de forma prevista.

.

TAREA: EJECUTAR TEST DE DESARROLLOPASOSEVALUAR LA EJECUCIN DEL TESTRevise el registro(log) de prueba para entender las fallas reportadas, advertencias o resultados inesperados.

La causa del problema(s) podra ser que el elemento de implementacin que se est probando es defectuoso, un problema con las pruebas de desarrollo, o un problema con el entorno.

TAREA: EJECUTAR TEST DE DESARROLLOPASOSRESPONDER A LOS RESULTADOS DE LAS PRUEBASDeterminar la accin correctiva apropiada para recuperarse de la ejecucin de una prueba de desarrollo "fallida".

Si el elemento de aplicacin bajo prueba est defectuoso, solucionar el problema, si es posible y vuelva a ejecutar las pruebas.

Si el problema es grave y no puede abordarse de inmediato, reportar el defecto.

Si la prueba de desarrollo es defectuosa fijar la prueba y vuelva a ejecutar las pruebas.

Si hay un problema con el entorno, resolverlo y vuelva a ejecutar las pruebas.

TAREA: EJECUTAR TEST DE DESARROLLOPASOSPROMOVER CAMBIOS PARA PRUEBAS DE INTEGRACIN

Cuando las pruebas de desarrollo pasan y ms trabajo no es necesario para completar el conjunto de cambios, promover los cambios para la prueba de integracin.

Si el paso de estas pruebas representa la finalizacin de un requerimiento, actualizar el estado del elemento de trabajo .

TAREA: EJECUTAR TEST DE DESARROLLOCONSIDERACIONES CLAVEEs comn requerir que el cdigo pase todas las pruebas desarrollo antes de que pueda ser entregado en un repositorio de cdigo fuente integrado.

Emparejar con expertos en pruebas para obtener una visin sobre las consideraciones de prueba y de calidad.

El [Project Work] se utiliza implcitamente en las tareas implementacin para gestionar que requerimientos o solicitudes de cambio se estn realizando en el cdigo.

TAREA: INTEGRAR Y crear buildEsta tarea describe cmo integrar todos los cambios realizados por los desarrolladores en el cdigo base y realizar las pruebas mnimas para validar la construccin (build).

PROPSITO

El propsito de esta tarea es la integracin de todos los cambios realizados por todos los desarrolladores en el cdigo base y realizar las pruebas mnimas sobre el incremento del sistema con el fin de validar la construccin.

El objetivo es identificar los problemas de integracin tan pronto como sea posible, por lo que se puede corregir fcilmente por la persona adecuada, en el momento adecuado.

TAREA: INTEGRAR Y crear buildRELACIONES

TAREA: INTEGRAR Y crear buildPASOS

Integrar los elementos implementados

En el espacio de trabajo relevante, combinar todos los Conjuntos de Cambios terminados que no estn en la ltima lnea base.

Resolver los conflictos de versiones de los artefactos ya sea eliminando uno de los conjuntos de cambios que crearon el conflicto o mediante la creacin de un nuevo conjunto de cambios que incluye versiones fusionadas de los artefactos en conflicto.

95TAREA: INTEGRAR Y crear buildPASOSCrear la construccin (build). Los detalles de este paso dependen del lenguaje de implementacin y el entorno de desarrollo y pueden implicar compilar y enlazar (en el caso de lenguajes compilados) y/ o otros procesos que resultan en un incremento ejecutable del sistema.

Ejemplos de estos pasos incluyen:

Compilar y vincular los artefactos de codigo para crear un ejecutableCargar objetos binarios en una plataforma de pruebas o simuladorEjecucin de un script para cargar/actualizar los esquemas de bases de datosEmpaquetado y despliegue de aplicaciones web

TAREA: INTEGRAR Y crear buildPASOSProbar elementos integradosVuelva a ejecutar las pruebas de desarrollo contra los elementos integrados para verificar que se comportan de la misma manera como lo hicieron en aislamiento.

Asegrese de que el alcance de estas pruebas es tan amplio como sea posible, lo que asegura que los ltimos conjuntos de cambios no causaron fallas en las pruebas de desarrollo en otras reas del sistema.

TAREA: INTEGRAR Y crear buildPASOS

Ejecutar "Pruebas de humo"Varios builds se crear en cada iteracin. Para cada build, este paso slo se realiza cuando el conjuntos de cambios ha sido entregado para satisfacer los requisitos de esa construccin.

Ejecutar un sub-conjunto de las pruebas del sistema para asegurar que la construccin es adecuada antes de comprometer recursos para el alcance completo de las pruebas del sistema.

Si bien el nivel de las pruebas variar, se centran en ganar la confianza de que el incremento es de calidad suficiente para establecer una lnea de base para las pruebas del sistema.