SPEM (Software Process Engineering Metamodel)

Slides:



Advertisements
Apresentações semelhantes
Análise e Projeto Orientado a Objetos
Advertisements

RUP – Rational Unified Process
Engenharia de Software
UML no CICLO de DESENVOLVIMENTO
Rational Unified Process
UML Modelando um sistema.
O Processo Praxis 3.0 Processos de Software 25/03/2017
(Unified Modeling Language)
Rational Unified Process(RUP)
Engenharia de Software Professor Sandro de Paiva Carvalho.
RUP - Rational Unified Process
Projeto de Sistemas de Software
Metodologias Equipe do Curso de ES para SMA
RUP Rational Unified Process (Processo Unificado de Desenvolvimento da Rational) 1.
MO409 / Engenharia de Software I - 1º Semestre / Prof. Eliane 1 1ª Apresentação (A1) Modelos de Processos de Software RA: / Edson Amorina.
Introdução a diagrama de classes e UML
Análise Estruturada O mais amplamente usado dos métodos de modelagem de requisitos Modelos que retratam fluxo e o conteúdo da informação (dados e controle)
Análise e Projeto de Sistemas
Como Desenvolver Sistemas de Informação
Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador
Engenharia de Software e Sistemas de Informação e Gestão
1/22 Introdução aos Processos de Software © Alexandre Vasconcelos Centro de Informática da UFPE/ Qualiti Software.
Rational Unified Process
RUP - Cap. 2 – Os 4 P’s (Pessoas, Projeto, Produto e Processo)
Aula 1 Minicurso: Astah Ministrantes: André Martins; Camila Brondani;
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
Visão Geral do RUP.
Projeto de Sistemas de Software
Processos de Desenvolvimento de Software – Parte 2
UML Modelagem e Programação Orientada a Objetos
Modelagem de Negócio no RUP
Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006
Metodologias (Parte II) Viviane Torres da Silva
Especificação em Projeto de Sistemas
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Bruno Silva Desenvolvido a partir de
SPEM / EPF Composer Audrey Bezerra de Vasconcelos Qualidade de Software Prof. Alexandre Vasconcelos.
METODOLOGIA, MÉTODOS E FERRAMENTAS
Laboratório de Programação
Revisão 2º Bimestre Engenharia de Software I
Visão Geral sobre Ciclo de Vida de Software, Processos e RUP
Ferramentas de Suporte a MDD: Um Quadro Comparativo
Desenvolvimento de Software Dirigido a Modelos
Relação entre Requisitos e Arquitetura de Software num ambiente Multi-Agente SIRA Framework Análise dos temas de Lúcia Bastos e Turah Almeida Apresentação.
Ferramenta de Modelagem de Requisitos e Agentes (TAOM4e) Laís Xavier Prof.: Jaelson Castro.
UML e a Ferramenta Astah
Linguagem de Modelagem Unificada
CIn-UFPE1 © 2003, Alexandre Vasconcelos Visão Geral do RUP.
© Nabor C. Mendonça Processo / Metodologia de Desenvolvimento de Software.
Modelagem Orientada a Objetos Use-Case Modeling. Objetivos básicos de um modelo use-case n Descrever o que um novo sistema deve fazer n Descrever o que.
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
Análise e Projeto de Sistemas
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
UML Components MO409 – Eng. de Software Profa. Eliane Martins
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
IF 718 Análise e Projeto de Sistemas Augusto Sampaio Vitor Braga (Estágio docência) Camila Sá (Monitora) Parte do material cedido pela Qualiti Software.
SPEM (Software Process Engineering Metamodel): Uma Linguagem para Modelagem de Processos de Software.
Introdução O processo de design de software consiste de uma série de decisões de design que geralmente envolvem diferentes alternativas de solução, consideradas.
2005 Rodrigo Cavalcante Mendes Modelagem e Avaliação do CMMI no SPEM para Definição de um Meta- Processo de Software Graduando: Rodrigo.

