Resumen - PROCESO DEL SOFTWARE
Enviado por jean carlo canevello salazar • 2 de Mayo de 2016 • Apuntes • 1.738 Palabras (7 Páginas) • 382 Visitas
PROCESO DEL SOFTWARE
Un proceso es una serie de pasos que están mutuamente relacionadas y que al interactuar con elementos de entrada, éstas se convierten en resultados. Bajo este esquema de proceso, podemos definir el Proceso del Software como una estructura para las actividades, acciones y tareas con el fin de construir un software de calidad.
Los Ingenieros de Software y los gerentes son los que adaptan las necesidades en el proceso, además las personas que solicitaron el software tienen un papel importante en el proceso de definición, elaboración y prueba.
Un proceso del software brinda estabilidad, control y organización a las actividades que se requieren. En un enfoque moderno se dice que la Ingeniería de Software debe ser ágil, es decir que solo se debe tomar en cuenta aquellas tareas, actividades, productos y trabajos apropiados para el equipo del proyecto.
Un proceso del software nos brinda como productos finales el programa, documentos y los datos que se producen como resultado de las actividades y tareas definidas en el proceso. Para asegurarnos que nuestro producto es de calidad, se utiliza una serie de mecanismos de evaluación para determinar la madurez del producto.
De manera general podemos definir 4 conceptos importantes:
- Personas: Los que trabajan en el proyecto.
- Producto: Lo que se obtiene.
- Proyecto: La pauta a seguir para desarrollar un producto.
- Proceso: La pauta a seguir para desarrollar un proyecto.
Un proceso del software está integrado por un conjunto de actividades estructurales, estas actividades integra a un conjunto de acciones de ingeniería de software y cada una de estas acciones define un conjunto de tareas que debe realizarse. Las actividades estructurales básicas en un proceso son: comunicación, planeación, modelado, construcción y despliegue. La forma en que estas actividades están organizadas se denomina como flujo del proceso. Además durante el proceso de aplica una serie de actividades sombrilla como por ejemplo seguimiento y control del proyecto, administración de riesgos, revisiones técnicas, etc.
PATRONES DEL PROCESO
Es un método consistente que brinda soluciones a un problema. De manera más detallada, un patrón describe un problema relacionado al proceso en el que se encuentra, identifica la causa del problema, y brinda soluciones para el mismo. De esta manera un equipo de software resuelve problemas y construye el proceso que mejor les parezca.
Scott Ambler define 3 tipos de patrones:
- Patrón de tarea: Relacionado con una acción o tarea de trabajo
- Patrón de etapa: Relacionado a una actividad estructural, ésta incluye múltiples patrones de tarea.
- Patrón de fase: Relacionada al flujo del proceso, ya que define una secuencia de actividades
Scott Ambler describe un formato para definir un patrón del proceso:
- Nombre de patrón: Nombre significativo que lo describe.
- Fuerza: Ambiente en el que se encuentra el patrón y aspectos que lo hacen visible.
- Tipo: Se define el tipo de patrón.
- Contexto inicial: Condiciones en las cuáles se aplica el patrón.
- Problema: Descripción del problema que debe resolver el patrón.
- Solución: Descripción de la forma en que se debe implementar el patrón.
- Contexto resultante: Condiciones del resultado de la implementación del patrón.
- Patrones relacionados: Lista de patrones de procesos relacionados con éste.
MODELO DE PROCESO PRESCRIPTIVO
Se llaman prescriptivos porque prescriben un conjunto de elementos del proceso; actividades estructurales, acciones de la ingeniería de software, tareas, productos del trabajo, aseguramiento de la calidad y mecanismos de control del cambio para cada proyecto.
Cada modelo del proceso prescribe un flujo del proceso o flujo de trabajo.
- Modelo en cascada
Llamado ciclo de vida clásica, es el paradigma más antiguo de la ingeniería de software.
Sugiere un enfoque sistemático y secuencial hacia el desarrollo de software, que se inicia con la especificación de requerimientos del cliente y que continúa con la planeación, el modelado, la construcción, y el despliegue para culminar en el soporte de software terminado.
Este modelo presenta una serie de problemas:
- Conforme el proyecto se avanza, los cambios generan confusiones.
- El modelo en cascada requiere que se enuncie todos los requerimientos de forma explícita, lo cual es difícil para el cliente.
- No se dispondrá de una versión funcional del producto hasta que el proyecto esté muy avanzado.
- Modelo de proceso incremental
El modelo incremental aplica secuencias lineales de forma escalonada a medida que avanza el calendario de actividades. Cada secuencia lineal produce “incrementos” susceptibles a entregarse.
Este modelo se centra en que en cada incremento se entrega un producto que ya opera.
- Modelo de proceso evolutivo
Este modelo es iterativo, se caracterizan por desarrollar versiones cada vez más completas. Se definen dos modelos del proceso evolutivo, Prototipos y modelo espiral.
- Prototipos
Es un mecanismo para identificar los requerimientos del software, que puede implementarse en el contexto de cualquiera de los procesos del desarrollo de software.
Comienza con la comunicación, aquí se reúnen todos los participantes para definir los objetivos del software. Plan rápido, se planea una iteración para hacer el prototipo. Modelado (diseño rápido), Se representa aquellos aspectos visibles para los usuarios finales como por ejemplo la interfaz gráfica. Construcción del prototipo, Se construye el prototipo. Entrega y retroalimentación, el producto construido se entrega a los participantes para que sea evaluado y den una retroalimentación para la mejora de los requerimientos. Al tener una retroalimentación de los requerimientos, nuevamente de empieza con la etapa de comunicación.
...