proceso software y gestión 1

42
Proceso software y gestión 1 Tema 1. El proceso software ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA Departamento de Lenguajes y Sistemas Informáticos

Upload: others

Post on 18-Nov-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Proceso software y gestión 1

Proceso software y gestión 1Tema 1. El proceso software

ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA

Departamento de Lenguajes y Sistemas Informáticos

Page 2: Proceso software y gestión 1

Proceso software y gestión 2Departamento de Lenguajes y Sistemas Informáticos

El proceso software

Contenido

1. Introducción.

2. Técnicas de recogida de información.

3. Técnica de modelado de procesos: diagrama de activi dades.

Page 3: Proceso software y gestión 1

Proceso software y gestión 3Departamento de Lenguajes y Sistemas Informáticos

El proceso softwareIntroducción

Conceptos

Proceso

y Gestión

Software

Page 4: Proceso software y gestión 1

Proceso software y gestión 4Departamento de Lenguajes y Sistemas Informáticos

El proceso softwareIntroducción

Conceptos

Aplica

Procesosoftware

Ingeniería delsoftware

Ingeniería Tecnología

Conocimientocientífico

Aprovecha

Disciplina tecnológica y de gestión que concierne a la producción ymantenimiento sistemático de productos software que son desarrollados ymodificados a tiempo y dentro de los costes estimados (Fairley)

Page 5: Proceso software y gestión 1

Proceso software y gestión 5Departamento de Lenguajes y Sistemas Informáticos

Ingeniería del software: conceptos básicos.

El proceso softwareIntroducción

La ingeniería del software como ingeniería

Art

efac

to

Page 6: Proceso software y gestión 1

Proceso software y gestión 6Departamento de Lenguajes y Sistemas Informáticos

� Producto de la ingeniería del software.� Complejo.� Evoluciona.� Dual. � Dominador económico.� Lógico, no físico.� Costes en la ingeniería.� No se desgasta.

El proceso softwareIntroducción

El software como producto

Software

Page 7: Proceso software y gestión 1

Proceso software y gestión 7Departamento de Lenguajes y Sistemas Informáticos

El software no se desgasta, pero sí se deteriora.

Tasa de fallos

tiempo

Hardware

Tasa de fallos

tiempo

Software ideal

Tasa de fallos

tiempoSoftware real

El proceso softwareIntroducción

El software como producto

Page 8: Proceso software y gestión 1

Proceso software y gestión 8Departamento de Lenguajes y Sistemas Informáticos

Ciclo de vida de un proyecto software� Periodo de tiempo con principio y fin.� Finaliza cuando se entrega el producto.� Indica ordenadamente procesos, actividades y productos.

Ciclo de vida de un producto software� Abarca la vida desde la definición del producto hasta la

finalización de su uso.

Ambos ciclos de vida no tienen que coincidir en el tiempo.

El proceso softwareIntroducciónCiclo de vida

Page 9: Proceso software y gestión 1

Proceso software y gestión 9Departamento de Lenguajes y Sistemas Informáticos

Modelo de ciclo de vida clásico(en cascada)

Análisis

Diseño

Construcción

Pruebas

Mantenimiento

El proceso softwareIntroducciónCiclo de vida

Page 10: Proceso software y gestión 1

Proceso software y gestión 10

Modelo de ciclo de vida en V(en cascada)

Departamento de Lenguajes y Sistemas Informáticos

Análisis

Diseño del sistema

Diseño de componentes

Generación de código

Pruebas de aceptación

Pruebas del sistema

Pruebas de integración

Pruebas unitarias

Software ejecutable

El proceso softwareIntroducciónCiclo de vida

Page 11: Proceso software y gestión 1

Proceso software y gestión 11Departamento de Lenguajes y Sistemas Informáticos

Modelo de ciclo de vida evolutivo

Versiones

Requisitos

Desarrollo

Evaluación

El proceso softwareIntroducciónCiclo de vida

AnálisisAnálisis

DiseñoDiseño

CodificaciónCodificación

PruebasPruebas

1 1 2 1 2 3

AnálisisAnálisis

DseñoDseño

CodificaciónCodificación

PruebasPruebas

AnálisisAnálisis

DiseñoDiseño

CodificaciónCodificación

PruebasPruebas

Versión 1Funcionalidad 1

Versión 2Funcionalidad 2

Versión 3Funcionalidad 3

AnálisisAnálisis

DiseñoDiseño

CodificaciónCodificación

PruebasPruebas

AnálisisAnálisis

DiseñoDiseño

CodificaciónCodificación

•ruebas•ruebas

