+ All Categories
Home > Documents > PARCIAL #1. Análisis de sistemas · PDF fileDescripción de artefactos que apoyan...

PARCIAL #1. Análisis de sistemas · PDF fileDescripción de artefactos que apoyan...

Date post: 11-Feb-2018
Category:
Upload: lamngoc
View: 217 times
Download: 3 times
Share this document with a friend
42
PARCIAL #1. Análisis de sistemas Presentado por: Camilo Esteban Rodriguez Forero. Andres Mauricio Clavijo. Jhon Alexander Chacon Torres. Brayan Andrés Valero Pinzón. Presentado a: Juan Carlos Guevara Bolaños. Universidad Distrital Francisco José de Caldas. Sistematización de datos. Facultad Tecnológica. Bogotá D.C. Colombia,viernes 1 de abril de 2016.
Transcript

PARCIAL #1.

Análisis de sistemas

Presentado por:

Camilo Esteban Rodriguez Forero.

Andres Mauricio Clavijo.

Jhon Alexander Chacon Torres.

Brayan Andrés Valero Pinzón.

Presentado a:

Juan Carlos Guevara Bolaños.

Universidad Distrital Francisco José de Caldas.

Sistematización de datos.

Facultad Tecnológica.

Bogotá D.C. Colombia,viernes 1 de abril de 2016.

1. Describa los temas que abarca la ingeniería de software. Este punto

consiste en realizar los siguientes puntos:

1.1. Definición de la ingeniería de software

“La aplicación de un enfoque sistemático (ordenado), disciplinado y

cuantificable al desarrollo, operación y mantenimiento de software, esto es, la

aplicación de la ingeniería en el área del software.” Definición de IEEE.

Es aquella aplicación práctica del conocimiento científico en el diseño y

construcción de programas de computadora y la documentación asociada

requerida para desarrollar, su trabajo es promover la creatividad, el desarrollo

y la integración, compartir y aplicar los avances en las tecnologías de la

información, electrónica y ciencias en general para beneficio de la humanidad

y de los mismos profesionales.

1.2. Mapa conceptual de los temas que conforman el cuerpo de

conocimiento de la ingeniería de software

Imágen No.01 Mapa conceptual del cuerpo de conocimiento de la

ingeniería de Software. SWEBOK.

Imágen No.02 Mapa conceptual del cuerpo de conocimiento de la

ingeniería de software. SWEBOK.

Imágen No.03 Mapa conceptual del cuerpo del conocimiento de la

ingeniería de software. SWEBOK

1.3 Describir de manera general que abarca cada uno de los temas

Requisitos: Se refiere a la elicitación, análisis, especificación y

validación de los requisitos software.

Diseño: El proceso de diseño de software consiste en analizar los

requisitos con el fin de producir una descripción de la estructura

interna del software que sirva como base para su construcción.

Diseño: El proceso de diseño de software consiste en analizar los

requisitos con el fin de producir una descripción de la estructura

interna del software que sirva como base para su construcción.

Construcción: Se refiere a la creación detallada de software mediante

la combinación de codificación, verificación, pruebas unitarias, pruebas

de integración y depuración.

Pruebas: Sirve para evaluar la calidad de un producto software o para

mejorarlo, mediante la identificación de sus defectos y problemas.

Mantenimiento: Todo producto software, después de su despliegue o

entrega, “está destinado” a cambiar o evolucionar.

Gestión de la configuración: Es la disciplina de identificar la

configuración de un sistema en distintos momentos en el tiempo con el

fin de controlar sistemáticamente los cambios y mantener la integridad

y trazabilidad.

Gestión de la ingeniería: Consiste en aplicar actividades de gestión

(planificar, coordinar, medir, supervisar, controlar e informar) para

asegurar que el desarrollo y mantenimiento de software se realizan de

forma sistemática, disciplinada y cuantificable.

Procesos de ingeniería: Se refiere a la definición, implementación,

evaluación, medición, gestión, cambio y mejora de los propios

procesos del ciclo de vida del software.

Herramientas y métodos: Las herramientas (basadas en

computador) ayudan a realizar los procesos del ciclo de vida del

software. Los métodos imponen una manera o estructura para realizar

las actividades de ingeniería del software, de forma que el trabajo sea

más sistemático y más exitoso.

Calidad: En este área se abordan las técnicas estáticas para alcanzar

la calidad del software.

1.4 Describa de manera general en que se aplican cada uno de los

temas en el desarrollo de un proyecto de software.

Cada tema se aplica durante el proceso de la planificación de los proyectos

de software debido a que cada uno de los elementos conforma un

subconjunto de características que permiten seguir con la siguiente etapa en

la planeación, en este caso alguno de los que se encuentran en las

imágenes. Por otra parte cada elemento carece de información que es

obligatoria para poder continuar con otro, esto hace énfasis a que en un caso

hipotético de que no se haya realizado cierto punto de la planeación este

mismo generará problemas con el siguiente, tal es el caso de realizar un

proyecto sin hacer primero el estudio de requerimientos del software.

2. Describa el proceso de desarrollo de software para un proyecto de software.

Este punto consiste en realizar los siguientes puntos:

1) Definición de procesos de desarrollo de software

Requerimientos

Diseño

Implementación

Verificación

Mantenimiento

2) Descripción de las etapas de un proyecto de software

Análisis y requerimientos:Extraer los requisitos de un producto de software

es la primera etapa para crearlo. Mientras que los clientes piensan que ellos

saben lo que el software tiene que hacer, se requiere de habilidad y

experiencia en la ingeniería de software para reconocer requisitos

incompletos, ambiguos o contradictorios.

Diseño: Se refiere a determinar cómo funcionará de forma general sin entrar

en detalles. Consiste en incorporar consideraciones de la implementación

