Está en la página 1de 6

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/233529267

Construcción de Modelos de Requerimientos a partir de Modelos de Procesos de


Negocio

Conference Paper · November 2012

CITATIONS READS

0 1,686

6 authors, including:

Carlos Arias Méndez Gabriela Vilanova


University of Magallanes Universidad Nacional de la Patagonia Austral
6 PUBLICATIONS   23 CITATIONS    14 PUBLICATIONS   19 CITATIONS   

SEE PROFILE SEE PROFILE

Silvia Gabriela Rivadeneira Molina María Miranda


Universidad Nacional de la Patagonia Austral Universidad Nacional de la Patagonia Austral
12 PUBLICATIONS   8 CITATIONS    5 PUBLICATIONS   5 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Innovación en procesos de enseñanza aprendizaje en ambientes mediados por tecnologías de la información y la comunicación View project

All content following this page was uploaded by Silvia Gabriela Rivadeneira Molina on 05 June 2014.

The user has requested enhancement of the downloaded file.


Construcción de Modelos de Requerimientos a partir de Modelos de Procesos de
Negocio

Carlos Arias Méndez María Miranda


Departamento de Ingeniería en Computación Departamento de Ciencias Exactas y Naturales
Universidad de Magallanes, UMAG Universidad Nacional de la Patagonia Austral, UNPA
Punta Arenas, Chile Santa Cruz, Argentina
e-mail: carlos.arias@umag.cl e-mail: gmiranda@uaco.unpa.edu.ar

Gabriela Vilanova Diana Cruz


Departamento de Ciencias Exactas y Naturales Departamento de Ciencias Exactas y Naturales
Universidad Nacional de la Patagonia Austral, UNPA Universidad Nacional de la Patagonia Austral, UNPA
Santa Cruz, Argentina Santa Cruz, Argentina
e-mail: vilanova@uolsinectis.com.ar e-mail: dianalrcruz@gmail.com

Silvia Rivadeneira Molina Juan Fontana


Departamento de Ciencias Exactas y Naturales Departamento de Ciencias Exactas y Naturales
Universidad Nacional de la Patagonia Austral, UNPA Universidad Nacional de la Patagonia Austral, UNPA
Santa Cruz, Argentina Santa Cruz, Argentina
e-mail: grivadeneira@uart.unpa.edu.ar e-mail: jefontana30@yahoo.com.ar

Resumen—La elicitación de requerimientos es un proceso  Análisis de documentos.


primordial para conocer la realidad de una organización. Aún  Focus Group.
se sigue trabajando para encontrar técnicas que permitan  Interface Analysis.
adquirir las necesidades relevantes que permitan a los
 Entrevistas.
desarrolladores construir un software de calidad. En este
trabajo presentamos una propuesta que permite combinar y  Encuestas / Cuestionarios.
derivar a partir del modelado de procesos de negocios  Escenarios.
(utilizando el estándar BPMN) en un modelo de  Prototipos.
requerimientos conformado por diagramas de casos de uso,  Taller de Requerimientos / Reuniones
diagramas de interacción y diagrama de clases preliminar. facilitadas.
 Observación.
Palabras claves: Elicitación de requerimientos; modelado de Aunque [4] nos brinda un análisis sobre las técnicas de
procesos de negocio; modelado de requerimientos elicitación que los desarrolladores argentinos utilizan
mayormente, donde el 100% utiliza técnicas tradicionales,
I. INTRODUCCIÓN tales como: entrevistas, cuestionarios, encuestas y análisis de
El área de conocimiento de requerimientos de software formularios; el 29% utiliza técnicas grupales como focus
está compuesta por los procesos elicitación, análisis, group y brainstorming, pero también el prototipado se
especificación y validación de requerimientos de software encuentra con el mismo porcentaje; el 16% utiliza técnicas
[1]. La elicitación es una de las áreas de conocimiento de [2] contextuales, así como observación de participantes,
que describe como los analistas de negocio trabajan con los etnometodología, análisis de conversación; un 3% utiliza
interesados para identificar y entender sus necesidades y técnicas dirigidas por modelos como goals-based o
preocupaciones, comprendiendo el entorno en el cual ellos escenarios; dejando de lado aquellas que son denominadas
trabajan. Coincidimos con [3] en que la elicitación de cognitivas como análisis de protocolo, laddering, card
requerimientos es el proceso de adquirir todo el sorting o repertory grids. En [5] presentan experiencias
conocimiento relevante necesario para producir un modelo exitosas en la enseñanza respecto al uso de escenarios,
de requerimientos de un dominio del problema. Entre las brainstorming y taller de requerimientos.
técnicas de elicitación que sugieren las guías [1, 2], se En [3] mencionan las siguientes seis fuentes de
encuentran: elicitación: expertos del dominio, literatura sobre el dominio,
software existente acerca del dominio, software de otros
 Brainstorming.
