25
SPEM (Software Process Engineering Metamodel): Uma Linguagem para Modelagem de Processos de Software Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

  • Upload
    sienna

  • View
    21

  • Download
    1

Embed Size (px)

DESCRIPTION

SPEM ( Software Process Engineering Metamodel ): Uma Linguagem para Modelagem de Processos de Software. Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006. Roteiro. Processo de Software Visão geral de Modelagem Visão geral de SPEM Processo definido usando SPEM - PowerPoint PPT Presentation

Citation preview

Page 1: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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

Heron Vieira Aguiar“Seminário da disciplina MDA”

Julho de 2006

Page 2: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Roteiro

Processo de Software Visão geral de Modelagem Visão geral de SPEM Processo definido usando SPEM Ferramentas CASE Limitações de SPEM

Page 3: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Processo de Software

Conjunto de Atividades executadas para desenvolver, manter e gerenciar sistemas de software.

Elementos comuns a um processo de Software: atividades, papéis e artefatos.

Page 4: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Processo de Software

Elementos comum ao processo

Role

activity1(WorkProduct1) activity2(WorkProduct2)

Role

Activity 0..*

1

0..*

1

Performs

WorkProduct 0..* 1 0..* 1 IsResponsibleFor

0..*

0..*

0..*

input 0..*

Uses

0..*

0..*

0..*

output 0..*

Produces

Page 5: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Modelagem de Processos de software

Objetivos Facilitar o entendimento do processo Facilitar a adaptação do processo Facilitar gerência do processo

Page 6: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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, E3, SPEM

Page 7: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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 versão 1.1.

SPEM é um meta-modelo que define estereótipos UML para a modelagem de processos de software

Page 8: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Origem do SPEM Foi 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.

Page 9: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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

M3

M2

M1

M0

MOF

SPEM,UML

e.g., RUP,Open, XP

Process as really enacted on a given project

MetaObject Facility

Process Metamodel

Process Model

Performing Process

Page 10: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Características de SPEM

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 meta-modelo MOF.

Uso de OCL.

Page 11: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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”

Page 12: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Especificação de SPEM 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 SPEM_Foundation

<<metamodel>>

SPEM_Extensions<<metamodel>>

Page 13: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Especificação de SPEM - Estrutura de Pacotes

Page 14: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Especificação de SPEM Detalhamento do pacote ProcessStructure

Page 15: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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

Page 16: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Alguns estereótipos de SPEM

WorkProduct: É 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:

Page 17: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Alguns estereótipos de SPEM

Activity: Descreve uma determinada atividade que um papel realiza dentro de um processo

Estereótipo:

ProcessRole: Descreve os papéis, responsabilidades e competências que um determinado indivíduo tem dentro do processo

Estereótipo:

Page 18: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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:

Page 19: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

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:

Page 20: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Exemplo de SPEM

RUP definido com SPEM

Page 21: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

SPEM 2.0 A caminho!!! RFP submetida a OMG em nov/2004 Requisitos:

Alinhamento com a UML 2.0 Revisão do conceito de componente Reescrever de forma que um usuário com

pouca experiência em UML possam entender

Estender para Processo de Execução

Page 22: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Ferramentas CASE Apresentação de um exemplo de

modelagem processo usando SPEM na ferramenta

(Sparx Systems)

IRIS Process Author (Osellus) Rational Method Composer (IBM)

Page 23: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Limitações de SPEM

Não aborda a execução do processo.

Pouco validado em casos reais.

Page 24: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Fim

Obrigado !!!

Heron [email protected]

Page 25: Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006

Referências Especificação de SPEM

http://www.omg.org/ RFP SPEM 2.0 (OMG)

http://www.omg.org/cgi-bin/doc?ad/2004-11-4

Enterprise Architec http://www.sparxsystems.com/