1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

51
1 ESCUELA ACADEMICO PROFESIONAL DE INGENIERIA DE SISTEMAS PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE Curso : Ingeniería de Software Sesión 3 :

Transcript of 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

Page 1: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

1

ESCUELA ACADEMICO PROFESIONAL DE

INGENIERIA DE SISTEMAS

PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE

Curso : Ingeniería de Software

Sesión 3 :

Page 2: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

2 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Temario ...

El Proceso Unificado (RUP)

Definiciones Generales.

Fases de RUP e Iteraciones.

Componentes del Proceso.

Características del Proceso Unificado.

El Proyecto de Software

PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE

Sesión 3 :

Page 3: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

3 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

SESION 3: PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE

1.0 Producción de SW: problemática, origen de los problemas, panorama contemporáneo.

1.1 ¿ Qué es el RUP? Características1.2 Definiciones Generales Los puntos clave en el proceso de desarrollo SW (las 4 P) Las 5 expectativas de la Ingeniería de Software contemporánea y el papel de las 4 P.1.3 Estructura del RUP: fases e iteraciones

• Fase de Incepción • Fase de Elaboración• Fase de Construcción• Fase de Transición

1.4 Componentes del Proceso1.5 Características del Proceso Unificado1.6 El Proyecto de Software

Page 4: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

4 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

PROBLEMAS: perspectiva del cliente

• Excesiva duración para terminar los programas

• Costos elevados del desarrollo del software

• Los programas no cumplen con lo requerido

PROBLEMAS: perspectiva de los desarrolladores

• El usuario no transmite bien sus necesidades

• Los requerimientos son cambiados constantemente

• Muy poco trabajo en equipo

• Se trabaja sin estándares

1.0 Producción de software: Problemática

Page 5: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

5 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

• Excesiva complejidad

• Comunicaciones ambiguas e imprecisas

• Pruebas insuficientes

• No se detectan las inconsistencias en los requerimientos, el diseño y en la implementación

• Fallas en identificar y mitigar los riesgos

• Propagación de los cambios no controlada

• Automatización insuficiente

Producción de software: Orígen de los problemas

Page 6: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

6 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

¿Cuáles son los retos que afronta la ingeniería de software en el siglo XXI ?

1. El reto de la heterogeneidad.• Integrar software con sistemas heredados

Desarrollar técnicas para construir software confiable con alto grado de integración ante la heterogeneidad

2. El reto de la entrega.• Reducir los tiempos de entrega sin comprometer la calidad

Implementar marcos de trabajo (modelos de calidad, metodologías reconocidas como buenas prácticas, estándares)

3. El reto de la confianza.• El software tiene relación con todos los aspectos de nuestra

vida.Desarrollar y aplicar técnicas con alto grado de confiabilidad

Producción de software: Panorama contemporáneo

Page 7: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

7 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

SESION 3: PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE

1.0 Producción de SW: problemática, origen de los problemas, panorama contemporáneo.1.1 ¿ Qué es el RUP? Características1.2 Definiciones Generales Los puntos clave en el proceso de desarrollo SW (las 4 P) Las 5 expectativas de la Ingeniería de Software contemporánea y el papel de las 4 P.1.3 Estructura del RUP: fases e iteraciones

• Fase de Incepción • Fase de Elaboración• Fase de Construcción• Fase de Transición

1.4 Componentes del Proceso1.5 Características del Proceso Unificado1.6 El Proyecto de Software

Page 8: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

8 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

El Proceso Unificado (RUP) ...

Page 9: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

9 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.1 ¿Qué es el RUP?

Concepto:“Un proceso define Quién está haciendo Qué,

Cuándo y Cómo logrará una meta trazada”

El RUP es un conjunto de actividades necesarias para transformar los requisitos de un usuario a un sistema de software

Requisitos del Usuario

Sistema Software

Proceso de Desarrollo de Software

Page 10: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

10 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.1 ¿Qué es el RUP?

El “Proceso Unificado” es un marco de trabajo genérico que puede especializarse para una gran variedad de sistemas de software, para diferentes áreas de aplicación, diferentes tipos de organizaciones y diferentes tamaños de proyectos.El “Proceso Unificado” está basado en Componentes, interconectados a través de Interfaces bien definidas.El “RUP” se resume en tres fases:• Conducido por Diagramas de Caso de Uso• Centrado en Arquitecturas• Desarrollo iterativo e incremental

