external image images?q=tbn:ANd9GcTQZxAA5dN6bHQpZSIdDzwqDYtFxpKmlbNkI3GOiFbvNRvXAPPv9g

Modelos de Proceso del Software
El proceso es el conocimiento incorporado, y puesto que el conocimiento esta inicialmente disperso, el desarrollo de software implícito, latente e incompleto en gran medida es un proceso social de aprendizaje. El proceso es un dialogo en el que se reúne el conocimiento y se incluye en el software para convertirse en software. El proceso proporciona una iteración entre los usuarios y los diseñadores, entre los usuarios y las herramientas de desarrollo, y entre los diseñadores y las herramientas de desarrollo (tecnología). Es un proceso interactivo donde la herramienta de desarrollo se usa como medio de comunicación, con cada iteración del dialogo se obtiene mayor conocimiento.

El Ciclo De Vida Y Los Procesos
Todo proyecto tiene asociado, por más pequeño que éste sea, pasos que se deben seguir tales como: planificación, estimación de recursos, seguimiento y control, y evaluación del proyecto. La selección de un modelo de ciclo de vida está asociada a un orden en la realización de las actividades a desarrollar.
La red de actividades, es la que permitirá establecer a partir de la matriz de precedencia el camino crítico, como la secuencia de tareas más larga de principio al fin.
El diagrama de Gantt, o los diagramas calendario permitirán establecer el estado del proyecto en un determinado momento a partir de su inicio, en cuanto a recursos se refiere.
Para estimar el tamaño del producto o del programa a desarrollar, definido como la cantidad de código fuente, especificaciones, casos de prueba, documentación del usuario y otros productos, que han de ser desarrollados, se debe recurrir a datos estadísticos propios o no. La estimación consiste en la predicción del personal, el esfuerzo y el costo asociado para llevar a cabo todas las actividades del mismo.


Ciclo De Vida
Incluye las actividades de:
  • Investigación preliminar.
  • Determinación de requerimientos.
  • Diseño del sistema.
  • Desarrollo de software.
  • Pruebas del sistema.
  • Implementación y evaluación.
Sus características son:
  • Requerimientos del sistema de información son impredecibles.
  • Es manejable como un proyecto.
  • “Requiere que los datos se encuentren en archivos o bases de datos.
  • Abarca varios departamentos.
  • Su tiempo de desarrollo es largo.
  • Es adecuado para todo tipo de aplicación.”
Un prototipo, es un modelo a escala de lo que puede ser realmente, pero no equivalente a lo que puede ser realmente el producto final, dado que no siempre cuenta con las funciones del sistema final, pero permite la retroalimentación por parte de los usuarios acerca del sistema.
El prototipo de sistemas, permite el desarrollo iterativo o bien la continua evolución, en donde el usuario participa directamente en el proceso de desarrollo del mismo.
Kenneth E. Kendall menciona: “La elaboración de prototipos es una técnica de recopilación útil para complementar el ciclo de vida de desarrollo de un sistema tradicional.”
Roger S. Pressman menciona: “La construcción de prototipos es un proceso que facilita al programador la creación de un modelo del software a construir.”
De acuerdo con las definiciones, la construcción un prototipo es una técnica que facilita al programador la creación de un modelo de software, a través de la recopilación de información, con la finalidad de crear un sistema que cumpla con un ciclo de vida de desarrollo.
Modelo según Roger S. Pressman:
“Un prototipo en papel o un modelo basado en PC que describa la interacción hombre-máquina, de forma que facilite al usuario la comprensión de cómo se producirá tal interacción; un prototipo que implemente algunos subconjuntos de la función requerida del programa deseado, o un programa existente que ejecute parte o toda la función deseada.”
De acuerdo con el modelo de prototipo según Roger S Pressman, un prototipo es aquel que describe una interacción entre la máquina y el hombre, facilitando una comprensión de la forma en cómo se da esa interacción, dando también una visión de las funciones que el programa existente puede contener para así lograr una función deseada al finalizar el mismo.
Características de los prototipos de sistemas:
  • “Usan módulos autocontenidos como bloques de construcción.” (KENDALL y KENDALL)
  • “Es útil para probar la factibilidad del sistema, identificar los requerimientos del usuario, evaluar el diseño de un sistema o examinar el uso de aplicaciones.” (A. SEEN)
  • Son rápidos de crear.
  • Van evolucionando de acuerdo a las iteraciones que se realicen.
  • Tienen un costo bajo para el desarrollo.