dominios, estándares nacionales e internacionales, y otros
interesados del sistema. En [1] encontramos una visión más El análisis de negocio es el conjunto de tareas y técnicas
amplia donde se establece que las fuentes de los utilizadas para trabajar como enlace entre los interesados con
requerimientos pueden ser: los objetivos, el conocimiento de el fin de entender la estructura, políticas y operaciones de
dominio, los interesados en el sistema, el entorno de una organización para recomendar soluciones que permitan a
operación y el entorno de la organización. Analizando la la misma alcanzar sus metas [2] mediante la reingeniería de
literatura, encontramos que las fuentes de los requerimientos, los procesos de negocio o en menor escala a la optimización
para la gran mayoría de los autores, son las personas, aunque de algunas tareas.
diferencian los roles que estas cumplen. También se Lo anterior nos permite tener una visión holística sobre la
menciona que las personas no son las fuentes más adecuadas operación de la empresa, que se refleja a través de sus
por una serie de inconvenientes, tales como [6]: procesos y a su vez permite considerar, desde un principio, el
 Las personas y los ingenieros de software desarrollo de sistemas informáticos de una forma integrada,
utilizan lenguajes distintos. facilitando el desarrollo de sistemas de gestión, y por ende, la
 La dificultad de expresar claramente sus ideas. gestión de la empresa. Hoy en día, hay una gran necesidad de
 Falta de consenso entre los interesados. integrar sistemas de información que históricamente se han
 Falta de interés o aversión hacia el nuevo ido desarrollando en forma vertical, generando silos de
