Prof. Juan Manuel López Cruz
Métodos Agiles de la Programación
6IM7
Integrantes:
Betto Villa Brandon Alexis
Flores Pulido Adrián
León Aguilar Alfredo Manuel
Vargas Ramírez Vargas Cuauhtémoc
Introducción
Un proceso es considerado como un conjunto de actividades
que se desarrollan para lograr un objetivo final, si el proceso
esta correctamente logrado no habrá problema al afirmar
que el software será eficiente y funcional.
Actividades
Acción: Conjunta una serie de tareas a realizar para la
conjunción de algo relativamente grande.
Ejemplo: Realización de requerimientos.
Tarea: Es aquella que solo se requiere para concretar
pequeñas necesidades del sistema.
Ejemplo: Realizar una prueba unitaria.
En el contexto de la ingeniería de software, un proceso no es una
prescripción rígida de cómo elaborar software de cómputo. Por el
contrario, es un enfoque adaptable que permite que las personas
que hacen el trabajo (el equipo de software) busquen y elijan el
conjunto apropiado de acciones y tareas para el trabajo.
Estructura
Esta tiene que ver mucho en el proceso para el desarrollo de un
software correcto. Son los cimientos que establece un equipo de
trabajo como base para realizar cualquier actividad o trabajo, sin
duda es de gran importancia.
Comunicación
Esta etapa es el inicio de todo, es cuando se debe trabajar y
colaborar con el cliente de manera constante para así, integrar
precisamente sus necesidades en una solución concreta para ellas,
de lo contrario, en el desarrollo faltante se generaran dudas y
cambios radicales en la dirección de un proyecto de software.
Planeación
Generalmente es la realización de un mapa que guie el camino del
equipo del trabajo hacia la obtención de un buen producto final,
aquí se analizan detalladamente todos los aspectos del alcance,
requerimientos y capacidades para determinar lo que se pretende
entregar al cliente.
Modelado
Después de determinar lo que el equipo quiere entregar al cliente,
se piensan en varios modelos y escenarios de desarrollo para
verificar cual de todos resulta ser mas eficaz, además de
adaptarse mejor a las características del proyecto y
desarrolladores.
Construcción
Esta actividad básicamente cubre la realización de la codificación
del proyecto y las pruebas que se requieren para la verificación
del correcto funcionamiento de todo lo hecho.
Despliegue
El software (parcialmente terminado) se le presenta en avances
incrementales al cliente para que este apruebe las acciones y
tareas hechas en busca de su satisfacción. Al final, se entrega la
entidad completa del software y dentro de este despliegue viene
un constante mantenimiento, soporte y mejora para el mejor
funcionamiento del sistema.
Aspectos a considerar
Seguimiento y control del proyecto de software
Administración de riesgo
Aseguramiento de la calidad
Revisiones técnicas
Modelo Cascada
En Ingeniería de software el desarrollo en cascada, también
llamado modelo en cascada, es el enfoque metodológico que
ordena las etapas del proceso para el desarrollo de software, de
tal forma que el las acciones y tareas se realizan con un orden
concreto.
Etapas:
Desarrollo Evolutivo
Los evolutivos son modelos iterativos, permiten desarrollar
versiones cada vez más eficientes y complejas, hasta llegar al
objetivo final deseado, mediante sus avances incrementales.
Los modelos “Iterativo Incremental” y “Espiral” (entre otros) son
dos de los más conocidos y utilizados del tipo evolutivo.
Iterativo Incremental
El concepto es básico y simple, el producto software se desarrolla
por incrementos en el que cada iteración (incluida la primera)
obtiene una versión funcional del producto, de esta forma el
sistema se desarrolla poco a poco y obtiene constantemente la
aprobación por parte del usuario.
Espiral
En este modelo se comienza mirando las posibles alternativas de
desarrollo. Si el cliente quiere seguir haciendo mejoras o cambios
en el software, se vuelve a evaluar las distintas nuevas
alternativas ó riesgos y se realiza otra vuelta de la espiral, así
hasta que llegue un momento en el que el producto software
desarrollado sea aceptado y no necesite seguir mejorándose con
otro nuevo ciclo.
Ingeniería de software basada en componentes
Es evolutivo por naturaleza y exige un enfoque interactivo para la
creación del software. Sin embargo, el modelo de desarrollo
basado en componentes configura aplicaciones desde
componentes preparados de software (clases).
El modelo de desarrollo basado en componentes conduce ala
reutilización del software, y la reutilización proporciona beneficios
a los ingenieros de software.
Conclusiones
El proceso de software es sin duda súper importantes para la
correcta realización de un proyecto de software, involucra
metodologías de trabajo especialmente adaptadas a este y permite
a un equipo de trabajo optimizar en tiempo y actividades.
Actualmente los modelos evolutivos son los mas usados debido a
una mejor interacción con el cliente en busca de corregir de
manera rápida rumbos erróneos de desarrollo y así encontrar la
satisfacción de manera rápido, esto sin dejar a un lado el proceso
de mejora y soporte que proveerá al cliente de mejor alcance en
sus intereses.
Referencias
Piattini, A. C. (2005). Ingenieria del software basada en
componentes. Buenos Aires : Revista de Tecnologia.
Roldán, C. S. (2013). Codejobs . Recuperado el 14 de febrero
de 2016, de https://www.codejobs.biz/es/blog/2013/05/25/el-
proceso-del-software
Ruiz, F. (2009). Ingenieria del software. Cantabria: Universidad
de Cantabria.