tecnológica, como el hardware, la red, etc. Se definen los Casos de Uso para

cubrir las funciones que realizará el sistema, y se transforman las entidades

definidas en el análisis de requisitos en clases de diseño, obteniendo un

modelo cercano a la programación orientada a objetos.

Desarrollo: Reducir un diseño a código puede ser la parte más obvia del

trabajo de ingeniería de software, pero no es necesariamente la porción más

larga. La complejidad y la duración de esta etapa está íntimamente ligada al o

a los lenguajes de programación utilizados.

Pruebas: Consiste en comprobar que el software realice correctamente las

tareas indicadas en la especificación. Una técnica de prueba es probar por

separado cada módulo del software, y luego probarlo de forma integral,para

así llegar al objetivo.

Documentación: Todo lo concerniente a la documentación del propio

desarrollo del software y de la gestión del proyecto, pasando por

modelaciones (UML), diagramas, pruebas, manuales de usuario, manuales

técnicos, etc; todo con el propósito de eventuales correcciones, usabilidad,

mantenimiento futuro y ampliaciones al sistema.

Mantenimiento: Mantener y mejorar el software para enfrentar errores

descubiertos y nuevos requisitos. Esto puede llevar más tiempo incluso que

el desarrollo inicial del software. Alrededor de 2/3 de toda la ingeniería de

software tiene que ver con dar mantenimiento. Una pequeña parte de este

trabajo consiste en arreglar errores, o bugs. La mayor parte consiste en

extender el sistema para hacer nuevas cosas.

3) Realizar un mapa conceptual sobre los diferentes artefactos que se

pueden realizar para cada etapa del proceso de software

3. Realizar un comparación entre dos metodologías de desarrollo de software

(Scrum, XP, RUP, Métrica 3, entre otras). Este punto comprende por cada

metodología: 1) Nombre de la metodología, 2) Descripción de actividades, 3)

Descripción de artefactos que apoyan el desarrollo de cada actividad y 4) Un

ejemplo de aplicación.

Nombre Metodologia RUP SCRUM

Descripción de

actividades

­ Modelado del negocio

­ Requisitos

­ Análisis/Diseño

­ Implementación

­ Pruebas

­ Despliegue

­ Gestión de Cambios y

configuración

­ Gestión del proyecto

­ El sprint

­ Reunión de planificación

de Sprint

­ Objetivo del sprint

­ Scrum diario

­ Revisión de sprint

­ Retrospectiva de sprint

Descripción de artefactos

de cada actividad

­ Modelo de casos de uso

del negocio.

­ Modelo de objetos del

negocio.

­ Modelo de casos de

uso.

­ Visión.

­ Especificaciones de

casos de uso.

­ Prototipos de interfaces

de usuario.

­ Modelo de análisis y

diseño.

­ Lista de producto

(Product Backlog)

­ Lista de Pendientes del

Sprint(Sprint Backlog)

­ Incremento

­ Modelo de datos.

­ Modelo de

implementación.

­ Modelo de despliegue.

Casos de prueba.

Descripción de Actividades RUP:

Ingeniería o modelado del negocio: Analizar y entender las

necesidades del negocio para el cual se está desarrollando el

software.

Requisitos: Proveer una base para estimar los costos y tiempo de

desarrollo del sistema.

Análisis y diseño: Trasladar los requisitos analizados anteriormente a

un sistema automatizado y desarrollar una arquitectura para el

sistema.

Implementación: Crear software que se ajuste a la arquitectura

diseñada y que tenga el comportamiento deseado.

Pruebas: Asegurarse de que el comportamiento requerido es correcto

y que todo lo solicitado está presente.

Despliegue: Producir distribuciones del producto y distribuirlo a los

usuarios.

Descripción de actividades Scrum:

El Sprint: es un bloque de tiempo (time­box) de un mes o menos

durante el cual se crea un incremento de producto “Terminado”,

utilizable y potencialmente desplegable. Es más conveniente si la

duración de los Sprints es consistente a lo largo del esfuerzo de

desarrollo. Cada nuevo Sprint comienza inmediatamente después de

la finalización del Sprint previo.

Reunión de Planificación de Sprint (Sprint Planning Meeting): El

trabajo a realizar durante el Sprint se planifica en la Reunión de

Planificación de Sprint. Este plan se crea mediante el trabajo

colaborativo del Equipo Scrum completo. La Reunión de Planificación

de Sprint tiene un máximo de duración de ocho horas para un Sprint

de un mes. Para Sprints más cortos, el evento es usualmente más

corto.

Objetivo del Sprint (Sprint Goal): El Objetivo del Sprint es una meta

establecida para el Sprint que puede ser alcanzada mediante la

implementación de la Lista de Producto. Proporciona una guía al

Equipo de Desarrollo acerca de por qué está construyendo el

incremento. Es creado durante la reunión de Planificación del Sprint. El

objetivo del Sprint ofrece al equipo de desarrollo cierta flexibilidad con

respecto a la funcionalidad implementada en el Sprint.

Scrum Diario (Daily Scrum):El Scrum Diario es una reunión con un

bloque de tiempo de 15 minutos para que el Equipo de Desarrollo

sincronice sus actividades y cree un plan para las siguientes 24 horas.

Esto se lleva a cabo inspeccionando el trabajo avanzado desde el

último Scrum Diario y haciendo una proyección acerca del trabajo que

podría completarse antes del siguiente.

Revisión de Sprint (Sprint Review): Al final del Sprint se lleva a cabo

una Revisión de Sprint para inspeccionar el Incremento y adaptar la

Lista de Producto si fuese necesario. Durante la Revisión de Sprint, el

Equipo Scrum y los interesados colaboran acerca de lo que se hizo