AnálisisAnálisis

DiseñoDiseño

CodificaciónCodificación

PruebasPruebas

Iteración 1 Iteración 2 Iteración 3

Versión 1 Versión 2 Versión 3

Incremental

Iterativo

Page 12: Proceso software y gestión 1

12

Comunicación

Plan rápido

Diseño rápido

Construccióndel prototipo

Despliegue,entrega y

realimentación

Modelo de ciclo de vida con construcción de prototi po

Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareIntroducciónCiclo de vida

Page 13: Proceso software y gestión 1

13Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Procesosoftware

Proyecto 1

Proyecto 2

Proyecto 3

Proyecto nOrganización

El proceso softwareIntroducción

Proceso software

Page 14: Proceso software y gestión 1

14Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

� Tecnología.� Metodologías, métodos y técnicas. � Aspectos organizacionales. � Marketing y economía.

� Es complejo.� Superpone diseño y producción.� Reduce costes.� Planificaciones (tiempo, coste y calidad) no definitivas.� Se basan en la coordinación y cooperación.� Juega un rol importante el usuario.� Influye en la calidad del producto.

El proceso softwareIntroducción

Proceso software

Procesosoftware

Abarca

Page 15: Proceso software y gestión 1

15Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Efectividad

Mantenibilidad

Predictibilidad

Reusabilidad

Calidad

Mejora

Trazabilidad

Producir el producto adecuado.

Facilitar los cambios

Facilitar la planificación

Facilitar la reutilización.

Garantizar la calidad.

Facilitar la mejora

Facilitar el seguimiento.

Obj

etiv

os d

el

proc

eso

softw

are

El proceso softwareIntroducción

Proceso software

Page 16: Proceso software y gestión 1

Gestión deldesarrollo

16Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Alcance delproceso software

Gestión deriesgos

Gestión deadquisiciones

Proceso software

Medición

El proceso softwareIntroducción

Proceso software

Page 17: Proceso software y gestión 1

17Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Alcance delproceso software

Gestión deriesgos

Proceso software

El proceso softwareIntroducción

Proceso software

Gestión deadquisiciones

Gestión deldesarrollo

Medición

Page 18: Proceso software y gestión 1

18Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Proceso

Metodologías

Métodos

Nivel estratégico y organizacional.

Nivel táctico y de proyecto.

Técnicas utilizadasy productos obtenidos.

Herramientas

Facilita la aplicación.

El proceso softwareIntroducción

Proceso software

Page 19: Proceso software y gestión 1

19

El proceso softwareTécnicas de recogida de información

Técnicas básicas

Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Observación in situ Inmersión / aprendizaje

Estudio de documentación

Page 20: Proceso software y gestión 1

20

El proceso softwareTécnicas de recogida de información

Encuesta

Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

� Acopio de datos. � Muestra representativa.� Anónima.�Técnica cuantitativa.

� Lenguaje claro, adecuado y sin ambigüedades.

� Una cuestión e idea por pregunta.

� Cómoda para el encuestado.

� Sin suposiciones implícitas.

� Perspectiva del encuestado.

� Ordenar las preguntas y aplicar el “efecto embudo”.

� Máximo 30 preguntas y 30 minutos de respuesta.

A tener en cuenta

Page 21: Proceso software y gestión 1

21

El proceso softwareTécnicas de recogida de información

Encuesta

Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

RespuestaAbierta Cerrada

Dicotómica

Categorizada

Función Batería

Filtro

De control

Amortiguadora

Contenido

Identificación

Acción

IntenciónOpinión

Información

Motivos

EncuestaTipos de preguntas

Page 22: Proceso software y gestión 1

22Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Método DELPHI

� Consecución de consenso � Información cualitativa y subjetiva

� Explotación estadística � Proceso iterativo

Formulacióndel problema

Selecciónde expertos

Definicióny envío

cuestionario 2

Análisisresultados

cuestionario 2

Definicióny envío

cuestionario 1

Análisisresultados

cuestionario 1

Definicióny envío

cuestionario 3

Análisisresultados

cuestionario 3

ElaboraciónInforme

final

Page 23: Proceso software y gestión 1

23Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Método DELPHI

Formulacióndel problema

Selecciónde expertos

Definicióny envío

cuestionario 2

Análisisresultados

cuestionario 2

Definicióny envío

cuestionario 1

Análisisresultados

cuestionario 1

Definicióny envío

cuestionario 3

Análisisresultados

cuestionario 3

ElaboraciónInforme

final

� Definido desde el anterior.� Comentarios de acuerdo o desacuerdo.� Preguntas más cerradas.� Acompañar informe del anterior.� Solicitud de justificaciones.

