Professional Documents
Culture Documents
Dentro del paquete llamado "SPEM" se encontrar la arquitectura actual del meta-modelo
SPEM como se ilustra en la figura 2.1 SPEM 2.0 aplica el paquete de infraestructura UML 2
unido al mecanismo para construir gradualmente el meta-modelo, proporcionando paquetes
de meta-modelo opcionales o unidades modulares como bloques de construccin para un
implementador de especificacin. En otras palabras un implementador o adoptante puede
optar por utilizar diferentes niveles de capacidades, nmeros de conceptos, y niveles de
formalismo para expresar sus procesos usando o realizando slo ciertos paquetes de sta
arquitectura. Se definen las tres secciones ms comunes como los puntos de cumplimiento
de SPEM 2.0, pero tambin se discuten otras posibilidades de combinar los paquetes de metamodelo para abordar las necesidades ms especficas del modelado de procesos.
2.2. DESCRIPCIN DE LA ARQUITECTURA DEL META-MODELO SPEM 2.0: SPEM 2.0 es usado
para definir los procesos de desarrollo de sistemas y software y sus componentes. El alcance
de SPEM est intencionalmente limitado a los elementos mnimos necesarios para definir
cualquier proceso de desarrollo de sistemas y software sin adicionar caractersticas
especficas para disciplinas o dominio particulares de desarrollo (e.g. gestin de proyectos).
El objetivo es acomodar una amplia gama de mtodos de desarrollo y procesos de diferentes
estilos, antecedentes culturales, niveles de formalismo, modelos de ciclos de vida y
comunidades. Sin embargo, el enfoque de SPEM 2.0 es proyectos de desarrollo. SPEM 2.0 no
pretende ser un lenguaje de modelado de procesos genrico, ni siquiera proporcionar sus
propios conceptos de modelado de comportamiento. SPEM 2.0 ms bien define la habilidad
para el implementador escoger el enfoque de modelado de comportamiento genrico que
mejor se adapte a sus necesidades. Este tambin proporciona estructuras especficas para
mejorar esos modelos de comportamiento genrico que son caractersticos para definir
procesos de desarrollo. En otras palabras, SPEM 2.0 se centra en proporcionar las estructuras
de informacin adicional que se necesitan para modelado de procesos con actividades UML
2.0 BPMN / BPDM para describir un proceso de desarrollo actual.
El Meta-modelo SPEM 2.0 est estructurado dentro de siete paquetes de meta-modelo
principales como se ilustra en la figura 2.1. La estructura divide el modelo dentro de unidades
lgicas. Cada unidad se extiende a las unidades de las que sta depende, proporcionando
estructuras adicionales y capacidades a los elementos definidos a continuacin. En general,
EL paquete UML 2.0 une mecanismos de unin de paquetes realiza una extensin de la
unidad de modelado de capacidades por unidad. Como resultado, las unidades definidas en
una capa inferior pueden ser realizadas por un subconjunto de implementacin SPEM 2.0 sin
las unidades del nivel superior. En muchos casos, las clases de meta-modelo estn
introducidas en un paquete de nivel inferior lo ms simple posible, y estn entonces
extendidas en unidades de nivel superior va el mecanismo de unin de paquete con
relaciones y propiedades adicionales para realizar procesos ms complejos modelando
requerimientos.
Core: (Ncleo): El paquete de meta-modelo de ncleo contiene las clases y abstracciones del
meta-modelo que construyen la base para las clases en todos los dems paquetes de metamodelo. En otras palabras, todas las clases comunes entre todos los niveles de cumplimiento
que definen el ncleo de SPEM 2.0 han sido ubicadas aqu. El ncleo define principalmente
las clases para dos capacidades SPEM 2.0: (1.) La posibilidad que un usuario SPEM 2.0 cree
calificaciones definidas por el usuario para clases SPEM 2.0 permitiendo a los usuarios
distinguir diferentes clases de instancias de clase de SPEM 2.0. (2.) Un conjunto de clases
abstractas para definir trabajo expresado como procesos SPEM 2.0. Todas las clases SPEM 2.0
que se derivan de estas clases estn designadas a asociar a las clases de comportamiento de
modelos de comportamiento. (e.g. pueden ser asignadas como estereotipos a actividades o
vnculos UML 2.0 para clasificadores de comportamiento )
Estructura de Proceso: ste paquete define la base para todos los modelos de procesos. Este
soporta la creacin de modelos de proceso simple y flexible. su ncleo de estructura de datos
es un desglose o descomposicin de actividades anidadas que mantienen listas de referencia
a la realizacin de clases de rol as como clases de producto de trabajo de entrada y salida
para cada actividad. Adems, este proporciona mecanismos para la reutilizacin de procesos
tal como el enlace dinmico de patrones de proceso que permite a los usuarios ensamblar
procesos con conjuntos de actividades vinculadas dinmicamente. Estas estructuras son
usadas para representar procesos bsicos y de alto nivel que no estn documentados
El punto de cumplimiento "SPEM Completo" comprende todos los siete paquetes del metamodelo de SPEM descritos en 2.2, 'Descripcin de la arquitectura del meta-modelo SPEM 2.0'
La figura 2.2 muestra que los puntos de cumplimiento crean un espacio de nombres llamado
"SPEM2-Completo" que combina el nivel cumplimiento LM de la biblioteca de infraestructura
UML 2, perfiles UML 2, as como los paquetes de meta-modelo SPEM 2.0 Plug-in de mtodo y
comportamiento de procesos, los cuales se combinan transitivamente en todos los otros
paquetes del meta-modelo (ver la figura 2.1). Estos siete paquetes del meta-modelo estn
descritos en al captulo 8 al 14 de sta especificacin.
lanzada en 2002 (reporte FTF Final en mayo 2002). SPEM 1.1. Incorporo actualizaciones
menores que fueron lanzadas formalmente en el 2005 (Reporte FTF Final en marzo de 2004).
SPEM 1.x. se defini como ambos un meta-modelo independiente construido sobre UML 1.4,
y un perfil UML y se acompaa por un DTD XML. El meta-modelo usa UML 1.4 como una
notacin y toma un enfoque orientado a objetos para representar el comportamiento de los
desarrolladores como sus operaciones. SPEM 1.x vio una baja utilizacin. Desde su emisin,
pocas implementaciones se han lanzadas y estas no se han reconocido por los analistas
industriales que tambin fallaron en reconocer su importancia a la metodologa y mercado de
herramientas de proceso. All ha habido un nmero de bajo perfil o adoptantes casuales de la
especificacin as como pocas implementaciones comerciales. Se sospecha que la facilidad de
adopcin ha sido un problema y algunas de las semnticas de SPEM 1.x fueron ambiguas y
difciles de entender por los adoptantes y por lo tanto no usados en sus prcticas.
Ahora que las revisiones importantes al subyacente estndar UML han sido desarrolladas en
UML 2, son muchos los beneficios que se cosecharon en SPEM. UML 2 incluye nuevas
caractersticas tales como tcnicas de modelado mejoradas grandemente, y capacidad de
intercambio de grficos, las cules son de uso obvio en modelado de proceso. Adems, UML
2 est organizado de una forma ms modular para permitir especificaciones relacionadas para
reutilizar solamente las partes necesaria del meta-modelo UML. La capacidad de aprovechar
estas caractersticas, as como la capacidad para trabajar con las herramientas UML 2 son
potentes mejoras a SPEM 2.0. Adems, No haba retroalimentacin especfica de los
implementadores de SPEM 1.x que se han dirigido para hacer modelos de procesos de SPEM
ms fcil de adoptar y automatizar. sta especificacin trata los siguientes requerimientos del
RFP:
o
o
o
o
o
o
Actualizar SPEM para cumplir con UML 2, tomando ventaja de la nueva funcionalidad
para mejorar las capacidades y tcnicas de modelado de proceso.
Definir un nuevo esquema SPEM XML, basado en MOF. Los esquemas XML
proporcionan una mayor riqueza y control ms all de lo que est disponible en el DTD
XMI de SPEM 1.1.
Proporcionar orientacin sobre la migracin de modelos de procesos existentes de
SPEM 1.1 a SPEM 2.0.
Reacciones de los primeros implementadores para abordar las inconsistencias
identificadas y preocupaciones con respecto a la viabilidad y la cobertura funcional de
SPEM 1.1.
Definir extensiones a SPEM que sern de utilidad para procesar herramientas de
automatizacin.
Alinear SPEM con la evolucin y las nuevas normas que no sean UML; especficamente,
el meta-modelo de definicin de procesos de negocio y las interfaces en tiempo de
ejecucin de proceso de negocio se pueden usar en conjunto con SPEM para
proporcionar un mayor valor a la comunidad de usuarios.
Introducir extensiones del meta-modelo procesos que pueden ser usadas igualmente
en procesos de desarrollo de software y procesos de ingeniera de sistemas.
6.2 INTRODUCCIN GENERAL A SPEM 2.0: A lo largo de la industria del software hay un
montn de grandes ideas y conocimiento disponible acerca de cmo desarrollar software
eficientemente. Hoy en da, Los equipos de desarrollo necesitan y tienen acceso a un amplio
Los miembros del equipo no tendrn acceso sencillo y centralizado al mismo cuerpo de
informacin cuando ellos la necesitan, es decir, diferentes desarrolladores pueden
confiar en diferentes fuentes y versiones de la misma informacin.
Es difcil combinar e integrar los contenidos y procesos de desarrollo que se ponen a
disposicin en su propio formato de propietario, como todo libro y publicacin presenta
el contenido y proceso de mtodo usando una representacin y un estilo de
presentacin diferente.
Es difcil definir un enfoque de desarrollo sistemtico y organizado que es del tamao
adecuado a sus necesidades, es decir, se dirige a su cultura especfica, prcticas
estandarizadas, y requerimientos de cumplimiento.
La figura 6.1 presenta un marco conceptual para el uso de una implementacin SPEM 2.0:
Apoyar el despliegue de slo el contenido de mtodo y el proceso necesario para definir las
configuraciones del contenido de mtodo y procesos: Ningn proyecto de desarrollo es
exactamente como otro y el mismo proceso de desarrollo nunca se ejecuta dos veces. Los
marcos de referencia para procesos de desarrollo tales como CMMI definen diferentes
niveles de madurez de los procesos. Cada nivel implica caractersticas diferentes para la
definicin de proceso as como la promulgacin en una organizacin o proyecto para cada
nivel. Por ejemplo, CMMI define un "proceso gestionado" como actividades realizadas que se
pueden reconocer como implementaciones de prcticas de desarrollo. Tal proceso tiene
ciertas caractersticas: Es planificado y ejecutado de acuerdo a polticas, emplea a personas
calificadas, cuenta con recursos suficientes para producir salidas controladas, involucra
stakeholders relevantes, es monitoreado, controlado, y revisado; y se evala la adherencia a
su descripcin de proceso. Por el contrario, un "proceso definido" es un proceso gestionado
que se adapta desde el conjunto de procesos estndar de la organizacin de acuerdo a las
directrices de adaptacin de la organizacin. Un proceso definido tiene una descripcin del
proceso de mantenimiento y contribuye productos de trabajo, medidas, y otra informacin
de mejora de procesos a los activos de proceso de la organizacin. Las nociones de actividad
de uso, configurabilidad, y variabilidad para procesos de desarrollo (as como contenido de
mtodo) en SPEM 2.0 exactamente frente a las necesidades de los procesos definidos. Estos
conceptos proporcionan capacidades para la reutilizacin de procesos o patrones de
procesos, para modelar variabilidad (es decir, los procesos que forman parte de las partes
alternativas configurables) y para adaptar permitir a los usuarios definir sus propias
extensiones, omisiones, y puntos de variabilidad o procesos estndar reutilizados. Por lo
tanto, el escenario de uso de SPEM es que las organizaciones puedan proporcionar bibliotecas
de procesos y mtodos reutilizables usando las capacidades descritas en los dos primeros
puntos. Los jefes de equipo pueden seleccionar y disear el contenido de mtodo y procesos
que ellos requieren. A continuacin pueden describir estas selecciones y personalizaciones
con un mtodo de configuracin de SPEM. Que pueden desplegar a sus equipos solo
proporcionando el contenido que ellos realmente necesitan.
Apoyar la promulgacin de un proceso para proyectos de desarrollo: Una definicin de
proceso slo proporciona valor si impacta y dirige el comportamiento de los equipos de
desarrollo. Los procesos as como las necesidades del mtodo de contenido dirigidas estarn
disponibles en el concepto de trabajo diario de los directores de proyecto, jefes tcnicos y
desarrolladores. Por lo tanto, es necesario desplegar en formatos que estn listos para su
promulgacin con los sistemas de procesos de promulgacin de las elecciones del equipo.
Los sistemas de promulgacin comunes son proyectos y sistemas de planeacin de recursos,
sistemas de seguimientos de trabajos pendientes, y motores de flujo de trabajo. SPEM 2.0
proporciona estructuras de definicin de proceso que permiten a los ingenieros de proceso
expresar como un proceso debe ser promulgado dentro de estos sistemas. Por ejemplo, los
procesos de definicin de proceso SPEM 2.0 puede incluir informacin que indique que las
definiciones de modelado de trabajo se repiten varias veces en un proyecto (iteraciones de
modelado) o que puede haber mltiples ocurrencias de definiciones de trabajo que pueden
ser realizados en paralelo.
Aunque, el meta-modelo SPEM 2.0 se ha diseado entorno al apoyo para este marco de
trabajo, muchos otros escenarios tiles pueden ser realizados tambin. Por ejemplo, el
captulo 2 define diferentes puntos de cumplimiento y analiza diferentes escenarios de
aplicacin que podra realizar una variacin de los escenarios representados en la figura 6.1.
6.3 NUEVAS CAPACIDADES CLAVE DE SPEM 2.0: Adems de abordar los requisitos RFP
enumerados anteriormente, sta especificacin proporciona las siguientes nuevas
capacidades para los autores de proceso.
6.3.1. Una clara separacin de las definiciones de contenido de mtodo desde la aplicacin
de proceso de desarrollo de contenido de mtodo: Como se indica en la seccin 6.2, SPEM
2.0 separa el contenido de mtodo reutilizable de su aplicacin en los procesos. El contenido
de mtodo proporciona explicaciones paso a paso, describiendo como los objetivos
especficos de desarrollo se logran independiente de la colocacin de estos pasos dentro un
ciclo de vida de desarrollo. Los procesos toman estos elementos de contenido de mtodo y
los relaciona dentro de unas secuencias ordenadas parcialmente que se adaptan a proyectos
de tipo especfico.
Por ejemplo, un proyecto de desarrollo de software que desarrolla una aplicacin desde cero
lleva a cabo tareas de desarrollo tales como "encontrar actores y casos de uso", "Visin de
desarrollo", o "Diseo de casos de uso" similarmente a un proyecto que ampla un sistema de
software existente. Sin embargo, los dos proyectos realizarn las tareas en diferentes puntos
en el tiempo con un nfasis diferente, es decir, realizaran los pasos de estas tareas
diferentemente, asumirn diferentes entradas, y quizs aplicarn variaciones y adiciones
individuales.
individuales para cada elemento de proceso (as como desglose de trabajo y nuevas relaciones
a productos de trabajo y roles).
proceso mantener familias consistentes de procesos, que por un lado son especficos a un tipo
especfico de proyecto y por otro lado tambin son variaciones del mismo mtodo base y
contenido de proceso. Los resultados son diferentes variantes de procesos especficos
basados en el mismo ncleo de contenido de mtodo y estructuras de proceso pero aplicados
con diferentes niveles de detalle y escala; por ejemplo, variantes de proceso para proyectos
de desarrollo a grande escala vs pequeos proyectos.
Figura 6.8 - Dos procesos con modelos de ciclo de vida diferente. Una estructura SPEM 2.0
comn para representar cualquiera de estos ciclos de vida.
Una especificacin genrica del meta-modelo para procesos de desarrollo necesita tener que
ser capaz de soportar diferentes variedades e incluso combinaciones de modelos de ciclo de
vida como cascada, iterativo, incremental, evolutivo y as sucesivamente para la planeacin
basada en procesos.
El meta-modelo SPEM 2.0 est diseado para dar cabida a mltiples enfoques. Este
proporciona un conjunto amplio de atributos de personalizacin para especificar la gua
temporal para los elementos de proceso, permitiendo que estos sean mapeados a planes de
proyecto que se realizan basados en el modelo de ciclo de vida subyacente del proceso. Por
ejemplo, el mapeo permitir que un proceso iterativo genere un plan que proporciona un
nmero de iteraciones definidas por el usuario, necesarias para una situacin de proyecto
especfico.
Adicionalmente, SPEM 2.0 proporciona alternativa, pero mantuvo constantemente,
formalizaciones de presentacin de proceso tales como estructuras de desglose vs diagramas
de flujo. Esto permite al ingeniero de proceso escoger la presentacin de su preferencia que
mejor se ajusta al modelo de ciclo de vida utilizado.
Figura 6.9. Un proceso gil en macroscpico. ste se compone de tres subprocesos, cada
uno de los cuales sigue uno modelo de ciclo de vida diferente.
Figura 6.11. Un patrn de proceso aplicado tres veces a un proceso; cada uno con
modificaciones individuales.
Los patrones de proceso de SPEM 2.0 son bloques de construccin reutilizables para crear nuevos
procesos de desarrollo. Seleccionar y aplicar un patrn de proceso se puede hacer en una de
varias maneras posibles.
Un patrn se puede aplicar en una copia sofisticada y modificar la operacin, lo cual permite
al ingeniero de proceso personalizar individualmente el contenido del patrn a sus
necesidades durante la aplicacin del patrn.
SPEM 2.0 soporta la aplicacin de patrones a travs de los mecanismos de actividad de uso,
lo cual es una forma de reutilizar las estructuras de proceso de actividades que re-ocurren
comnmente. Las actividades se pueden factorizar dentro de patrones que se pueden aplicar
una y otra vez en un proceso. Las actividades de uso definen clases de relaciones de modo
que cuando el patrn est siendo revisado o actualizado, todos los cambios se reflejan
automticamente en todos los procesos que aplican ese patrn.
El meta-modelo SPEM 2.0 es un MOF 2.0 (Meta-Object Facility) compatible con el metamodelo
Este documento proporciona un MOF 2.0 compatible con la especificacin del meta-modelo del
meta-modelo SPEM 2.0 como se representa en el lado izquierdo de la figura 6.13. Se pueden ver
las diferentes capas de instanciacin del formalismo usado para sta especificacin. Un modelo
definido sobre una capa superior define el lenguaje que se utilizar en la capa inferior siguiente.
MOF es el lenguaje universal que se puede usar sobre cualquier capa, pero en nuestro caso es
instanciado desde la capa M3 por SPEM 2.0 sobre la capa M2. El meta-modelo UML 2 en s mismo,
como se representa sobre el lado derecho de la capa M2, instancia MOF 2 definido sobre la capa
M3 en la misma forma. "Una biblioteca de mtodo" es un ejemplo de una instancia concreta del
meta-modelo SPEM 2.0 usando SPEM 2.0 como un esquema para representar su contenido. En
ese sentido, "la biblioteca de mtodo" representa un modelo de mtodo. Por ejemplo, SPEM 2.0
define los conceptos de roles, tareas y artefactos as como las relaciones entre ellos.
La biblioteca de mtodo A sobre la capa M1 proporciona instancias concretas de roles y artefactos
desde la capa 2 tal como "analista de sistemas" y "caso de uso" como se ve en la figura 6.14. "el
caso de uso" es una instancia directa de la meta-clase "artefacto", la cual es una instancia de la
meta-meta- clase "clase" desde la capa M3. Una instancia de caso de uso que uno cree durante
un proyecto de desarrollo tal como "catlogo de navegacin" para un sistema de ventas basado
en web ahora ser una instancia de la clase "clase de uso" sobre la capa M0.
El meta-modelo SPEM 2.0 reutiliza partes UML 2
El meta-modelo SPEM 2.0 describe todas las estructuras y atributos necesarios para representar
los mtodos y procesos basados en SPEM 2.0. Sin embargo, SPEM 2.0 no define todos los
elementos desde el principio, pero actualmente reutiliza elementos del meta-modelo UML 2. La
figura 6.13 muestra una dependencia sobre la capa M2 de SPEM 2.0 a UML 2. Esta dependencia
expresa que las partes del SPEM 2.0 estn basadas en las definiciones del UML 2. Por ejemplo, los
elementos de ncleo de SPEM 2.0 tales como "Elemento de proceso" y "paquete de mtodo" se
han derivado a travs de la especializacin de clases de la biblioteca de infraestructura de UML 2
heredando las relaciones que permiten la definicin de paquetes y elementos encapsulables.
SPEM 2.0 tambin reutiliza paquetes de la superestructura UML 2 tal como paquetes de
actividades UML 2.
El meta-modelo UML 2 tiene una implementacin de referencia
El meta-modelo SPEM 2.0 puede ser directamente instanciado para una implementacin, es decir,
una herramienta CASE puede representar todas las clases de la capa M2 como clases Java y tablas
de bases de datos. Aunque el meta-modelo MOF de SPEM 2.0 est definido en UML, una instancia
del modelo (es decir, un proceso o mtodo concreto) se puede representar independiente del
UML.
La ventaja del enfoque de perfil es que no necesita desarrollar herramientas CASE para mantener
mtodos y procesos, pero podra usar una herramienta de modelado UML 2 genrica para hacerlo.
La desventaja de ste enfoque es que tal herramienta de modelado UML 2 sera muy genrica y
que todas las reglas de estructuracin especficas definidas en el meta-modelo SPEM 2.0 como
simples relaciones necesitaran ser forzadas con complicadas restricciones OCL, limitando al
usuario mucho ms que cuando modela con UML. Por ejemplo, restringir el nmero de
asociaciones que una tarea puede tener con roles cuando un estereotipo especfico es aplicado
forza la restriccin simple de un rol de ejecucin principal para una tarea. Forzar todas las reglas
bsicas de SPEM 2.0 en restricciones OCL resultara en que el usuario de la herramienta trata con
interacciones y mensajes de error OCL muy genricos, lo que resulta en una mala experiencia de
usuario.
SPEM 2.0 define un meta-modelo as como un perfil UML
Sin embargo, la especificacin proporciona definiciones para ambas representaciones:
El meta-modelo SPEM 2.0: define todas las estructuras y reglas de estructuracin y est en s
misma completa. Este ha sido especificado como un modelo MOF y reutiliza algunas clases
clave de la infraestructura UML 2. Este tambin define la notacin de diagramas de proceso
especfico.
El perfil UML de SPEM 2.0: define un conjunto de estereotipos UML 2 que permiten presentar
mtodos y procesos SPEM 2.0 usando el UML 2. Sin embargo, la definicin de estos
estereotipos en esta especificacin slo cubren su presentacin, pero se basa en el metamodelo SPEM 2.0 para todas las definiciones y restricciones semnticas. En otras palabras,
esta versin del perfil no contiene ninguna restriccin OCL, sino que depende de las
semnticas del meta-modelo SPEM 2.0 para definir todas sus restricciones.
Adaptive Ltd.
Fujitsu & Fujtsu Consulting
Fundacion European Software Institute
International Business Machines Corporations
Softeam