durante el Sprint. Basándose en esto, y en cualquier cambio a la Lista

de Producto durante el Sprint, los asistentes colaboran para

determinar las siguientes cosas que podrían hacerse para optimizar el

valor.

Retrospectiva de Sprint (Sprint Retrospective): La Retrospectiva de

Sprint es una oportunidad para el Equipo Scrum de inspeccionarse a sí

mismo y crear un plan de mejoras que sean abordadas durante el

siguiente Sprint. La Retrospectiva de Sprint tiene lugar después de la

Revisión de Sprint y antes de la siguiente reunión de Planificación de

Sprint. Se trata de una reunión restringida a un bloque de tiempo de

tres horas para Sprints de un mes. Para Sprints más cortos se reserva

un tiempo proporcionalmente menor.

Descripción de artefactos RUP:

Modelo de Casos de Uso del Negocio y Modelo de Objetos del Negocio

Es un modelo de las funciones de negocio vistas desde la perspectiva de los

actores externos (Agentes de registro, solicitantes finales, otros sistemas

etc.). permite situar al sistema en el contexto organizacional haciendo énfasis

en los objetivos en este ámbito.

Modelo de Casos de Uso

El modelo de Casos de Uso presenta las funciones del sistema y los actores

que hacen uso de ellas. Se representa mediante Diagramas de Casos de

Uso.

Visión

Este documento define la visión del producto desde la perspectiva del cliente,

especificando las necesidades y características del producto. Constituye una

base de acuerdo en cuanto a los requisitos del sistema.

Especificaciones de Casos de Uso

Para los casos de uso que lo requieran (cuya funcionalidad no sea evidente o

que no baste con una simple descripción narrativa) se realiza una descripción

detallada utilizando una plantilla de documento, donde se incluyen:

precondiciones, post­condiciones, flujo de eventos, requisitos no­funcionales

asociados.

Prototipos de Interfaces de Usuario

Se trata de prototipos que permiten al usuario hacerse una idea más o menos

precisa de las interfaces que proveerá el sistema y así, conseguir

retroalimentación de su parte respecto a los requisitos del sistema. Estos

prototipos se realizarán como: dibujos a mano en papel, dibujos con alguna

herramienta gráfica o prototipos ejecutables interactivos, siguiendo ese orden

de acuerdo al avance del proyecto.

Modelo de Análisis y Diseño

Este modelo establece la realización de los casos de uso en clases y

pasando desde una representación en términos de análisis (sin incluir

aspectos de implementación) hacia una de diseño (incluyendo una

orientación hacia el entorno de implementación), de acuerdo al avance del

proyecto.

Modelo de Datos

Previendo que la persistencia de la información del sistema será soportada

por una base de datos relacional, este modelo describe la representación

lógica de los datos persistentes, de acuerdo con el enfoque para modelado

relacional de datos.

Modelo de Implementación

Este modelo es una colección de componentes y los subsistemas que los

contienen. Estos componentes incluyen: ficheros ejecutables, ficheros de

código fuente, y todo otro tipo de ficheros necesarios para la implantación y

despliegue del sistema.

Modelo de Despliegue

Este modelo muestra el despliegue la configuración de tipos de nodos del

sistema, en los cuales se hará el despliegue de los componentes.

Casos de Prueba

Cada prueba es especificada mediante un documento que establece las

condiciones de ejecución, las entradas de la prueba, y los resultados

esperados. Estos casos de prueba son aplicados como pruebas de regresión

en cada iteración.

Descripción de artefactos Scrum:

Lista de Producto (Product Backlog)

La Lista de Producto es una lista ordenada de todo lo que podría ser

necesario en el producto, y es la única fuente de requisitos para cualquier

cambio a realizarse en el producto. El Dueño de Producto (Product Owner) es

el responsable de la Lista de Producto, incluyendo su contenido,

disponibilidad y ordenación.

Lista de Pendientes del Sprint (Sprint Backlog)

La Lista de Pendientes del Sprint es el conjunto de elementos de la Lista de

Producto seleccionados para el Sprint, más un plan para entregar el

Incremento de producto y conseguir el Objetivo del Sprint.

La Lista de Pendientes del Sprint es una predicción hecha por el Equipo de

Desarrollo acerca de qué funcionalidad formará parte del próximo Incremento

y del trabajo necesario para entregar esa funcionalidad en un Incremento

“Terminado”.

Incremento

El Incremento es la suma de todos los elementos de la Lista de Producto

completados durante un Sprint y el valor de los incrementos de todos los

Sprints anteriores. Al final de un Sprint, el nuevo Incremento debe estar

“Terminado”, lo cual significa que está en condiciones de ser utilizado y que

cumple la Definición de “Terminado” del Equipo Scrum. El incremento debe

estar en condiciones de utilizarse sin importar si el Dueño de Producto decide

liberarlo o no.

Ejemplo de aplicación Rup:

El objetivo de esta página web es mostrar un ejemplo de desarrollo de

software basado en la metodología de Rational Unified Process (RUP). El

proyecto es el desarrollo de un sistema para la gestión de artículos deportivos

de una empresa del sector de ventas de deportes a clientes tanto a

mayoristas como a minoristas. Se incluye hasta la segunda iteración de la

fase de construcción, según la división establecida en el documento Plan de

Desarrollo Software. Por motivos de privacidad no se pueden publicar los

datos de la entidad para la que se diseñó el software.

Gracias a la metodología rup el desarrollo e implementación este problema

es realizable de manera mas comoda.

En el ejemplo planteado se analizan los requerimientos, se hace un análisis y

diseño del problema una vez hecho esto se procede a la etapa de

implementación luego prueba y desarrollo, todo esto mediante iteraciones

lineales concurrentes.

Ejemplo de aplicación Scrum:

