Metodologias de Desarrollo
Metodologias de Desarrollo
Metodologias de Desarrollo
Metodologas de desarrollo.
Parte 2
Introduccin
Una metodologa nos ordena, nos contiene, nos permite definir lmites. Construir
software complejo requiere un gran esfuerzo: tecnologa, dinero y sobre todo:
personas. Personas que interactan entre s, con diferentes grados de
conocimiento, con diferentes roles, con diferentes intereses. Una metodologa
propone un esquema de trabajo que nos permite entender cul es nuestro rol dentro
del proyecto, nos acerca una cierta sensacin de tranquilidad, de seguridad. Sin un
proceso no sabemos cmo comenzar y cundo terminar.
En las metodologas secuenciales, el proceso de desarrollo de software se divide
en varios pasos o fases. Cada fase tiene un conjunto de metas a cumplir. El fin de
cada fase delimita el comienzo de la fase siguiente. Aunque son normales la
superposicin de fases, estas metodologas proponen una gran fase de anlisis de
requerimientos, otra de diseo, otra de construccin y otra de pruebas donde el
alcance de cada fase es la totalidad de los requerimientos de un proyecto.
En las metodologas iterativas se divide el proyecto en entregas o iteraciones. Si
cada iteracin define un conjunto de metas a cumplir, podramos pensar que no hay
una gran diferencia con la metodologa secuencial. No obstante, cada iteracin
define como entregable un software testeable por el usuario. Entonces hay etapas
de anlisis de requerimientos, diseo, construccin y prueba en cada iteracin.
Adems, cada iteracin permite revisar y cambiar los requerimientos a resolverse.
Otra taxonoma que divide las metodologas es el grado de importancia que le dan
al proceso de desarrollo
Ganar-ganar
Riesgos posibles.
Elaboracin de la definicin del producto y del proceso.
Planificacin del prximo ciclo y actualizacin de la planificacin del ciclo de
vida. Esto incluye, si es necesario, el particionamiento del sistema en
subsistemas a desplegarse en paralelo. Puede incluir, adems, la definicin
de un plan para finalizar el proyecto si ste es de riesgo demasiado alto o no
es factible.
Adems del nfasis inicial puesto en la condicin de ganar-ganar, el modelo
tambin presenta tres etapas del proceso (puntos de anclaje), que ayudan a
establecer la realizacin de un ciclo alrededor de la espiral y proporcionar los
hitos de decisin antes de que el proyecto de producto de software. Estos
son:
Objetivos del Ciclo de Vida - Define una serie de objetivos para cada actividad
de software ms importantes (un conjunto de objetivos relacionados con la
definicin de los principales requisitos de nivel de producto).
Arquitectura del Ciclo de Vida - Establece los objetivos que deben cumplirse
como la arquitectura de software se define.
Capacidad operativa inicial- Representa un conjunto de objetivos asociados
a la preparacin del software para la instalacin y distribucin, la preparacin
previa a las instalaciones del sitio, asistencia requerida por todas las partes
que utilizar o soporte tcnico del software.
Con esta breve descripcin se puede declarar que el Software de produccin
ms rpido puede facilitarse a travs de la participacin colaborativa de las
partes interesadas pertinentes adems de ser barato a travs de reproceso
y mantenimiento reducciones.
Ventajas
Minimiza riesgos del proyecto
Agrega objetivos de calidad
Desventajas
Genera mucho tiempo en el desarrollo del sistema
Resulta como un modelo muy costoso
Iniciacin
Elaboracin
Construccin
Transicin
Fase de elaboracin
Fase de Construccin
Fase de Transicin
Secciones
Seccin de Proceso
Modelado de Negocio
Requisitos
Anlisis y diseo
Implementacin
Pruebas
Despliegue
Seccin de Soporte
Gestin del cambio y configuraciones
Gestin del proyecto
Entorno
Artefactos
En cada una de sus fases de la estructura esttica realiza una serie de
artefactos que sirven para comprender mejor tanto el anlisis como del
diseo del sistema.
Fase de Inicio
Documento Visin
Especificacin de requerimientos
Fase de elaboracin
Diagramas de caso de uso
Fase de construccin
Trabaja desde cuatro vistas:
Vista lgica
Diagrama de clases
Modelo ER Vista de implementacin
Diagrama de Secuencia
Diagrama de estados
Diagrama de colaboracin
Vista conceptual
Modelo de dominio
Vista fsica
Mapa de comportamiento hardware.
Ventajas
Su uso es libre (como decir barra libre, sin condiciones).
Desventajas
Es necesario aterrizar los conceptos, lo cual puede resultar un poco difcil
para quien no tenga experiencia en el uso de procesos de ingeniera de
software.
Ingeniera Web
-Ingeniera de requisitos.
-Mtrico
-Gestin de proyecto.
-Mtodos, herramientas y automatizacin de prueba.
Ventajas
Es de fcil uso
Permite la comunicacin rpida y directa con una o varias personas que se
encuentre en cualquier parte del mundo, ayudando de esta manera en las
Tics
Desarrollo de diferentes proyectos y propuestas para dar a conocer dichos
proyectos a travs de la red
Ayuda en el proceso de globalizacin de las empresas, ya que permite
contactar diferentes entidades y personas en el mundo sin altos costos
Crear publicidad para que los clientes puedan acceder a productos y
servicios y tengan informacin actualizada de ellos.
Creacin de ventaja competitiva, ya que la empresa o entidad se
encontrara a la vanguardia de la tecnologa.
Desventajas
No posee muchas funcionalidades para la empresa. solo suple necesidades
de comunicacin.
No ofrece diversidad de opciones
Las fases que se deben de llevar acabo en esta metodologa son las
siguientes Por lo que respecta al proceso de autora de la aplicacin a lo
largo del proceso de autora.
Este proceso de autora est dividido en cuatro pasos o actividades:
Metodologas giles
1.
Al individuo y las interacciones del equipo de desarrollo sobre el
proceso y las herramientas; la gente es el principal factor de xito de un
proyecto software. Si se sigue un buen proceso de desarrollo, pero el
equipo falla, el xito no est asegurado; sin embargo, si el equipo funciona,
es ms fcil conseguir el objetivo final, aunque no se tenga un proceso bien
definido. No se necesitan desarrolladores brillantes, sino desarrolladores
que se adapten bien al trabajo en equipo. As mismo, las herramientas
(compiladores, depuradores, control de versiones, etc.) son importantes
para mejorar el rendimiento del equipo, pero el disponer ms recursos que
los estrictamente necesarios tambin puede afectar negativamente. En
resumen, es ms importante construir un buen equipo que construir el
2.
Desarrollar software que funciona ms que conseguir una buena
documentacin; aunque se parte de la base de que el software sin
documentacin es un desastre, la regla a seguir es no producir
documentos a menos que sean necesarios de forma inmediata para tomar
una decisin importante. Estos documentos deben ser cortos y centrarse
en lo fundamental. Si una vez iniciado el proyecto, un nuevo miembro se
incorpora al equipo de desarrollo, se considera que los dos elementos que
ms le van a servir para ponerse al da son: el propio cdigo y la interaccin
con el equipo.
3.
La colaboracin con el cliente ms que la negociacin de un contrato;
las caractersticas particulares del desarrollo de software hacen que
muchos proyectos hayan fracasado por intentar cumplir unos plazos y unos
costes preestablecidos al inicio del mismo, segn los requisitos que el
cliente manifestaba en ese momento. Por ello, se propone que exista una
interaccin constante entre el cliente y el equipo de desarrollo. Esta
colaboracin entre ambos ser la que marque la marcha del proyecto y
asegure su xito.
4.
Responder a los cambios ms que seguir estrictamente un plan; la
habilidad de responder a los cambios que puedan surgir a los largo del
proyecto (cambios en los requisitos, en la tecnologa, en el equipo, etc.)
determina tambin el xito o fracaso del mismo. Por lo tanto, la planificacin
no debe ser estricta puesto que hay muchas variables en juego, debe ser
flexible para poder adaptarse a los cambios que puedan surgir. Una buena
estrategia es hacer planificaciones detalladas para unas pocas semanas y
planificaciones mucho ms abiertas para unos pocos meses.
Ventajas
Desventajas
Metodologas emergentes
La programacin extrema o extreme Programming (XP) es una metodologa
formulada por Kent Beck y Ian Sommerville.
Caractersticas
Se diferencia porque pone ms nfasis en la adaptabilidad.
Software que funcione es ms importante que documentacin exhaustiva.
La respuesta ante el cambio es ms importante que el seguimiento de un
plan.
Ventajas
Las metodologas emergentes motivan ms a los equipos de trabajo.
El principal beneficio del diseo orientado a objetos es que proporciona un
mecanismo
para
formalizar
modelos
de
la
realidad.
Evita malos entendidos de requerimientos entre el cliente y el equipo.
El uso del modelo orientado a objetos alienta la reutilizacin no solo del
software,
sino
de
diseos
completos.
Proporcionan mejores resultados en los proyectos de alto riesgo.
Desventajas
Problemas
derivados
de
la
comunicacin
oral.
Este tipo de comunicacin resulta difcil de preservar cuando pasa el tiempo
y est sujeta a muchas ambigedades.
Conclusin
Bibliografa
https://mdjesus.wordpress.com/2010/05/19/84/