Page 11: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

11 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.1 ¿Qué es el RUP?

Conducido por Diagramas de Caso de UsoUn Caso de Uso es un fragmento de funcionalidad del sistema que proporciona al usuario un resultado importante.Los casos de uso representan los requisitos funcionales.Todos los casos de uso juntos constituyen el Modelo de Caso de Uso el cual describe la funcionalidad total del Sistema.

Page 12: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

12 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.1 ¿Qué es el RUP?

Centrado en ArquitecturasEl papel de la Arquitectura de Software es parecido al papel de la Arquitectura de la construcción.Arquitectura de Software: Plataforma en la que funciona el Software (arquitectura software, sistema operativo, sistema de gestión de base de datos, protocolo para comunicaciones en red)El valor de una arquitectura depende de las personas que se hayan responsabilizado de su creación.

Page 13: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

13 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.1 ¿Qué es el RUP?

Desarrollo Iterativo e IncrementalEs practico dividir el trabajo en partes más pequeñas o miniproyectos. Cada miniproyecto es una iteración que resulta en un incremento.Las iteraciones hacen referencia a pasos en el flujo de trabajo, y los incrementos al crecimiento del producto.

Page 14: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

14 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Los Equipos necesitan Procesos

para construir un Sistema

Lenguaje de Modelado

Procesos Unificados

Desarrollo basado en Equipos

Page 15: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

15 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Los puntos clave en el desarrollo SW:

Las 4 P

Las 4 P de la Ingeniería de Software:• La meta de todo proyecto de software es producir un

producto de software.• Los productos de un esfuerzo de desarrollo de software

consisten en mucho más que el código fuente y el ejecutable. Incluye documentación, resultado de las pruebas y medidas de productividad. Estos productos se llamarán “artefactos”

• Es clave el proceso mediante el cual los proyectos producen productos de manera efectiva.

• Otro factor de éxito, son las personas porque la dinámica interpersonal del equipo influye en los logros del proyecto.

Page 16: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

16 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Los puntos clave en el desarrollo SW:

Las 4 P

Page 17: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

17 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Las Personas son decisivas

Page 18: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

18 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Las Personas son decisivas

Page 19: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

19 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Las Personas son decisivas

Page 20: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

20 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

¿Qué es un Sistema de Software?

Page 21: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

21 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

¿Qué es un Sistema de Software?

Page 22: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

22 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Artefacto

Page 23: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

23 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.5 Las 5 expectativas de la Ingeniería de SW

La Ingeniería de Software contemporánea tiene 5 expectativas importantes:

1. Predeterminar metas de calidad cuantitativas, que se aplicarán al proyecto y al producto.

Ejm. “No más de 2% de reprocesos mensuales por aplicación”

2. Reunir datos para usarlos en proyectos subsecuentes, a fin de realizar estimaciones de recursos y tiempos.

Ejm. “base de datos de conocimientos, Relatorio del Pyto.”3. Mantener todo el trabajo visible, para que el Team pueda

disponer de todos los requisitos, diseños, códigos y pruebas.

4. Todos los miembros del Team deben seguir el proceso: a) Diseñar sólo contra requisitos b) Programar sólo contra diseño c) Probar sólo contra requisitos y diseños5. Medir y lograr las metas de calidad.

Page 24: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

24 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

SESION 3: PROCESOS DE DESARROLLO SOFTWARE

1.0 Producción de SW: problemática, origen de los problemas, panorama contemporáneo.1.1 ¿ Qué es el RUP? Características1.2 Definiciones Generales Los puntos clave en el proceso de desarrollo SW (las 4 P) Las 5 expectativas de la Ingeniería de Software contemporánea y el papel de las 4 P.1.3 Estructura del RUP: fases e iteraciones

• Fase de Incepción • Fase de Elaboración• Fase de Construcción• Fase de Transición

1.4 Componentes del Proceso1.5 Características del Proceso Unificado1.6 El Proyecto de Software

Page 25: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

25 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.3 Estructura del Proceso de Desarrollo Unificado: fases e iteraciones

Comprometer recursos para la fase de Elaboración

Comprometer recursos para Construcción

Producto suficiente maduro para usuarios-cliente

Aceptación o fin de ciclo

Puntos de decisión planeados (enfoque del negocio)

Iteración preliminar

Iteraciónarquitectura

Iteración arquitectura

Iteración desarrollo

Iteracióndesarrollo