Un cliente solicita software contable para su empresa.

El cliente se reúne con el Dueño de producto, quien toma nota de la idea del

cliente.

El Dueño del producto divide el proyecto en historias que son las que

componen la pila del producto.

El Scrum master es un miembro del equipo que tiene el papel de comunicar y

gestionar las necesidades del Dueño de Producto y la pila de sprint.

El Dueño de producto le entrega la pila de producto para que estimen el coste

de creación del producto.

El equipo se reúne para determinar el coste de cada historia de la pila del

producto, por medio por ejemplo del Planning Poker.

El cliente, una vez aprobado el presupuesto, reordena la pila de producto

para que el equipo vaya trabajando según la prioridad del cliente.

El equipo comienza su trabajo desglosando la primera historia de la pila de

producto, lo cual subdividen en tareas menores para crear la pila de sprint.

La pila de sprint tiene como utilidad fraccionar el trabajo de un periodo de 15

días en tareas más pequeñas, que tardan como mucho dos días.

Estas tareas se colocan en una pila, la cual prioriza el Dueño del producto,

que ha consultado con el cliente, antes de comenzar el sprint.

El equipo comienza el sprint tomando las tareas priorizadas.Una vez

concluida una se toma la siguiente de la lista. Se convoca todos los días una

reunión del equipo donde se cuenta las tareas realizadas el día anterior y

cuáles se van a realizar ese dia.

Una vez finalizado el sprint, el Dueño del producto le muestra al cliente el

resultado del trabajo realizado. El cliente ya tiene el primer contacto con su

encargo y además puede volver a priorizar la pila de producto antes de que

comience otro sprint.

El equipo de trabajo hace una reunión de retrospectiva, donde se analiza lo

ocurrido durante el sprint. Esta reunión se celebra fuera de la oficina,

normalmente con comida y bebidas de por medio.

4. Aplicación de un software que nos permita calcular métricas de software.

Este punto consiste en realizar los siguientes puntos:

4.1) Definición de métricas:

Las métricas son la maduración de una disciplina, que, según Pressman van

a ayudar a la (1) evaluación de los modelos de análisis y de diseño, (2) en

donde proporcionarán una indicación de la complejidad de diseños

procedimentales y de código fuente, y (3) ayudaran en el diseño de pruebas

más efectivas; Es por eso que propone un proceso de medición, el cual se

puede caracterizar por cinco actividades:

(1) Formulación: La obtención de medidas y métricas del software apropiadas

para la representación de software en cuestión.

(2) Colección: El mecanismo empleado para acumular datos necesarios para

obtener las métricas formuladas.

(3) Análisis: El cálculo de las métricas y la aplicación de herramientas

matemáticas.

(4) Interpretación: La evaluación de los resultados de las métricas en un

esfuerzo por conseguir una visión interna de la calidad de la representación.

(5) Realimentación: Recomendaciones obtenidas de la interpretación de

métricas técnicas transmitidas al equipo de software.

El objetivo de la ingeniería del software es desarrollar y producir software de

alta calidad.

Para lograr este objetivo, es fundamental aplicar métodos y herramientas

efectivos dentro del contexto de un proceso maduro de desarrollo de

software.

Las métricas del Software se refiere a un amplio elenco de medidas para el

Software de computadora.

La medición se puede aplicar al proceso de Software con el intento de

mejorarlo sobre una base continua.

Podemos definir las Métricas de Software o Medidas de Software como:

La aplicación continua de técnicas basadas en las medidas de los procesos

de desarrollo de Software y sus productos, para producir una información de

gestión significativa y a tiempo.

Esta información se utilizará para mejorar esos procesos y los productos que

se obtienen de ellos.

4.2) Mapa conceptual donde se visualice la manera de clasificar las

métricas:

4.3) Seleccionar un software que exista y aplicarle el software de

métricas:

se decidió mostrar con un breve ejemplo algunas de las aplicaciones de

ciertas métricas planteadas para un proyecto de software x.

Ejemplo:

El responsable del proyecto necesita saber si la productividad es

adecuada.

Conocer el nivel de productividad de los programadores del proyecto

en comparación con lo habitual en otros proyectos de la organización.

Ahora bien, con el ejemplo anterior no se puede captar con certeza la

aplicación de las métricas en un proyecto de software, se considera que hay

que usar un software ya existente al cual se le puedan aplicar las métricas y

tipos de métricas a utilizar.

Software existente: Modelos de Procesos de Negocio con BPMN

Antecedentes:

Este trabajo está basado en la propuesta FMESP, la cual consiste en un

marco para el modelado y medición del proceso software.

FMESP está basado en la idea de que es necesario llevar a cabo una buena

administración de los procesos software con el propósito de obtener

productos software con calidad, y tal gestión la considera de una manera

integrada abarcando dos importantes aspectos:

El modelado y la evaluación del proceso. Como resultado, proporciona el

soporte conceptual y tecnológico para el modelado y medición de procesos

software para promover su mejora.

Para la evaluación del proceso software, FMESP incluye un conjunto de

métricas las cuales miden la complejidad estructural de los modelos de

proceso software (MPS).

El objetivo es evaluar la influencia de la complejidad estructural de los MPS

en su mantenibilidad. Las métricas de FMESP han sido definidas en dos

niveles diferentes:

a) A nivel de modelo, para evaluar la complejidad estructural del

modelo en su totalidad.

b) A nivel de los elementos fundamentales del modelo, para evaluar la

complejidad concreta de elementos tales como las actividades, los

roles o los productos de trabajo.

Las métricas de FMESP fueron definidas analizando el metamodelo SPEM y

están clasificadas en métricas base, las cuales se obtienen contando el

número de constructores más significativos del metamodelo SPEM y sus

relaciones y métricas derivadas, las cuales son obtenidas como resultado de

