El documento describe el proceso de desarrollo de software. Explica que el proceso incluye varias etapas como la especificación de requisitos, el diseño, la codificación y las pruebas. También discute diferentes ciclos de vida de desarrollo de software, como el ciclo de vida en cascada y los prototipos evolutivos. Por último, habla sobre la madurez del proceso de desarrollo en una organización y cómo ésta puede medirse usando el Modelo de Madurez del Capability Maturity Model.
1. EL PROCESO DE DESARROLLO DE SOFTWARE GLORYS MARIANA MARTINEZ INSTITUCION EDUCATIVA TECNICA DE PROMOCION SOCIAL ENFASIS EN AUX DE SISTEMAS 2011 3. El proceso de desarrollo de software
2. ¿Que queremos decir con proceso de desarrollo? 3. El proceso de desarrollo de software Deseos, necesidades, Especificaciones, … Software
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13. Modelo de la Ingeniería del software (Thayer 1988) 3. El proceso de desarrollo de software
14.
15.
16.
17.
18. En el desarrollo de software nos encontramos con la siguiente situación 3. El proceso de desarrollo de software Ciclos de Vida del SOFTWARE Metodologías de Desarrollo del SOFTWARE Madurez del Proceso del SOFTWARE.
19.
20.
21.
22.
23. La Versión Ideal 3. El proceso de desarrollo de software Validación Instalación, Explotación Test y pruebas previas a la OPERACIÓN OPERACIÓN Y MANTENIMIENTO Estudio de Viabilidad Análisis Especificación Requerimientos del Software Diseño Especificación de diseño Diseño Preliminar y Detallado Codificación Aplicación Codificación y Depuración A alguien se le ha ocurrido la Brillante idea de Informatizar ¿? Investigación Inicial, Identificación de Necesidades, Encuesta, etc. Requerimientos del Sistema
24. El Modelo en V 3. El proceso de desarrollo de software Identificación de Necesidades Especificación Esencial Especificación Física Diseño Codificación Integración Empaquetado Validación Explotación
25. El Helado de Cucurucho 3. El proceso de desarrollo de software Identificación de Necesidades Especificación Esencial Especificación Física Diseño Codificación Integración Empaquetado Validación Explotación USUARIOS CLIENTES ANALISTA DISEÑADORES Y CODIFICADORES
26. El Modelo Real 3. El proceso de desarrollo de software Identificación de Necesidades Especificación Esencial Especificación Física Diseño Codificación Integración Empaquetado Validación Explotación
27. Propuesta de Yourdon 3. El proceso de desarrollo de software Encuesta Análisis diseño Preliminar Estudio del HW Diseño Detallado Codificación Prueba de Unidad Prueba de subsistema Prueba de Sistema Requerimientos del Usuario Especificación Funcional Necesidades de Rendimiento Especificación del Sistema Configuración Final Especificación de los Programas Módulos Codificados Módulos Probados Subsistemas Probados Sistema Probado
28.
29. El ciclo de vida de Prototipos Desechables es el siguiente: 3. El proceso de desarrollo de software Aceptado NO Aceptado Evaluación Cliente Mejora de la Especificación Construcción Prototipo Obtención Especificación Ciclo de Vida Clásico
30.
31. Incremental 3. El proceso de desarrollo de software Requerimientos Bloque 1 Bloque N Bloque 1 Bloque N o Permite el desarrollo concurrente
32. Evolución de Prototipos 3. El proceso de desarrollo de software Observación Requerimientos Abstracción Validación Especificación Verificación Prototipo Verificación Experimentar Validación Empezamos por los requerimientos más claros, menos complejos y más necesarios. Prototipo rápido
33.
34. Síntesis automática de software 3. El proceso de desarrollo de software Requerimientos Informales Análisis de Requerimientos Especificación Formal (Prototipo) Desarrollo Formal Ajuste (tuning) Programa Fuete Racionalidad y Decisiones Validación Mantenimiento Optimización Mecánica
35. En espiral. 3. El proceso de desarrollo de software Determinar objetivos, alternativas, restricciones Evaluar alternativas, identificar y resolver riesgos Desarrollar, verificar Planificar las próximas fases REVISIÓN Acuerdo
36.
37.
38.
39.
40.
41.
42.
43.
44.
45. Evolución de las organizaciones según el CMM 3. El proceso de desarrollo de software Inicial Repetible Optimización Gestionado Definido Control Básico Definición del Proceso Medición del Proceso Control del Proceso
46. Correlación entre estimaciones y niveles de madurez 3. El proceso de desarrollo de software Probabilidad de cumplir Tiempo, dinero, ...
47.
48.
49.
50.
51.
52.
Notas del editor
Algunas aplicaciones informáticas casi que se desarrollan así. Infinitos monos tecleando… Ver la tira de Dilbert (10 monos, en el libro de “aplace sus reuniones”
Este no es el camino completo, falta probar, verificar, instalar, formar a los usuarios, ...
Claramente, lo principal es saber a donde vamos: tener clara la meta; Disponer de una especificación. El camino que sigamos es lo que llamaremos el proceso de desarrollo. Todos los caminos llevan a Roma Importante la dirección (brújula) ¿Cual es el camino más corto?
Clientes y Proveedores, con intereses distintos Desarrolladores que cada cual va a la suya. La forma de evitar el desastre pasa por: Tener un ciclo de vida apropiado a la situación. Complejidad: ¿Es un producto complejo? Incertidumbre: ¿El cliente sabe lo que quiere? Utilizar una metodología de desarrollo Lenguaje claro, Especificación, diseño, ... Conjunto de herramientas a utilizar. Un proceso maduro, es decir: Que conozcamos bien (utilizado otras veces) Que lo tengamos medido Que sea completo, para producir con calidad.
En el momento en que se percibio el desastre del software se trato de regular las tareas que se deben realizar durante el desarrollo de software, y el ordenen que se deben realizar. Se tomaron como ejemplo otras ingenierías.
Lo sorprendente es que aveces funciona.¿¿?? Las empresas que desean obtener software económico y rápidamente lo utilizan, con las siguientes mejoras: Se contrata a personas que no tengan experiencia, se les dan pocos recursos, son novatos y no saben exigir, se suele utilizar la técnica de desprecio: “ siempre tarde y encima no hace lo que queremos” (imaginabamos que haría, aunque no lo habíamos dicho) Los resultados son curiosos: Se suele subcontratar a cualquier precio con empresas externas, “Seguro que ellos saben hacer las cosas” Caundo funciona existe mucha incertidumbre sobre el como o por que ha funcionado. Parece claro que cuando funciona, los informáticos sabian que se esperaba del producto, sabian que se debia hacer, estaban muy motivados y les gusta el trabajo que están haciendo. Pero es difícil prever que esto ocurrirá.