SPEM 2.0
SOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0 Metamodelo para modelos de procesos de ingeniería de software y de ingeniería de sistemas. La idea central de SPEM 2.0 para representar procesos está basada en tres elementos básicos: rol, producto de rabajo y tarea. Los roles representan quien lo hace Los productos de trabajo representan las entradas que se utilizan en las tareas y las salidas que producen. Las tareas representan el esfuerzo a hacer. La idea central subyacente es que un modelo de proceso consiste, básicamente, en decir quien (rol) realiza que (tarea) para a partir de unas entradas (productos de trabajo) obtener unas salidas (productos de trabajo).
SPEM 2 puede ser una importante ayuda para que las empresas que llevan a cabo proyectos de software puedan enfrentar mejor los problemas relacionados con los procesos: Los miembros de los equipos no tienen acceso fácil y centralizado a la información de procesos que necesitan. Diferentes desarrolladores manejan diferentes fuentes o versiones de la misma información. Es difícil combinar e integrar informaciones y procesos que están en formatos prioritarios diferentes. Cada libro, manual, herramienta utiliza un lenguaje y estilo diferente. Es duro definir una aproximación de desarrollo organizada y sistemática que se adapte a las necesidades. En sí SPEM es un marco de trabajo conceptual que provee los conceptos necesarios para modelar, documentar, presentar, publicar, gestionar, intercambiar y realizar métodos y procesos software.
Al trabajar con SPEM existen 4 escenarios fundamentales: a) Crear un repositorio de contenidos de método reutilizables es decir una colección organizada de roles, tareas, productos de trabajo, gúías, fragmentos de método, procesos (en sí un repositorio de conocimiento sobre procesos en formato estandarizado). Esto es de gran ayuda a los desarrolladores de software porque en su trabajo necesitan conocer como hacer las tareas de desarrollo y mantenimiento de software, como gestionar el proyecto, como comprender los productos de trabajo que se deben crear en cada tarea, cuáles son las habilidades requeridas en cada rol y disponer de las guías, directrices, plantillas, etc. b) Dar soporte al desarrollo, gestión y crecimiento de procesos software implica combinar, reutilizar y extender los elementos de métodos anteriores para configurar los procesos que sirven para guiar los proyectos. Desde fragmento de procesos elementales se puede llegar a generar todo un proceso completo o toda una metodología, incluyendo varios procesos.
c) Establecer un marco de trabajo general de la organización SPEM permite dar soporte al despliegue del contenido del método y proceso que justo se necesita en cada caso, teniendo en cuenta que ningún proyecto es exactamente como el anterior y nunca exactamente el mismo proceso de software se ejecuta dos veces. d) Generar plantilla para planes de proyecto concretos SPEM incluye estructuras de definición de procesos que permiten expresar como un proceso será realizado.
En SPEM 2.0 se distinguen dos grupos de conceptos a la hora de implementar una metodología. a) Primero se puebla el contenido del método con elementos de contenido, es decir, los elementos primarios o constructores básicos. b) Después, se combinan y reutilizan dichos elementos para obtener procesos.
En SPEM 2 las jerarquías de desglose de trabajo van del más general al más particular. Proceso de despliegue Representa un proceso tan complejo como se necesite, que será el que sirva de base para realizar cierto tipo de proyectos. Patrón de capacidad Representa un patrón de proceso que puede ser reutilizado más de una vez en un proceso de despliegue. Actividad Es el elemento central para definir procesos, ya que permite organizar los elementos básicos de proceso (roles, productos de trabajo y tareas) Tarea Es la opción más pequeña de trabajo en un modelo de proceso.
ORGANIZACIÓN DE UN REPOSITORIO SPEM 2 Un repositorio o biblioteca de métodos y proceso es SPEM 2 es una colección de uno o más plug-ins de métodos y una o varias configuraciones. Cada plug-in se almacena en un directorio de disco diferente e incluye contenido de método y procesos. El contenido de método está formado por paquetes de contenido, categorías estándar y categorías personalizadas. Los procesos contienen patrones de proceso y procesos para despliegue.
CONTENIDO DE MÉTODO Puede ser organizado a voluntad del usuario mediante una jerarquía de paquetes de contenido, cada uno de los cuales puede incluir roles, tareas productos de trabajo y guías. Elementos de contenido * Tareas * Roles * Productos de trabajo * Guías * Categorías * Conjunto de roles * Disciplina * Dominio * Herramientas *Clase de producto
Propiedades principales *nombre *nombre de presentación *descripción breve *descripción principal *propiedades específicas Asociaciones *tarea pasos *tarea roles *tarea productos de trabajo *tarea guías *tarea categorías *rol productos de trabajo *rol guías *rol categorías *producto de trabajo guías *producto de trabajo categorías * guía - guías
PROCESOS Primero se puebla el contenido de método y en segundo lugar se combinan y reutilizan dichos elementos para ensamblar actividades y procesos. Aspectos generales *definición de trabajo *elemento de desglose *Varias apariciones *Opcional *Planeado Elementos de desglose de trabajo *Actividad *se puede repetir *Continuo *Condicionado por sucesos *Contenido de método en uso *fases, iteraciones e hitos
Tipo de procesos * Patrón de proceso *Proceso para despliegue *Plantilla para planificación de procesos Reutilización y variabilidad *Variabilidad de elementos de contenido *No aplicable *Contribuye *Amplia *Remplaza *Amplia y remplaza *Reutilización y variabilidad de elemento de proceso *No aplicable *Extensión *Contribución local *Remplazo local.
EL EDITOR EPF COMPOSER Herramienta gratuita, desarrollada dentro del entorno ECLIPSE que sirve para editar fragmentos de método, procesos o metodología y generar automáticamente la documentación adecuada en el para la web. Dichos fragmentos se almacenan en formato XML y al estar basados en SPEM 2 pueden ser reutilizados en cada vez más herramientas CASE. Además, de las herramienta Composer el Eclipse Process Framework también incluye las implementaciones públicas, abiertas y gratuitas de varias metodologías: OpenUp, SCRUM y XP.