Professional Documents
Culture Documents
DE
DESARROLLO
DEL
SOFTWARE
Fecha de comienzo: 09/10/2008
Fecha de entrega: 15/10/2008
Grupo11
Isaías Carrillo Pérez
Rodrigo Pérez González
Aureliano David Rodríguez Martín
INDICE
1.1 Metodologías de Desarrollo de Software.
1.2 Metodologías Pesadas.
1.2.1 Introdución.
1.2.2 Filosofía RUP.
1.2.3 Disciplina de Desarrollo RUP.
1.2.4 Disciplina de Soporte RUP.
1.2.5 Elementos del RUP.
1.3 Metodologías Ágiles.
1.3.1 Introdución.
1.3.2 Programación Extrema o XP (Extreme Programming).
1.3.3 Roles de la Programación Extrema.
1.4 Referencias Web o bibliografía utilizada.
METODOLOGIAS DE DESARROLLO DE SOFTWARE
1.1 Metodologías de Desarrollo de Software.
Las Metodologías de Desarrollo de Software surgen ante la necesidad
de utilizar una serie de procedimientos, técnicas, herramientas y soporte
documental a la hora de desarrollar un producto software.
Dichas metodologías pretenden guiar a los desarrolladores al crear un
nuevo software, pero los requisitos de un software a otro son tan variados y
cambiantes, que ha dado lugar a que exista una gran variedad de
metodologías para la creación del software. Se podrían clasificar en dos
grandes grupos:
Las metodologías orientadas al control de los procesos, estableciendo
rigurosamente las actividades a desarrollar, herramientas a utilizar y
notaciones que se usarán. Estas metodologías son llamadas
Metodologías Pesadas.
1.2 Metodologías Pesadas.
1.2.1 Introducción.
Son las más tradicionales, se centran en la definición detallada de los
procesos y tareas a realizar, herramientas a utilizar, y requiere una extensa
documentación, ya que pretende prever todo de antemano. Este tipo de
metodologías son mas eficaces y necesarias cuanto mayor es el proyecto
que se pretende realizar respecto a tiempo y recursos que son necesarios
emplear, donde una gran organización es requerida.
− Inicio : El objetivo es determinar la visión del proyecto y definir lo que
se desea realizar.
− Elaboración : Etapa en la que se determina la arquitectura óptima del
proyecto.
− Construcción : Se obtiene la capacidad operacional inicial.
− Transmisión : Obtener el producto acabado y definido.
1.2.2 Filosofía RUP.
La metodología RUP tiene 6 principios clave:
1.2.3 Disciplina de desarrollo de RUP.
1.2.4 Disciplina de soporte RUP.
Configuración y administración del cambio: Guardar todas las versiones
del proyecto.
Administración del proyecto: Administrar los horarios y recursos que se
deben de emplear.
Ambiente: Administrar el ambiente de desarrollo del software.
Distribución: Hacer todo lo necesario para la salida del proyecto.
1.2.5 Elementos del RUP.
Actividades: Procesos que se han de realizar en cada etapa/iteración.
Trabajadores: Personas involucradas en cada actividad del proyecto.
Artefactos: Herramientas
empleadas para el desarrollo del proyecto.
Puede ser un documento, un modelo, un elemento del modelo, etc.,...
1.3 Metodologías Ágiles.
1.3.1 Introducción.
Esta metodología nace en febrero del 2001 en una reunión celebrada en
UtahEEUU.
Principales ideas de la metodología ágil:
Se encarga de valorar al individuo y las iteraciones del equipo más
que a las herramientas o los procesos utilizados.
Se hace mucho más importante crear un producto software que
funcione que escribir mucha documentación.
El cliente está en todo momento colaborando en el proyecto.
Es más importante la capacidad de respuesta ante un cambio
realizado que el seguimiento estricto de un plan.
1.3.2 Programación Extrema o XP (EXTREME PROGRAMMING).
La Programación Extrema es una metodología ágil centrada en
potenciar las relaciones interpesonales como clave para el éxito en el
desarrollo de software.
Promueve el trabajo en equipo, preocupandose en todo momento
del aprendizaje de los desarrolladores y estableciendo un buen clima de
trabajo.
Este tipo de método se basa en una realimentación continuada
entre el cliente y el equipo de desarrollo con una comunicación fluida entre
todos los participantes, también busca simplificar las soluciones
implementadas y coraje para los múltiples cambios.
Este tipo de programación es la adecuada para los proyectos con
requisitos imprecisos, muy cambiantes y con un riesgo técnico excesivo.
1.3.3 Roles de la Programación Extrema (XP).
Según la propuesta de Beck los roles que nos podemos encontrar
son los siguientes:
Programador : El programador escribe las pruebas unitarias y produce
el código del sistema.
Cliente : Escribe las historias de los usuarios y las pruebas
funcionales para validar su implementación. El cliente da una gran
prioridad a las historias de usuarios y decide cual implementar en
cada iteración centrandose en aportar mayor valor al negocio.
Encargado de Pruebas (Tester) : Ayuda al cliente a escribir las
pruebas funcionales. Se encarga de ejecutar las pruebas con
regularidad, difunde los resultados obtenidos al equipo y es el
responsable de las herramientas que dan soporte a las pruebas.
Encargado de Seguimiento (Tracker) : Es el que proporciona la
realimentación al equipo. Realiza el seguimiento del proceso de cada
iteración y verifica el grado de acierto entre las estimaciones
realizadas y el tiempo real dedicado en ello para la mejora de futuras
estimaciones.
Entrenador (Coach) : Es el responsable del proceso global. Se
encarga de proveer guias al equipo de forma que se apliquen las
practicas XP y se vaya siguiendo el proceso correctamente.
Consultor : Es un miembro externo del equipo con un conocimiento
especifico en algún tema que es necesario para el proyecto, en el que
surgan problemas.
Gestor (Big boss) : Es el vinculo entre clientes y programadores,
ayuda a que el equipo trabaje efectivamente creando las condiciones
adecuadas. Su labor esencial es la de coordinación.
1.4 Referencias Web o bibliografía utilizada.
Archivo .pdf de la Universidad Politécnica de Valencia con una amplia explicación sobre
metodologías ágiles y la programación extrema (XP).
http://www.willydev.net/descargas/prev/TodoAgil.pdf
Página web en la que habla de las metodologías mas utilizadas RUP, XP y MSF.
http://www.informatizate.net/articulos/metodologias_de_desarrollo_de_software_07062004.html
Página de wikipedia sobre Metodología RUP.
http://es.wikipedia.org/wiki/RUP
Clara e interesante web sobre RUP.
http://www.scribd.com/doc/297224/RUP
Presentación de las Metodologías Agiles en la que habla de la programación extrema
(XP).
http://www.emarket.cl/dir/umayor/ingsw/Apoyo/GRUPO_1_PROGRAMACION_AGIL.ppt
Archivo pdf que nos habla de las ventajas que existen al utilizar las metodologías Agiles.
http://www.willydev.net/InsiteCreation/v1.0/descargas/prev/metodologiasagiles.pdf