� Procesamiento estadístico.� Singularidades.� Informe.

Consenso posible en tercer nivel.

� 15-50 cuestiones abiertas.� Semicuantificables si es posible.� Definir tiempo de respuesta (2 semanas).

� Define problema, objetivos y resultados.� Identifica recursos.� Puede durar varios meses

10-15, máximo 30.

Page 24: Proceso software y gestión 1

24Proceo software y getiónDepartamento de Lenguajes y Sistemas Informáticos

� Individualizada.� Información detallada.� Punto de vista función del entrevistado.� Minimizar el número.

El proceso softwareTécnicas de recogida de información

Entrevista

PreparaciónRealización

Análisis

Desarrollo

Terminación

Apertura

Page 25: Proceso software y gestión 1

25Proceo software y getiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Entrevista

PreparaciónRealización

Análisis

Desarrollo

Terminación

Apertura

� Conocer el vocabulario.� Seleccionar al entrevistado.� Determinar objetivos y contenidos.� Preparación del entrevistado.

� 5-15 minutos.� Presentación.� Propiciar entendimiento.

� 95-110 minutos.� Evitar monólogos.� Control (tercera persona).� Preguntas abiertas � cerradas.

� 5-10 minutos.� Recapitular.� Posibilitar nueva entrevista.

� Elaborar y confirmar acta.� Contrastar resultados.

Page 26: Proceso software y gestión 1

26Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

Individual Varias personas

Consume más tiempo Consume menos tiempo

Genera menos implicación Genera más implicación

Opinión individual Constata opiniones

Control fácil Control difícil

Información detallada Información menos detallada

Planificación individual Planificación grupal

Entrevista / Reuniones

Page 27: Proceso software y gestión 1

27Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

Adaptación Celebración Conclusión

� Personalización.� Seleccionar participantes.� Planificación.� Recursos.

� Presentación y objetivos.� Delimitar ámbito.� Temas abiertos.� Conclusión.

� Completar y revisar la documentación.� Validar la documentación.

Jefe del JAD Jefe del JADCoordina elJefe del JAD

� Definición de requisitos.

� 2 a 4 días.

� Planificación concreta.

Joint Application Development (JAD)ROLES

Jefe del JAD

Analista

Patrocinador ejecutivo.

Representantes de usuarios.

Representantes de sistemas de información.

Especialistas.

Page 28: Proceso software y gestión 1

28Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

Preparación Generación Consolidación Documentación

� Seleccionar participantes.� Preparar logística.

� Generar ideas libremente.� Asunto difuso.� 4 a 10 personas (una es el jefe).� Poca organización y estructura.� Pocos detalles.

Jefe

� Tema semilla (jefe).� Ideas libres.

� Revisión de ideas.� Descartes y priorización.

� Redacción del acta

Jefe

Page 29: Proceso software y gestión 1

29Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

� Tema breve, concreto y no polémico.� Participación de todos.� 6 personas / 6 minutos.� Flexible

Preparación Fase 1 Fase 2 Fase 3

� Identificación del tema.

� Formulación del tema.� Formación subgrupos.

� Designar coordinador y secretario.� Tratar el tema.� 6 / 6.� Consensuar conclusiones.

� Exponer conclusiones subgrupos.� Resumen global.

CoordinadorGrupo global

Subgrupos CoordinadorGrupo global

Coordinador

Page 30: Proceso software y gestión 1

30Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

Proceso incidentePreparación

Presentación

Estudio y resolución de dudas

Síntesis de información

Identificación del problema

Decisión personal

Votación mejor

decisión

Formación subgrupos

según preferencias

Justificación subgrupo

ConsensoEvaluación final

� Decidir sobre incidente.� Practica decisiones simuladas.� 15 a 20 personas. (1 coordinador)� Puesta en situación.

Coordinador

Coordinador 2–3 min.

Grupo yCoordinador30-35 min.

Un miembro5 min.

Grupo10-15 min.

Cada miembro5 min.

Grupo Grupo yCoordinador

Subgrupo

Ponente subgrupo, grupo y coordinador

10-15 min.

Grupo10-20 min.

10-15 min.

Page 31: Proceso software y gestión 1

31Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

� Organización de pensamientos.� Roles mentales.� Fomenta la variación de pensamiento.� Dinámica dirigida por el coordinador.� Todos pueden usar los seis.� Individual o en grupo.� En grupo todos usan el mismo a la vez.

Seis sombreros

Page 32: Proceso software y gestión 1

32Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