sistema. aplicaciones, y la preocupación por integrarlos de alguna
Dentro de las actividades que se deben cumplir en la forma, para facilitar la alineación de la operación y gestión
elicitación de requerimientos se encuentran: la identificación de la empresa con su plan estratégico.
de los interesados, la obtención de requerimientos Por lo tanto, el dominio del problema no puede aislarse
funcionales, la identificación de las restricciones, la de la organización en la que está inserto y por ende la
definición de los escenarios y la caracterización de los obtención de requerimientos debe considerar las necesidades
requerimientos de calidad [7]. del negocio. Un dominio es el área objeto de estudio, que
Este trabajo se organiza de la siguiente manera: en la puede corresponder con los límites de la organización,
Sección 2 desarrollaremos la motivación que nos llevó a unidades organizacionales, así como a los interesados que se
experimentar la conjunción de los estándares BPMN encuentren dentro o fuera de las fronteras y/o en la
(Business Process Model and Notation) y UML (Unified interacción con esos interesados [2]. Los procesos de
Modeling Language) para complementar las técnicas de negocio han adquirido importancia en las organizaciones
elicitación de requerimientos tradicionales y no tan como un recurso que les permite diferenciarse y lograr
tradicionales, en la Sección 3 se presenta la metodología de ventajas competitivas. Para la ingeniería de software
implementación que llevaremos a cabo, en la Sección 4 se representa una fuente de requerimientos que permite
plantea el caso de estudio que consideramos como base para complementar las tareas de elicitación de requerimientos [9].
la aplicación de los estándares antes mencionados, Utilizamos BPMN porque su principal objetivo es
finalmente en la Sección 5 se presentan las conclusiones proporcionar una notación que sea fácilmente comprensible
finales y trabajos futuros que nos interesa abordar en por todos los usuarios de negocios, desde los analistas que
próximos estudios a realizar por el grupo de investigación. crean los borradores iniciales de los procesos hasta los
desarrolladores técnicos responsables de la aplicación de la
II. MOTIVACIÓN tecnología que llevará a cabo esos procesos, y por último la
El desarrollo de un sistema de información es un proceso gente de negocios que controla y monitorea estos procesos
complejo que involucra no solo resolver problemas [10, 11]. Y especialmente porque fue diseñado teniendo en
tecnológicos, sino también aspectos organizacionales y cuenta la tecnología de servicios web [12].
sociales. Este trabajo pertenece al proyecto de investigación
En el contexto de toda metodología de desarrollo de 29/B134-1 “Modelado de Requerimientos y Diseño de
software, la obtención, análisis, especificación y validación Sistemas Complejos” que se encuentra radicado en la Unidad
de requerimientos, así como su gestión, son la base de un Académica Caleta Olivia, Provincia de Santa Cruz.
proceso organizado con el único fin de obtener un sistema Argentina (UACO) de la Universidad Nacional de la
informatizado que responda a las necesidades de una Patagonia Austral (UNPA) y está integrado por docentes
organización. investigadores y estudiantes de carreras de pre-grado, grado
En estos últimos tiempos, los paradigmas de desarrollo y posgrado de informática.
han evolucionado [8], se han creado nuevas metodologías y III. METODOLOGÍA DE IMPLEMENTACIÓN
enfoques de desarrollo que repercuten en las organizaciones,
pero también los requerimientos de las organizaciones han Las técnicas de elicitación que utilizaremos son:
cambiado y requieren adaptarse constantemente, influyendo entrevistas; análisis de documentos; observación; Léxico
en el desarrollo de software. Cada día en la industria del Extendido del Lenguaje (LEL); escenarios y modelado de
software se incrementan las habilidades requeridas de los procesos mediante el estándar BPMN. Los productos
profesionales. Nuevos desafíos en el desarrollo de software resultantes del uso de las técnicas mencionadas formarán
como el offshore (puntos de desarrollo en distintas parte del documento de especificación de requerimientos. En
localidades geográficas) y desarrollo de software distribuido las asignaturas de carreras de pre-grado en informática
requieren profesionales con nuevas habilidades. [23,24] habitualmente se aplica el estándar IEEE Std 830-1998.
La herramienta que está siendo utilizada para modelar los frameworks que facilitan la creación de flujos de procesos
diagramas de procesos es Bizagi Process Modeler v2.3 [25] de negocio, tal es el caso de jBPM (JBoss Business Process
ya que permite exportar los diagramas como archivos de Model) [18] que soporta dos lenguajes de proceso JPDL
imagen, o archivos de Visio, aunque también publicar en (jBPM Process Definition Language, enfocado a la
Word, Pdf, Web y Wiki. En el caso de la herramienta para definición de flujos de procesos en Java) y BPEL. JBPM
los diagramas de casos de uso, de interacción y de clases se enfoca su filosofía hacia GOA. Mediante un gráfico se
trabaja con StarUML v5.0. Se han seleccionado herramientas diseña el flujo y posteriormente se le dota de la lógica
libres por la disponibilidad y simplicidad de implementación necesaria mediante mapeos con clases de Java. De este modo
en nuestra y otras organizaciones que formen parte de este se crea un nexo entre el analista o diseñador y el
proyecto. programador. Otro trabajo [21] define la transformación
desde el metamodelo BPMN al metamodelo del lenguaje
A. Modelado de procesos BPEL para ser ejecutado en un motor workflow, utilizando
En este trabajo nos enfocaremos en el modelado de también QVT (Query/View/Transformation) como un
procesos mediante BPMN, entendiendo que construiremos lenguaje de consultas para definir transformaciones entre los
una red de objetos gráficos, denominados actividades (tareas) metamodelos. En definitiva, la automatización es una de las
y los controles de flujo que definen su orden de actuación líneas donde más se invierte actualmente [22].
[11]. Se especifica un único tipo de diagrama, Business
Process Diagram (BPD), con un conjunto de elementos B. Modelado de requerimientos
núcleo y un conjunto de elementos completo, donde el Si bien, [15] observa algunos problemas en la utilización
conjunto núcleo servirá para modelar la mayoría de los de los casos de uso como la falta de consenso sobre su
procesos de negocio [8]. Las decisiones de negocio y las organización y manejo, nosotros adherimos al enfoque
ramificaciones de los flujos son modeladas utilizando propuesto por Larman en [16].
pasarelas (gateway). Se puede modelar quien hace las tareas, En un BPD cada actividad tiene asignada quien la
simplemente colocando eventos y actividades dentro de áreas ejecuta, para derivar un caso de uso se tendrá en cuenta [13]:
sombreadas, denominadas contenedores (pools), los cuales  Quien ejecuta la actividad será un actor.
pueden ser divididos en calles (lanes) que representan a otros  Las acciones que se describan dentro de la
departamentos o áreas, o cargos de la organización, mientras actividad corresponden a los casos de uso (Fig.
que el contenedor representa la organización entera [12]. 2).
Actualmente BPMN es un estándar de la Object Una vez extraídos los casos de uso se generan los
Management Group (OMG), al igual que UML, y se diagramas de secuencia que describan cada uno de los
encuentra en la versión 2.0. escenarios de los casos de uso.
Descubiertos los procesos de negocio (Fig. 1), y antes de Luego se diseña el primer Diagrama de Clases de la etapa
desarrollar el modelo de procesos en detalle se priorizan los de análisis, y a partir del diagrama de clase preliminar se
mismos junto al cliente. Asimismo, siguiendo con la genera el diagrama de comunicación (colaboración),
metodología deberemos definir junto al cliente que definiendo conjuntamente los requerimientos no funcionales.
actividades se informatizarán [13]. Ya que entendemos que
la participación y la implicación de los clientes y usuarios en
el desarrollo de software aumenta la probabilidad de su
satisfacción [17].
En el modelado de procesos de sistemas complejos,
donde la probabilidad de cambios en las especificaciones
funcionales son muy elevadas, una opción efectiva es la
combinación SOA (Service Oriented Architecture) para
permitir la flexibilidad de cambios necesarios en la
organización y así poder reutilizar los componentes de
procesos de negocio como servicios. Así, el modelado de
Figure 1. BPD de una sesión de Consejo de Unidad.
procesos de negocios es la base para comprender mejor la
operación de una organización, mientras que SOA brinda
capacidad de añadir, modificar y optimizar fácilmente los IV. CASO DE ESTUDIO
procesos de negocio mediante el aprovechamiento de las
Nuestro caso de estudio es principalmente el área de
sinergias de servicios. Una de las arquitecturas orientadas a
Investigación donde se requiere de un Sistema que permita
servicios más popular es el Web Service que nos permite
llevar adelante la Gestión de Documentos de la Unidad
diseñar aplicaciones distribuidas basadas en Web y así
Académica Río Turbio (UART) de UNPA y todas las áreas y
pensar en el diseño independientemente de la tecnología
sectores que intervienen en el circuito de seguimiento de los
utilizada por la organización.
documentos.
Otro estándar importe a considerar corresponde a BPEL
UART es una de las cinco unidades de gestión que
(Business Process Execution Language) que proporciona
conforman la UNPA. Al igual que toda Universidad, tiene
facilidades para la orquestación de servicios, combinación de
servicios web para conseguir un flujo de negocio. Existen
como misión brindar educación superior universitaria a los el mismo cliente pueden encontrarse físicamente
habitantes de su zona de influencia. distribuidos. [24]
UART posee distintos sectores que reciben y envían
documentación: expedientes, instrumentos legales, AGRADECIMIENTOS
circulares, memorándums y notas. Algunos de los sectores El grupo de investigación agradece el apoyo y
intervinientes son: Decanato, Vice Decanato, Consejo de financiamiento de Ministerio de Ciencia y Tecnología e
Unidad, Secretaría de Administración, Secretaría de innovación productiva de Nación vía SeCyT (Secretaría de
Extensión, Secretaría de Investigación y Posgrado, Secretaría Ciencia y Técnica) de la Universidad Nacional de la
Académica, Departamento de Ciencias Sociales, Patagonia Austral. (Res 0025/12-R-UNPA)
Departamento de Ciencias Exactas y Naturales, Programa de
Acceso, Permanencia y Bienestar Universitario, Programa de REFERENCIAS
Educación a Distancia, Plan de Acción de Mantenimiento,
Biblioteca y las subáreas que dependen de las anteriores. [1] IEEE CS, Guide to the Software Engineering Body of Knowledge,
SWEBOK, 2004.
Definir temario [2] IIBA, A Guide to the Business Analysis Body of Knowledge,
BABOK, Versión 2.0, 2009.
[3] P. Loucopoulos y V. Karakostas, System Requirements Engineering,
Mc Graw Hill, 1995.
Secretario
[4] L. Antonelli y A. Oliveros, Fuentes utilizadas por desarrolladores de
Registrar sesión software en Argentina para elicitar requerimientos. WER. 2002.
[5] M. Sandoval, M. García y F. Madriz, Experiencias exitosas en la
aplicación de técnicas de elicitación de requerimientos.
[6] L. Antonelli y A. Oliveros, Revisión de las fuentes usadas para
elicitar requerimientos. 2003.
Generar instrumento legal [7] ISO/IEC 25030, Software Engineering – Software quality
requirements and evaluation (SQuaRE) – Quality Requirements,
2007.
Figure 2. Caso de uso extraido de BPD. [8] A. Delgado, Desarrollo de software enfocado en el negocio.
[9] A. Rodríguez, E. Fernández y M. Piattini, Hacia la obtención de
La UNPA ha modificado su estatuto e incorporado en clases de análisis y casos de uso desde modelos de proceso de
este último año Escuelas e Institutos a su estructura negocio.
organizacional, por lo que, en un futuro cercano existirán [10] OMG, Business Process Model and Notation (BPMN), Versión 2.0,
autoridades por cada uno de esos institutos y escuelas que, 2011.
por consiguiente, enviarán y recibirán documentación [14]. [11] S. White, Introduction to BPMN, IBM Corporation.
[12] J. Pérez, F. Ruíz y M. Piattini, Model Driven Engineering aplicado a
V. CONCLUSIONES Y TRABAJOS FUTUROS Business Process Management, Informe técnico UCLM, 2007.
A través de este artículo se ha presentado un plan de [13] C. Monserrat, A. Páez, C. Arias, S. Rivadeneira, G. Vilanova y G.
Miranda, El modelado de procesos como técnica de elicitación de
trabajo para desarrollar un modelo de requerimientos, basado requerimientos, II EIPA, 2012.
en casos de uso considerando los procesos de negocio como [14] UNPA, Estatuto UNPA, Res. 013/10-AU-UNPA, 2010.
punto de partida para la toma de requerimientos. Durante la
[15] J. García, M. Ortín, B. Moros, J. Nicolás y A. Toval, De los procesos
ejecución de este plan, se espera encontrar un método de negocio a los casos de uso, 2000.
adecuado para generar casos de uso a partir del BPD, [16] C. Larman, UML y Patrones. Una introducción al análisis y diseño
considerando desde un inicio, el desarrollo de sistemas de orientado a objetos y al proceso unificado, Pearson Educación, 2003.
información en forma integrada. [17] U. Ibarra, F. Alvarez y M. Vargas, Use Process – Modeling
Creemos que BPMN es comprendido por los Requirements Based on Elements of BPMN and UML Use Case
responsables de procesos, aunque al complicarse los Diagrams, 2° ICSTE, 2010.
procesos, los diagramas se complejizan [22] y UML ayuda [18] Introducción sobre BPM, Disponible en:
una mejor interpretación por parte de todos los interesados. http://www.willydev.net/InsiteCreation/v1.0/WillyCrawler/
Como próxima línea de investigación a abordar se [19] P- Bazán, R. Giandini y F. Díaz, Tecnologías para implementar un
marco integrador de SOA y BPM, Informe Técnico,UNLP, 2010.
considera la incorporación de algún servicio web que
optimice el modelo de los procesos de negocio [20] Oracle, Gestión de procesos de negocio, Arquitectura orientada a
servicios y Web 2.0 ¿transformación de negocios o problemática
orientándonos a dominios complejos y/o críticos. Así como global?, 2008.
la integración de BPM y SOA (Service Oriented [21] F. Zorzan y D. Riesco, Transformación de procesos BPMN a su
Architecture) es factible de trabajar en detalle siguiendo implementación en BPEL utilizando QVT, WICC XII Workshop de
trabajos como [19, 20] y otros. Otra línea interesante a Investigadores en Ciencias de la Computación, 2010.
estudiar corresponde a analizar enfoques que integren la [22] N. Pérez, J. Martínez, H. Muñoz y D. De Francisco, Gestión de
especificación de requerimientos a partir de modelos de procesos de negocios semánticos, TELOS Cuadernos de
negocio bajo un paradigma de trabajo colaborativo, Comunicación e innovación, 2008
considerando que en la actualidad los equipos de desarrollo y [23] Favela, J., Peña-Mora, F. (2001) An Experience in Collaborative
Software Engineering Education. IEEE Software, 18(2), pp. 47- 53.
[24] Hawthorne, M., Dewayne, E. (2005) Software Engineering Education [25] Bizagi Process Modeler.
in the Era of Outsourcing, Distributed Development, and Open http://www.bizagi.com/docs/BizAgi+Allianz%5BColombia%5D.pdf
Source Software: Challenges and Opportunities. Proc. of the 27th Int.
Conf. on Software Engineering (ICSE). St. Louis, USA. Pages: 643 -
644. 2005.

View publication stats

También podría gustarte