aplicar funciones de medición en otras métricas base y/o derivadas.

Los modelos de procesos de negocio (MPN) tienen un amplio rango de usos

tales como el soporte a la re­ingeniería de procesos, la simulación ó servir

como base para el desarrollo de sistemas que automatizan dichos procesos.

Los MPN pueden ser creados o presentados usando diversos lenguajes, que

son bastante diferentes entre sí, dado que cada uno tiene una manera

diferente de ver los procesos dependiendo del propósito para el cual fueron

creados. De los lenguajes mencionados en la literatura, los siguientes

merecen especial atención para el modelado de procesos de negocio: IDEF0,

IDEF3 , UML, UML 2.0 y BPMN. Ésta última es la notación estándar del BPMI

en la cual está basado nuestro trabajo.

BPMN proporciona una notación gráfica para expresar procesos de negocio

mediante un Diagrama de Proceso de Negocio (DPN), que está basado en

una técnica de diagramas de flujo adaptada para la creación de modelos

gráficos de las operaciones de procesos de negocio. Un DPN está

compuesto de dos categorías básicas de elementos: la primera son los

elementos centrales con los cuales es posible desarrollar modelos de

procesos simples y; la segunda incluye los elementos que permiten la

creación de MPN complejos o de alto nivel.

Las cuatro clases que componen la lista de elementos centrales son los

Objetos de Flujo, Objetos de Conexión, Carriles y Artefactos. Los símbolos

correspondientes a los elementos centrales se muestran en la Tabla 1.

Además dentro de cada categoría de dichos elementos centrales hay una

lista más extensiva de constructores de procesos de negocio en la notación

BPMN que constituyen la lista completa de elementos, los cuales se

mostrarán en el siguiente apartado al definir las métricas para MPN.

Tabla 1. Elementos Centrales en un Diagrama de Procesos de Negocio

Aplicando FMESP a Modelos de Procesos de Negocio con BPMN:

El objetivo con la definición y la validación de las métricas en FMESP es el de

determinar un grupo de indicadores útiles para la mantenibilidad de los

modelos de proceso software evaluando su complejidad estructural. La

propuesta de FMESP está basada en el hecho de que la investigación en la

medición de procesos software ha estado centrada en el estudio de los

resultados de la ejecución y no en la repercusión que podría tener la

complejidad estructural de los modelos de procesos en su calidad.

Una situación similar sucede en el área del modelado de procesos de

negocio. Como resultado de la investigación por parte de la gente de

negocios, en la literatura se pueden encontrar diversas propuestas para la

evaluación de procesos, la mayoría desde el punto de vista de los resultados

obtenidos en su ejecución. Lo que significa que los aspectos evaluados en la

investigación sobre la medición de procesos de negocio corresponden

principalmente al nivel de ejecución del proceso, donde incluso se han

considerado dos categorías de métricas: operativas y estructurales. Por otro

lado, también existen propuestas o marcos de trabajo para evaluar la calidad

de las técnicas para el modelado de procesos de negocio.

Considerando nuestro interés en evaluar los procesos de negocio a partir del

modelo que lo representa en un nivel conceptual, nuestro trabajo recaptura la

propuesta de FMESP, adaptándola y extendiéndola a modelos de proceso de

negocio. Para lograr tal objetivo, hemos definido un conjunto de métricas para

evaluar la complejidad estructural de los MPN en un nivel conceptual.

La meta es tener evidencia empírica acerca de la influencia que la

complejidad estructural de los MPN puede tener en su mantenibilidad. Esto

puede proporcionar a las compañías de la base cuantitativa necesaria para

desarrollar MPN más mantenibles. El primer paso para lograr esta meta ha

sido definir un conjunto de métricas apropiadas para la evaluación de la

complejidad estructural de los modelos de proceso de negocio. La definición

de estas métricas está basada en los elementos que componen el

metamodelo de BPMN y han sido agrupadas en dos categorías principales:

Métricas Base y Métricas Derivadas.

Las métricas base han sido definidas contando los diferentes tipos de

elementos que componen un MPN representado con BPMN. En la Tabla 2 se

muestran las métricas base definidas para el constructor “Evento”

perteneciente a la categoría de Objetos de Flujo del metamodelo BPMN. Se

ha definido una métrica para cada uno de los disparadores de eventos (inicio,

intermedio y finales) con los cuáles es posible identificar la causa del inicio o

final del flujo dentro del modelo, así como los elementos que modifican el flujo

en un punto intermedio del mismo.

El constructor “Actividad” es otro de los elementos pertenecientes a la

categoría de Objetos de Flujo del metamodelo BPMN; y una actividad en el

diagrama de proceso de negocio puede ser de dos clases: actividades

atómicas (Tareas) ó actividades compuestas (Sub­Procesos Colapsados). A

su vez dentro de cada una de estas dos clases se pueden observar distintos

tipos de tareas o sub­procesos. En la Tabla 3 se muestran las métricas base

definidas para cada uno de los cuatro tipos de tareas y los cinco tipos de

sub­procesos colapsados existentes en el metamodelo BPMN.

Tabla 2. Métricas Base para el Elemento Evento de los Objetos de Flujo

del DPN.

Tabla 3. Métricas Base para el elemento Actividad de los Objetos de

Flujo del DPN

Dentro de la misma categoría de Objetos de Flujo, está el elemento “Decisión

ó Unión” que es el elemento usado para controlar la divergencia y

convergencia del flujo de secuencia. En el DPN hay cinco tipos de decisiones

o uniones, para los cuales se ha definido una métrica en función de cada uno

de ellos (ver Tabla 4).

Con las métricas mostradas en la Tabla 4, es posible conocer el número de

Decisiones/Uniones que generan bifurcaciones o uniones del flujo de

