Resumen. En este trabajo se presenta una estrategia para obtener de modo
sistemtico el modelo de casos de uso y el modelo conceptual, a partir del modelado del negocio basado en diagramas de actividades UML. Despus de determinar los procesos del negocio de la organizacin bajo estudio, y de describir sus lujos de trabajo mediante diagramas de actividad, los casos de uso son identiicados y estructurados a partir de las actividades de cada proceso, mientras !ue los conceptos !ue aparecen en el modelo conceptual se obtienen a partir de los datos !ue luyen entre las actividades. "dems, las reglas del negocio son identiicadas e incluidas en un glosario, como parte de la especiicacin de datos y actividades. Un aspecto destacable de nuestra propuesta es el #ec#o de !ue el modelado conceptual y el de casos de uso se realiza en paralelo, #aciendo ms cil la identiicacin y especiicacin de casos de uso adecuados. $anto el modelado de casos de uso como el modelado conceptual orman parte de la ase de anlisis de re!uisitos de un modelo de proceso completo en cuya deinicin estamos trabajando. Este proceso est siendo e%perimentando en un organismo de tama&o medio de la "dministracin "utonmica. 1 Introduccin Desde !ue UML '() ue adoptado por el *M+ como el lenguaje estndar para el modelado, se #a deinido un buen n,mero de modelos de proceso para el desarrollo de aplicaciones orientadas a objetos -**., !ue utilizan este lenguaje como medio de e%presin de los dierentes modelos !ue se crean durante el desarrollo. Estas propuestas suelen estar dirigidas por los casos de uso, de manera !ue stos se emplean para deinir los re!uisitos uncionales del sistema, y todas las etapas del proceso -planiicacin de las iteraciones, anlisis, dise&o y pruebas. se articulan en torno a los casos de uso identiicados. "ctualmente, en muc#as discusiones sobre casos de uso se coincide en se&alar !ue con recuencia son mal interpretados, y !ue no #ay gu/as precisas para resolver los aspectos !ue tienen !ue ver con su organizacin. En este sentido, se #an publicado dierentes propuestas -por ejemplo '0, 1, 2). en las !ue se discuten cuestiones tales 3333333333 ( 4arcialmente subvencionado por la 5657$, Ministerio de Educacin y Ministerio de 6ndus8 tria. 4royecto de investigacin ME9:6;8*M $65<18=><085=>8=?. ? Miembro de ;E9*6; -European Requirements Engineering Network of Excellence.. como la granularidad de los casos de uso, el nivel de detalle en !ue deben describirse, o la conveniencia de crear una jerar!u/a de casos de uso. 6nspirados en la arquitectura de tres modelos de OOram '(0) y en el mtodo IDEA '?), estamos deiniendo un proceso basado en UML orientado a sistemas de inorma8 cin de gestin. Este proceso incluye una ase de modelado del negocio, !ue describe los procesos del negocio de la organizacin bajo estudio de manera !ue se puedan construir, de orma sencilla y directa, versiones iniciales de los modelos conceptual y de casos de uso. 5ada proceso del negocio se describe #aciendo uso de un diagrama de actividades UML con calles -swimlanes.. 4osteriormente, se identiican los casos de uso del sistema a partir de las actividades y los conceptos -clases del dominio. a partir de los datos -objetos de inormacin !ue luyen entre las actividades.. En este trabajo describimos nuestra propuesta para realizar el modelado del nego8 cio y su cone%in con el anlisis de re!uisitos -modelos conceptual y de casos de uso.. Esta propuesta #a sido e%perimentada en el marco de un proyecto cuyo objetivo #a sido proporcionar un modelo de proceso, basado en re!uisitos, para el desarrollo de sistemas de inormacin de gestin con uso intensivo de datos '(=). El mbito de este trabajo #a sido la D+@65 -Direccin General de Sericios de Informacin ! de las "omunicaciones. de la 5";M -"omunidad Autnoma de la Regin de #urcia.. Este trabajo est estructurado de la siguiente maneraA en el apartado ? comentamos someramente la problemtica asociada a la utilizacin del concepto de caso de uso, y orecemos una visin general de nuestra propuestaB en el apartado 0 presentamos la manera de abordar el modelado del negocioB en el apartado C mostramos cmo reali8 zar la transicin desde el modelo del negocio a los modelos de casos de uso y con8 ceptualB inalmente, en la seccin > e%ponemos nuestras conclusiones. 2 Motivacin 2.1 Problemas en la Utilizacin de los Casos de Uso "ctualmente, la mayor parte de los modelos de proceso propuestos para UML se deinen como dirigidos por los casos de uso. Un caso de uso puede ser deinido como una secuencia de acciones$ inclu!endo ariaciones$ que el sistema puede e%ecutar ! que produce un resultado o&sera&le de alor para un actor que interact'a con el sistema '(). "un!ue el %ito de los casos de uso se suele justiicar con el #ec#o de !ue constituyen una tcnica simple e intuitiva, algunos autores -ver por ejemplo '0, 1, 2). se&alan las diicultades !ue entra&a la obtencin y la especiicacin de casos de uso verdaderamente ,tiles, y la alta de consenso sobre cmo organizarlos y manejarlos. Estas son las razones !ue nos llevan a pensar !ue es necesario establecer un conjunto de gu/as para la identiicacin, descripcin y organizacin de los casos de uso. "lgunas discusiones interesantes acerca del manejo de casos de uso son las propor8 cionadas por $. Dorson y ". 5ocEburn. Dorson '1) deiende !ue los re!uisitos -y por tanto los casos de uso. #an de ser organizados jerr!uicamente, y establece !ue i. cada nivel de casos de uso no debe a&adir nuevos re!uisitos, sino reinar los del nivel superior, y ii. la jerar!u/a de casos de uso no debe ser el resultado de una descompo8 sicin uncional, y #a de ser desarrollada de manera iterativa e incremental. 4or otro lado, 5ocEburn '0) utiliza el concepto de objetivo -goal. para organizar je8 rr!uicamente los casos de uso. Distingue bsicamente entre o&%etios estrat(gicos -los procesos del negocio de la organizacin. y o&%etios de usuario -las unciones del sistema.. Los objetivos estratgicos se corresponden con un conjunto de objetivos de usuario y, de igual modo, un objetivo de usuario puede ser descompuesto, a su vez, en un conjunto de objetivos de usuario. "parece, por tanto, el concepto de o&%etio com) puesto, !ue corresponde bien a un conjunto de objetivos de usuario, o bien a un obje8 tivo estratgico. *tra cuestin importante es la ubicacin del modelado de casos de uso dentro del modelo de proceso. 9ormalmente se concibe el modelado de casos de uso como un paso previo al modelado conceptual. @in embargo, Dorson '2) argumenta !ue no es posible crear casos de uso adecuados y ,tiles -ni implementarlos correctamente. sin comprender el dominio, y por tanto, el modelado de casos de uso y el modelado con8 ceptual deben ser actividades realizadas en paralelo. 2.2 Nuestra Propuesta 9ormalmente, los casos de uso son elicitados de orma intuitiva a partir de la espe8 ciicacin del sistema y, posteriormente, las entidades del modelo conceptual se e%8 traen a partir de las especiicaciones de los casos de uso. En las siguientes secciones presentamos una propuesta para obtener de orma sistemtica tanto el modelo de casos de uso como el modelo conceptual, a partir de un modelo del negocio, de acuer8 do con el es!uema mostrado en la Fig.(. Modelado del Negocio Diagrama de Roles Diagrama de Secuencia Diagrama de Proceso =?G-H? G-H (-I?J,? Diagrama de Casos de Uso del Sistema =?G-H? G- >-C2,K,1?K Anlisis de Re!uisitos Modelo Conceptual Glosario "ig. 1. ;elaciones de trazabilidad entre los modelos de negocio y de re!uisitos 6nspirados en la Arquitectura de *res #odelos de **ram '(?, (0), el modelado del negocio se realiza mediante diagramas de actividades UML. Una vez determinados los procesos de negocio de la organizacin, y descritos sus lujos de trabajo mediante diagramas de actividades, los casos de uso se elicitan y estructuran a partir de las actividades de cada proceso, mientras !ue las entidades del modelo conceptual se obtienen de los datos !ue luyen entre tales actividades. "dems, se identiican las reglas del negocio y se incluyen en un glosario como parte de la especiicacin de los datos y las actividades. Un aspecto notable de nuestra propuesta es !ue el modelado de casos de uso y el modelado conceptual se realizan al mismo tiempo, #aciendo ms cil, por tanto, la identiicacin y especiicacin de los casos de uso adecuados. # Modelado del Negocio 4ara conseguir sus objetivos, una empresa organiza su actividad por medio de un conjunto de procesos de negocio. 5ada uno de ellos se caracteriza por una coleccin de datos !ue son producidos y manipulados mediante un conjunto de tareas, en las !ue ciertos agentes -por ejemplo, trabajadores o departamentos. participan de acuerdo a un flu%o de tra&a%o determinado. "dems, estos procesos se #allan sujetos a un conjunto de reglas de negocio, !ue determinan las pol/ticas y la estructura de la in8 ormacin de la empresa. 4or tanto, la inalidad del modelado del negocio es describir cada proceso del negocio, especiicando sus datos, actividades -o tareas., roles -o agentes. y reglas de negocio. El primer paso del modelado del negocio consiste en capturar los procesos de ne8 gocio de la organizacin bajo estudio. La deinicin del conjunto de procesos del negocio es una tarea crucial, ya !ue deine los l/mites del proceso de modelado poste8 rior. De acuerdo con el concepto de objetivo estratgico de 5ocEburn '0), capturamos los procesos del negocio a partir de los objetivos principales de la empresa. En primer lugar, consideramos los objetivos estratgicos de la organizacin. $eniendo en cuenta !ue estos objetivos van a ser muy complejos y de un nivel de abstraccin muy alto, sern descompuestos en un conjunto de subobjetivos ms concretos, !ue debern cumplirse para conseguir el objetivo estratgico. Estos subobjetivos pueden a su vez ser descompuestos en otros, de manera !ue se deina una jerar!u/a de objetivos. En nuestro estudio, #emos e%perimentado !ue dos o tres niveles de descomposicin son suicientes. 4ara cada uno de estos subobjetivos de segundo nivel deinimos un proce8 so de negocio !ue deber dar soporte a dic#o subobjetivo. ;epresentamos cada proce8 so del negocio como un caso de uso del negocio, !ue inicialmente ser descrito de orma te%tual. En el resto del trabajo, ilustramos el proceso mediante el ejemplo de una compa&/a !ue abrica productos bajo demanda -siguiendo un es!uema %ust in time.. Los objeti8 vos estratgicos de dic#a compa&/a podr/an incluir Satisfacer un pedido de un cliente, Incrementar en un +,- las entas, o Disminuir el tiempo de fa&ricacin en un .,-/ El objetivo Satisfacer un pedido de un cliente puede ser dividido en subobjetivos tales comoA Registrar 0edido de "liente, 1a&ricar 0roducto 0edido, Gestionar Almac(n y Reali2ar 0edidos a 0roeedores. Lstos sern los objetivos !ue utilizaremos para dei8 nir nuestros procesos del negocio. #.1 Identi$icacin de Roles del %ntorno del Negocio Una vez se #an identiicado los procesos de negocio, es preciso encontrar los agentes involucrados en su realizacin. 5ada uno de estos agentes o actores del negocio de8 sempe&a cierto papel -%uega un rol. cuando colabora con otros para llevar a cabo las actividades !ue conorman dic#o caso de uso del negocio. De #ec#o, identiicaremos los roles !ue son jugados por agentes de la propia empresa -!ue incluyen trabajadores, departamentos y dispositivos /sicos. o agentes e%ternos -como clientes u otros siste8 mas.. 4or el momento nos centraremos en este ,ltimo tipo de roles, con los !ue la organizacin interact,a para llevar a cabo sus procesos de negocio. En nuestro ejem8 plo tenemos los roles "liente y 0roeedor, claramente e%ternos al sistema. 4ara tener una visin general de los dierentes procesos de negocio de la organiza8 cin, puede construirse un diagrama de casos de uso del negocio, en el cual aparece cada proceso del negocio como un caso de uso. Este diagrama permite mostrar los l/mites y el entorno de la organizacin bajo estudio. @lo se mostrarn en este dia8 grama los actores del negocio correspondientes a los roles e%ternos al sistema, de orma !ue los procesos de negocio en los !ue slo tomen parte roles internos a la organizacin no estarn conectados a ning,n actor. En la Fig. ? se muestra el diagra8 ma de casos de uso del negocio para nuestro ejemploB es un diagrama de casos de uso UML ormado por casos de uso del negocio y actores. En el diagrama se muestra adems !ue el agente "liente arranca la realizacin del caso de uso relacionado, mientras !ue 0roeedor simplemente participa en el caso de uso asociado. initiator Registrar pedido Cliente Fabricar producto Gestionar almacen Generar pedidos a proveedores Proveedor "ig. 2. Diagrama de casos de uso del negocio para el sistema de produccin %ust in time #.2 &escripcin de los Casos de Uso del Negocio El siguiente paso dentro del modelado del negocio es introducirse en cada uno de los casos de uso del negocio identiicados, para describirlo en detalle. 9os centraremos en uno de los casos de uso del negocio de nuestro ejemplo, Registrar 0edido, cuya descripcin se muestra en la Fig. 0. Esta descripcin puede ser validada cilmente por los usuarios. " continuacin, #emos de determinar los agentes internos !ue juegan un rol en ca8 da caso de uso del negocio. :asta el momento #emos identiicado los roles !ue perte8 necen al entorno de la organizacin. "#ora es necesario estudiar la descripcin de cada caso de uso del negocio, y observar el conjunto completo de roles involucrados, tanto e%ternos como internos a la organizacin. Los roles del caso del uso del negocio Registrar pedido son "liente, "omercial, 3efe4*(cnico, y 3efe40roduccin -siendo los tres ,ltimos internos al sistema..