TP Final M Todos De Desarrollo Driven Design
Driven Developments
Zarauza, Mercedes
Melo, Victor
López, Jose Luis
Portero, Guillermo
Quirós, Alberto
Prof.: Andrés Díaz Pace
UCA – Métodos de Desarrollo - Driven Developments
Pg. 1
Carrera de Especialización en Ingeniería del Software
Índice
Introducción…………………………………………………………………………. Pg. 3
Test Driven Development……………………………………………………..Pg. 4
Behaviour Driven Development……………………………………………. Pg. 10
Domain Driven Design………………………………………………………….. Pg. 15
Feature Driven Design………………………………………………………….. Pg. 19
Model Driven Development………………………………………………….. Pg. 22
Ejemplo de integración TDD & BDD………………………………………. Pg. 27
Fuentes de Información y Bibliografía…………………………………… Pg. 30
UCA – Métodos de Desarrollo - Driven Developments
Pg. 2
Carrerade Especialización en Ingeniería del Software
Introducción
El objetivo de este trabajo es presentar las principales filosofías/técnicas/estilos de desarrollo
de software, sus procesos y aplicación. A tal efecto primeramente explicaremos los conceptos
básicos sobre los cuales se basan dichas filosofías:
¿Cuál es el propósito del Desarrollo de Software?
El desarrollo de software es la traducciónde una necesidad del usuario (un negocio, uno
mismo, u objetivo de negocio en un producto de software. Por lo tanto abarca desde la
conceptualización de la solución que se desea hasta la manifestación final del mismo en el
software.
¿Qué es el Proceso de Software?
El proceso de desarrollo de software es una estructura impuesta en el desarrollo de un
producto de software. El esqueleto del procesoconsidera análisis del dominio, análisis de los
requerimientos, especificaciones, arquitectura del software, programación, testing,
documentación, capacitación y soporte, y mantenimiento. El proceso puede ser secuencial o
iterativo.
¿Qué es una Metodología?
La Metodología es un estilo para resolver problemas de ingeniería de software específicos; un
set de prácticas (a veces acompañada de materialde capacitación, programas de educación
formal, herramientas de diagramación) que pueden utilizarse en forma repetida para producir
software.
A continuación presentamos un listado resumido de los diferentes estilos de Driven
Developments (desarrollos guiados) de los cuales vamos a detallar aquellos que consideramos
más importantes a destacar sea por su difusión como por sus características.
Todosestos diferentes tipos de driven developments se basan en un proceso surgido en
metodologías ágiles. Estos desarrollos trabajan de cerca con SCRUM y XP para la gestión e
implementación de estos requisitos. También puede trabajar con procesos no-ágiles tales como
RUP.
Ninguno de estos desarrollos pueden garantizar por sí solos un mejor diseño, la única manera
de alcanzar esto es creando el correctoambiente, sabiendo cuál proceso (o combinación)
aplicar y cuándo, junto con conformar un equipo con las personas correctas.
A continuación el listado de Desarrollos de Diseños Dirigidos.
Test Driven Design: técnica que consiste en pequeñas iteraciones donde los casos de
testing unitarios se escriben primero y recién luego el programa para ir cumpliendo con
dichos testings.
UCA – Métodos deDesarrollo - Driven Developments
Pg. 3
Carrera de Especialización en Ingeniería del Software
Behaviour Driven Development: focaliza en entregar priorizado y verificable valor al
negocio a través de utilizar un vocabulario común, específico y simple para minimizar las
fallas de comunicación entre cliente, desarrolladores, testers y gerentes.
Domain Driven Design: es una forma de pensar ysetear prioridades que tiene por objetivo
acelerar proyectos de software que deben lidiar con dominios de alta complejidad.
Feature Driven Design: se basa en cortas iteraciones que consisten en 5 actividades básicas
y se apoya en el seteo de Milestones para medir el progreso.
Model Driven Design: refiere a uso del modelado de software como principal forma de
expresión.
Test Driven...
Regístrate para leer el documento completo.