Desenvolvimento de Software I
/ de Julho de UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Pós-Graduação em Ciência da Computação Tópicos Avançados.
/ de Abril de UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto.
1 Workshop GrecO 2005 ipPROCESS: Validação e Extensão do Processo Baseada em Estudos de Caso.
DEFINIÇÃO DE PROCESSO NO PROMODELLER Conceitos Introdutórios Fernando Bione
Transcrição da apresentação:

SPEM (Software Process Engineering Metamodel) Maria Jocelia Silva mjs2@cin.ufpe.br

Roteiro Introdução Visão geral de SPEM S-Tropos Conclusões 30/01/2007

Roteiro Introdução Visão geral de SPEM S-Tropos Conclusões 30/01/2007

SPEM é um meta-modelo Descreve a estrutura necessária para formalmente expressar processos de desenvolvimento. Descreve uma linguagem e esquema de representação para conteúdo metodológico e processos. 30/01/2007

Processos de Software Processos de software Desenvolvimento em cascata Processos ad-hoc Processos unificado Desenvolvimento de jogos Open source Processos ágeis 30/01/2007

Processos de Software Objetivos Facilitar o entendimento Documentados ou não Modelados ou não Objetivos Facilitar o entendimento Facilitar a adaptação Facilitar a gerência 30/01/2007

Processos de Software 30/01/2007

Processos de Software Elementos comuns em um processo: Atividades / Ações Pessoas / Atores / papeis. Artefatos / produtos de trabalho 30/01/2007

Modelagem Ao longo dos últimos anos surgiram diversas linguagens com o propósito de modelar processos de software Exs: DYNAMITE, E3, 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 seus elementos 30/01/2007

Roteiro Introdução Visão geral de SPEM S-Tropos Conclusões 30/01/2007

SPEM – Especificações técnicas SPEM surgiu com o propósito de criar um padrão para expressar qualquer processo de software. Oficializada em: Novembro de 2002 Versão oficial: 1.1 (06/01/2005) Versão Draft: 2.0 (usa UML profile 2.0) Especificação adotada pela OMG 30/01/2007

SPEM OMG (Object Management Group) Consórcio internacional de “industrias de computadores”, aberta a membros e não lucrativo. Fundada em 1989 Finalidade: estabelecer diretrizes e especificações pra prover um framework comum para o desenvolvimento de aplicações orientada a objetos. Suportada por 600 membros Membros: Fornecedores de sistemas, desenvolvedores de software, usuários 30/01/2007

SPEM 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. 30/01/2007

SPEM Estruturado como um UML profile (1.4) e prover um metamodelo baseado em MOF UML Profile Variação de UML que usa mecanismos de extensão de uma forma padronizada para um fim particular MOF (Meta-Object Facility) é uma tecnologia adotada pela OMG para definição de metadados. possui um conjunto de elementos de modelagem utilizados na construção dos metamodelos inclui regras para o seu uso. 30/01/2007

SPEM Arquitetura de modelagem definida pela OMG Conj. mínimo de elementos para descrever um processo de desenvolvimento de software. 30/01/2007

SPEM - Visão geral O meta-modelo SPEM é composto por 2 pacotes SPEM_Foundation Estende um subconjunto do meta-modelo da UML 1.4. (Data_Types, Core, Actions, State_Machines, Activity_Graphs, Model_management) SPEM_Extensions  Adiciona as construções e semânticas requeridas para a engenharia de processos de software 30/01/2007

SPEM – Extensões Elementos Básicos (External Description, Guidance) Dependências (Categorizes, Impacts, Import, Precedes, RefersTo, Trace) Estrutura do processo (WorkProduct, WorkDefinition, Activity, Step, ProcessRole) Componentes do processo (Package, ProcessComponent, Process, Discipline) Ciclo de vida do processo (Lifecycle, Phase, Iteration, Precondition, Goal) 30/01/2007