secuencia en punto específico del proceso. Otros elementos importantes a

considerar dentro de los elementoscentrales del DPN, correspondientes a las

categorías de Objetos de Conexión, Carriles y Artefactos, son mostrados en

la Tabla 5, con sus respectivas métricas base.

La propuesta de métricas para modelos de procesos de negocio incluye

algunas métricas derivadas significativas que establecen las proporciones

existentes entre los diferentes elementos del modelo y que son obtenidas en

función de las métricas base. Las métricas derivadas definidas para modelos

de proceso de negocio desarrollados con BPMN se muestran en la Tabla 6.

Tabla 4. Métricas Base para los tipos de control de Decisiones de los

Objetos de Flujo del DPN.

Tabla 5. Métricas Base para los Objetos de Conexión, Carriles y

Artefactos del DPN.

Tabla 6. Definición de Métricas Derivadas en función de las Métricas

Base.

Con las métricas base y derivadas propuestas, es posible evaluar la

complejidad estructural de los modelos de proceso de negocio expresados

con BPMN. Al analizar estructuralmente el modelo también puede ser

evaluada su calidad. En particular, esta evaluación puede hacerse en

referencia a los tres criterios de calidad para modelos conceptuales definidos

por Lindland : calidad semántica, calidad sintáctica y calidad pragmática.

Aplicación de las Métricas

Para ilustrar el cálculo de las métricas definidas para MPN, se proporciona un

ejemplo que ha sido tomado de. Este ejemplo (Figura 1) representa un

modelo de proceso concurrente de la ingeniería para diseñar un chip. Nuestro

objetivo es aplicar las métricas definidas en este trabajo para conocer sus

características estructurales.

Tabla 7. Nuevas Métricas Base definidas en función de la Notación

BPMN.

Tabla 8. Nuevas Métricas Derivadas en base a la Notación BPMN.

Los valores de las métricas de FMESP y de las específicas para BPMN que

han sido aplicadas al modelo de la figura anterior, son mostrados en las

tablas 9 y 10. Por razones de espacio, en el caso de las métricas para MPN,

sólo se muestran los valores de las métricas derivadas.

Como se puede observar, no existe diferencia significativa entre los valores

resultantes de aplicar las métricas para los dos tipos de procesos (software y

de negocio). Las principales diferencias resultan de las métricas para

Modelos de Proceso de Negocio basadas en elementos que no son

contemplados en SPEM, pero que resultan útiles a la hora de analizar

estructuralmente el modelo.

Tabla 9. Valor de las Métricas Definidas en FMESP

Tabla 10. Valor de las Métricas Derivadas con BPMN.

De esta manera, se comprueba que, aunque actualmente no se conocen en

la literatura propuestas de métricas para la evaluación de modelos de

proceso de negocio a nivel conceptual, es posible llevar a cabo su evaluación

aplicando métricas definidas para modelos de proceso software y definiendo

nuevas métricas específicas.

4.4) Describir los resultados generados:

Para concluir, se puede apreciar que en el ejemplo de los programadores del

proyecto se puede inferir no solo que un programador del proyecto sea

eficiente o rápido, sino que además de eso se puede concluir que tipo de

lógica usa el programador, además si es compatible con el resto de

programadores, si su tiempo de trabajo es menos efectivo que el del resto de

programadores, si es capaz de consolidar su trabajo con el del grupo y si se

pierde dinero y tiempo con los diferentes programadores del proyecto.

Resultados del software: Modelos de Procesos de Negocio con BPMN

Conclusiones y Trabajos Futuros:

En este trabajo se ha mostrado e ilustrado cómo el marco FMESP,

desarrollado inicialmente para el modelado y la medición de modelos de

procesos software, puede ser aplicado para evaluar los modelos de procesos

de negocio en un nivel conceptual. Considerando que en el campo de la

ingeniería de procesos no hay métricas aplicables a modelos de proceso de

negocio a nivel conceptual, se decidió hacer uso de las ideas de FMESP para

evaluar la complejidad estructural de los mismos.

Ha sido posible aplicar métricas para modelos de proceso software a

modelos de proceso de negocio representados en BPMN, dado que ambos

presentan ciertas similitudes en cuanto a los elementos centrales que los

componen. Sin embargo, ha sido necesario extender las métricas definidas

en FMESP para abarcar todos los aspectos considerados dentro de un MPN.

La adaptación ha sido relativamente fácil gracias a que en el marco FMESP

todas las métricas se representan a nivel del metamodelo SPEM, que se

caracteriza por su gran generalidad lo que permite utilizarlo como base para

otros tipos de procesos que no sean de ingeniería del software.

Integrando ambas propuestas, se ha proporcionado un marco más refinado

para la evaluación de modelos conceptuales de proceso de negocio. Esto da

soporte a la Gestión de Procesos de Negocio, al facilitar la evaluación

temprana de ciertas propiedades de calidad de los procesos de negocio. Las

métricas a nivel de modelo pueden ser muy útiles a la hora de seleccionar los

modelos con mayor facilidad de mantenimiento de entre diversas alternativas

en aquellas compañías que cambian sus modelos para mejorar sus procesos.

También puede ayudar a facilitar la evolución de los procesos de negocio en

estas compañías evaluando la mejora de los mismos en un nivel conceptual.

Las métricas de MPN proveen a las compañías de información objetiva

acerca de la mantenibilidad de dichos modelos. Modelos más mantenibles

pueden beneficiar la gestión de los procesos de negocio principalmente en

dos maneras: 1. Garantizando el entendimiento y la difusión de los procesos,

y su evolución, sin afectar su exitosa ejecución; 2. Reduciendo el esfuerzo

necesario para cambiar los modelos con la consecuente reducción del

mantenimiento.

