Академический Документы
Профессиональный Документы
Культура Документы
Desarrollo de
Software
Juan Gerardo Rosales Lpez
Prof.: Juan Carlos Morales Ponce
Modelos de Desarrollo de
Software
Introduccin.
Un modelo para el desarrollo de software es una representacin abstracta de
un proceso. Cada modelo representa un proceso desde una perspectiva
particular y as proporcione informacin parcial sobre el proceso. A continuacin
les dejare los modelos de desarrollo de software, sus etapas, sus problemas y
unos esquemas que explican cmo funcionan.
1.- El modelo de codificar y fijar
El modelo bsico usado en los primeros das del desarrollo de software, tiene
dos pasos:
(1) Escribir algn cdigo.
(2) Fijar los problemas en el cdigo.
As, el orden de los pasos era fabricar algn cdigo primero y pensar sobre los
requerimientos, diseo, prueba y mantencin a continuacin.
Este modelo tiene las dificultades de presentar una baja estructuracin del
cdigo luego de alguna cantidad de fijaciones, pese a que se puede desarrollar
un software de calidad, es posible que ste tenga una correspondencia muy
pobre con las reales necesidades del usuario y, finalmente, si no existe la
conciencia de la necesidad real de pruebas y modificaciones el costo de las
sucesivas fijaciones ser muy alto.
Plan operativo
Etapa donde se define el problema a resolver, las metas del proyecto, las
metas de calidad y se identifica cualquier restriccin aplicable al proyecto.
Especificacin de requerimientos
Permite entregar una visin de alto nivel sobre el proyecto, poniendo nfasis en
la descripcin del problema desde el punto de vista de los clientes y
desarrolladores. Tambin se considera la posibilidad de una planificacin de los
recursos sobre una escala de tiempos.
Especificacin funcional
Diseo
Implementacin
Integracin
Validacin y verificacin
Una vez que el sistema ha sido integrado, comienza esta etapa. Es donde es
probado para verificar que el sistema es consistente con la definicin de
requerimientos y la especificacin funcional. Por otro lado, la verificacin
consiste en una serie de actividades que aseguran que el software implementa
correctamente una funcin especfica. Al finalizar esta etapa, el sistema ya
puede ser instalado en ambiente de explotacin.
Mantencin
Diseo.
Codificacin.
Prueba.
Mantenimiento.
Si bien algunos autores consideran que esto es parte del ciclo de vida clsico
(Boehm, 1988), es tambin posible verlo como un mtodo independiente .
Las ventajas de un enfoque de desarrollo orientado a prototipos estn dadas
por: reduccin de la incertidumbre y del riesgo, reduccin de tiempo y de
costos, incrementos en la aceptacin del nuevo sistema, mejoras en la
administracin de proyectos, mejoras en la comunicacin entre desarrolladores
y clientes, etc.
Si bien, el desarrollo orientado a prototipos tiene considerables ventajas,
tambin presenta desventajas como: la dependencia de las herramientas de
software para el xito ya que la necesidad de disminucin de incertidumbre
depende de las iteraciones del prototipo, entre ms iteraciones existan mejor y
esto ltimo se logra mediante el uso de mejores herramientas lo que hace a
este proceso dependiente de las mismas. Tambin, no es posible aplicar la
metodologa a todos los proyectos de software y, finalmente, la mala
interpretacin que pueden hacer los usuarios del prototipo, al cual pueden
confundir con el sistema terminado.
Las fases que comprende el mtodo de desarrollo orientado a prototipos
seran:
Investigacin preliminar
El objetivo de esta etapa es registrar todos los requerimientos y deseos que los
usuarios tienen en relacin al proyecto bajo desarrollo. Esta etapa es la ms
importante de todo el ciclo de vida, es aqu donde el desarrollador determina
los requisitos mediante la construccin, demostracin y retroalimentaciones del
prototipo. Por lo mismo esta etapa ser revisada con ms detalle luego de esta
descripcin.
Diseo tcnico
Programacin y prueba
Operacin y mantencin
Diseo y construccin
Evaluacin
Esta etapa tiene dos propsitos: extraer a los usuarios la especificacin de los
requerimientos adicionales del sistema y verificar que el prototipo desarrollado
lo haya sido en concordancia con la definicin de requerimientos del sistema.
Si los usuarios identifican fallas en el prototipo, entonces el desarrollador
simplemente corrige el prototipo antes de la siguiente evaluacin. El prototipo
es repetidamente modificado y evaluado hasta que todos los requerimientos del
sistema han sido satisfechos. El proceso de evaluacin puede ser dividido en
cuatro pasos separados: preparacin, demostracin, uso del prototipo y
discusin de comentarios. En esta fase se decide si el prototipo es aceptado o
modificado.
Modificacin
Trmino
Cambio Continuo.
Un programa que se utiliza en un ambiente del mundo real debe cambiar o ser
cada vez menos til en ese ambiente.
Complejidad creciente.
Conservacin de la familiaridad.
Programas-S.
Los Programa-S son aquellos cuya funcin puede ser definida formalmente por
y derivable desde, una especificacin.... Las sentencias del problema, el
programa y la solucin, cuando es obtenida, puede relacionarse con un mundo
externo. Pero esto es una relacin casual y no causal. En efecto, cuando esto
existe somos libres para cambiar nuestro inters y redefinir el problema. Pero el
resultado de esto es un nuevo programa para esta solucin. Puede ser posible
y eficiente derivar el nuevo programa desde el antiguo. Pero es un programa
diferente que define una solucin para un problema diferente.
Programas - P
Programas - E.
La tercera clase, los Programas - E, estn inherentemente ms inclinados al
cambio. Estos son programas que mecanizan una actividad humana o social...
La instalacin de los programas junto con este sistema asociado -...- cambia la
real naturaleza del problema a ser resuelto, el programa puede hasta
convertirse en parte del mundo que el mismo modela, est embebido en l...No
como otros sistemas artificiales donde,..., el cambio es ocasional, aqu este
aparece continuamente. La presin del cambio est construida con l.... Los
Programas P y E estn estrechamente relacionados, podemos establecer la
clase unin de P y E como Programas-A. stos difieren de los Programas-S en
el sentido que representan una aplicacin computacional en el mundo real.
Desarrollo.