SPEM – Extensões Basic Elements: External Description: Descrição do elemento (conteúdo, nome, linguagem, formato) Guidance: Informações detalhadas do elemento (UML Profile, Checklist, Tool mentor, Guideline, Template, Estimate) 30/01/2007

SPEM – Extensões Estrutura do processo: WorkProduct: Partes tangíveis de informações produzidas, modificadas ou consumidas. Ex: "Design Model", “Software development plan”, “Risk Plan” Sinônimos: Artefatos, produtos. WorkDefinition: Descreve o trabalho realizado no processo. Ex: “Fluxo de trabalho do RUP” Activity and Step: Principal sub-classe de workdefinition Ex: “Find use case and actors” no RUP Sinônimo: Atividades (RUP), Tarefas (OPEN) 30/01/2007

SPEM – Extensões Estrutura do processo: ProcessPerformer: Executor em um conjunto de Workdefinition. ProcessRole: Executor de atividades. Ex: Architect, Analyst, Technical Writer, and Project Manager Sinônimo: Worker (RUP), Role (OPEN) 30/01/2007

SPEM – Extensões Componentes do processo: Package: É um recipiente que pode possuir e importar elementos do processo ProcessComponent: É um componente do processo. Process: O processo em si. Discipline: Categoriza atividades de acordo com um tema comum. Sinônimo: Core WorkFlow, category, phase, activity, domain. 30/01/2007

SPEM – Extensões Ciclo de vida do processo Lifecycle: Comportamento de um processo completo Phase: Divide o tempo entre dois marcos (milestones) Iteration: Conjunto de atividades (workdefinition) com um marco menor. Precondition and Goal: expressos em termos de estados do workproduct. Ex: Modelo de design no estado PRONTO (Pré-Cond) Ação de Revisão no estado PRONTO (Goal) 30/01/2007

SPEM – Extensões Dependências: Impacts: Entre WorkProducts Precedes: Entre WorkDefinitions Trace: Entre WorkDefinition para rastrear requisitos Import: Adiciona conteúdo de um package ao espaço de outro. Categorizes: Associa um elemento simples com um package. RefersTo: Elementos do processo podem estar contidos no mesmo processo 30/01/2007

SPEM – Notação Diagramas da UML podem ser usados para apresentar diferentes perspectivas de um modelo de processos Diagramas de classes Diagramas de pacotes Diagramas de atividades Diagramas de casos de uso Diagrama de sequência 30/01/2007

SPEM – Notação Diagramas de Classes 30/01/2007

SPEM – Notação Diagramas de Pacotes 30/01/2007

SPEM – Notação Diagramas de Casos de uso 30/01/2007

SPEM – Notação Diagramas de Atividades 30/01/2007

SPEM O objetivo de SPEM é suportar a definição de um processo de desenvolvimento de software incluindo aqueles processo que envolvem ou permitem o uso de UML, assim como o RUP. É possível usar em um processo de desenvolvimento de software orientado a agentes? 30/01/2007

Roteiro Introdução Visão geral de SPEM S-Tropos Conclusões 30/01/2007

S-Tropos Tropos é uma metodologia de desenvolvimento de software multiagentes (MAS). 2001, Toronto Castro, J., Kolp, M. and Mylopoulos Um agente é um sistema de computador situado em um ambiente, capaz de ações autônomas para atingir um dado objetivo. Um MAS é um conjunto de agentes que interagem entre si. agentes, organizações, comunicação, negociação and coordenação. 30/01/2007

S-Tropos Tropos: Early Requirements Late Requirements Architectural Design Detailed Design Tropos adota os conceitos oferecidos pelo i*, um framework baseado em conceitos, tais como Atores (agente, papel ou posição) e dependências entre os atores (Goal, softgoal, planos e recursos) 30/01/2007

S-Tropos 30/01/2007