Iteración desarrollo

Iteración transición

Iteracióntransición

Puntos de visibilidad planeados (enfoque técnico)

Incepcion Elaboracion Construccion Transicion

Page 26: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

26 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Una iteración

En una iteración se puede desplazar por todas los workflows

Page 27: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

27 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Fases del Ciclo de Vida

INCEPCION: Definir el objetivo del proyecto y elaborar el modelo del negocio

ELABORACION: Planificar el proyecto, especificar los Modelos y sentar las bases para las Arquitecturas

CONSTRUCCION: Construir el Producto

TRANSICION: Transición de los usuarios al nuevo sistema.

Page 28: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

28 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Fases del Ciclo de Vida: INCEPCION

INCEPCION: Definir el objetivo del proyecto y elaborar el modelo del negocio

Output de la Etapa:

Visión documentada, donde se define los requisitos principales del

proyecto, principales características y restricciones.

Un inicial modelo Use-Case de negocio (10% a 20%)

Un glosario de conceptos y términos del proyecto

Un inicial Modelo del negocio, que incluya el contexto de la empresa

y factores de éxito (Costo-Beneficio)

Un inicial inventario y costeo de riesgos

El Plan del Proyecto, indicando las etapas e iteraciones

Si es posible, un prototipo inicial.

Page 29: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

29 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Fases del Ciclo de Vida: ELABORACION ELABORACION: Planificar el proyecto, especificar los

Modelos y sentar las bases para las Arquitecturas

Output de la Etapa:

Modelo del Use-Case (100% completado), todos los CdU

y actores identificados y las descripciones de los CdU.

Requerimientos suplementarios (generalmente son no

funcionales) son recolectados y asociados a un CdU

Descripción de la Arquitectura del Software

Prototipo del software

Lista de riesgos y Casos del negocio validados

Plan del Proyecto completo y aprobado por el Usuario

Manual del usuario preliminar.

Page 30: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

30 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Fases Ciclo de Vida: CONSTRUCCION

CONSTRUCCION: Construir el Producto

Output de la Etapa:

Primera versión del Producto (versión Beta)

Pruebas del Producto

Los Manuales del usuario

Validación de los costos incurridos vrs. los costos

estimados.

Page 31: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

31 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Fases Ciclo de Vida: TRANSICION

TRANSICION: Transición de los usuarios al nuevo sistema.

Output de la Etapa:

Testeo de la versión Beta para validar el nuevo sistema

comparándolas con las expectativas del usuario.

Plan de puesta en producción

Tareas de migración y conversión de datos

Capacitación y Entrenamiento del Usuario y del Área de

Sistemas

Instalación del producto en todos los ambientes del

usuario, previamente definidos.

Page 32: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

32 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

SESION 3: PROCESOS DE DESARROLLO SOFTWARE

1.0 Producción de SW: problemática, origen de los problemas, panorama contemporáneo.1.1 ¿ Qué es el RUP? Características1.2 Definiciones Generales1.3 Estructura del RUP: fases e iteraciones

• Fase de Incepción • Fase de Elaboración• Fase de Construcción• Fase de Transición

1.4 Componentes del Proceso1.5 Características del Proceso Unificado1.6 El Proyecto de Software

Page 33: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

33 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.4 Componentes del proceso

Worker

Actividad

Artefacto

Paquete de CdUCaso de Uso

responsible de

Analista

Una unidad de trabajo

Una pieza de información que puede ser producida, modificada o usada por un proceso

Define un rol y responsabilidades de un individuo o equipo

Describir un CdU

El worker desarrolla una actividad que genera o consume un artefacto

Page 34: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

34 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.5 Características del Proceso Unificado

I ) Arquitectura basada en componentes

II ) Modelado visual en UML

III) Administración de requerimientos

IV) Desarrollo iterativo e incremental

V ) Control del cambio

VI) Verificación de la calidad

Page 35: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

35 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

I ) Arquitectura basada en Componentes

Estructura la arquitectura del sistema en componentes.

Los componentes pueden ser acoplados unos con otros, para

soportar las funciones que se requiere del sistema.

En el enfoque de desarrollo de software basado en componentes,

se aplica mucho la reutilización.

Ventajas:

Al reducirse la cantidad de software a desarrollar, se logra la

reducción de costos y de riesgos, con entregas más rápidas del

SW

La modularidad permite una separación clara de los elementos

del sistema, facilitando el manejo de los cambios.

