Documentos de Académico
Documentos de Profesional
Documentos de Cultura
presentada por
Director de tesis:
Dr. Máximo López Sánchez
Jurado:
Dr. René Santaolaya Salgado – Presidente
Dr. Moisés González García – Secretario
Dr. Juan Carlos Rojas Pérez – Vocal
Dr. Máximo López Sánchez – Vocal Suplente
A Dios
Por estar a mi lado y mostrarme que no hay camino difícil que no pueda recorrer.
Gracias Dios porque tus promesas son dulces y especiales. Yo sé Dios que las metas
que uno tiene en la vida no se pueden lograr si no hay esfuerzo y trabajo.
No ha existido ni un momento en que no cuides de mí y de mi familia, además tú me
muestras el camino a seguir y me das fortaleza para superar cualquier circunstancia
por difícil que parezca.
Gracias Dios, por todas las bendiciones que das a mi vida.
"Mas el Señor me ha sido por refugio; Y mi Dios por roca de mi confianza"
Proverbios 14:26
A mi Mamá
Por su gran amor incondicional, por el apoyo, la comprensión y palabras de aliento
que me has dado cada día de mi vida, porque a pesar de los momentos difíciles que
hemos vivido siempre encontraste la forma de salir adelante y motivarnos a lograr
cada una de nuestras metas. Gracias por tanto amor que nos has dado, Dios te bendiga
siempre. Te Amo
A mis amigos Christina, Adrian y Pepe, por su apoyo constante y porque siempre están
dispuestos a ayudar, Gracias.
A mis amigos y compañeros Liz, Blanca y Ricardo por su compañía en esta etapa, Gracias.
A mi asesor de tesis el Dr. Máximo, por haber compartido su conocimiento conmigo, por
su guía en la realización de este trabajo y por haberme brindado su amistad, Gracias.
Al Dr. René, Dr. Moisés y al Dr. Juan Carlos que han compartido conmigo su conocimiento,
su paciencia, por su valiosa disposición en la revisión de este trabajo de tesis, por sus
comentarios y sugerencias que contribuyeron a mejorarlo, Gracias.
Al Dr. Andrés Rodríguez y al Ing. José Jiménez del Instituto de Investigaciones Eléctricas,
por brindarme su tiempo, su apoyo y su conocimiento, su ayuda fue parte fundamental
para la realización de este trabajo, Gracias.
Resumen
Estudios como el “The Chaos Report” mencionan que la cantidad de proyectos que
cumplen los objetivos planteados se encuentran sólo el 32%, por lo que más del 50% de
proyectos no cumplen los objetivos o son cancelados debido a factores relacionados con
los requerimientos de software.
Lo anterior nos indica que a pesar de que existen metodologías para la elicitación de
requerimientos, no se están obteniendo los requerimientos de forma adecuada, por lo que
fue necesaria la realización de un estudio que implique el dominio de las metodologías de
elicitación y que ayude al análisis e identificación de factores que inciden en los resultados
que se están teniendo en los proyectos de desarrollo de software.
Abstract
Studies such as "The Chaos Report" mentioned that the numbers of projects that meet the
objectives are only 32%, so that over 50% of projects fail to meet the objectives or are
canceled due to factors related with software requirements.
This indicates that although there are methodologies for the elicitation of requirements,
requirements are not being obtained properly, so it was necessary to do a study involving
the domain of elicitation methodologies that will aid the analysis and identification of
factors that affect the results obtained in software development projects.
This thesis provides a proposal for the reduction of factors that affect the projects like
ambiguous requirements, changing requirements, to name a few that affect the projects,
since requirements are the essential base for the later stages of development to be
successful. The methodology presented incorporates business processes transactions to
model the activities involved in the system that is needed, in which a set of actions are
implemented through guidelines and formats that help detail the requirements to have as a
final product a software requirements specification document.
Contenido
Resumen ………………………………………………………………….………………………………...1
Abstract ………………………………………………………………………………………………….…2
Contenido …………………………………………………………………………………….…….……....3
Introducción …………………………………………………………………………..……………………9
Referencias ……………………………………………………………………………………….…….117
Anexos …………………………………………………………………………..……………………….121
Anexo A: Formalización del Proceso de Negocio para la Facturación Electrónica ..... 121
Anexo B: Descripción de Actividades de la Metodología Representada con BPMN ... 127
Anexo C: Modelado de Proceso de Negocio con BizAgi Process Modeler ................. 133
Lista de Tablas
Tabla 3-17 Guía del Formato de Actividades que se Realizan de Manera Concurrente o
en Distribución en Paralelo .............................................................................................. 57
Tabla 3-18 Formato de Actividad Sincronizada ................................................................ 58
Tabla 3-19 Guía del Formato de Actividad Sincronizada ................................................. 58
Tabla 3-20 Formato de Selección Exclusiva .................................................................... 59
Tabla 3-21 Guía del Formato de Selección Exclusiva ...................................................... 59
Tabla 3-22 Formato de Objetivos ..................................................................................... 67
Tabla 3-23 Guía del Formato de Objetivos ...................................................................... 67
Tabla 3-24 Formato de Transacción de Negocio. ............................................................ 69
Tabla 3-25 Guía del Formato de Transacción de Negocio ............................................... 69
Tabla 3-26 Formato de Roles .......................................................................................... 70
Tabla 3-27 Guía del Formato Roles ................................................................................. 70
Tabla 3-28 Guía Básica para la representación del Proceso de Negocio con BPMN ....... 71
Tabla 3-29 Formato 1 de Actividad del PN....................................................................... 72
Tabla 3-30 Formato 2 de Actividades del PN ................................................................... 73
Tabla 3-31 Guía de los Formatos de Actividades de PN .................................................. 73
Tabla 3-32 Formato 1 de Actividad del Subproceso ......................................................... 74
Tabla 3-33 Formato 2 de Actividades del Subproceso ..................................................... 74
Tabla 3-34 Guía de los Formatos de Actividades de PN .................................................. 74
Tabla 3-35 Formato de Requerimientos Detectados con Problemas ............................... 77
Tabla 3-36 Guía del Formato de Requerimientos Detectados con Problemas ................ 77
Tabla 3-37 Guía de Llenado del Documento de Especificación de Requerimientos de
Software .......................................................................................................................... 79
Tabla 3-38 Atributos de una SRS de calidad [DAV93] ..................................................... 82
Tabla 4-1 Objetivo 1 ........................................................................................................ 90
Tabla 4-2 Objetivo 2 ........................................................................................................ 90
Tabla 4-3 Definiciones y Abreviaturas .............................................................................. 91
Tabla 4-4 Descripción de Rol Asistente ........................................................................... 91
Tabla 4-5 Descripción de Rol Jefe de Asistente ............................................................... 92
Tabla 4-6 Descripción de Rol Departamento de Ingresos ............................................... 92
Tabla 4-7 Descripción de Rol Jefe del Departamento de Ingresos ................................. 92
Tabla 4-8 Descripción de Rol Tesorero .......................................................................... 93
Tabla 4-9 Descripción Transacción de Negocio Facturación Electronica ........................ 93
Tabla 4-10 Descripción de Actividades: Facturación Electrónica ..................................... 95
Tabla 4-11 Formato de la Actividad Seleccionar líneas del programa de pagos .............. 99
Tabla 4-12 Formato de la Actividad Crear Ordenes de Facturación ............................... 100
Tabla 4-13 Formato de la Actividad Enviar Aprobación OF ............................................ 100
Tabla 4-14 Formato de la Actividad Revisar y Validar la OF .......................................... 101
Tabla 4-15 Formato de la Actividad Cancelar OF .......................................................... 101
Tabla 4-16 Formato de la Actividad Solicitar Modificación ............................................. 102
Tabla 4-17 Formato de la Actividad Modificar OF .......................................................... 102
Tabla 4-18 Formato de la Actividad Aprobar OF ............................................................ 102
Tabla 4-19 Formato de la Actividad Enviar Documentación a Soporte a CXC ............... 103
Tabla 4-20 Formato de la Actividad Recibir Documentación de Soporte ........................ 103
Lista de Figuras
Introducción
Hoy en día es muy demandante contar con sistemas de software que ayuden a la
automatización de procesos dentro de una organización.
Los ciclos de vida del software han sido parte fundamental, de manera
metodológica, para el desarrollo de sistemas de software, una de las fases que da inicio al
desarrollo del sistema es la especificación de los requerimientos del software. La
importancia que guarda esta fase es primordial, debido a que aquí es donde el usuario
transmite toda la información que debe contener su “sistema” y el que finalmente utilizará
en su trabajo diario.
CAPÍTULO 1
1 Generalidades
Dentro de este capítulo se presentan los antecedentes que fueron necesarios para el
desarrollo de la presente tesis, los trabajos relacionados con el tema, también describe el
planteamiento del problema, el objetivo, la justificación y los beneficios, además de los
alcances y limitaciones de este trabajo.
1.1 Antecedentes
Esta tesis plantea la definición e implementación de un perfil del UML el cual se integre a
un sistema interactivo, donde los propios clientes capturen sus requerimientos
funcionales, generando diagramas de casos de uso, y se demuestre que es indispensable
la intervención directa del cliente no solo en la definición sino también en la especificación
de sus requerimientos.
En este apartado se describe el análisis realizado a varios trabajos que existen y que
presentan un tópico de la ingeniería de requerimientos, sin embargo, muy pocos son los
trabajos que presentan características acerca de los procesos de negocios y sus
transacciones. Al final de la descripción de estos trabajos se presenta una tabla
comparativa.
Este trabajo propone una metodología integral para obtener los requerimientos de
software a través del uso de modelos de referencia como dominio del conocimiento. Los
sistemas de planeación de recursos empresariales (Enterprise resource planning, ERP
por sus siglas en ingles) proveen de sistemas de software que ayudan a la automatización
de procesos de una organización. Aunque son muchas las ventajas que los ERP
proporcionan a las empresas, en ocasiones se presentan problemas al intentar
implementar un sistema ERP en la empresa, debido a que se deben adaptar los procesos
de negocios que se realizan en la empresa y/o incluso se puede dar el caso que se tenga
que realizarle modificaciones a estos sistemas para poder implementarlos.
Etapa Pautas
Descubrir actores 1.1. Identificar los actores primarios.
1.2. Identificar los actores secundarios.
1.3. Identificar a los actores terciarios.
Descubrir 2.1. Identificar la pregunta de decisión principal.
preguntas de 2.2. Identificar las preguntas de decisión secundarias.
decisión,
2.3. Determinar si las preguntas de decisión son Estructuradas,
investigación y
No Estructuradas o Semi-Estructuradas.
actividades
2.4. Identificar las preguntas de investigación. Estas preguntas
operacionales
surgen de las preguntas de decisión primaria y secundaria.
2.5. Determinar las actividades operacionales que son
necesarias para dar respuesta a las preguntas de investigación.
2.6. Relacionar cada pregunta de decisión, investigación y
actividades operacionales, con sus respectivos actores
involucrados.
Descubrir 3.1. Para cada actividad operacional se deben identificar los
recursos y datos, estructuras de datos e información, necesarias para
establecer llevarlas a cabo.
relaciones 3.2. Relacionar actividades operacionales entre sí, junto a los
recursos. Agregar los eventos de inicio y término, y todo lo que
sea necesario para representar correctamente la secuencia del
proceso. Esta pauta se divide en:
3.2.1. Agregar actividades operacionales que surjan de la
interacción entre actores.
3.2.2. Considerar los recursos que nacen como resultado de
alguna actividad operacional y que son necesarias para
desarrollar otra.
Este trabajo presenta el desarrollo de una herramienta Web móvil para la elicitación de
requerimientos utilizando como base la etnografía (Ethno-MRE por sus siglas en inglés),
la que facilitará la recopilación de datos por medio de diversas formas del Asistente Digital
Personal (PDA por sus siglas en inglés, Personal Digital Assistant). A través de notas
escritas a mano el etnógrafo registra acciones del participante y sus propias
interpretaciones.
Los dispositivos móviles en los últimos años han ganado popularidad en todo el
mundo, por los beneficios que este les proporciona, tal como evitar el inconveniente de
llevar una laptop de un lugar a otro, gozando de beneficios como agenda, programas, etc..
Los dispositivos móviles presentan una gran versatilidad y adaptabilidad a las
necesidades laborales y personales, a lo que provee una oportunidad de usar estos
dispositivos en el campo de la ingeniería de requerimientos.
Obtención de un
Procesos
Interacción Documento de Centrada al Centrada al
Trabajos de
Cliente/Experto Requerimientos de usuario experto
Negocios
software
“Obtención de Requerimientos de
Software ERP con Modelos de
Referencia” [GAO10].
Una Propuesta Metodológica para
Modelar Procesos de Negocios de
Decisión como Técnica de
Elicitación de Requisitos para
Sistemas de Inteligencia de
Negocios [QUEL09].
“Uso de Técnicas Etnográficas para
el desarrollo de una herramienta
Móvil para la Obtención de
Requerimientos” [SHAH09].
“Escribiendo y Leyendo la
Documentación de Software: Como
el Proceso puede Afectar a la
Comprensión” [REMO09].
Tesis
Requerimientos incompletos.
Falta de involucramiento del usuario.
Requerimientos cambiantes.
Por lo que el problema consiste en que: los proyectos de software no cumplen con
los objetivos planteados debido a que la etapa de especificación de requerimientos es
afectada por la falta de comunicación y la baja colaboración por parte del cliente y el
analista, lo que hace que los requerimientos sean incorrectos, ambiguos y no entendibles
en muchos casos.
1.4 Objetivo
Ayudar al usuario y al analista a que tengan una participación más directa y definir sus
requerimientos de manera correcta, entendible y sin ambigüedades.
El estudio realizado por “The Chaos Report” define la cantidad de proyectos que
fueron finalizados con éxito y cuantos no llegaron a cumplir con los objetivos planteados y,
además, presenta un análisis de los principales factores que generaron esos fracasos en
los proyectos, entre los que se tienen los siguientes porcentajes:
a) 44% de los proyectos son completados con menor alcance, y/o sobrecosto
y/o fuera de término.
b) 24% de los proyectos son cancelados antes de ser terminados.
Esto nos indica que sólo el 32% son acabados con base al alcance planteado, en el
tiempo planificado y dentro del presupuesto asignado. Los principales factores que
generan este tipo de problemas se deben a requerimientos incompletos 13.1 %, falta de
involucramiento del usuario 12.4 %, expectativas no realistas 9.9 % y requerimientos
cambiantes 8.1 [Standish09].
Con base a lo anterior, esta propuesta de tesis propone definir una metodología
utilizando transacciones de procesos de negocios, con el fin de aportar una solución a la
problemática antes mencionada.
Beneficios:
Proporcionar una serie de formatos y guías para detallar cada una de las
actividades que se encuentran en el proceso de negocio.
Validar que los requerimientos del documento de especificación sean correctos,
entendibles y sin ambigüedades.
Incorporar el conocimiento respecto a las transacciones de los procesos de
negocios a las prácticas de especificación de requerimientos.
Alcances
Limitaciones
En el siguiente capítulo se describen los conceptos que son necesarios para comprender
el trabajo realizado.
CAPÍTULO 2
2 Marco Conceptual
Dentro de este capítulo se describen los conceptos necesarios para la comprensión y
desarrollo del trabajo de tesis, considerando a la ingeniería de requerimientos,
transacciones y procesos de negocios, el análisis de dominio orientado a características
(FODA), entre otros.
La ingeniería de requerimientos (IR) tiene que ver con aquellas actividades en pos
de entender exactamente las necesidades de los usuarios de un sistema de software y
traducir tales necesidades a un conjunto de sentencias precisas, no ambiguas, las cuales
serán usadas para el desarrollo del sistema [Loucopoulos95].
Definición de Requerimiento
“El término requerimiento es una condición o necesidad del usuario para resolver un
problema o alcanzar un objetivo o la capacidad que debe exhibir o poseer un sistema para
satisfacer un contrato, estándar, especificación, u otra documentación formalmente
impuesta” [STD610.12-90].
Aunque como se describe en el capítulo 1, dentro de los alcances que tendrá el presente
trabajo es que sólo estará enfocado a obtener un documento de especificación de
requerimientos que describirá los requerimientos funcionales, pero es necesario
mencionar que los requerimientos pueden dividirse en:
Funcionales, los que definen la naturaleza de las funciones que tendrá el sistema,
desde la interacción que tendrá en su entorno y cuáles van a ser sus estados de
funcionamiento, además de la capacidad de acción para procesar las entradas
para generar las salidas necesarias.
No funcionales, los que tienen que ver con características que de una u otra forma
puedan limitar al sistema, por ejemplo, el rendimiento, interfaces de usuario,
fiabilidad, mantenimiento, seguridad, portabilidad, estándares, etc. [STD830]
Característica Descripción
Conciso Debe ser fácil de leer y entender. Su redacción debe ser simple y
clara para aquellos que vayan a consultarlo en un futuro.
No ambiguo El texto debe ser claro, preciso y tener una única interpretación. El
lenguaje usado en su definición no debe causar confusiones al lector.
Etapa Descripción
Obtención o Este proceso trata de identificar la procedencia de los requerimientos
Extracción y la manera en la que el ingeniero de software los puede recolectar.
La elicitación es la habilidad de trabajar en colaboración con los
clientes y/o representantes de ellos para descubrir las necesidades
actuales del producto y acordar la visión y las metas del proyecto
propuesto [ARIAS05].
Análisis Sobre la base de la extracción realizada previamente, comienza esta
fase en la cual se enfoca en descubrir problemas con los
requerimientos del sistema identificados hasta el momento.
Algunos autores identifican una serie de problemas que nos ayudan a comprender
por qué la obtención de requisitos es costosa [PRESS02].
Problemas de alcance: El límite del sistema está mal definido o los detalles
técnicos innecesarios, que han sido aportados por los clientes/usuarios, pueden
confundir más que clarificar los objetivos del sistema.
Problemas de comprensión: Los clientes/usuarios no están completamente
seguros de lo que necesitan, tienen una pobre compresión de las capacidades y
limitaciones de su entorno de computación, no existe un total entendimiento del
dominio del problema, existen dificultades para comunicar las necesidades al
ingeniero del sistema, la omisión de información por considerar que es «obvia»,
especificación de requisitos que están en conflicto con las necesidades de otros
clientes/usuarios, o especificar requisitos ambiguos o poco estables.
Problemas de volatilidad: Los requisitos cambian con el tiempo.
Entrevistas
Las entrevistas son las de uso común y es un método muy popular para la obtención de
requerimientos. En este método el analista y los ingenieros del proceso de ingeniería de
requerimientos realizan un intercambio verbal de información, entre las diferentes partes
interesadas para comprender los requisitos del sistema y el objetivo que tienen que
cumplir en el sistema. Se definen cuatro fases para la realización de entrevistas:
Cuestionarios
Los cuestionarios son uno de los métodos de recopilación de requisitos que llegan a un
gran número de personas, no sólo en menos tiempo sino también en un menor costo
[GANESH08]. Los cuestionarios se utilizan como una herramienta simple que puede
consistir en preguntas abiertas y / o cerradas. El derecho de obtener resultados y la
respuesta, los cuestionarios deben ser claros, definidos y concisos con respecto al
dominio del sistema a desarrollar. Las preguntas deben centrarse en el problema
[QADEEM10].
Análisis Social
Este método es muy útil cuando se busca estudiar las actividades y procesos que se
están llevando a cabo en una organización en el momento. La observación permite a los
investigadores observar lo que los usuarios hacen actualmente en un determinado
contexto [CAMA05].
1. Observación Pasiva: este análisis social se lleva a cabo sin la participación directa
del observador en la sociedad. La observación se lleva a cabo mediante el registro
con videos, cámaras de vídeo y cámaras de vigilancia en el área laboral de los
interesados. La documentación de los problemas y necesidades son obtenidos a
partir de los datos registrados.
Prototipo
Reuso de Requerimientos
Hoy en día en las industrias de software más de la mitad de los requisitos para los
requerimientos de un nuevo proyecto se adquieren de los proyectos existentes. Aunque
existe la necesidad de comprobar los requisitos antes de que sean utilizados en el
producto propuesto [GANESH08].
"El éxito comienza con la reutilización de haber una cultura organizacional que
conscientemente fomente la reutilización en lugar de reinvención" [ROBERTSON06].
Escenarios
Lluvia de Ideas
Casos de Uso
Los casos de uso son una de las técnicas de definición de requerimientos más
ampliamente aceptadas, quizá por el respaldo que hoy en día tiene el Lenguaje Unificado
de Modelado (UML por sus siglas en inglés). Los Casos de Uso describen bajo la forma
de acciones y reacciones el comportamiento de un sistema desde el punto de vista del
usuario, permiten definir los límites del sistema y las relaciones entre el sistema y el
entorno [ESC02]. Los Casos de Uso son descripciones de la funcionalidad del sistema
independientes de la implementación, dividen el conjunto de necesidades atendiendo a la
categoría de usuarios que participan en el mismo, están basados en el lenguaje natural.
Glosario y Ontologías
La diversidad de personas que forman parte de un proyecto de software hace que sea
necesario establecer un marco de terminología común. Esta necesidad se vuelve
sumamente necesaria en los sistemas de información Web puesto que el equipo de
desarrollo en ellas suele ser más interdisciplinario [ESC02].
Plantillas o Patrones
Esta técnica tiene por objetivo describir los requerimientos mediante el lenguaje natural
pero de forma estructurada. Una plantilla es una tabla con una serie de campos y una
estructura predefinida que el equipo de desarrollo completa usando para ello el lenguaje
del usuario. Las plantillas eliminan parte de la ambigüedad del lenguaje natural al
estructurar la información; cuanto más estructurada sea ésta menos ambigüedad ofrece.
Sin embargo, si el nivel de detalle elegido es demasiado profundo, el trabajo de rellenar
las plantillas y mantenerlas puede absorber mucho tiempo [ESC02].
Lenguajes Formales
Otro grupo de técnicas que merece la pena resaltar como extremo opuesto al lenguaje
natural, es la utilización de lenguajes formales para describir los requerimientos de un
sistema. Las especificaciones algebraicas como ejemplo de técnicas de descripción
formal han sido aplicadas en el mundo de la ingeniería de requerimientos desde hace
años [PEÑ98]. “Sin embargo, resultan complejas en su utilización y comprensión para el
cliente. El mayor inconveniente es que no favorecen la comunicación entre cliente y
analista. Por el contrario, es la representación menos ambigua de los requerimientos y la
que más se presta a técnicas de verificación automatizadas” [ESC02].
Una vez que se han descrito algunas de las técnicas para la elicitación de
requerimientos, para el caso de la metodología que plantea esté trabajo se hará uso de la
técnica de entrevista para el caso de las primeras dos etapas de que contempla la
metodología.
Actualmente son pocas las técnicas de elicitación que consideran como base los procesos
de negocios dentro de la elicitación de requerimientos de software, los procesos de
negocios son parte fundamental para conocer el proceso operacional de la organización.
Por tal razón es necesario tener un panorama general acerca de estos, debido a que los
procesos de negocios se consideran como base de desarrollo de la metodología de la
tesis, además que también forma parte de la primera etapa que contempla la metodología
desarrollada.
Los procesos no son nada nuevo, las empresas han tenido siempre procesos. El
problema es que no han podido describirlos tan fácilmente como a la Organización. Los
departamentos tienen nombres como "Ventas" y "Sistemas"; y una persona responsable
asociada a cada puesto. Los procesos son usualmente invisibles y no son descritos ni
nombrados. Los procesos atraviesan las organizaciones tradicionales [Peña2006].
Davenport ha expresado muy bien esto: "Mientras que una estructura jerárquica de la
organización es una vista de relaciones y responsabilidades, su estructura de proceso es
una vista dinámica de cómo la organización entrega valor" [DAVENPORT93].
Como podemos ver, los procesos de negocios toman un rol muy importante para el
cumplimiento de objetivos de una organización, por lo anterior la metodología considera
como base los procesos de negocios a fin de obtener requerimientos detallados, ya que
es importante conocer no solo las actividades de los procesos de negocios, si no también
es necesario conocer que entidades que están interactuando para que se cumpla dicho
proceso, con el desarrollo de esta metodología se definieron acciones que ayuden al
usuario a transmitir sus necesidades computacionales al “experto” desarrollador, de tal
forma de lograr una definición consistente de las especificaciones que definan el
comportamiento del sistema.
El objetivo del desarrollo de los patrones fue describir la capacidad potencial que un
workflow podría tener durante el rendimiento del proceso de negocio. El rango de
patrones va desde los más simples a los más complejos y comprende los
comportamientos esperados en la mayoría de los modelos de procesos [White04].
Características indispensables
Implementaciones alternativas
Funciones opcionales
Dependencias entre características
Crear diccionario del dominio
Establecer terminología
Explorar alternativas
Interactuar con usuarios poco comunicativos
CAPÍTULO 3
3 Desarrollo
Este capítulo se divide en tres partes, llevándose a cabo el desarrollo para aportar una
solución al problema planteado:
Diagrama de estructura
y muestra donde se sitúa el dominio que se trata. En la figura 3-2 se muestra el diagrama
obtenido.
La tabla 3-1 define los niveles para el dominio, propuesto en la figura 3-2, en donde
se fundamenta una propuesta de metodología de elicitación de requerimientos:
Dominio Descripción
Diagrama de Contexto
Una vez que se identificaron, a través del diagrama anterior, los dominios con el que está
relacionado el dominio planteado de la elicitación de requerimientos, se realizó el
siguiente diagrama de contexto que se muestra en la figura 3-3, en donde se visualizan
los flujos de datos que existen de este dominio con los otros dominios con los que
interactúa.
Documentos de
Cliente Requerimientos
Experto de Software
Resultado
Información
Metodología de
Elicitación
Transmite
Solicita
Revisa
Proporciona
Estandar IEEE
830
Acciones
Dominio Descripción
Metodología de Procesa la información entrante a través de las acciones
Elicitación almacenadas que se utilizan como base para identificar los
requerimientos que se quieren definir, para posteriormente revisar
estos requerimientos utilizando el estándar IEEE 830, para así
elaborar un formato estándar del documento de requerimientos de
software que se obtiene como resultado final.
Información Es proveniente del cliente y del experto.
Acciones Almacenan las transacciones de los procesos de negocios que
ayudaran a detallar el requerimiento que se quiere expresar.
Estándar IEEE Define un formato y contenido de un documento de Especificación
830 de Requerimientos de Software.
Documento de Es el resultado del proceso que se lleva a cabo y que inicia con la
Requerimientos información entrante por parte del cliente y/o experto, en donde a
de Software través de las acciones (contempla las transacciones de los
procesos de negocios) que se encuentran almacenadas se utilizan
como base para identificar los requerimientos que se requieren
definir, para posteriormente revisar estos requerimientos utilizando
el estándar IEEE 830 y elaborar un formato estándar del documento
de requerimientos de software.
Este trabajo propone una metodología integral para obtener los requerimientos de
software a través del uso de modelos de referencia como dominio del conocimiento. En
contraste con la metodología de esta tesis, está enfocado a elicitar los requisitos para la
implantación de un sistema ERP.
Este trabajo presenta el desarrollo de una herramienta web móvil para la elicitación de
requerimiento utilizando como base la etnografía (Ethno-MRE), la que facilitará la
recopilación de datos por medio de diversas formas de asistencia en la PDA. La diferencia
que existe con la metodología de la tesis es que este trabajo no utiliza PN en la obtención
de requerimientos.
Análisis de características
El objetivo de este análisis, es conocer los elementos que interactúan entre las partes que
integran el dominio. Cabe resaltar que el diagrama que se presenta fue realizado a partir
del estudio que desarrolló [Bocan09].
Símbolo Significado
Característica obligatoria.
Característica alternativa.
Característica opcional.
Padre Producto.
Fuente Experto del dominio.
Docto. de requerimientos Obligatoria
software:
Definición: Documento que define de manera detalla los
requerimientos funcionales de sofware, bajo el estandar
IEEE 830.
Padre Producto.
Fuente Experto del dominio.
Proceso de negocio: Obligatoria
Definición: Identifica un conjunto de actividades para lograr un objetivo
(procesos operacionales) del negocio.
Padre Negocio.
Fuente Experto y/o Usuario del dominio.
Descripción Obligatoria
Definición: Se realiza una descripción del funcionamiento de la
transacción del negocio de forma general.
Padre Transacción de negocio.
Fuente Experto y/o Usuario del dominio.
Entrada: Obligatoria
Definición: Se describe la(s) entrada(s) de la transacción
Padre Transacción de negocio.
Fuente Usuario del dominio.
Salida: Obligatoria
Definición: Se describe la(s) salida(s) de la transacción, es decir, cual
es el evento resultante de la ejecución del proceso.
Padre Transacción de negocio.
Fuente Usuario del dominio.
Controles: Obligatoria
Definición: Son objetos que gobiernan o regulan cómo, cuándo y si
una actividad se ejecuta o no. Ejemplos: Normas, guías,
políticas, calendarios, presupuesto, reglas,
especificaciones, procedimientos.
Padre Transacción de negocio.
Fuente Experto y/o Usuario del dominio.
Roles: Obligatoria
Definición: Identifica que roles van a estar interactuando para poderse
llevar a cabo la transacción.
Padre Transacción de negocio.
Para conocer las transacciones fue necesario obtener un caso real de un proceso
de negocio, por lo que un Instituto de Investigación nos proporcionó un proceso para
facturación electrónica a fin de identificar los elementos que componen un proceso y
además saber todo lo que implica para que este proceso de negocio cumpla con el
objetivo para el cual fue desarrollado. El proceso que se menciona fue utilizado como
base para el desarrollo de la metodología que se plantea en este trabajo.
Los objetivos que debe cumplir el proceso de facturación electrónica son los
siguientes:
Para la descripción de este proceso se elaboró una definición textual de las transacciones
de negocio, basado en el modelo de transacciones de negocios (BTM por sus siglas en
inglés, Business Transactions Model) como se realiza en [BOCANEGRA08]. Cabe
mencionar que los diagramas de la figura 3-5 son una representación informal del
proceso.
Las operaciones del negocio hacen referencia a las actividades que se llevan a cabo
para realizar con éxito la transacción.
Elemento Descripción
Proceso de Negocio Crear facturas
Descripción El proceso de facturación consiste en elaborar y aprobar
las facturas que serán entregadas al cliente para sus
respectivos pagos.
Entradas Orden de facturación aprobada.
Salidas Factura impresa, solicitud de modificación.
Roles Depto. de ingresos, jefe departamento de ingresos,
tesorero.
Restricciones No se podrán crear facturas si no existe una orden de
facturación aprobada.
Documentos Factura electrónica.
Automática: Son todas aquellas tareas que realiza el sistema sin intervención
humana, como lo puede ser: enviar un email.
Manual: Es un tarea donde interviene un humano para su realización.
La siguiente tabla muestra un ejemplo de cada uno de los tipos de actividad que se
pueden encontrar dentro del proceso de negocio de facturación electrónica.
Las transacciones de negocio forman parte muy importante dentro del proceso del
negocio, debido a que invoca cada una de las operaciones que se ejecutan o que se
interrumpan de acuerdo a los criterios que utilizan cada una de las actividades que
conforman el proceso de negocio. Cuando las actividades se van ejecutando dentro del
proceso de negocio para la facturación electrónica, se identifican que no solo los criterios
de las actividades sean indispensables para llevar a cabo la transacción, sino que además
utilicen patrones de modelado de procesos de negocios para representar el flujo de
trabajo a seguir y lograr el objetivo del proceso de negocio.
Una vez realizado el análisis detallado del proceso para la facturación electrónica se
elaboraron una serie de formatos y guías que ayuden a detallar los criterios necesarios
para que una actividad se habilite para su ejecución y así mismo se complete de manera
exitosa.
Para comenzar fue necesario conocer las propiedades de los procesos de negocios,
para posteriormente, definir las acciones que ayudarán al cliente a identificar los
requerimientos de manera detallada. Como se presenta en el titulo de esta tesis se
considera como base el proceso de negocio para la facturación electrónica, para poder
identificar los elementos y patrones implícitos existentes que ayudarán a la elaboración de
formas y guías para recolectar información necesaria y mínima para que cada una de las
tareas se ejecuten de manera completa, para que cumpla con el objetivo para el cual fue
elaborado el proceso.
El proceso que se plantea en este trabajo, fue de ayuda para conocer un panorama
general acerca de todo lo que conlleva una transacción de negocio, de acuerdo a lo
identificado en el análisis FODA dentro del árbol de características obtenido.
Nombre Acciones
Actividad Para que una actividad se lleve a cabo es importante analizar si
está sujeta a alguna restricción. Para identificar algunas de estás es
necesario considerar las siguientes interrogantes:
– ¿Quién es el responsable de que se cumpla esa tarea?
– ¿Sólo hay un responsable o alguien más lo puede realizar?
– ¿Hay una regla y/o procedimiento existente para esta actividad?
– ¿Tipo de actividad (automática o manual)? En caso de ser
automática, qué restricciones deberán ejecutarse para que se
lleve a cabo.
– ¿Que la información o función que deberá realizarse para que
sea finalizada la actividad?
– ¿Cuál es la información o función mínima que deberá cumplirse
para que la actividad se realice?
Una vez teniendo la respuesta a las interrogantes anteriores llenar
el Formato de Actividades determinado.
Compuertas Estas acciones están definidas de acuerdo a los patrones de modelado
de decisión o que fueron encontrados en el proceso de facturación (Cada compuerta
condición es un patrón de modelamiento).
Secuencia Muestra la secuencia de como se van ejecutando las actividades,
en donde, para que una actividad sea habilitada deberá esperar
que la anterior actividad sea ejecutada. Es necesario considerar lo
siguiente:
– Mediante que criterio (se dé la información clave de la
actividad), se conoce que la actividad A ya se ejecutó
completamente,
– En el caso que no se haya completado la actividad A, debe
tenerse en cuenta que puede que no se podrá ejecutar la
actividad B y por ende no podrá continuar el proceso.
Revisar los formatos de las actividades que cumplan con los
criterios anteriores para la ejecución de las actividades en
secuencia.
Distribución Cuando encontramos un patrón de distribución en paralelo o en
en paralelo otras palabras encontramos que después de una actividad es
necesario que se habiliten dos o más actividades concurrentes,
para que el flujo del proceso de negocio siga su secuencia de
ejecución. Por lo que es importante responder las siguientes
interrogantes cuando la actividad que es antecedente para que se
habiliten dos o más actividades posteriores.
– ¿Qué variables son necesarias para que se habiliten las
actividades?
– ¿La actividad precedente a las actividades sólo debe ser
completada sin importar las variables o información que se
utilicen posteriormente?
– ¿Qué tan necesario es que las dos o más actividades que
se habiliten se ejecuten de manera concurrente?
Cuando se presente este caso, se requiere llenar el formato de
distribución en paralelo.
Sincronización Cuando tenemos este patrón es necesario conocer qué información
de las dos o más actividades se requiere para que la actividad se
habilite, por lo que se definen las siguientes interrogantes a
considerar.
– ¿Qué variables son necesarias para que se habilite la
actividad?
– ¿Las actividades precedentes a la actividad sólo deben ser
completadas o qué información se necesita de estás?
Cuando se identifique este tipo de patrón de sincronización se
requiere llenar el formato de Sincronización.
Selección Cuando encontramos un patrón de este tipo incluido en nuestro
exclusiva proceso es necesario escoger una de las ramas o alternativas que
(basada en deberá seguirse para continuar el flujo del proceso.
datos) Este tipo de decisiones se toman basándose en datos, se pueden
considerar las siguientes acciones para identificar qué decisión ha
de tomarse.
– Para que una actividad A pueda realizar la transición a la
actividad B o pueda realizar la transición a la actividad C o
pueda realizar la transición a la actividad N, entonces se
pueden encontrar con las siguientes interrogantes.
– ¿Qué criterio es necesario para que esta actividad A vaya de A
a B o de A a C, o de A a N?
– Es necesario evaluar el flujo de secuencia de esta actividad a
otra mediante estos criterios o en dado caso puede ser omitido.
Cuando se tenga este patrón de selección exclusiva se requiere
llenar el formato de selección exclusiva basada en datos.
Actividad:
Autor: Fecha:
Criterio de Éxito:
Criterio Alterno:
Criterio de
Fracaso:
La secuencia indica que una actividad será habilitada sólo hasta que la actividad
anterior sea ejecutada [BIZAGI11].
Cuando se identifique este patrón es importante tener bien detallado los formatos de
Actividad para que estas se ejecuten de manera exitosa, para que el flujo de secuencia
de estos siga su curso.
Actividad:
Autor: Fecha:
Actividades que
habilita:
Actividad que se
garantiza realizar:
Criterio de Éxito:
Criterio Alterno:
Criterio de
Fracaso:
Tabla 3-17 Guía del Formato de Actividades que se Realizan de Manera Concurrente o
en Distribución en Paralelo
El formato siguiente de la tabla 3-18 es aplicado a una Actividad que se realiza una
vez que se haya ejecutado de Manera Concurrente dos o más actividades.
Nombre de la
Actividad:
Autor: Fecha:
Actividades que
la habilitan:
Criterio de Éxito:
Criterio Alterno:
Criterio de
Fracaso:
Actividad:
Autor: Fecha:
Condición:
Estado 1:
…
Estado n:
Criterio de Éxito:
Criterio Alterno:
Criterio de
Fracaso:
proceso.
Estado 2: Describir el estado que deberá cumplirse para continuar con flujo del
proceso, es obligatorio que existan por lo menos dos estados para
poder evaluar la condición.
……….. …………
Estado n: Describir en qué caso no se realiza la actividad.
Criterios de Describir la información necesaria para que se cumpla la condición
Éxito para cualquiera de los estados definidos.
Criterios Cuál es la información mínima para satisfacer la condición para que se
alternos: cumpla al menos unos de los estados definidos.
La base que se tomó para el desarrollo de la metodología fue el proceso de negocio para
la facturación electrónica que fue proporcionado por el Instituto de Investigación, este
proceso debía de cumplir el estándar de BPMN, por lo cual fue indispensable verificar que
el proceso estuviera bien formado para que la metodología cumpliera en tener una base
formal para su desarrollo, esta formalización realizada se puede consultar en el Anexo A
del presente trabajo.
La siguiente figura muestra las etapas de la metodología y así como los pasos que
se llevarán a cabo para el desarrollo de cada una de ellas.
La metodología MERSUTPN se ha representado mediante BPMN como se muestra en la siguiente figura 3-11, en donde se
presenta a más detalle todas las actividades que están implícitas, a comparación de la representación de la metodología mostrada
en la figura 3-12. Consultar el anexo B para conocer la descripción de las actividades que integra la metodología representado con
BPMN.
A) Objetivos
B) Descripción
Ya que llevar a cabo un desarrollo de software sin haber definido una especificación
de requerimientos, en ocasiones provoca que el sistema final no cumpla con los objetivos
para lo cual fue desarrollado.
Objetivos Documento de
•Entrevistas clientes y •Actores Requerimientos
analistas(expertos) •Operaciones
•Analisis del •Acciones
panorama •Controles
•Entrada
•Salida
Panorama Proceso de negocio
La figura 3-13 muestra las actividades que integran la etapa de obtención de requerimientos
Así mismo en la figura 3-14 se muestra la representación con BPMN de esta etapa, mediante un subproceso que forma parte
del proceso de la metodología definida anteriormente.
C) Actividades
2.- Objetivos
Una vez que se tenga bien definido el panorama acerca del sistema, es necesario definir
cuáles serán los objetivos que deberá cumplir el sistema que se pretende desarrollar.
Para construir los objetivos deben considerarse las siguientes interrogantes (los que
sean necesarios y en el orden más conveniente): Quién, qué, cómo, cuándo y
dónde [Caballero00].
Objetivo:
Autor: Fecha:
Descripción:
Importancia:
Comentarios
Adicionales:
Para el caso que no todos tengan un entendimiento claro del sistema que requieren
desarrollar, se tendrá que detallar aun más la descripción del panorama del proyecto. Ya
que es necesario que todos tengan un mismo entendimiento, para facilitar así las
próximas sesiones de entrevistas para la elaboración del proceso y posterior a la
obtención de requerimientos, que se realicen con el cliente experto, por eso es muy
importante que se entienda en el mismo sentido lo que se desea desarrollar.
Después de haber realizado los dos pasos anteriores de esta etapa de obtención de
requerimientos, es necesario que el cliente, experto o cliente/experto definan el proceso
de negocio o el conjunto de actividades que se deberán ejecutar para el cumplimento de
los objetivos planteados en el paso anterior.
Para realizar el proceso hay que tener en cuenta que se deben identificar los
siguientes elementos, de acuerdo al BPMN [OMG08].
a) Operaciones (el conjunto de actividades a realizarse).
b) Entrada
c) Salida
d) Actores
e) Controles
El siguiente diagrama representa las actividades que deberá realizarse para poder
ejecutar el proceso de negocio de la metodología.
Transacción de Negocio.
Para identificar las actividades que conforman las operaciones del negocio es
necesario tener claro la transacción de negocio que se necesita. Para ello utilizaremos
como primer paso el siguiente formato de transacción de negocio y la guía de llenado del
mismo
La guía y el formato de transacción de negocio serán utilizados para describir de
forma textual y con mayor nivel de abstracción la transacción de negocio de acuerdo a
como lo define [Bocan08].
Transacción de
Negocio:
Autor: Fecha:
Descripción:
Entradas:
Salidas:
Roles:
Restricciones:
Documentos
Actividades
(operaciones del
negocio):
Comentarios:
Una vez definida de manera textual y general los elementos que son necesario para
que se ejecute el proceso de negocio, es necesario empezar con la definición general de
los roles que intervienen en la transacción de negocio (2.3).
Roles
Los roles representan a los actores que estarán involucrados en la ejecución del la
transacción de negocio.
Rol:
Autor: Fecha:
Persona Actual a
Cargo:
Descripción:
Comentarios:
La información que se recopile de los roles será también de utilidad para conocer
quiénes son las personas con las cuales realizar entrevistas posteriores para la definición
de los requerimientos detallados.
Una vez habiendo definido de manera textual la transacción de negocio, así como
de los roles que lo integran, se prosigue a realizar el modelo del proceso utilizando el
diagrama de procesos de negocios de la BPMN [OMG08]. La tabla 3-28 muestra los
elementos básicos para representar la transacción o proceso de negocio.
Tabla 3-28 Guía Básica para la representación del Proceso de Negocio con BPMN
Así también para tener un definición más detallada acerca de las actividades que se
representan en el proceso de negocio es necesario el siguiente formato. En donde para el
llenado de las actividades se puede utilizar el formato 1 o 2 de las tablas 3-12 y 3-30; para
el primer caso deberá llenar la forma por cada una de las actividades y para la segunda
dentro de la misma forma irán los datos de todas las actividades identificadas en el
proceso.
Actividad:
Proceso de
Negocio:
Autor: Fecha:
Tipo:
Rol:
Precondición:
Poscondición:
Autor: Fecha:
Proceso de Negocio:
Actividad:
Proceso de
Subproceso:
Negocio:
Autor: Fecha:
Tipo:
Rol:
Precondición:
Poscondición:
Autor: Fecha:
Proceso de
Subproceso:
Negocio:
Actividad Tipo Descripción Rol Precondición Poscondición
A) Objetivos
B) Descripción
Documento de Requerimientos
•Analizar los Requerimientos Detallados
•Detectar problemas en los
requerimientos.
•Entrevista con Clientes •Detallar requerimientos
•Generar alternativas
•Aplicar alternativa seleccionada
Identificación de
Problemas/Alternativas de Solución
C) Actividades
En esta actividad es donde se verifica si los requerimientos que fueron identificados son
los adecuados o es necesario refinarlos. Aquí es donde se descubren los problemas con
los requerimientos del sistema, los cuales han sido identificados hasta el momento y se
buscan alternativas de solución.
Esta actividad no solo depende de que tan claros estén los requerimientos, si no
también depende del buen juicio y experiencia que tenga el experto en cuando a la
obtención y definición de los requerimientos. El experto deberá tener gran experiencia en
analizar la información con cada uno de los participantes para verificar que los
requerimientos sean claros no solamente para las personas usuarias expertas, sino
también para el cliente.
Para esta actividad de análisis se elaboró el siguiente formato, con fin de llevar un
control sobre los requerimientos en donde se detectaron problemas:
Requerimiento:
Autor: Fecha:
Alternativas:
Solución:
Esta actividad puede ser considerada como opcional, ya que no necesariamente tendría
que realizarse, todo dependerá de la actividad anterior (Identificación de problemas y
alternativas de solución) de si se realiza o no, o dependerá del criterio de los participantes
si se requiere detallar más los requerimientos.
A) Objetivos
B) Descripción
Para esta etapa sólo se realizará una actividad como se muestra en la siguiente
figura:
•Elaborar Documento de
Requerimientos con el
estándar IEEE 830
Documento de
Especificación de
requerimientos
C) Actividades
1. Introducción
o 1.1. Propósito
o 1.2 Alcance
o 1.3 Definiciones, acrónimos y abreviaturas
o 1.4 Referencias
o 1.5 Revisiones
2. Descripción General
o 2.1 Perspectiva del producto
o 2.2 Funciones del producto
o 2.3 Características de los usuarios
o 2.4 Restricciones
o 2.5 Dependencias
3. Especificaciones de requerimientos
3.1 Requisitos funcionales
– Requisito 1
– Requisito 2
– …..
– Requisito n
Tabla 3-37 Guía de Llenado del Documento de Especificación de Requerimientos de
Software
A) Objetivos:
B) Descripción:
Para llevar a cabo esta etapa de validación de los requerimientos y ultima, deberán ser
completadas las etapas anteriores, de manera que se tenga elaborado el documento de
especificación de requerimientos.
Requerimientos entendibles
•Documento de •Documento de
Requerimientos Requerimientos
•Métrica de correctes •Documento de •Métrica de ambigüedad
Requerimientos
•Métrica de entendible
Requerimientos No
Requerimientos correctos
ambiguos
A la vez se asume que en todos los casos nr son todos los requerimientos,
nr=requerimientos funcionales (nf) + requerimientos no funcionales (nnf), pero como en el
presente trabajo de tesis solo se limita a los requerimientos funcionales, entonces nr = nf
+ 0.
C) Actividades
Una SRS es no ambigua si y sólo si cada requerimiento sólo tiene una interpretación
[IEEE-STD-830-98].
Q1=nui/nr
Donde nui es el número de requerimientos para los cuales todos los revisores dieron
la misma interpretación [DAV93].
Una SRS es correcta si y sólo si cada requerimiento representa algo requerido del
sistema [Dav93], cada requerimiento en la SRS contribuye a la satisfacción de alguna
necesidad.
La correctes se puede medir para cada requerimiento pero sería una especie de
revisión previa, haciendo que el resultado siempre fuese correcto, por lo tanto se aplica
una métrica más práctica [Alb07]:
Q3 = nC/(nC+nNV) = nC/nr
Una SRS es entendible si todos los lectores de la SRS pueden comprender fácilmente el
significado de todos los requerimientos con una mínima explicación [DAV93].
Q4 = nur/nr
Donde nur es el número de requerimientos para los cuales todos los revisores
entendieron [DAV93].
En el capítulo 4 se presentan los casos de prueba con los cuales fue experimentada
la metodología presentada en esta tesis.
CAPÍTULO 4
4 Pruebas
La metodología planteada en este trabajo de tesis se probó aplicando MERSUTPN para la
obtención del SRS que requiere el Instituto de Investigación. Las pruebas realizadas y los
resultados obtenidos se definen dentro de este capítulo.
El intención de las pruebas realizadas fue comprobar que la metodología pueda ser
utilizada para elaborar un documento de especificación de requerimientos de software de
acuerdo al Estándar IEEE 830 y que el resultado de ésta sea un documento de
requerimientos que cumpla con las características de ser no ambiguos, correctos y
entendibles.
No ambiguo,
Correcto,
Entendible.
Nota: Aunque para el caso CP_02 para poder probar que cumple con las
características de las métricas que se definen con anterioridad, se le aplicará las métricas
que se describen en la cuarta etapa de la metodología MERSUTPN, a fin de de evaluar la
calidad de los requerimientos obtenidos y determinar a través del análisis qué porcentajes
de calidad obtuvo este caso de prueba con respecto al CP_01.
Las pruebas se delimitaron a dos casos, con el propósito de extraer datos reales para un
sistema que requiere un instituto de investigación, a fin de obtener los requerimientos de
software para el desarrollo de un sistema que genere facturas de manera electrónica.
Antes de describir los casos de pruebas hay que tener claro el concepto de
facturación electrónica como sigue: La factura electrónica en México es la representación
digital de un tipo de Comprobante Fiscal Digital (CFD) con validez fiscal, que utiliza los
estándares definidos por el Anexo 20 en cuanto a forma y contenido, garantizando la
integridad, autenticidad y no repudio del documento [SAT2011]:
Antes dar inicio con la descripción del CP_01, la siguiente figura muestra las etapas de la
metodología que se probó, así como las actividades que contempla cada una de estas.
B.- Objetivos
Objetivo: Expedir facturas para obtener ingresos al realizar el cobro a los clientes.
Importancia: Alta
Comentarios
Adicionales:
Importancia: Alta
Esta actividad que forma parte de la primera etapa de la metodología, no se llevo a cabo
en su totalidad, ya que el proceso de negocio para la facturación electrónica fue
proporcionado por el Instituto de Investigación a fin de utilizarla como base para el
desarrollo de la metodología de este trabajo de tesis. Lo que sí se realizó en esta
actividad fue detallar aún más el proceso y posteriormente elaborar el modelo del proceso
de negocio utilizando BizAgi Process Model, que es una herramienta de modelado bajo el
A continuación se inicia con una breve descripción del modelo a manera de conocer
algunas definiciones y abreviaturas que serán utilizadas en el modelo.
Rol: Asistente
Comentarios:
Comentarios:
Comentarios:
Revisar y validar la orden Automática El jefe asistente compara la orden de Jefe asistente OF en estado en OF revisada
de facturación facturación con la documentación soporte. revisión
Cancelar OF Automática Si el jefe asistente determina que la orden de Jefe asistente OF revisada. OF cancelada
facturación no es válida cancela la orden
Solicitar modificación Automática Si el jefe asistente detecta algún error en la OF, Jefe asistente Orden de OF en estado
solicita a su asistente la corrija. facturación modificación
revisada.
Modificar OF Automática El asistente recibe un correo con las Asistente OF en estado OF modificada
Enviar factura aprobación Automática Una vez registrada la factura se envía al Jefe Departamento Factura creada, Factura en
departamento ingresos para su revisión ingresos estado en
Factura revisión
modificada
Recibe notificación de Manual El departamento ingresos recibe la notificación Jefe Factura Notificación
aprobación pendiente de aprobación pendiente. departamento generada y recibida
de ingresos enviada a
aprobación
Revisar y validar factura Automática El jefe del departamento de ingresos revisa la Jefe Factura en Factura
factura y la documentación soporte. departamento estado En revisada
ingresos revisión
Cancelar factura Automática Si el jefe del departamento de ingresos Jefe Factura revisada. Factura
determina que la factura no es válida puede departamento cancelada
cancelarla. ingresos
Solicitar modificación de Automática Si el jefe depto. Ingresos detecta algún error en Jefe Factura revisada. Factura en
factura la factura, solicita al auxiliar de facturación que departamento estado
la corrija. ingresos modificación
Modificar factura Automática El auxiliar de facturación recibe un correo con Departamento Factura en Factura
las modificaciones que le solicita su jefe ingresos estado modificada
asistente y realiza las modificaciones a la modificación
factura.
Aprobar factura Automática Si el jefe departamento ingresos no detecta Jefe Factura revisada. Factura
errores, aprueba la OF. departamento aprobada
ingresos
Generar registro contable Automática Se crean las entradas contables en el diario del Departamento Factura Registro
sistema de ingresos. ingresos aprobada contable
generado
Generar factura Automática Una vez aprobada la factura y generado el Departamento Factura Factura
electrónica registro contable, se genera la factura. ingresos aprobada generada
Cancelar registro Automática Se cancela el registro contable cuando existen Departamento Registro Registro
contable errores. ingresos contable en contable
revisión cancelado
Corregir información Automática Se corrige los errores encontrados en el registro. Departamento Registro Registro
Una vez que se ha definido y detallado el modelo del proceso de negocio para la
facturación electrónica, se procedió implementar los formatos y guías diseñados para el
proceso de negocio, y es como tendremos nuestro primer documento preliminar de
requerimientos.
Recordemos que los formatos se aplican para cada una de las actividades y
patrones detectados en el proceso de negocio.
Actividad: Cancelar OF
Criterio de
No Aplica ya que proviene de una actividad de selección exclusiva.
Fracaso:
Criterio de
No Aplica ya que proviene de una actividad de selección exclusiva.
Fracaso:
Actividad: Modificar OF
Criterio Alterno: No Aplica ya que debe realizar la modificaciones que fue solicitada..
Aprobar OF
Actividad:
Criterio de
No Aplica ya que proviene de una actividad de selección exclusiva.
Fracaso:
Criterio de
Si no se recibe documentación esta actividad no puede ser realizada.
Fracaso:
Reporte de actividades
La información esencial que deberá contener son:
Datos del cliente (Identificador, nombre, dirección)
Datos del proyecto (Identificador, nombre, subprograma)
Del contrato de ingresos (número de contrato interno y externo,
fecha)
Si la información cumple con lo expuesto en la condición, se lleva a cabo la
Estado 1:
actividad de Generar factura y completar información.
Si la información es incorrecta con lo que se requiere contenga la orden de
Estado 2: facturación, se lleva a cabo la actividad de Solicitar modificación de la orden
de facturación.
Si la información no cumple con lo que necesita y se determina que la orden
Estado 3: de facturación no es válida, se lleva a cabo la actividad de Cancelar Orden
de facturación.
Para que esta actividad sea exitosa deberá de cumplir lo descrito en el
Criterio de Éxito:
estado 1.
Criterio de Si no existe la información requerida de las actividades de seleccionar línea
Fracaso: del programa de pagos y el de crear ordenes de facturación.
Criterio de
Si no existe notificación con la factura no se realiza la actividad.
Fracaso:
Criterio de
No Aplica ya que proviene de una actividad de selección exclusiva.
Fracaso:
Criterio de
No Aplica ya que proviene de una actividad de selección exclusiva.
Fracaso:
Criterio de
Si el registro contable no está cancelado no se realiza la actividad.
Fracaso:
A través de entrevistas y en conjunto con los clientes dentro de esta etapa, se realizó un
análisis general de los requerimientos obtenidos en la primera etapa, aplicando la
metodología de este trabajo de tesis, al fin de identificar anomalías o problemas en los
requerimientos y dar solución a los problemas encontrados.
Para definir los casos de uso, a partir del proceso de negocio, se utilizó en el trabajo
Patrones para la Extracción de Casos de Uso [Berrocal09]. En este artículo se propone
una serie de patrones que permiten identificar los casos de uso del sistema a partir de
los procesos de negocio. A continuación sólo se define la estructura del contenido el
documento SRS obtenido:
Para que una especificación de requerimientos tenga calidad y se considere correcta, ésta
debe contribuir al éxito del proyecto, a una creación rentable y a resolver las necesidades
reales del usuario [DAV93].
Métricas: CP_01
No ambigüedad 0.86363636
Entendibilidad 0.81818182
Correctitud 0.86363636
Métricas: CP_02
No ambigüedad 86.9565217
Entendibilidad 86.9565217
Correctitud 95.6521739
Resultados
1.0000
0.9500
0.9000
0.8500
0.8000
0.7500
0.7000
No Ambigüedad
Correctitud
Entendibilidad
CP_01 CP_02
Los resultados obtenidos de las pruebas son producto de un estudio basado en las
transacciones y los patrones de modelado, obteniendo de estas una descripción detallada
de cada una de las actividades, así como de las condiciones que son requeridas para
estas se realicen y pueda concretarse el objetivo del proceso de negocio con cada una de
las transacciones o negociaciones que se llevan a cabo con los diferentes roles
participantes, los cuales permitieron definir la metodología que fue aplicada a un caso
real, a través del uso de guías y formatos dentro de las cuatro etapas de integran la
metodología.
Dentro de este capítulo se presentaron los casos de prueba realizados, así como los
resultados obtenidos de aplicar la metodología de este trabajo de tesis. Los resultados
obtenidos realza la importancia de haber aplicado las pruebas sobre un escenario real, ya
que se determina que es necesario seguir realizando pruebas para tener una mejor
evaluación de la metodología desarrollada, debido a que el resultado del caso de prueba
con la metodología del Instituto de Investigación fue mejor de la obtenida con la
metodología desarrollada en este trabajo de tesis.
CAPÍTULO 5
5 Conclusiones
5.1 Conclusiones Generales
Por otra parte aunque podemos apreciar en las pruebas, que los resultados más
satisfactorios se obtuvieron con la metodología del Instituto de Investigación, esto es
debido a que si comparamos la forma en que se desarrolló cada una de estas
metodologías, vemos que la presentada en este trabajo fue a partir de la investigación y
análisis acerca de los procesos de negocios de acuerdo a la literatura; en cambio la
metodología del instituto de investigación fue desarrollada en base a la experiencia de
años en el ámbito de los procesos de negocios y al desarrollo de proyectos de software,
así como el tiempo y experiencia de trabajar con la metodología desarrollada por ellos;
ambas metodologías tienen en común los procesos de negocios para la obtención de un
documento de especificación de requerimientos de software.
como base. Es importante mencionar que el contar con un proceso de negocio real es
beneficioso, ya que el contar con procesos desarrollados de manera industrial permite
revisar más directamente las características que deben contener tales procesos y como a
partir de estos pueden obtenerse requerimientos de software de manera detallada.
Referencias
[ALBO07] Albores Villatoro, Luz Maria. “Definición e Implementación de un
Perfil UML para la Adquisición de Requerimientos Funcionales
Centrados en el Usuario”.Tesís de Maestría en Ciencias de la
Computación, CENIDET. Cuernavaca, Morelos, 2007.
[GAO10] Gao, Juntao Yuan, Man Huang, Gan Wang, Zhiyao. “ERP software
requirement elicitation with reference models ”. IEEE, 2010,
ISBN: 978-1-4244-7324-3.
[JIM03] Jiménez Q., Claudia, Lorena Farías V., Francisco Pinto, y Liliana
Neriz J. “Análisis de Modelos de Procesos de Negocios en Relación
a la Dimensión Informática”. Revista Ingeniería Informática, No. 9,
2003, ISSN: 0717–4195.
[LEON09] León L., Oyuky María, y Julio Armando Asato E. “La Importancia del
Modelado de Procesos de Negocio como Herramienta para la
Mejora e Innovación.” Revista Panorama Administrativo, nº No.7.
2009.
[REMO09] Remo C. de Boer, Hans Van Vliet. “Writing and Reading Software
Documentation: How Process may Affect Understanding”. IEEE,
2009, ISBN: 978-1-4244-3712-2.
Anexos
Anexo A: Formalización del Proceso de Negocio para la Facturación
Electrónica
Para poder utilizar como base el proceso de negocio que plantea este trabajo de tesis fue
necesario demostrarlo de manera semántica formal, de tal manera que la metodología
para la elicitación de requerimientos tenga una base formal, para esto se utilizo el trabajo
de [Ouyang08], que menciona la Semántica Formal de un proceso de BPMN.
(departamento de ingresos,
jefe departamento de
ingresos, tesorero)
Corregir información Actividad a25
Revisar registro contable Actividad a26
(departamento de ingresos)
Revisar registro Actividad a27
contable(jefe departamento
de ingresos)
Revisar registro contable Actividad a28
(tesorero)
Cerrar factura (departamento Actividad a29
de ingresos, tesorero)
Orden de facturación Compuerta de decisión XOR g1
correcta? (jefe de asistente) basada en datos
Orden de facturación Compuerta de decisión XOR g2
correcta? (departamento de basada en datos
ingreso)
Registro contable Compuerta de decisión XOR g3
(departamento de ingreso) basada en datos
Factura correcta Compuerta de decisión XOR g4
basada en datos
Registro contable (jefe Compuerta de decisión XOR g5
departamento de ingreso) basada en datos
Registro contable (tesorero) Compuerta de decisión XOR g6
basada en datos
F ⊆ OxO se obtiene {(es1, a1), (a1, a2), (a2, a3), (a3, a4), (a4, g1), (g1, a6), (g1, a5), (g1, a8),
(a6, a7), (a5, ef1), (a8, a9), (a9, ei2), (ei1, a7), (ei2, a10), (a10, a11), (a11, g2), (g2, a13), (g2, a13), (g2,
a12), (g2, a14), (a13, ei1), (a14, a15), (a15, ei3), (ei4, a15), (ei3, a16), (a16, a17), (a17, g4), (g4, a19), (g4,
a19), (g4, a18), (g4, a21), (a18, ef3), (a19, ei4), (a21, ei5), (ei5, a23), (a23, a22), (a22, a26), (a26, g3), (g3,
ei6), (ei6, a24), (a24, a25), (a25, a23), (g3, a27), (a27, g5), (g5, ei6), (g5, ei7), (ei7, a29), (a29, ef4), (g5,
a28), (a28, g6), (g6, ei6), (g6, ei7), (g6, ef5)}
Para Cond: F ∩ Gx x O → C se obtiene: {(G1, A6), (G1, A5), (G1, A8), (G2, A12), (G2, A14),
(G2, A13), (G3, A26), (G3, A27), (G3, EI6), (G4, A21), (G4, A19), (G4, A18), (G5, A28), (G5, EI6), (G5, EI7),
(G6, A23), (G6, EF5), (G6, EI8), (G6, EI7)}
– Q = {P}
– 𝑆△ = ∅
– map: 𝑆 △ → 𝑄 se asume que no existe una función inyectiva ya que es necesario
tener al menos un subproceso dentro del proceso de negocio para que se de
esta propiedad.
elementos de acuerdo el BPMN, los subprocesos no forman parte dentro del proceso
planteado en este trabajo de tesis.
Revisar que el Manual Los analistas revisan que estén registrados Analista Documento de Documento de
docto. de todos los requerimientos de acuerdo al Especificación de Especificación de
especificación estándar. requerimientos requerimientos
de revisado
requerimientos
Tabla Anexo B-2 Descripción del Subproceso Proceso de Negocios de la Etapa de Elicitación de la Metodología
Actividad Tipo Descripción de la actividad Rol Precondiciones Postcondiciones
Analizar la Manual El analista con ayuda de los participantes Analista y Panorama general y Información analizada
información realizan un análisis de actividad a de Cliente objetivos definidos
conjunto de actividades que se llevaran
para resolver el problema y cumplir los
objetivos definidos.
Obtener Manual En base al objetivo se determina la Analista y Información analizada Descripción de la
Transacción de transacción de manera textual de lo que se Cliente transacción o
Negocio necesita para llevar a cabo el proceso de transacciones de
negocio. negocio.
Definir Roles Manual Realizar una descripción detallada de los Analista y Transacción de Roles especificados
roles que intervienen para que el proceso Cliente negocio definida
se lleve a cabo.
Elaborar Manual El analista elabora el proceso de negocio y Analista y Transacción de Diagrama del proceso
Diagrama BPMN con ayuda del cliente determinan el flujo en Cliente negocio definida de negocio elaborado
que las actividades incluidas en el proceso
deberán desarrollarse.
Describir Manual Los participantes en colaboración realizan Analista y Diagrama del proceso Actividades detalladas
Actividades una descripción de las actividades, Cliente de negocio elaborado
incluyendo en cada una el rol que es
reponsable.
Revisar proceso Manual El analista presenta el proceso y la Analista y Diagrama del proceso Proceso de negocio
descripción de las actividades, para que el Cliente de negocio elaborado aceptado.
cliente revise que está conforme a lo y descripción de
realizado. actividades
Seleccionar Manual Seleccionar las alternativas de solución en Analista Lista de alternativas Alternativas
Alternativas para los problemas en los requerimientos. de solución a los seleccionadas
problemas
Implementar Manual Aplicar alternativas para solucionar los Analista Alternativas Docto. de
alternativas problemas. seleccionadas requerimientos sin
para solución problemas.
Revisar que no Manual Se vuelve a realizar una revisión para Analista Docto. de Docto. de
existan verificar que no existan más problemas en requerimientos sin requerimientos sin
problemas los requerimientos. problemas. problemas revisados
Detallar docto. Manual Es se considera necesario se realiza una Analista Docto. de Docto. de
de req. descripción detallada para el documento de requerimientos sin requerimientos
requerimientos. problemas revisados detallados
Tabla Anexo B-6 Descripción del Subproceso Etapa de Especificación de Requerimientos de la Metodología
Actividad Tipo Descripción de la actividad Rol Precondiciones Postcondiciones
Analizar Manual Se realiza un análisis del documento de Analista Documento Documento analizado
documento de requerimientos para poder ir verificando y preliminar de
requerimientos considerando como se va a pasar al requerimientos y
estándar IEEE 830. etapa de análisis
completada.
Elaborar el Manual Se elabora el documento de requerimientos Analista Documento analizado Documento de
docto. de req. de acuerdo al estándar IEEE 830. Requerimientos bajo
con el estándar el estándar IEEE 830
IEEE 830.
Tabla Anexo B-7 Descripción del Subproceso Etapa de Validación de Requerimientos de la Metodología
Actividad Tipo Descripción de la actividad Rol Precondiciones Postcondiciones
Analizar docto. Manual Se revisa el documento para aplicar las Analista Documento de Iniciar las actividades
de métricas en los requerimientos registrados. especificación de de implementación de
especificación requerimientos. las métricas.
de
requerimientos
Aplicar métrica Manual Aplica la métrica de correctitud en los Analista Documento de Resultados de
de correctes requerimientos. especificación de correctitud de los
requerimientos. requerimientos
Aplicar métrica Manual Aplica la métrica de entendibilidad en los Analista Documento de Resultados de
de requerimientos. especificación de entendibilidad de los
entendimiento requerimientos. requerimientos
Aplicar métrica Manual Aplica la métrica de no ambigüedad en los Analista Documento de Resultados de no
de No requerimientos. especificación de ambigüedad de los
ambigüedad requerimientos. requerimientos
Revisar que Manual Realiza una revisión que todas las métricas Analista Documento de Todos los
todos los req. fueron implementadas. especificación de requerimientos
fueron requerimientos. aceptados.
validados
Elemento Descripción
A Representa los elementos que integra BPMN definidos en la tabla.
B Seleccionar para crear un nuevo documento o nuevo diagrama para
representar el proceso de negocio.
C Seleccionar validar una vez concluido el diagrama. Nota: Validar le
ayudará a verificar que el diagrama este bien elaborado de acuerdo
BPMN, más aún cuando apenas se inicia con BPMN.
D Seleccionar para guardar la imagen (proporcione los datos que
necesite)
Registrar información
Aprobar Solicitud
Cancelar Solicitud
Notificar Aceptación