SPEM Software Process Engineering Metamodel Uma Linguagem para

  • Slides: 22
Download presentation
SPEM (Software Process Engineering Metamodel): Uma Linguagem para Modelagem de Processos de Software

SPEM (Software Process Engineering Metamodel): Uma Linguagem para Modelagem de Processos de Software

Tópicos da aula Processos de Software Visão geral de Modelagem Visão geral de SPEM

Tópicos da aula Processos de Software Visão geral de Modelagem Visão geral de SPEM Modelagem de XP Usando o SPEM

Processos de Software Conjunto de Atividades executadas para desenvolver, manter e gerenciar sistemas de

Processos de Software Conjunto de Atividades executadas para desenvolver, manter e gerenciar sistemas de software. Tais Atividades são executadas por pessoas (atores) que possuem um determinado papel no processo. As atividades podem atualizar, criar e usar artefatos durante a sua execução Elementos comuns a um processo de Software: atividades, papéis, atores e artefatos. Como descrever o processo e a inter-relação

Um pequeno Exemplo

Um pequeno Exemplo

Modelagem de Processos de software Objetivos – Facilitar o entendimento do processo – Facilitar

Modelagem de Processos de software Objetivos – Facilitar o entendimento do processo – Facilitar a adaptação do processo – Facilitar gerência do processo

Modelagem de Processos Um processo pode ser descrito textualmente ou através da utilização de

Modelagem de Processos Um processo pode ser descrito textualmente ou através da utilização de modelos. Ao longo dos últimos anos surgiram diversas linguagens com o propósito de modelar processos de software – Exs: DYNAMITE, E 3, SPEM Estas linguagens possuem muitas semelhanças e no geral querem capturar a visão dinâmica e estrutural do processo de software. – Dinâmica Comportamento do processo ao longo do tempo – Estrutural Inter-relacionamento entre os

SPEM Em Novembro de 2002 a meta-linguagem Software Process Engineering Metamodel (SPEM) foi oficializada

SPEM Em Novembro de 2002 a meta-linguagem Software Process Engineering Metamodel (SPEM) foi oficializada como um padrão da OMG e encontra-se atualmente na sua versão 1. 0. SPEM é um meta-modelo que define estereótipos UML para a modelagem de processos de software Alguns diagramas da UML podem ser usados para a modelagem de Processos: Atividade, Classes, Use Case, Pacote, Seqüência e

Quem está por trás SPEM é um padrão OMG que resultou de um esforço

Quem está por trás SPEM é um padrão OMG que resultou de um esforço coletivo de pesquisadores e consultores, tais como: – Empresas: IBM, Rational, Computer Associates, Toshiba, Siemens, etc. – Pesquisadores: Philippe Kruntchen, Craig Lairman, e diversos outros. As empresas focam-se agora em construir ferramentas para dar apoio a SPEM.

Como SPEM foi definida SPEM adota uma abordagem OO com base na UML para

Como SPEM foi definida SPEM adota uma abordagem OO com base na UML para modelar processos de Software Sua definição se baseia em uma arquitetura de 4 níveis de modelagem definida pela OMG

Descrição dos níveis M 0 Descreve um processo instanciado para um projeto específico M

Descrição dos níveis M 0 Descreve um processo instanciado para um projeto específico M 1 Descreve um Modelo de Processo como RUP, OPEN, XP, etc. M 2 Descreve o nível de meta-modelo do processo M 3 Descreve o meta-modelo baseado no MOF O Meta-Object Facility (MOF) é a tecnologia adotada pela OMG para definir metadados SPEM usa um subconjunto da UML para representar seus elementos como um metamodelo MOF.

Descrição dos níveis A especificação de SPEM está estruturada como um perfil UML (UML

Descrição dos níveis A especificação de SPEM está estruturada como um perfil UML (UML profile). Um UML-profile é um conjunto de uma ou mais extensões da semântica de UML com a intenção de customizá-la para um domínio ou propósito particular, como, por exemplo, para modelagem de processos no caso de SPEM

Especificação de SPEM Visão geral O meta-modelo SPEM é composto por 2 pacotes –

Especificação de SPEM Visão geral O meta-modelo SPEM é composto por 2 pacotes – SPEM_Foundation Estende um subconjunto do meta-modelo da UML 1. 4. – SPEM_Extensions Adiciona as construções e semânticas requeridas para a engenharia de processos de software

Especificação de SPEM - Estrutura de Pacotes

Especificação de SPEM - Estrutura de Pacotes

Especificação de SPEM Detalhamento do pacote Process. Structure

Especificação de SPEM Detalhamento do pacote Process. Structure

Modelando com SPEM Como os usuários de SPEM (Engenheiros de Processo) usam SPEM? –

Modelando com SPEM Como os usuários de SPEM (Engenheiros de Processo) usam SPEM? – Através de diagramas UML Estereotipados – SPEM define estereótipos para seus elementos de modelagem

Alguns estereótipos de SPEM Work. Product: É uma descrição de algo que contém informação

Alguns estereótipos de SPEM Work. Product: É uma descrição de algo que contém informação ou é uma entidade física produzida ou usada por atividades do processo. Ex: modelos, planos, documentos, etc. Estereótipo:

Alguns estereótipos de SPEM Activity: Descreve uma determinada atividade que um papel realiza dentro

Alguns estereótipos de SPEM Activity: Descreve uma determinada atividade que um papel realiza dentro de um processo Estereótipo: Process. Role: Descreve os papéis, responsabilidades e competências que um determinado indivíduo tem dentro do processo

Alguns estereótipos de SPEM Discipline: É um agrupamento coerente de elementos do processo (artefatos,

Alguns estereótipos de SPEM Discipline: É um agrupamento coerente de elementos do processo (artefatos, papéis, atividades) cujas atividades são organizadas segundo algum ponto de vista ou tema comum (Ex: Análise e Projeto, teste, implementação, etc. ). Estereótipo:

Alguns estereótipos de SPEM Guidance: É um elemento do modelo que se associa a

Alguns estereótipos de SPEM Guidance: É um elemento do modelo que se associa a outros elementos para ajudar ou instruir na sua realização. Pode representar técnicas, “guidelines”, “templates”, etc. Estereótipo:

Modelagem Dinâmica de XP em SPEM Diagrama de Atividades Estereotipad o

Modelagem Dinâmica de XP em SPEM Diagrama de Atividades Estereotipad o

Detalhamento - Fazer Explorações Iniciais Diagrama de classes estereotipado

Detalhamento - Fazer Explorações Iniciais Diagrama de classes estereotipado

Detalhamento - Codificar Diagrama de classes estereotipado

Detalhamento - Codificar Diagrama de classes estereotipado