Page 36: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

36 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

II ) Modelado visual

Modele visualmente con UML, reconocido hoy

en día como el estándar de la industria para la

modelación de sistemas complejos.

Desarrollar modelos para sistemas antes de su

desarrollo es tan esencial como crear planos antes de

construir un edificio.

El lenguaje unificado de modelación (UML - Unified

Modeling Language), nos permite visualizar y razonar

sobre los modelos abstractos del software y, pasar al

diseño con esquemas o diagramas de las ideas

centrales.“Un porcentaje muy importante del cerebro de las personas está implicado en el

procesamiento visual, que es una de las motivaciones que hay detrás de la presentación

visual o gráfica de la información” (Edward Tufte-1992)

Page 37: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

37 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Modelado visual

Ventajas:

El uso de modelos que reflejan tanto la estructura como el

comportamiento del sistema a desarrollar es un factor

indispensable para una buena comunicación entre los miembros

del equipo de desarrollo, usuarios finales y toda entidad

involucrada con el sistema.

Los modelos presentan en forma clara el diseño del sistema y

facilitan la identificación de inconsistencias.

Proporciona un elemento importante en la documentación

ayudan a mantener la consistencia entre requerimientos,

diseño e implementación.

Page 38: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

PO

SG

RA

DO

- F

IIS -

UN

IF

acu

ltad

de

Ing

enie

ría

Ind

ust

rial

y d

e S

iste

mas

38

Modelado Visual usando diagramas UML

Actor A

Use Case 1

Use Case 2

Actor B

user : Clerk

mainWnd : MainWnd

fileMgr : FileMgr

repository : Repositorydocument : Document

gFile : GrpFile

9: sortByName ( )

L1: Doc view request ( )

2: fetchDoc( )

5: readDoc ( )

7: readFile ( )

3: create ( )

6: fillDocument ( )

4: create ( )

8: fillFile ( )

Window95

¹®¼ °ü¸®

Ŭ¶óÀ̾ðÆ®.EXE

Windows

NT

¹®¼ °ü¸® ¿£Áø.EXE

WindowsNT

Windows95

Solaris

ÀÀ¿ë¼ ¹ö.EXE

AlphaUNIX

IBM

Mainframe

µ¥ÀÌŸº£À̽º¼ ¹ö

Windows95

¹®¼ °ü¸® ¾ÖÇø´Document

FileManager

GraphicFile

File

Repository DocumentList

FileList

user

mainWnd fileMgr : FileMgr

repositorydocument : Document

gFile

1: Doc view request ( )

2: fetchDoc( )

3: create ( )

4: create ( )

5: readDoc ( )

6: fillDocument ( )

7: readFile ( )

8: fillFile ( )

9: sortByName ( )

ƯÁ¤¹®¼ ¿¡ ́ ëÇÑ º¸±â¸¦ »ç¿ëÀÚ°¡ ¿äûÇÑ´Ù.

È ÀÏ°ü̧ ®ÀÚ´Â Àоî¿Â ¹®¼ ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼

°´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù.

È ̧é °´Ã¼´Â ÀоîµéÀÎ °´Ã¼µé¿¡ ´ëÇØ ÀÌ̧ §º°·Î

Á¤·ÄÀ» ½ÃÄÑ È ̧é¿¡ º¸¿©ÁØ´Ù.

Openning

Writing

ReadingClosing

add file [ numberOffile==MAX ] / flag OFF

add file

close file

close fileUse Case 3

Diagrama de Casos de Uso

Diagrama de Clases

Diagrama de Colaboración

Diagrama de Secuencia

Diagrama de Componentes

Diagrama deEstado

Diagrama de Despliegue

GrpFile

read( )open( )create( )fillFile( )

rep

Repository

name : char * = 0

readDoc( )readFile( )

(from Persistence)

FileMgr

fetchDoc( )sortByName( )

DocumentList

add( )delete( )

Document

name : intdocid : intnumField : int

get( )open( )close( )read( )sortFileList( )create( )fillDocument( )

fList

1

FileList

add( )delete( )

1

File

read( )

read() fill the code..

Construyendo un modelo visual de un sistema,diferentes diagramas son necesarios para representar diferentes vistas del sistema

Page 39: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

39 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