S-Tropos S-Tropos: É uma formalização de um processo de desenvolvimento em espiral para desenvolvimento de softwares multiagente extendendo a metodologia Tropos. 30/01/2007

S-Tropos - Disciplinas Early Requirements Late Requirements Achitectural Design Detailed Design Development Validation Deployment Risk an PM 30/01/2007 Diagrama de pacotes

S-Tropos – Fases e WorkDefinitions 30/01/2007 Diagrama de caso de uso

S-Tropos – Fases e WorkDefinitions 30/01/2007

S-Tropos – Early Requirements Package ProcessRoles WorkProducts Guideline 30/01/2007

S-Tropos – Early Requirements WorkDefinition 30/01/2007 Diagrama de atividades

S-Tropos – Early Requirements WorkFlow 30/01/2007

S-Tropos – Early Requirements WorkFlow 30/01/2007

S-Tropos – Early Requirements WorkProduct 30/01/2007

S-Tropos – Comentários Metodologias orientada a agentes ainda estão em fase de estabilização. É uma metodologia usada para ambientes complexos. Necessita urgentemente de padronizações, ganho de produtividade, eficiência, frameworks de desenvolvimento bem projetados, etc. A aplicação do SPEM à metodologia Tropos permitiu a abstração da complexidade da metodologia e uma melhor compreensão das fases. 30/01/2007

Roteiro Introdução Visão geral de SPEM S-Tropos Conclusões 30/01/2007

SPEM Ferramentas IBM Rational Process Workbench: é uma ferramenta construída como um Rational Rose add-in. IRIS Process automation suite (www.osellus.com): 100% compatível com SPEM Eclipse Process framework 30/01/2007

O futuro SPEM 2.0 RFP está em processo de aprovação Alinhamento com UML 2.0 Identificação de um conjunto de elementos UML padrão Melhorias para aplicações em projetos específicos e automação Alinhamento com o Business Process Definition Metamodel. 30/01/2007

Comparação de SPEM 1.0 e SPEM 2.0 - Poucas implementações - Não foi reconhecido pelos analistas da industria - A semântica ambígua e difícil de entender e aplicar na prática SPEM 2.0 1. Separação mais clara da definição do conteúdo metodológico do processo de desenvolvimento 2. Manutenção consistente de muitos processo de desenvolvimento alternativos 3. Diferentes modelos de ciclos de vida 4. Processo mais flexível e mecanismos de extensibilidade 5. Múltiplas visões do conteúdo do processo 6. Padrões reusáveis de melhores práticas para montagem de processos rápidos 7. Componentes de processos reusáveis e substituíveis 30/01/2007

Estudos de caso no SPEM 2.0 Fujitsu DMR Macroscope Microsoft Solution Framework Agile case study Eclipse Process Framework OpenUP/Basic MDA process (OpenUP/MDD) IBM Tivoli Unified Process (ITIL-based process) PMBOK (Sierra System Process Interface Portals) SOA Governance Lifecycle and Management Method OnDemand Process Asset Library (CMM-based Application Services Process) E&TS Application Specific Integrated Circuits Method ISPW-6 Software Process Example Money-Lover (Process for Investment Clubs) 30/01/2007

Referências OMG (http://www.omg.org) SPEM 1.1 (http://www.omg.org/docs/formal/05-01-06.pdf) Wautelet Y., Kolp M. and Achbany Y.: S-Tropos, An Iterative SPEM-Centric Software Project Management Process, Working Paper IAG (2005). Wooldridge, M.: An Introduction to MultiAgent Systems. John Wiley and sons, LTD, Chichester, England (2002). Eclipse Modeling Project (http://www.eclipse.org/modeling) Eclipse Process Framework Project ( http://www.eclipse.org/epf/) Osellus (http://www.osellus.com/) SPEM 2.0 RFP ad/2004-11-04: 3rd Revised Submission (2006) 30/01/2007

SPEM (Software Process Engineering Metamodel) Maria Jocelia Silva mjs2@cin.ufpe.br