Ventajas de la elaboración de prototipos:
  • “Existe el potencial para hacer cambios en el sistema en las primeras etapas de su desarrollo.” (KENDALL y KENDALL)
  • Cabe en la posibilidad de detener el desarrollo de un sistema que podría no ser funcional.
  • Se puede atacar necesidades del usuario y así también expectativas más de cerca.
  • Evoluciona cada vez que se lleva a cabo una iteración con el usuario.
  • Son sumamente rápidos para crearse.
Desventajas de la elaboración de prototipos:
  • Posible modificación del prototipo en cada iteración, generando el cambio de funciones o características del mismo.
  • “Es difícil manejar la elaboración de prototipos como un proyecto dentro de un esfuerzo de sistemas más grande.” (KENDALL y KENDALL)
  • Tanto el usuario, como el analista, pueden llegar a quedarse con un prototipo de sistema, como un sistema terminado cuando el prototipo es inadecuado para llevar a cabo las funciones afines.
Los lineamientos para el desarrollo de un prototipo son:
  • “Trabajar en módulos manejables.
  • Construir el prototipo rápidamente.
  • Modificar el prototipo en iteraciones sucesivas.
  • Enfatizar la interfaz de usuario.”
Prototipado Evolutivo
El uso de prototipos se centra en la idea de ayudar a comprender los requisitos que plantea el usuario, sobre todo si este no tiene una idea muy acabada de lo que desea. También pueden utilizarse cuando el ingeniero de software tiene dudas acerca de la viabilidad de la solución pensada. Esta versión temprana de lo que será el producto, con una funcionalidad reducida, en principio, podrá incrementarse paulatinamente a través de refinamientos sucesivos de las especificaciones del sistema, evolucionando hasta llegar al sistema final.
Al usar prototipos, las etapas del ciclo de vida clásico quedan modificadas de la siguiente manera:
– Análisis de requisitos del sistema.
– Análisis de requisitos del software.
– Diseño, desarrollo e implementación del prototipo
– Prueba del prototipo.
– Refinamiento iterativo del prototipo.
– Refinamiento de las especificaciones del prototipo.
– Diseño e implementación del sistema final.
– Explotación (u operación) y mantenimiento.
Si bien el modelo de prototipos evolutivos, fácilmente modificables y ampliables es muy usado, en muchos casos puede usarse prototipos descartables para esclarecer aquellos aspectos del sistema que no se comprenden bien. (J. Juzgado, 1996).
Figura1.JPG


Figura 1. Diagrama de creación de prototipos
Proceso de desarrollo de prototipos de sistemas de acuerdo a la figura 1:
El proceso que se lleva a cabo en la implementación de la metodología de prototipos comienza en la recolección y refinamiento de requisitos, en donde se realiza la aplicación de alguna herramienta para recolectar los datos que darán pauta al análisis de requisitos, de acuerdo a estos requisitos, se realice el diseño rápido, que conforma el segundo paso de este proceso. Aquí se procede a realizar un pequeño diseño del prototipo, ésto para dar una idea de cómo puede verse el sistema a desarrollar. Ahora bien, una vez realizado el diseño rápido, se lleva a cabo la construcción del prototipo, donde se aterrizaron los requerimientos y el diseño rápido. Aquí se desarrolla el prototipo, el cual es una idea un poco más real al que se pretende llegar a realizar. Una vez construido, se procede a mostrársele al cliente, quien realizará una evaluación del prototipo, esto para ver si cumple con los requerimientos. Una vez finalizado este punto de evaluación del prototipo, se procede a realizar un refinamiento del mismo, en donde se modificarán algunos puntos para que éste realice las actividades quizás de manera diferente. En este punto puede que el prototipo no cumpla aún con las expectativas del usuario, por lo cual cae en cierta parte de refinamiento de requerimientos, logrando con ello regresar al punto número 2, que es el diseño rápido, es aquí donde gracias al uso de diagramas y demás puntos procederán nuevamente a la construcción y evaluación del prototipo, creando un ciclo del punto 2 al punto 5, esto hasta el punto en el que el prototipo sea el mejor y cumpla con todas las expectativas del cliente. Una vez finalizado ese ciclo, se procede a entregar el producto de ingeniería, donde se libera el prototipo y es entonces cuando termina el proceso.
EVOLUCION DEL MODELO ESPIRAL“PRESSMAN 98”
Modelo Espiral Típico

Figura2.JPG

Figura 2. Modelo Espiral Típico
Modelo Espiral Típico(Explicado)

Figura3.JPG

Figura 3. Modelo Espiral Típico (Explicado)


Modelo Espiral Adaptado.

Figura4.JPG

Figura 4. Modelo Espiral Adaptado
EL modelo en espiral es de gran complejidad y solo es utilizado en sistemas grandes, que si son desarrollados con éxito logran doblar la productividad.


METODOLOGIA DE PRESSMAN - 2DA PART
flecha-derecha.png