Procesos de software

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Procesos de software por Mind Map: Procesos de software

1. Proceso de software

1.1. ¿Qué es el proceso del software?

1.1.1. son todas las actividades llevadas a cabo por los ingenieros de software para desarrollar, mantener y operar software

1.2. La crisis del software

1.2.1. A finales del la década de los sesentas la industria del software llegó a la conclusión que la complejidad del mismo y la creciente demanda por un número mayor de aplicaciones superaba las habilidades y conocimientos que los programadores tenían en ese momento.

1.2.1.1. El software quedaba inconcluso o el proyecto era abandonado.

1.2.1.2. El software tomaba más tiempo y costaba más de lo estimado.

1.2.1.3. El software no cumplía con las expectativas del cliente.

1.2.1.4. Una vez creado el software era imposible o muy costoso darle mantenimiento.

1.3. 2. Actividades de un proceso de software

1.3.1. Para aplicar un enfoque sistemático al proceso de software se ha propuesto una serie de actividades que pueden variar según el autor en las siguientes: comunicación, planeación, modelado, construcción y despliegue.

1.3.1.1. Especificación de requerimientos

1.3.1.1.1. a) Obtención de requerimientos.

1.3.1.1.2. b) Análisis de requerimientos

1.3.1.1.3. c) Especificación de requerimientos

1.3.1.1.4. d) Validación de requerimientos

1.3.1.2. Planeación

1.3.1.2.1. En esta etapa se especifica un plan para el proyecto que guiará a todos los interesados a conseguir el producto especificado en la primera fase.

1.3.1.3. Modelado

1.3.1.3.1. Este etapa proporciona detalles sobre arquitectura del software, estructuras de datos, interfaces y componentes que se necesitan para implementar el sistema

1.3.1.4. Desarrollo

1.3.1.4.1. En esta actividad ,también llamada construcción, se genera el código fuente en el lenguaje o lenguajes de programación seleccionados para el proyecto

1.3.1.5. Implantación

1.3.1.5.1. En esta fase se lleva a cabo la puesta en marcha o salida en vivo del producto de software desarrollado una vez los requerimientos son validados y aceptados por el cliente.

1.4. La ingeniería del software

1.4.1. Se puede decir que la ingeniería del software se encarga de aplicar técnicas usadas en otras ámbitos de la ingeniería para lograr desarrollar productos de software que cumplan con los requerimientos del cliente

1.4.1.1. La ingeniería del software es promovida por la Computer Society

1.5. 3. Modelos de procesos de software

1.5.1. Modelo en cascada

1.5.1.1. En este modelo las etapas del proceso a saber: especificación de requerimientos, modelado, desarrollo e implantación se dan de manera secuencial

1.5.1.1.1. ventajas del modelo

1.5.1.1.2. desventajas del modelo

1.5.2. Modelos incrementales

1.5.2.1. Este modelo está pensado para cuando se requiere entregar un producto de software con una funcionalidad reducida que posteriormente se va incrementando hasta llegar finalmente a la versión deseada del producto

1.5.2.1.1. ventajas del modelo

1.5.2.1.2. desventajas del modelo

1.5.3. Modelo de evolución de prototipos

1.5.3.1. Este modelo se apoya en los llamados prototipos o versiones primarias del producto de software al cual se quiere llegar

1.5.4. Modelos ágiles

1.5.4.1. Recientemente se han popularizado los modelos ágiles que combinan las estrategias de los modelos en cascada, incremental y prototipos.

1.5.5. Modelo basado en componentes

1.5.5.1. Este modelo se apoya en software previamente desarrollado que se puede incorporar, parametrizar o configurar al proyecto en desarrollo y de este forma disminuir la cantidad de código a producir.

1.5.6. El proceso unificado

1.5.6.1. Este proceso se basa en los modelos tradicionales ya expuestos como son cascada, prototipos e incrementales y hace énfasis en la utilización de casos de uso apoyados en el lenguaje UML para modelar los requerimientos del cliente

1.5.7. Comentarios sobre los modelos de procesos de software

1.5.7.1. No todos los modelos son aplicables a cualquier tipo de proyecto. El ingeniero de software deberá tener en cuenta variables como: tamaño del proyecto, claridad en los requerimientos, disponibilidad y entrenamiento del recurso humano, entre otros, para proponer el modelo o combinación de modelos que le permitan llegar al producto de software especificado.