Revista EIA, ISSN 1794-1237 Número 10, p. 105-120. Diciembre 2008 Escuela de Ingeniería de Antioquia, Medellín (Colombia) * Ph. D (c) en Ingeniería de Sistemas, Universidad Nacional de Colombia. Docente del Área de Ingeniería de Software y Bases de Datos, Escuela de Ingeniería de Antioquia. [email protected]** Ingeniero Informático, Escuela de Ingeniería de Antioquia. Analista de Negocio, Electronic Data Systems Corpora- tion (EDS). [email protected]. *** Ingeniero Informático, Escuela de Ingeniería de Antioquia. Analista de Investigación y Desarrollo, Choucair Testing S. A. [email protected]Artículo recibido 13-X-2008. Aprobado 29-XII-2008 Discusión abierta hasta junio de 2009 UN PATRÓN DE INTERACCIÓN ENTRE DIAGRAMAS DE ACTIVIDADES UML Y SISTEMAS WORKFLOW MARTA SILVIA TABARES* JUAN DIEGO PINEDA** ANDRÉS FELIPE BARRERA*** RESUMEN Actualmente en los ambientes de desarrollo de software hay un gran interés en buscar y desarrollar técnicas que puedan integrar los sistemas transaccionales con los flujos de trabajo que soportan los procesos del negocio de las organizaciones. Sin embargo, en la industria del software no es común encontrar técnicas o prácticas que faciliten el desarrollo de los modelos del sistema en función de los procesos del negocio. En este artículo se define un patrón de desarrollo que estandariza la interacción entre diagramas de actividades de UML 2.0, que representan las operaciones de un sistema, y procesos del negocio automatizados bajo tecnologías workflow. La trazabilidad de dicha interacción se mantiene por medio de modelos de trazabilidad que controlan la evolución de las operaciones del negocio y del sistema. Para mostrar la aplicación del patrón se desarrolla un caso de estudio. PALABRAS CLAVE: modelado de procesos del negocio; flujo de trabajo; transformación de modelos; trazabilidad; diagrama de actividades; proceso de desarrollo de software; UML 2.0. AN INTERACTION PATTERN BETWEEN UML ACTIVITY DIAGRAMS AND WORKFLOW SYSTEMS ABSTRACT In software development environments there is a big interest to look and develop techniques that could integrate transactional systems with Workflow systems in order to support the business processes in organizations.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Revista EIA, ISSN 1794-1237 Número 10, p. 105-120. Diciembre 2008Escuela de Ingeniería de Antioquia, Medellín (Colombia)
PALABRAS CLAVE: modelado de procesos del negocio; flujo de trabajo; transformación de modelos;trazabilidad;diagramadeactividades;procesodedesarrollodesoftware;UML2.0.
AN INTERACTION PATTERN BETWEEN UML ACTIVITY DIAGRAMS AND WORKFLOW SYSTEMS
Las empresas de desarrollo de softwarebuscanconstantementetécnicasytecnologíasquepuedanadoptarconfacilidadyqueagilicensupro-cesoenlaproduccióndeartefactosdesoftware.Enlaactualidadexisteungraninterésendesarrollarousartécnicasquepuedanintegrarlosprocesosdelnegocioconelprocesodedesarrollo,susmodelosde desarrollo y los productos de software que seconstruyen.
En los últimos tiempos, herramientas talescomoBPM (Business Process Modeling),SOA(Serv-ice Oriented Architecture)yworkflowestántomandomayorfuerza,tantoenlasorganizacionescomoenlaindustriadelsoftware.Estohallevadoaquelasorganizacionespienseneneldesarrolloylaadqui-sición de aplicaciones de software adoptando elconceptodearquitecturasempresariales.Estasar-quitecturasconducenaldesarrollodelosprocesosdel negocio desde su concepción organizacionalhastasuaplicaciónensoluciones,talescomoSOAoflujosdetrabajo(workflows)soportadosporsis-temastransaccionales.
Para lograrestatransición, losprocesosdelnegociosepuedenmodelarpormediodediagramasdeactividadesUMLyautomatizarpormediodelastecnologíasasociadasalaadministracióndeflujosdetrabajo.Mientras losdiagramasdeactividadesproveenloselementosdemodeloqueidentificanlas accionesque se realizandurante la ejecucióndeunprocesooactividad [1], losworkflowspro-
veenlarepresentacióndeunprocesodelnegociofacilitando la comunicación y colaboración entrelosintegrantesdelgrupodetrabajoocoordinandola secuencia de sus actividades, dependiendo delasreglasdenegocioquedefinanelprocesodelaorganización[2].
Aunqueestatecnologíasevieneadoptandodiscretamenteenalgunasempresasdeservicio,paralas empresas de desarrollo de software no es tanevidentehacerlapartedelosdesarrollosdeaplica-cionestransaccionales,talescomoERP(Enterprise Resource Planning), financieras, recurso humano,entreotras.
Desarrollarsoftwaretransaccionalintegradoalosflujosdetrabajodelosprocesosdelnegocioesunaestrategiacompetitivaquepuedetraerbenefi-ciosparalasempresasdedesarrolloysusclientes.Porestarazón,enesteartículosedefineunpatrónde interacción entre diagramas de actividades deUML 2.0 [1], que representan las operaciones deunsistema,y losprocesosdelnegociomodeladosy automatizados bajo tecnologías workflow [3, 4].Elcontroldesuevoluciónserealizapormediodemodelosdetrazabilidadquefacilitanelrefinamientoolacorrelaciónconotroselementosendiferentesnivelesdeabstracción.Paramostrarlaaplicacióndelpatrónsedesarrollauncasodeestudio.
elmodelodetrazabilidadquesoportalaevolucióndelainteracción.Lasección5exponeuncasodeestudio que demuestra la aplicación del enfoquepropuesto.Lasección6presentaalgunostrabajosrelacionados.Finalmente,lasección7contienelasconclusionesytrabajofuturo.
2. CONCEPTOS BÁSICOS
2.1 Procesos del negocio
Los procesos del negocio determinan laforma como un conjunto de actividades puedenlograrlosobjetivosespecíficosdeunaorganizacióndescribiendosuformadeoperar,tomardecisionesy establecer el flujo de la información necesarioentre los participantes del proceso. Cada procesoesmotivadoporunevento internooexternoa laorganización;seprocesalainformacióndeentrada,semanipulan losobjetosnecesarios, se toman lasdecisionesrequeridasysegeneranlainformaciónyloseventosdesalida.Losprocesosestánrestringidosporunconjuntodereglasdenegocio,quedetermi-nan laspolíticas y la estructurade la informacióndelnegocio[2].
Losprocesosdelnegociosonlabasedeto-dobuendesarrollodesoftwareynormalmenteseidentificanenlaprimerafasedelproceso.Facilitanlaabstraccióndelproblemaparaconstruirlasolucióninformática, y suanálisisestáorientadoa la iden-tificación de los objetivos generales, los requisitosdel software, la selección del tipo de sistema deinformaciónylaarquitecturasobrelacualsedebeconstruirelsistema.
• Transaccionales.Sonsistemasqueautomatizanlastareasylosprocesosoperativosdelnegocio,por medio de interfaces de usuario-máquina,funciones de control y operaciones sobre lasbasesdedatos.
• Apoyo a la toma de decisiones.Sonsistemasdealmacenamientoy consultasespecializadasdeinformaciónparasoportar la tomadedecisio-nesenlosmandosmediosyenlaaltagerenciadelasorganizaciones.
• Flujos de trabajo (workflows).Automatizanelflujodelainformaciónquesoportaelprocesoadmi-nistrativodelnegocio,pormedioderoles,men-sajes,actividadesynotificaciones,entreotros.
Figura 1. Un esquema de representación de los procesos del negocio, subprocesos y actividades
Proceso 1 Proceso 2 Proceso n
SubProceso 1 SubProceso 2
Actividad 1 Actividad 2 Actividad 3 Actividad n
SubProceso n
108 Revista EIA
Un patrón de interacción entre diagramas de actividades Uml y sistemas workflow
Laseleccióndeltipodesistemadeinforma-ciónporlogeneralesexcluyente,esdecir,laaplica-ciónesdeltipotransaccionalounadelasotrasdos.Sin embargo, un sistema transaccional puede serpartedelaautomatizacióndeunflujodeunprocesodenegocioysuimplementaciónsercomplementa-riaduranteelmismoprocesodedesarrollo(porlogeneralsonindependientes).
subprocesosyactividadesquefacilitansuoperación,asícomolaautomatizaciónycolaboraciónbasadaen procesos. Permite el modelado, la automatiza-ciónylamejoracontinuadelprocesodelnegocio,encaminandoinformacióndecualquiertipo,segúnelusuariohayadefinidolasreglasdelnegocio.Laintegraciónconsistemastransaccionalesodeotrotipodebeserrealizadamanualoautomáticamente,dependiendodelasherramientasoaplicacionesquepuedacomponer.Enotraspalabras,describelarutacontroladadelainformación,yaqueestádiseñadoparaconseguir losobjetivosdeprocesamientodealgunaclase,comotransformaciónfísica,provisióndeserviciooprocesodeinformación.Stohret al.enlafigura2presentanunmapaconceptualdecómoun proceso del negocio puede ser automatizadodesdesudefiniciónysuusoenunsistema(motor)administradordeworkflow[4].
Tecnologías tales como Oracle Workflow[5],MicrosoftWorkflow[6]ySkelta[7],entreotras,soportaneldiseñoylaconstruccióndelosflujosdetrabajodelosprocesosdelnegocio.Unworkflowestácompuestoporlossiguienteselementos:
Figura 2. Un proceso de negocio desde dos puntos de vista, su definición y los sistemas de workflow (adaptación de [4])
Es definido por un
Actividades
Sub-Procesos
Manuales(las que no forman parte del sistema de workflows)
Automatizadas
or
Sistema Administrador de Workflows(controla aspectos automatizados
del proceso del negocio)
Es manejado por un
Instancias de Procesos(una representación de qué está
sucediendo actualmente)
via
Instancias de Actividades(una representación de qué está
sucediendo actualmente)
Incluye una o más
Usada para creary administrar
Durante la ejecución son representadas por
Ítems de Trabajo(tareas propias de un
Workflow)
Ítems de Trabajo(herramientas/aplicaciones de software
usadas para soportar una actividad)
109Escuela de Ingeniería de Antioquia
• Ítem. Es una clasificación de un componentequehacepartedeunproceso.Enotrostérmi-nos, es todo objeto/documento que requieratramitarsepormediodelworkflow.
• Atributos. Son las propiedades que describencadaítemidentificadoenelworkflow.Porejem-plo,siunítemes“Registrar Idea de Negocio”,en-toncesalgunosatributosdeeseítempuedenserladescripcióndelaideayelsectordenegocio.
• Actividad.Esunaunidaddetrabajoquecontri-buyea laejecucióndeunproceso.Puedeseruna notificación, una función, un evento, unprocesoosubproceso.
• Notificación.Esel resultadodecadaactividaddentrodelflujodetrabajo,esdecir,eslaformadeanunciarloscambiosdeestadodelosobje-tosdel sistemaque interesana losactoresdelproyecto.Así,enlafigura3hayvariasnotifica-ciones,entreellas:“Aprueba idea de negocio”.
• Función. Actividad usada para ejecutar pasostotalmente automatizados en el proceso. Lospasos automatizados de ordinario los realizaunaaplicacióntransaccional.
Lasactividadesdefunciónydeeventotienenuncostoasociado.Elcostoesunvalorquere-presentaeltiempo(númerodesegundos)quela actividad tarda en recibir una función, uneventoounanotificaciónparadarlecontinui-dadalflujo.Eltiempoescalculadoporelmotordelworkflow.
En la figura 3 se ilustra un ejemplo de unworkflowconstruidoconlatecnologíaOracleWork-flowpara soportarelprocesodeTramitar Idea de Negocio(vercasodeestudioenlasección5).
2.4 Diagramas de actividades
Losdiagramasdeactividades(DA)sonpartede los diagramas de comportamiento UML, quedescribenlafuncionalidaddelsoftwareenunnivelaltodeabstracción.Enlaactualidad, losprocesos
Figura 3. Ejemplo de un workflow [5] que automatiza el proceso de Tramitar Idea de Negocio [9]
110 Revista EIA
Un patrón de interacción entre diagramas de actividades Uml y sistemas workflow
del negocio se pueden representar en diagramasdeactividadesdeUML2.0[1,8](esdecir,procesos,subprocesosyactividades),conformeconlastécni-casdemodeladodeprocesosdenegociodefinidasporlaBPMI1,lacualespartedelOMG2yseformalizaeneldocumentoBusiness Process Modeling Notation–BPMN–3.
Los diagramas de actividades describen losflujosdecontrolquesoncreados,desdelosmodelosdeprocesosdelnegociohastalosmodelosdeopera-cióndelsistemadescritosporelementostalescomo:modelosdecasosdeuso (flujosbásicos, subflujosy flujos alternos), clases, operaciones, interfaces,componentesycolaboraciones.Undiagramadeac-tividadesestácompuestoporelementosdemodeloidentificadoscomonodosdeacción(actividad/ac-ción, llamada a actividad externa o subproceso),nodosdecontrol,nodosobjeto,flujosdecontrolyflujosdeobjeto[8](figura4).
3. PATRÓN DE INTERACCIÓN
Enesteenfoquesedefineunpatrón4quede-terminalaformacomodeberealizarselainteracciónentre diagramas de actividades de UML 2.0 y losworkflowsqueautomatizanlosprocesosdelnego-cio.Conestepatrónsebuscadefinirloselementosylaformacomodebencorrelacionarselosmodelosdinámicosdecomportamientoquerepresentenlasoperacionesdelsistematransaccionalconlosproce-sosdelnegocio,sussubprocesosyactividades.
Paso 1.Adaptar interacción del nodo de acción:encadadiagramadeactividadesseidentificanlosnodos de acción que permiten operacionalizar elsistematransaccional,seevalúalainformaciónqueprocesay seestablece la relaciónconactividadesdefuncióndelworkflowpormediodeaccionesdeseñaldeenvío.
Los diagramas de actividades y sus nodosdeacciónsonadecuadosparainteractuarconlosworkflowsqueautomatizanelproceso, realizandotrestareas.
• Identificar los siguientes datos: nombre de laacción, tipo, actores (de entrada, ejecución ysalida)yoperacionestransaccionales.
• Complementar las acciones del flujo de acti-vidadesconnodosdeacciónde señaldeen-víoque indiquen interacciónconelworkflow.Cadaunodeestosseencargarádeestablecerlainteracciónentreeleventodelnododeaccióndescrito y las acciones del workflow (figura 6,parte(b)).
Este nodo se encarga de gestionar la in-formación de control del flujo con los siguientesparámetros:
• ActividadRecibe. Se refiere a la actividad delworkflowquesecorrelacionaconlaoperacióndelflujodeentrada.Segestionalasiguientein-formación:tipo(p.ej.Función),nombreyme-dio(formaqueseutilizapararealizarlaactivi-dadenelworkflow;puedeserunformulariouotrocomoelserviciodecorreoelectrónico).
Figura 5. Patrón de interacción entre un diagrama de actividades y un sistema workflow
112 Revista EIA
Un patrón de interacción entre diagramas de actividades Uml y sistemas workflow
de señal. Generalmente son notificaciones oeventos. Se gestiona la siguiente información:tipo(p.ej.notificación,evento),mensajeyme-dio.
• FlujoSalida.Serefierea losvaloresoinforma-ciónqueconectaoactivaunanuevaactividaden el workflow. Suelen ser valores de verdadconunaetiquetadeidentificacióndelflujo.
Para identificar lanecesidadde la interacciónsesugiereverificarlasiguienteinformación:
- ¿Lasoperacionesdeunprocesoosubproce-so generan información para la administra-cióndelnegocio,comounanotificación,unevento,unafunciónejecutable?
- Crearunnododeactividadestructuradalla-madoGestionar Acciones del Workflowparaelnuevoactorworkflow,detalformaquereci-baydespachelainformaciónnecesariaparainteractuarconotrasaccionesdeldiagramadeactividades(figura6,parte(c)).
ElnodoGestionar Acciones del Workflowrecibelainformacióndelosnodosdeseñalylavalidapormediodelasaccionesindicadasenlafigura5paraelactorworkflow(descritasenlossiguientespasos).Silainformaciónestáincompletaonocumplecon
losobjetivosestablecidosenelworkflow,activaunnododecontroleneldiagramadeactividadesqueseencargadereportaralnododeacciónlosproblemasencontrados.Estopermitecontrolarlainteracciónentrelosmodelosyadministrarloscambiosencual-quieradelosdos.Además, la interacciónsedebesoportarenmodelosdetrazabilidadquemantenganlosvínculosdetrazadoentrelosnodosdecontroly otros elementos de modelo tales como clases yoperaciones,entreotros.
Paso 2. Identificar la actividad de Función:accióndelworkflowqueestáa laesperadequeocurralaaccióneneldiagramadeactividadesparaidentificarunaactividaddefunciónpreestablecidaenelworkflow.Estaacciónrecibelainformaciónnecesariaparaidentificarlaactividadenelwork-flow.
Paso 3.Verificar Reglas de Actividad:acciónquecompruebaquelainformaciónrecibidapermitaevaluar las reglasdefinidasdentrode laactividad(tipofunción)delworkflow.Lasreglasdeunaactivi-dadporloregularestablecenlarealizacióndeciclos,evaluación de decisiones, seguimiento de rutas oramalesdentrodel flujoyotras reglaspropiasdelmotordelworkflow.Sinosepuedecumpliralgunadelasreglas,seenvíaunmensajealosactores(parti-cipantes)delprocesoyseretornainformaciónaunaaccióndecontroldeldiagramadeactividades.
Paso 4.Validar los objetivos de la actividad:elanalistadedesarrolloalcrearlasactividadesdelwork-flowdefinelosobjetivosquedebecumplircadaunadeellas.Losobjetivospuedenseringresarinforma-cióncomplementaria,establecerinformaciónparalanotificacióndeaceptaciónorechazo,identificarelmediodeenvíodelosmensajesdenotificaciónoevento,entreotros.Estosobjetivosfacilitanalosparticipantes tomar decisiones para continuar oterminarelprocesodelnegocio.Siestainformaciónesincorrectaoincompleta,seenvíaunmensajealosactores(participantes)delproceso,yseretornainformaciónaunaaccióndecontroldeldiagramadeactividades.
Figura 6. Adaptación de un diagrama de actividades para interactuar con un workflow
DIAGRAMA DE ACTIVIDADES
113Escuela de Ingeniería de Antioquia
Paso 5.Ejecutar Actividad de Función:elwork-flowejecutalaactividaddeacuerdoconlasreglasverificadasylosobjetivosdefinidos.
Latrazabilidad(delapalabratraceabilityeninglés)orastreabilidadde la interacciónsepuedeextenderaotroselementosdemodeloquesecons-truyanduranteelprocesodedesarrollo,porejemplo,casosdeusoyclases.Paralograrestosedefineunmodelodetrazadoqueestácompuestoporelemen-tostrazables(elementosUMLodefinidosconotrometamodelo)yvínculosdetrazadopormediodeloscualesseharáelcontroldelaevoluciónytransfor-macióndelosprocesosdelnegocioolosrequisitosdel sistema durante el proceso de desarrollo. Losdesarrolladorescreanelmodelodetrazadocomounperfildedesarrolloenelniveldelmetamodelo;asíesposibletenerdiferentesmodelosparadiferentestiposdeproyectos[10].
Los elementos trazables se identifican pormedio de un rol que les da responsabilidades detrazadoduranteelprocesodedesarrollo.Losrolesdefinidosson:
• Ejedetrazado(<<axisTracing>>).Loselemen-tosidentificadosporesteestereotipotienenaso-ciadas tareas de control de la transformaciónparagenerarlospredecesoresysucesoresylagestióndelcambio(análisisde impactoypro-pagación).
• Predecesores (<<predecessor>>). Los ele-mentos identificados por este estereotipo pre-cedenalosejesdeltrazadoypermitenmante-ner la trazahaciaatrás (cuandoseanecesariaunaingenieríainversa).
• Sucesores (<<successor>>): Los elementosidentificadosporesteestereotiposucedenalosejesdel trazado ypermitenmantener la trazahaciadelante.
El modelo de trazado ilustrado en la figura7,enparticular, seorientaal soportedeprocesosdedesarrollocentradosencasosdeuso,comoloeselProcesoUnificado[8].Parasoportarlatrans-formaciónde losprocesosdelnegocio sedefinen
Figura 7. Modelo de trazado basado en casos de uso (definición con base en [10])
114 Revista EIA
Un patrón de interacción entre diagramas de actividades Uml y sistemas workflow
como ejes del trazado los metaelementos UML:UseCase,ActivityyClass(interrelacionanpormediodeunarelacióndeabstracción<<trace>>).Estosseencargarándecontrolarelpatróndeinteracciónyotrasinstanciasdeloselementosdefinidoscomopredecesoresysucesores.
LospredecesoressedefinenenfuncióndelosmetaelementosBusinessObject,Requirement (exten-sionesdelmetamodelodeUML)yWorkflowSystem(delWorkFlowmetamodel)cuyasinstanciasdefinenlosprocesosdelnegocioylosrequisitosenelespaciodelproblema.LossucesoressedefinenenfuncióndelosmetaelementosUMLCollaboration y Component
Elcasodeusocomoelementoprincipaldelosejesdeltrazadoserelacionaconpredecesoresysuceso-respormediodelasrelacionesdetrazado<<refine>>y<<realize>>,loquepermiteobtenertransitividad,entreotroselementos,deejes,predecesoresysuceso-res.Porejemplo,lacorrelacióndeActivity (Diagrama de Actividad)yelWorkflow (Flujo de Trabajo)atravésdelcasodeuso:UseCasetrazaaActivityyUseCaserealizaalWorkflowSystem;así,portransitividadActivity realizaalWorkflowSystem (verexpresión1):
Tabla 1. Definición de los vínculos de trazado y sus reglas de transformación
Nombre Vínculo fuente del trazado Vínculo fuente del trazado Regla detransformación
Los vínculos de trazado son relaciones deabstracciónyrealizaciónUMLqueusanlosestereo-tipos <<trace>>, <<refine>> y <<realize>>.Lasreglasdetransformaciónestánasociadasalosvínculosdetrazadoentrelosejesdeltrazadoysuspredecesoresysucesores.Latabla1presentaalgunasrelacionesdetrazadoysusreglasdetransformación(p.ej.,Ra,…,Rz)quepuedendefinirseenunlenguajedetransformacióncomoATL[15].
5. CASO DE ESTUDIO
Elproblemaquesetomacomocasodeestu-diocorrespondeaunsistemadeinformaciónparauncentrode innovaciónyemprendimiento (CIE)cuyoobjetoprincipalesgestionarlosproyectosdelosemprendedores,desdequeseregistran,yevalúaunaideadenegociohastaquesedesarrollanunaserie de actividades del proyecto para lograr los
Lagestióndelcentrodeinnovaciónestácom-puestaportresprocesosdelnegocio:GestionarEm-prendedor,TramitarIdeadeNegocioyAdministrarProyecto.Paramostrarlaaplicacióndelpatróndeinteracción,sólosetrabajaconelprocesoTramitar Idea de Negocio.
La figura 8 ilustra el diagrama de activida-des del proceso Trámite de Ideas de Negocio quedescribeelflujodeactividadesqueexisteentrelosactores:EmprendedoryEmpleadoCIE.Elprocesoempiezacuandoelemprendedorpresentaunaideadenegocio, luegoelEmpleadoCIEevalúaque lainformación presentada esté correcta para que elemprendedorprocedaaregistrarlaideapropuesta.Deestaforma,elEmpleadoCIEhaceundiagnósticoydeterminasilaideaquedaentrámite,enviandosugerencias de complementación, si lo consideranecesario,olaapruebaolarechaza.Si laideaesaprobada, senotificaalemprendedorygenera la
información necesaria para activar el proceso deFormalizar Proyecto. El proceso se mecaniza pormediodeunworkflowparaautomatizarelflujodeinformaciónyfacilitarlatomadedecisionesentrelosdiferentesparticipantesdelsistema.
5.2 Interacción de los nodos de acción
Enla figura9(a)semuestraeldiagramadeactividades que soporta la operación de Tramitar Ideas de Negocio enel sistema transaccional (estediagramasoportalaespecificacióndelcasodeusodelmismonombre).Losnodosdeacciónidentifica-dos,numeradosdel1al4,secorrelacionanconlasactividadesdefuncióndelworkflowTramitar Idea de Negocio (figura9(b)).Lacorrelaciónpornombresesoportaenlatabla2.
Esimportanteanotarquelosnombresdelosnodosdeactividades y las actividadesWFdebenserlomássimilaresquesepueda.Estoayudaráalseguimientodelatrazapornombredelelementodemodeloylapropagacióndeloscambiosqueafectenelworkflowduranteelprocesodedesarrollo,antetodocuandolosnodosdeacciónseimplementen
Figura 8. Procesos generales del centro de innovación y emprendimiento
Diagrama de Actividades (DA) Workflow (WF) Presentar idea de negocio Presentar idea de negocio Evaluar información Evaluar idea Registrar ideas de negocio Registrar idea de negocio Generar diagnóstico Empleado CIE valida factibilidad
116 Revista EIA
Un patrón de interacción entre diagramas de actividades Uml y sistemas workflow
Tabla 2. Elementos de modelo que participan en la correlación
Diagrama de actividades (DA) Workflow (WF)
Presentar idea de negocio Presentar idea de negocio
Evaluar información Evaluar idea
Registrar ideas de negocio Registrar idea de negocio
Generar diagnóstico Empleado CIE valida factibilidad
enotroselementosdemodelocomoclases,opera-ciones, componentes o conectores, y, finalmente,enelcódigo.
Desdecadanododeacciónseverificaquénotificaciones,eventosuotrasactividadespuedengenerar información para la toma de decisionesdentrodelflujodetrabajo.Porejemplo,apartirdelaacciónEvaluar Información,elEmpleadoCIEgeneraunadedosnotificaciones,dependiendodelgradodeasertividaddelaideadenegociopresentada.Sihayerror,senotificaalEmprendedordelerroryrechazo
Figura 9. Correlación de nodos de acción con actividades de función del workflow
Porlotanto,eneldiagramadeactividadesdelprocesoTramitar Idea de Negociosecreancuatroac-cionesdeseñalesdeenvíoqueindicanlainteracciónentreunnododeacciónyunaactividaddelworkflow(enestecaso,denotificación)quereflejaelflujodelasdecisionesque intervienenen lasaccionesdelproceso(figura10).
La tabla 3 presenta dos de las actividadestrazadasdurantelainteraccióndelprocesoTrámite de Idea de Negocio.
Una instancia del modelo de trazado (pre-sentadoenlasección4)seilustraenelmodelodetrazabilidadSistemaCIEv.1.0.0delafigura11.EstesegeneraapartirdelacreacióndelcasodeusoTramitar Idea de NegociooladefinicióndelprocesoTramitarIdeadeNegocioysuinteracciónentreeldiagramadeactividadesconelworkflow.Lasreglasdetransforma-ciónasociadasaestoselementossonejecutadasparagenerarsuspredecesoresysucesores.PorlarelacióndetrazadelcasodeusoconActividadyelWorkflow,dichasreglasdetransformaciónutilizanlainformacióndela interacciónparacomplementardirectamenteelementostalescomoelprocesodelnegocioTramitarIdeadeNegocioylaclaseIdeadeNegocio.
DIAGRAMA DE ACTIVIDADES QUE REPRESENTA LA INTERACCIÓN DEL PROCESO TRÁMITE DE IDEAS DE NEGOCIO CON SU WORKFLOW
118 Revista EIA
Un patrón de interacción entre diagramas de actividades Uml y sistemas workflow
Si secrean instanciasdeelementos,elpro-cesodelnegocioolosrequisitosantesdelcasodeusoolainteracción,lasreglasdetransformacióndedichoselementosseejecutarándeacuerdoconlarelacióndetrazadoestablecidaentreloselementosdemodeloyelejedeltrazado.
Una vez generada la primera versión delmodelodetrazabilidadparaelSistemaCIEv.1.0.0,cualquier cambio en el proceso del negocio secontrola por medio de la relación de traza entreelcasosdeusoTramitarIdeadeNegocio,laclaseIdeadeNegocio,ylainteracciónentreeldiagramadeactividadesyelworkflowTramitarIdeadeNegocioquesepuedelograrportransitividaddeestosele-mentostrazables.
Tabla 3. Algunas trazas de correlación entre el diagrama de actividades del proceso de negocio y el sistema workflow que soporta el mismo proceso
Garcíaet al.presentanunaformasistemáticaparaobtenerelmodelodecasosdeusoyelmo-delo conceptual, desde los modelos del negociobasadoendiagramasdeactividadesUML[11].Elenfoqueesconceptualydescriptivo,noformalizalainteracciónylatrazabilidadentrelosmodelosquesegenerandesdelaidentificacióndelosmodelosdeprocesos.
En este artículo se define un patrón paragestionarlainteracciónentreundiagramadeacti-vidadesUML2.0ysistemasworkflow.Esteenfoqueproporcionavarioselementosdesoportealprocesodedesarrollodesoftwareysu interaccióncon losprocesosdelnegociotalescomo:
• Laformalizacióndelagestióndelosprocesosdelnegociopormediodelossistemasworkflowy su modelado en diagramas de actividadesUML2.0,parasoportarsucorrelaciónconarte-factosdedesarrollodelossistemastransaccio-nalesuotrotipodesistemas.
Figura 11. Modelo de trazabilidad para el proceso para el caso de uso Tramitar Idea de Negocio
workflows ayudan a controlar la gestión de lainformaciónquefluyeenunprocesodenego-cioylainterrelacióndesusactividadesconlainformación necesaria para tomar la decisióncorrectadeformaeficiente.
Un patrón de interacción entre diagramas de actividades Uml y sistemas workflow
patróndeinteraccióncomobaseparaladefinicióndelosmodelosindependientesdelacomputación(Computation Independent Models –CIM–),dondesutransformaciónsedefineycontrolapormediodepatronesde trazabilidadcomoelque sepresentaenesteartículo.Además, se trabajaen laevalua-ciónyvaloracióndelimpactodelcambiodesdelosprocesos del negocio y los diferentes modelos dedesarrollodelsistema.
Enuntrabajofuturo,estepatrónseutilizarácomoelementodesoportepara facilitar la imple-mentacióndelosprocesosenmotoresWorkflowoBPEL(http://www.ibm.com/developerworks/library/specification/ws-bpel),detalformaquepuedausarseparalatransiciónhacialasarquitecturasempresaria-lesylossistemasSOA[14].Además,lainteracciónquedefineelpatróntambiénpuedeayudaradefinircatálogos de procesos establecidos por áreas delnegocio,quesepuedanautomatizaryformenpartedelanálisisdearquitecturasempresariales.
2. Zhu,L.Osterweil,L.J.;Staples,M.andKannengiesser,U. (2008).Challengesobserved in thedefinitionofreferencebusinessprocesses.LNCSSpringer,Berlin/Heidelberg,p.95-107.
4. Stohr,E.A.;zurMuehlen,M.andZhao,J.L.(2002).Workflow and process automation in the age ofe-business:technical,organizationalandeducationalaspects.In:HICSS-35tutorials,AdvancedSeminars,andWorkshops.Waikoloa,Hawaii,UnitedStates.
9. Barrera,A.F.yPineda,J.D.(2008).AnálisisydiseñodelsistemadeinformacióndelCentrodeInnovacióny Emprendimiento de la Escuela de Ingeniería deAntioquia.Trabajodegrado.EscueladeIngenieríadeAntioquia.
11. García,J.,Ortín-Ibáñez,M-J.,Moros,B.andNicolás,J. (2002). Transforming the OOram three-modelarchitecture into a UML-based process. Journal ofObjectTechnology1(4):119-135.
12. Russell, N.; van der Aalst, W.M. P.; ter Hofstede,A. H. M. and Wohed, P. (2006). On the suitabilityof UML 2.0 activity diagrams for business processmodeling.APCCM‚06:Proceedingsofthe3rdAsia-PacificConferenceonConceptualModelling.Vol.53,p.95-104.