Proceso de Software

El proceso de un Software

Começar. É Gratuito
ou inscrever-se com seu endereço de e-mail
Proceso de Software por Mind Map: Proceso de Software

1. Generalidades

1.1. ¿Qué es el proceso del software?

1.1.1. SWEBOK define el proceso del software como las actividades para desarrollar, mantener y operar software. Esto incluye levantamiento de requerimientos, diseño, construcción, pruebas y configuración. Este enfoque convierte el desarrollo de software en un proceso industrial sistemático y predecible. Sin él, sería difícil construir sistemas complejos como un sistema autorizador de pagos o un POS.

1.2. La crisis del software

1.2.1. En los años 60, la industria del software reconoció que la complejidad del software y la creciente demanda de aplicaciones superaba las habilidades y conocimientos de los programadores de la época. Los proyectos informáticos se enfrentaban a problemas comunes, como proyectos inconclusos o abandonados, software que no cumplía las expectativas del cliente, retrasos y sobrecostos en el desarrollo, y mantenimiento costoso o imposible una vez creado el software.

1.3. La ingeniería del software

1.3.1. La ingeniería del software es un enfoque sistemático y cuantificable para el desarrollo, operación y mantenimiento del software. Utiliza técnicas de otras ramas de la ingeniería para lograr productos de software que cumplan con los requisitos del cliente, estén dentro del presupuesto y tengan una duración estimada. La Computer Society de IEEE ha creado el SWEBOK, que se considera la biblia de la disciplina, ya que engloba sistemáticamente los diferentes autores, contenidos, técnicas y mejores prácticas en un solo libro

2. Modelos de procesos de software

2.1. - Modelo en cascada

2.2. - Modelos incrementales

2.3. - Modelo de evolución de prototipos

2.4. - Modelos ágiles

2.5. - Modelo basado en componentes.

2.6. - El proceso unificado.

2.7. - Comentarios sobre los modelos de procesos de software.

3. Actividades de un proceso de software

3.1. - Especificación de requerimientos

3.1.1. - Obtención de requerimientos

3.1.1.1. En esta fase los interesados en el proyecto o stakeholders acuerdan y establecen los requerimientos que el software como producto debe cumplir

3.1.2. - Análisis de requerimientos

3.1.2.1. En la etapa inicial se recopilan los requisitos del software a desarrollar mediante entrevistas, cuestionarios y la recolección de datos de las partes interesadas.

3.1.3. - Especificación de requerimientos

3.1.3.1. Se realiza la especificación formal del requerimiento para socializarlo con los interesados del proyecto.

3.1.4. - Validación de requerimientos

3.1.4.1. En esta etapa se procede a validar que los requerimientos cumplan con las características inherentes como son: no redundante, completo, alcanzable, entre otros.

3.2. - Planeación

3.2.1. En la etapa de planificación del proyecto de software, se establece un plan que guiará a los stakeholders en la consecución del producto. Pressman la define como un conjunto de prácticas que permiten al equipo de software definir un mapa para lograr objetivos estratégicos y tácticos. Los proyectos de desarrollo de software empresarial se basan en los principios y prácticas del PMBOK del PMI.

3.3. - Modelado

3.3.1. - Diseño de la arquitectura

3.3.1.1. Se identifican y documentan los subsistemas que forman el sistema y sus relaciones.

3.3.2. - Especificación abstracta del sistema

3.3.2.1. Para cada subsistema se produce una especificación abstracta de sus servicios y las restricciones sobre las cuales debe funcionar.

3.3.3. - Diseño de interfaces

3.3.3.1. Para cada subsistema se diseña y documenta su interfaz con otros subsistemas.

3.3.4. - Diseño de componentes

3.3.4.1. Se asignan servicios a los componentes y se diseñan sus interfaces.

3.3.5. - Diseño de las estructuras de datos

3.3.5.1. Se diseña en detalle y se especifica la estructura de datos que se utilizará en la implementación del sistema.

3.3.6. - Diseño de algoritmos

3.3.6.1. Se diseñan en detalle y se especifican los algoritmos utilizados para proporcionar los servicios.

3.4. - Desarrollo

3.4.1. - Reducir la complejidad.

3.4.2. - Anticiparse a la diversidad o cambios.

3.4.3. - Facilitar las pruebas de software.

3.4.4. - Ajustarse a la normatividad vigente para el sistema a desarrollar

3.5. - Implantación

3.5.1. Esta fase se refiere a la implementación del producto de software, una vez que los requerimientos han sido validados y aceptados por el cliente. La actividad principal es la codificación de las especificaciones diseñadas, que se lleva a cabo en uno o varios lenguajes de programación. Es importante que cada unidad de código o programa pase por un proceso de validación o prueba unitaria para detectar errores de codificación. Antes de la puesta en marcha del software, se lleva a cabo una validación y prueba que consta de tres actividades: prueba de componentes, prueba de sistemas y prueba de aceptación. Después de la salida en vivo, pueden presentarse situaciones que requieran algunas actividades de mantenimiento del software, como la corrección de errores de programación, la implementación de nuevos requerimientos o ajustes.

3.6. - Modelos de procesos de software

3.6.1. - Modelo en cascada

3.6.2. - Modelos incrementales

3.6.3. - Modelo de evolución de prototipos

3.6.4. - Modelos ágiles

3.6.5. - Modelo basado en componentes.

3.6.6. - El proceso unificado.

3.6.7. - Comentarios sobre los modelos de procesos de software.