Tiempo: 2h Versión original: Octavio Martín Díaz (marzo 2005) Última revisión: Amador Durán Toro (marzo 2006); añadido contexto y algunos ejemplos. escuela técnica superior de ingeniería informática Modelado de Negocio (Diagramas de Actividades) Departamento de Lenguajes y Sistemas Informá Informáticos Grupo de Ingenierí Ingeniería del Software Marzo de 2006 [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Modelado del Negocio (Diagrama de Actividades) • ¿Qué Qué es el modelado de negocio? Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades 3.1 Actividades 3.2 Transiciones 3.3 Condiciones 3.4 Paralelismo 3.5 Calles 3.6 Flujos de objetos 4. Ejemplo – El modelado de negocio es una técnica para modelar el funcionamiento de una organización a través de sus procesos de negocio. • Técnicas habituales – Casos de uso* de negocio: forma textual. – Diagramas de actividades: forma diagramática. • El concepto de actor – Tanto en los casos de uso de negocio como en los diagramas de actividades aparece el concepto de actor. – En modelado de negocio, un actor es un rol o papel que juega una persona u otro sistema en algún proceso de negocio de una organización. – La forma habitual de representar gráficamente a un actor es mediante una especie de monigote. *Los casos de uso se verán en próximos temas. Sevilla, marzo de 2006 Grupo de Ingeniería del Software Actor 1 1 [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Modelado del Negocio (Diagrama de Actividades) • Situació Situación en el proceso general de Ing. de Req. Req. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades Ingeniería Ingenieríade derequisitos requisitos Desarrollo Desarrollode de los losrequisitos requisitos 3.3 Condiciones Requisitos [versionados] Elicitación Elicitación Negociación Negociación Conflictos [resueltos] 3.1 Actividades 3.2 Transiciones Documento Documento de deRequisitos Requisitos Gestión Gestión Información elicitada 3.4 Paralelismo 3.5 Calles 3.6 Flujos de objetos 4. Ejemplo Conflictos [pendientes] Documentación Documentación Requisitos [validados] Aseguramiento Aseguramientode delalacalidad calidadde delos losrequisitos requisitos Requisitos [borrador] Análisis Análisis Defectos Requisitos [analizados] Requisitos [verificados] Verificación Verificación Validación Validación [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Sevilla, marzo de 2006 Grupo de Ingeniería del Software 2 Modelado del Negocio (Diagrama de Actividades) • Situació Situación en la actividad de elicitació elicitación de req. req. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos Documentación Adicional Estudiar EstudiarelelDominio Dominio del delProblema Problema 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades Estudiar Estudiarlala Situación SituaciónActual Actual Glosario de Términos • Actas de reuniones • Documentos • Proyectos similares • etc. 3.1 Actividades 3.2 Transiciones Modelo del Negocio Actual 3.3 Condiciones 3.4 Paralelismo 3.5 Calles 3.6 Flujos de objetos Identificar Identificar Necesidades Necesidades 4. Ejemplo Información sobre Necesidades Modelo del Negocio a implantar ElElmodelo modelodel delnegocio negocio aaimplantar implantarsuele sueleser sermuy muy parecido al modelo parecido al modelode de negocio actual, por lo que negocio actual, por lo que sólo sóloes esnecesario necesariomostrar mostrar las lasdiferencias. diferencias. Priorizar Priorizar Necesidades Necesidades Información sobre prioridades Sevilla, marzo de 2006 Grupo de Ingeniería del Software 3 2 [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Modelado del Negocio (Diagrama de Actividades) • ¿Qué Qué son los diagramas de actividad? – Es una notación que forma parte de UML* y que se utiliza principalmente para modelar procesos de negocio, especificando: Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio • La secuencia de actividades que componen los procesos de negocio. 2. Situació Situación en el proceso 3. Diagramas de actividades • Los actores que realizan las actividades (opcional). 3.1 Actividades • La información que fluye de unas actividades a otras (opcional). 3.2 Transiciones 3.3 Condiciones 3.4 Paralelismo – Dentro del proceso de ingeniería de requisitos, se utilizarán para modelar los procesos de negocio, tanto actuales como a implantar, de la organización para la que se va a desarrollar el sistema software. 3.5 Calles 3.6 Flujos de objetos 4. Ejemplo – A partir del modelo del negocio al que el sistema software debe dar soporte, se plantean los objetivos y requisitos del sistema a desarrollar. *UML se comentará en los próximos temas. [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Sevilla, marzo de 2006 Grupo de Ingeniería del Software 4 Modelado del Negocio (Diagrama de Actividades) Calles Calles Permiten Permiten especificar especificar qué qué actividades actividades hace hace cada cada actor. actor. • Ejemplo: gestió gestión de pedidos Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos Gestión Gestiónde dePedidos Pedidos Comienzo Comienzo de de paralelismo paralelismo Indica Indica que que aa partir partir de ahí se realizan de ahí se realizan varias varias actividades actividades en en paralelo. paralelo. 1. El Modelado de negocio 2. Situació Situación en el proceso Producción Servicio al Cliente Actividad Actividad inicial inicial Indica Indica el el comienzo comienzo del del proceso proceso de de negocio. negocio. Facturación Actividad Actividad Representa Representa un un paso paso en en el el proceso proceso de de negocio. negocio. Recibir Recibir Pedido Pedido 3. Diagramas de actividades 3.1 Actividades 3.2 Transiciones Flujo Flujo de de objeto objeto Representa Representa un un flujo flujo de de información información (objetos) (objetos) entre entre actividades. actividades. 3.3 Condiciones 3.4 Paralelismo 3.5 Calles 3.6 Flujos de objetos 4. Ejemplo Actividad Actividad compleja compleja Son Son actividades actividades complejas complejas que que necesitan necesitan un un diagrama diagrama de de actividades actividades propio propio para para ser ser descritas. descritas. Fin Fin de de paralelismo paralelismo Indica Indica la la terminación terminación de de todas todas las las actividades actividades que que se se realizaban realizaban en en paralelo. paralelo. Sevilla, marzo de 2006 Grupo de Ingeniería del Software Satisfacer Satisfacer Pedido Pedido Pedido Pedido Enviar Enviar Factura Factura Nodo Nodo de de objeto objeto Representa Representa información información oo documentos documentos (objetos) (objetos) que se generan que se generan en en una una actividad actividad yy se se consumen consumen en en otra. otra. Entregar Entregar Pedido Pedido Factura Factura Recibir Recibir Pago Pago Transición Transición Indica Indica que que una una actividad actividad ha ha terminado terminado yy se se pasa pasa aa la la siguiente. siguiente. Cerrar Cerrar Pedido Pedido Actividad Actividad final final Indica Indica el el final final del del proceso proceso de de negocio. negocio. Applying UML and patterns, C. Larman Prentice-Hall, 2004 5 3 [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Modelado del Negocio (Diagrama de Actividades) • Ejemplo: actividades de la ingenierí ingeniería de requisitos Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades Ingeniería Ingenieríade derequisitos requisitos Desarrollo Desarrollode de los losrequisitos requisitos Conflictos [resueltos] 3.2 Transiciones 3.4 Paralelismo Requisitos [versionados] Elicitación Elicitación 3.1 Actividades 3.3 Condiciones Negociación Negociación Gestión Gestión Información elicitada 3.5 Calles Conflictos [pendientes] 3.6 Flujos de objetos 4. Ejemplo Documento Documento de deRequisitos Requisitos Documentación Documentación Requisitos [validados] Aseguramiento Aseguramientode delalacalidad calidadde delos losrequisitos requisitos Requisitos [borrador] Análisis Análisis Defectos Requisitos [analizados] Requisitos [verificados] Verificación Verificación Validación Validación [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Sevilla, marzo de 2006 Grupo de Ingeniería del Software 6 Modelado del Negocio (Diagrama de Actividades) • Actividades Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades 3.1 Actividades 3.2 Transiciones 3.3 Condiciones 3.4 Paralelismo 3.5 Calles 3.6 Flujos de objetos 4. Ejemplo Actividad Actividad – Una actividad representa un paso dentro de proceso de negocio. • Su nombre, que debe ser siempre una forma verbal, debe ser representativo y coherente dentro del proceso de negocio. • Si una actividad es compleja, puede ser necesario mostrar su descomposición en actividades más simples en otro diagrama. • En cada diagrama de actividades, las actividades deben tener un nivel de abstracción similar. • Actividades iniciales y finales – La actividad inicial, que debe ser única, indica dónde comienza el proceso de negocio. – Una actividad final, de las que puede haber varias o ninguna (proceso sin fin), indica dónde puede terminar el proceso de negocio. Sevilla, marzo de 2006 Grupo de Ingeniería del Software Actividad Actividad compleja compleja Actividad Actividad Inicial Inicial Actividad Actividad Final Final 7 4 • Transiciones Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades 3.1 Actividades 3.2 Transiciones 3.3 Condiciones 3.4 Paralelismo 3.5 Calles 3.6 Flujos de objetos 4. Ejemplo Actividad Actividad Actividad Actividad – Indican la secuencia de actividades que componen el proceso de negocio. – Cuando una actividad termina de realizarse se produce la transición hacia la siguiente actividad. • Transiciones condicionales – Indican que la siguiente actividad a realizar depende de cierta condición. – Como mínimo y como máximo, sólo puede haber una opción válida al evaluar la condición. Entrega Entregade depedido pedido [otro caso] Entrega Entrega Ordinaria Ordinaria [urgente] Entrega Entrega Urgente Urgente – El símbolo de condición se puede usar también para unir varios caminos condicionales (opcional). Applying UML and patterns, C. Larman Prentice-Hall, 2004 [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Modelado del Negocio (Diagrama de Actividades) [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Sevilla, marzo de 2006 Grupo de Ingeniería del Software 8 Modelado del Negocio (Diagrama de Actividades) • Paralelismo Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades 3.1 Actividades 3.2 Transiciones 3.3 Condiciones 3.4 Paralelismo 3.5 Calles 3.6 Flujos de objetos 4. Ejemplo – A veces, algunos pasos de un proceso de negocio se realizan simultáneamente (en paralelo) o sin un orden definido. – Para indicar que comienzan varias actividades a la vez se usa un símbolo de comienzo de paralelismo (fork), al que llega una transición y del que salen varias (al menos dos). – Para indicar que todas las actividades que se hacían en paralelo han terminado se usa un símbolo de fin de paralelismo (join), al que llegan varias transiciones (al menos dos) y del que sale una sola transición. – La transición de salida del join sólo se realiza cuando han terminado todas las actividades que se realizaban en paralelo. Sevilla, marzo de 2006 Grupo de Ingeniería del Software * Realizar RealizarPráctica Práctica* Seleccionar Seleccionar Sistema Sistema Estudiar Estudiar Negocio Negocio Elaborar Elaborar Requisitos Requisitos Realizar Realizar Modelos Modelos Presentar Presentar Práctica Práctica *Proceso muy, muy simplificado. 9 5 [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Modelado del Negocio (Diagrama de Actividades) • Calles Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio – La división en calles permite asociar actividades con aquellos actores que las realizan. Cada calle corresponde a un actor del proceso de negocio. 2. Situació Situación en el proceso Gestión Gestiónde defondos fondosbibliotecarios bibliotecarios 3. Diagramas de actividades Director Usuario Bibliotecario 3.1 Actividades 3.2 Transiciones 3.3 Condiciones Catalogar Catalogar nuevo nuevo libro libro 3.4 Paralelismo 3.5 Calles Registrar Registrar préstamo préstamo 3.6 Flujos de objetos 4. Ejemplo Leer Leer libro libro Registrar Registrar devolución devolución [libro OK] Retirar Retirar libro libro [libro deteriorado] [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Sevilla, marzo de 2006 Grupo de Ingeniería del Software 10 Modelado del Negocio (Diagrama de Actividades) • Flujos de objetos Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos 1. El Modelado de negocio 2. Situació Situación en el proceso 3. Diagramas de actividades 3.1 Actividades 3.2 Transiciones 3.3 Condiciones 3.4 Paralelismo – Lo normal es que fluya información entre las actividades de un proceso de negocio. – En el caso de que resulte interesente mostrar ese flujo (no siempre lo es), se pueden usar flujos de objetos. – Si la información de salida de una actividad es la entrada de otra actividad, se asume que existe una transición implícita entre ambas. 3.5 Calles 3.6 Flujos de objetos Aseguramiento Aseguramientode delalacalidad calidadde delos losrequisitos requisitos 4. Ejemplo Requisitos [borrador] Análisis Análisis Requisitos [verificados] Requisitos [analizados] Verificación Verificación Validación Validación Requisitos [validados] transiciones implícitas (no es necesario dibujarlas) Sevilla, marzo de 2006 Grupo de Ingeniería del Software 11 6 [Ángel US V7] Diseño: Amador Durán Toro (2003-2006) Modelado del Negocio (Diagrama de Actividades) • Ejemplo: venta por caja Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos Venta por caja Cliente Cajero Caja Banco 1. El Modelado de negocio 2. Situació Situación en el proceso Comprar Comprar yy llenar llenar carrito carrito 3. Diagramas de actividades 3.1 Actividades Carrito Carrito 3.2 Transiciones Incluir Incluir compras compras del del carrito carrito 3.3 Condiciones Calcular Calcular tasas tasas yy descuentos descuentos [pago al contado] 3.4 Paralelismo [otro caso] 3.5 Calles 3.6 Flujos de objetos Emitir Emitir Recibo Recibo Recibo Recibo Entregar Entregar compras compras Sevilla, marzo de 2006 Grupo de Ingeniería del Software Autorizar Autorizar pago pago Applying UML and patterns, C. Larman Prentice-Hall, 2004 Solicitar Solicitar Autorización Autorización Pago Pago 4. Ejemplo 12 7