Las métricas propuestas para MPN deben ser validadas experimentalmente

para saber si son útiles en casos reales. Por esta razón, actualmente se está

desarrollando una familia de experimentos con el propósito de evaluar

aspectos de calidad de modelos conceptuales de procesos de negocio. Estos

experimentos serán desarrollados con una población integrada por expertos

en análisis de negocios y en ingeniería del software para poder comparar los

resultados de ambos tipos de perfiles y determinar la influencia de estos

diferentes puntos de vista.

Los participantes recibirán material consistente en un conjunto de MPN

representados con BPMN. Los modelos tendrán diferentes características y

dimensiones pensadas a propósito. También se proporcionará un

cuestionario por cada uno de los modelos que incluirán preguntas

relacionadas con su entendibilidad y complejidad. Para evaluar cómo influye

la notación BPMN en la modificabilidad de los modelos, otra sección adicional

del cuestionario preguntará acerca de diversas modificaciones

(especialmente estudiadas) al modelo original.

5. Describa un modelo de trabajo colaborativo para su grupo de trabajo. Este

punto consiste en realizar los siguientes puntos:

1) Definición de Colaboración.

La colaboración es la ejecución grupal de un trabajo, actividad o proyecto

específico donde las personas tienen la misión de concretar un mismo

objetivo con el fin de obtener los mejores resultados, en el cual las personas

pueden tomar roles diferentes o tareas pero trabajandolas colaborativamente

entre sus gestores con responsabilidad y solidaridad siempre sobre el trabajo

a desarrollar, la colaboración implica la ayuda de cada individuo de un

proyecto con sus demás integrantes, además que para que a colaboración

hace referencia a un grupo de miembros con habilidades específicas ya sean

profesionales o técnicas que le permiten a un grupo colaborarse mutuamente

con un mismo fin.

2.1) Definición de Coordinación.

La coordinación en un trabajo, proyecto o actividad puede entenderse como

el proceso en el cual se puede poner a un grupo de trabajo o individuos a

trabajar en conjunto diferentes objetivos o propuestas en pos de obtener un

resultado específico para acciones conjuntas, coordinar tiene la tarea

fundamental de hacer una planificacion y ordenacion de las diferentes tareas

para quienes formaran parte del grupo, además tiene el fin de generar ciertos

resultados para triunfar con las metas establecidas.

2.2) Definición de Comunicación.

La comunicación es parte importante de cualquier actividad que se realice ya

sea individual o en grupo, la comunicación permite el intercambio de ideas e

información entre determinadas personas,se realiza con el fin de transmitir o

recibir información a través de ruidos o señales que permiten la captación de

ideas, en proyectos grupales la comunicación es parte fundamental durante

todo el proceso desde su inicio hasta el final, pues esta permite transmitir

información de un persona a otra (de un analista a un programador) para que

se realicen ciertos pasos o acciones determinadas de tal manera con el fin de

conseguir u obtener algo y no se cometan errores no deseados.

2.3) Definición de Negociación.

La negociación es una actividad o proceso que se da entre dos personas o

más partes, donde suelen existir dos distintos puntos de vista o posiciones

siempre en disputa sobre un mismo asunto, las negociaciones son una

actividad en las que hay intereses compartidos pero opuestos, en el cual

siempre se trata de alcanzar una acuerdo que satisfaga al máximo los

intereses de cada parte o persona que hace parte de la negociación, dentro

de trabajos y proyectos la negociación es una de las habilidades más

importantes que el project manager debe poseer para poder tratar

efectivamente con clientes, gerentes funcionales, miembros del equipo del

proyecto, etc.

3) Definición de trabajo colaborativo.

El trabajo colaborativo es una actividad que se realiza en grupos de trabajo

pero estos grupos de trabajo no siempre realizan trabajo colaborativo, este es

una herramienta para el desarrollo de procesos o actividades efectivas y

productivas dentro de un trabajo o proyecto, el trabajo colaborativo es una

estrategia de aprendizaje y enseñanza que se suele organizar en grupos de

trabajo, donde hay un objetivo común, donde cada integrante reconoce sus

habilidades y sus deficiencias para fortalecer la unión y colaboración de unos

con otros, el trabajo colaborativo exige a los participantes habilidades como la

comunicación, relaciones simétricas y deseos de compartir la resolución de

tareas.

4) Inventario de patrones de colaboración (esto se puede obtener desde

el área de la ingeniería de la colaboración o desde protocolos de

sistemas multiagente como FIPA)

Generación: permite acumular conceptos necesarios para el proceso que se

pueda compartir con todos los integrantes del grupo.

Reducción: permite seleccionar los conceptos de mayor importancia de

forma tal que la base conceptual que se tenía se hace más pequeña.

Clarificación: permite que cada integrante del equipo tenga un mayor

manejo y conocimiento de los conceptos manejados, las palabras claves y las

frases indicadas para el tema que se está tratando.

Organización: permite clasificar y estructurar los temas que se está tratando,

para generar un mayor conocimiento a cada integrante.

Evaluación: permite una consideración más detallada de los conceptos que

el grupo está tratando.

Construcción de consenso: permite consolidar el grupo que se va a

comprometer con el objetivo final.

Mesa redonda (Round table) o Lluvia de ideas (Brainstorming) La

estructura de mesa redonda es muy útil para generar una gran cantidad de

ideas en un corto periodo de tiempo. Las explicaciones, las evaluaciones y

las preguntas no están permitidas mientras dure el proceso de generación de

ideas. Para comenzar, el profesor debe plantear una o varias preguntas que

tengan un gran número de respuestas posibles. Los grupos disponen del

tiempo suficiente para revisar y clarificar sus ideas.

Piensa, discute y comparte (think­pairshare) Ésta es una estructura