III) Gestión de requerimientos La gestión de requerimientos se encarga de identificar, documentar, organizar y dar seguimiento a los requerimientos del sistema y a los cambios que puedan tener a lo largo del ciclo de vida. Un requerimiento es una condición o capacidad que el sistema debe satisfacer.Actividades:

Documentar explícitamente los requerimientos del cliente y las funcionalidades y restricciones del sistema. Evaluar los cambios a los requerimientos y medir su impacto. Realizar el seguimiento de las trazas y actualizar documentación.

“Los requerimientos son los cimientos sobre los cuáles se construye un producto software y, sin embargo, la incapacidad de gestionar sus cambios es una de las principales causas de entregas fuera de tiempo, exceder los presupuestos y no cumplir con la calidad esperada por el cliente” (Ian Sommerville et al. -1997)

Page 40: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

40 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Gestión de los requerimientos Ventajas:

Los requerimientos son administrados bajo un

enfoque disciplinado

Los requerimientos pueden ser priorizados,

filtrados y rastreados

Facilita una evaluación objetiva de la

funcionalidad y desempeño

Permite un detección oportuna de las

inconsistencias entre los requisitos, los productos y

los planes del proyecto.

Page 41: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

41 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

IV) Desarrollo iterativo e incrementalCada iteración del proceso produce un nuevo incremento del software, generándose una nueva versión.

Ventajas:

Centrado en lo importante

Se captan requerimientos reales por la retroalimentación de los usuarios

Mejor conocimiento del negocio en cada iteración

Los usuarios disponen de evidencias del avance del desarrollo SW

Los errores se evidencian temprano, corrigiéndose sin altos costos.

Page 42: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

42 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Desarrollo iterativo e incremental

Planeamiento inicial

Planeamiento

Requerimientos

Análisis y Diseño

Implementacion

Prueba

Despliegue

Evaluacion

Una versión ejecutable resulta de cada iteración

Page 43: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

43 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

V) Control de cambios

Las necesidades del negocio y los requerimientos cambian

durante el ciclo de vida de los sistemas de software

grandes. Gestionar los cambios del software usando un sistema de gestión de cambios y herramientas de soporte a los procedimientos de gestión de cambios. La gestión de las versiones y entregas es el proceso de identificar y mantener los registros de las diferentes versiones y entregas de un sistema (matriz de entregables)

Ventajas: El requerimiento de cambios facilita la comunicación con los usuarios. Mantener la documentación actualizada. Las estadísticas de los cambios facilita evaluar el estado del proyecto

Page 44: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

44 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

VI) Verificación de la calidadAsegurar que el software cumple los estándares

de calidad organizacionalesLa verificación de la calidad del software

es parte del proceso, en todas las actividades e involucrando a los interesados (stakeholders).

Aspectos a considerar: desviaciones de lo planeado, confiabilidad (resistencia a fallas al ejecutarse), validación (funcionamiento de acuerdo al uso esperado), desempeño (tiempo de respuesta aceptable en condiciones

reales)Ventajas:

Detección de inconsistencias en los requerimientos, diseño o implementaciones, como resultado de las pruebas.

Las verificaciones y pruebas se centran en los puntos de mayor riesgo, asegurando su calidad.

Detección temprana de errores, reduciendo el costo de su corrección.

Page 45: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

45 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Diagramas de UML

• Diagrama de Clases

• Diagrama de Casos de Uso

• Diagramas de

Comportamiento

- Diagrama de Estados

- Diagrama de Actividad

• Diagramas de Interacción

- Diagrama de Secuencia

- Diagrama de Colaboración

• Diagramas de Implementación

- Diagrama de Componentes

- Diagrama de Despliegue

Page 46: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

46 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

1.6 Gestión del Proyecto Software

Actividades de Gestión del Proyecto Software

Planificación del Proyecto

Calendarización del Proyecto

Gestión de Riesgos

Page 47: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

47 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

PRACTICAS EN LABORATORIO

Uso del software BizAgi Process Modeler

http://www.bizagi.com

El BizAgi Process Modeler  permite diagramar y documentar los procesos en el estándar BPMN(Business Process Modelling Notacion).

Page 48: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

48 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Ejemplo

BizAgi Process Modeler

Page 49: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

49 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Preguntas ...

Page 50: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

50 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

Gracias ...

Page 51: 1 PROCESO DE SOFTWARE Y GESTION DE PROYECTOS DE SOFWARE.

51 EAP INGENIERIA DE SISTEMAS Curso Ingeniería de Software

FIN DE LA SESION 3