� Unificar puntos de vista.� Reducir incertidumbres.� Identificar riesgos.� Duración variable (2 -15 días).� Revisión semestral o por cambio de enfoque.

Why

How

Page 33: Proceso software y gestión 1

33Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnicas de recogida de información

Reuniones

� Metodología para generar ideas innovadoras� Entender y dar solución a las necesidades reales de los

usuarios.� Se ponen en valor 5 características diferenciales:

� La generación de empatía� El trabajo en equipo� La generación de prototipos� Se promueve lo lúdico� Técnicas con un gran contenido visual y plástico

Materiales Equipo

Espacio Actitud

Proceso

Aspectos

Page 34: Proceso software y gestión 1

34Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

¿Qué son los diagramas de actividades?

� Técnica para modelar procesos de negocio.

� Forma parte de UML.

� Representa actores, flujos de actividades y flujos de

información.

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Page 35: Proceso software y gestión 1

35Proceo software y getiónDepartamento de Lenguajes y Sistemas Informáticos

Gestión de Pedidos

Recibir Pedido

App

lyin

g U

ML

and

patte

rns,

C. L

arm

anP

rent

ice-

Hal

l, 20

04

EnviarFactura

Factura

Recibir Pago

SatisfacerPedido

Pedido

Cerrar Pedido

Producción FacturaciónServicio al Cliente

EntregarPedido

Notificar entrega

Doc Entrega

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Elementos

Actividad

Transición

Flujo de objeto

Actividad compleja

Fork

Join

Actividad inicial

Actividadfinal

Nodo de objeto

Actividadnotificación/petición

Calles / roles

Page 36: Proceso software y gestión 1

36Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Actividadcompleja

Actividadcompleja

Obj IN 1

Obj IN n

Obj OUT 1

Obj OUT n

… …

Actividad compleja

Obj IN 1

Obj IN n

ActividadObj OUT 1

Obj OUT n

……

Actividad

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Elementos

Page 37: Proceso software y gestión 1

Actividad

Actividad

37Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Elementos

Actividad

Nodo inicial Nodo final de proceso Nodo final de flujo

componentesConstruir

componentes

Liberaraplicacióncomponentes

Instalarcomponentes

[no hay máscomponentespara construir]

[quedancomponentespara construir]

[no hay máscomponentespara instalar]

[quedancomponentespara instalar]

aa

conectores

Page 38: Proceso software y gestión 1

38

Proceo software y getión

Departamento de Lenguajes y Sistemas Informáticos

Transiciones condicionales excluyentes

Entrega de pedido

[otro caso] [urgente]

EntregaOrdinaria

EntregaUrgente

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Elementos

guardas

opcional

Page 39: Proceso software y gestión 1

39Proceo software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Gestión de fondos bibliotecarios

Director UsuarioBibliotecario

Catalogarnuevo libro

Registrarpréstamo

Leer libro

Retirarlibro

[libro deteriorado]

[libro OK]

<<DataStore>>Registro de prestamos

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Elementos

Registrardevolución

Objeto almacén de datos

Page 40: Proceso software y gestión 1

40Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Flujos de objetos

Aseguramiento de la calidad de los requisitos

ValidaciónVerificación

Análisis

transiciones implícitas(opcional)

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Elementos

Requisitos(borrador)

Requisitos(analizados)

Requisitos(verificados)

Requisitos(validados)

Page 41: Proceso software y gestión 1

O también

41Proceo software y getiónDepartamento de Lenguajes y Sistemas Informáticos

Cliente Cajero Banco

Incluir compras del carrito

Calcular tasasy descuentos

<<DataStore>>Almacén

de Recibos

Caja

Carrito

SolicitarAutorización

Pago

[pago al contado] [otro caso]

Comprar yllenar carrito

Entregarcompras

Venta por caja

App

lyin

g U

ML

and

patte

rns,

C. L

arm

anP

rent

ice-

Hal

l, 20

04

Cancelarcompra

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Elementos

Emitirrecibo

Autorizarpago

Excepción

Cancelarcompra

Page 42: Proceso software y gestión 1

42Proceso software y gestiónDepartamento de Lenguajes y Sistemas Informáticos

Modelado de proceso de negocio con diagrama de activ idades

� Identificar los procesos de negocio para modelar.

� Identificar los actores participantes.

� Identificar el actor iniciador del proceso de negocio.

� Identificar la actividad inicial.

� Identificar actividades complejas.

� Nombrar cada actividad como forma verbal.

� Considerar la homogeneidad.

El proceso softwareTécnica de modelado de proceso: diagrama de activid ades

Guía de modelado