relativamente sencilla adecuada tanto para profesores como para estudiantes

que son nuevos en el aprendizaje colaborativo. El profesor propone una

cuestión abierta y da a los estudiantes un tiempo para que reflexionen

individualmente acerca de la misma. Seguidamente, los estudiantes se

emparejan para discutir sus ideas con un compañero durante el tiempo que

decida el profesor. De este modo, todos los estudiantes tienen la oportunidad

de discutir sus ideas. Esto es muy importante dado que les permite comenzar

a construir su conocimiento así como averiguar qué es lo que saben y qué es

lo que no. Las respuestas recibidas son habitualmente más concisas dado

que los estudiantes han podido reflexionar previamente sobre sus ideas.

Resolución de problemas en voz alta por parejas (Think Aloud Pair

Problem Solving) Esta estructura tiene como objetivo fomentar la habilidad

del estudiante para resolver problemas mediante la verbalización de sus

pensamientos durante el proceso de solución del mismo. Durante la

realización de esta actividad, los miembros de cada grupo deben turnarse a

la hora de encargarse de resolver un problema o de escuchar al que lo está

haciendo.

Rompecabezas (Jigsaw) divide la clase en varios grupos que deben

resolver un mismo problema. Se asigna a cada alumno dentro del grupo la

tarea de estudiar la información relativa a una porción de dicho problema.

Seguidamente, se forman “grupos de expertos” en los que los estudiantes

discuten y profundizan en el subproblema del que son especialistas.

Finalmente, los estudiantes vuelven a sus grupos originales para poner en

común sus conocimientos y encontrar una solución al problema global. Esta

técnica requiere una fuerte implicación por parte de los participantes pero, por

otro lado, fomenta el intercambio comunicativo y la interdependencia positiva.

Pirámide (Pyramid). plantea un problema común a toda la clase que los

estudiantes resuelven de manera individual. Cada estudiante se une con un

compañero para discutir las soluciones que propusieron individualmente

antes de plantear una solución común. Y así sucesivamente hasta que se

forman dos grandes grupos en la clase que se unen para discutir las

soluciones planteadas en cada uno de ellos con el objetivo de proponer una

solución final. La correcta realización de la estructura de pirámide facilita la

generación de múltiples ideas para la solución del problema que ha sido

planteado.

Simulación (Simulation) Este patrón es muy útil en un contexto en el que

miembros de uno o varios grupos interpretan un rol en la simulación de una

situación. Cada participante consulta información acerca del problema que va

a ser simulado y prepara su papel. A continuación, los miembros del mismo

grupo de simulación (generalmente grupos pequeños) interpretan una

simulación particular del problema. Posteriormente es posible realizar las

simulaciones delante del resto de la clase. Al final, toda la clase puede

discutir y compartir sus conclusiones acerca del problema.

5) Describir las actividades colaborativas de su grupo de trabajo,

Definir y aclarar puntos.

Asignación de roles por habilidad.

Interactividad.

Revisión del material.

Comparación y aclaración de ideas.

Evaluación de la actividad.

Discusión de la actividad y corrección.

6) Seleccionar los patrones colaborativos que más acercan a las

actividades de colaboración que realizan.

Mesa redonda (Round table) o Lluvia de ideas (Brainstorming)

Rompecabezas (Jigsaw)

Piensa, discute y comparte (think­pairshare)

Clarificación

Construcción de consenso

7) Modelas las actividades colaborativas (en este punto se puede mirar

ejemplos de actividades colaborativas modeladas en AUML.

Diagrama de Secuencia.

Diagrama de colaboración.

Referencias :

http://es.slideshare.net/FlowersInSpace/introduccion­a­scrum­con­caso­prctic

o­1516220

http://www.scrumguides.org/docs/scrumguide/v1/Scrum­Guide­ES.pdf

http://clases3gingsof.wikifoundry.com/page/Artefactos+Arquitectura+de+Softw

are

http://www.udistrital.edu.co:8080/documents/276352/356568/Cap3RolesArtef

actosProceso

http://es.slideshare.net/eccutpl/armando­cabrera­i­summit­2010

http://www.uv.mx/mis/files/2012/11/HernandezRodriguezFernandezPena.pdf

http://users.dcc.uchile.cl/~mmarin/revista­sccc/sccc­web/Vol6/Art09.pdf

http://es.slideshare.net/isisparada/metricas­de­calidad­de­software

http://4.bp.blogspot.com/­4EHaxeAVMYU/UMi8Wi1svOI/AAAAAAAAARs/nRY

mcRxrMnE/s1600/Mapa%2BMental%2BM%C3%A9tricas%2Bde%2BCalidad

%2Bde%2BSoftware.jpg

https://prezi.com/xjirfskkr2ke/metricas­de­evaluacion­de­software/

http://eprints.ucm.es/11487/

http://www.desarrolloweb.com/articulos­copyleft/articulo­metricas­de­software.

html

http://uptaprocesodepruebasycalidadymetricas.blogspot.com.co/2012/12/ejem

plos­de­metricas.html

http://www.sites.upiicsa.ipn.mx/polilibros/portal/Polilibros/P_proceso/ANALISI

S_Y_DISEnO_DE_SISTEMAS/IngenieriaDeSoftware/CIS/UNIDAD%20II/2.3.

HTM

http://www.bdigital.unal.edu.co/15377/1/9982­18058­1­PB.pdf

http://www.informaticahabana.cu/sites/default/files/ponencias/EDU054.pdf

http://www.learningreview.com/noticias­tecnologias/3438­modelo­para­el­dise

no­de­actividades­colaborativas­mediante­la­utilizacion­de­herramientas­web­

20

http://escritura.proyectolatin.org/inteligencia­artificial/sistemas­multiagentes/


Recommended