Linhas de Produtos de Software. Professor: Uirá DIMAp / UFRN, 2009.2



Documentos relacionados
Uma Abordagem de Engenharia de Requisitos Para Linhas de Produtos de Software

A Semi-Automatic Strategy to Identify Crosscutting Concerns in PL-AOVgraph Requirement Models

Transformação de um Modelo de Empresa em Requisitos de Software

1. Introdução. Anderson Fonseca e Silva 1, Vinicius Cardoso Garcia 2

Elaboração de Especificações de Casos de Uso para Linhas de Produto de Software Baseada em Fragmentos

Uma ferramenta para rastreabilidade de core assets em linha de produtos de software

Process Tailoring. Ana Luiza Dallora Moraes Felipe Madureira Fonseca. COS723 - Reutilização de Software Toacy Oliveira

Desenvolvimento de software orientado a características e dirigido por modelos

Fernanda E. Espinola Andréia F. da Silva. Universidade Anhembi-Morumbi

Usando RDL para Derivação de Produtos em uma Linha de Produtos de Software

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004

UMA ABORDAGEM DE PROJETO ARQUITETURAL BASEADO EM COMPONENTES NO CONTEXTO DE ENGENHARIA DE DOMÍNIO

UML e a Ferramenta Astah. Profa. Reane Franco Goulart

Introdução a UML. Hélder Antero Amaral Nunes haanunes@gmail.com

Linhas de Produto de Software

REPRESENTAÇÃO DE REQUISITOS VARIÁVEIS COM UML, SEGUINDO O MÉTODO ICONIX

Descrição Geral da Mobile Media

Desenvolvimento de Software Orientado a Características e Dirigido por Modelos Revisitado

Grupo de Ferramentas & Implementação. Uirá Kulesza DIMAp/UFRN

PROVA DISCURSIVA (P )

Linha de Produtos de Software (SPL) em Java: Teoria e Prática

Análise e Projeto de Sistemas. O que é modelagem. O que é modelagem. Tripé de apoio ao desenvolvimento. Notação: UML. Ferramenta: Rational Rose.

Aula 5 UML: Casos de Uso

Universidade Estadual de Maringá Centro de Tecnologia Departamento de Informática Programa de Pós-Graduação em Desenvolvimento de Sistemas para Web

Engenharia de Linha de Produtos de Software e o Processo de Análise Automática: uma visão geral

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

build UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix.

Orientação a Objetos I

Requisitos de Software

Ciência da Computação ENGENHARIA DE SOFTWARE. UML-Unified Modeling Language Linguagem de Modelagem Unificada

Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software

5 Um Modelo Generativo Orientado a Aspectos

Processo de Desenvolvimento de Software Linhas de Produtos de Software

Revisão Sistemática da Literatura sobre Métodos de Localização de Características

Software Architectures ACM Reference Format

Modelagem Flexível para Processos de Negócio. Resultados de um Estudo Experimental

Investigando o uso de conceitos de Linhas de Produto de Software para o reúso de Modelos de Processos de Negócios

Desempenho e Segurança em Sistemas de Informação. Profa.: Me. Christiane Zim Zapelini christianezapelini@nwk.edu.br

Model-Driven Engineering Geração de modelos de software e especificações usando a plataforma IBM

O GERENCIAMENTO DE REQUISITOS E A SUA IMPORTÂNCIA EM PROJETOS DE DESENVOLVIMENTO DE SOFTWARE

SEMÂNTICA NA WEB BRASILEIRA

PL-SCIENCE: CONECTANDO ONTOLOGIAS E MODELOS DE FEATURES EM UMA LINHA DE PRODUTO PARA APLICAÇÕES CIENTÍFICAS

3.1 Definições Uma classe é a descrição de um tipo de objeto.

UML: Casos de Uso. Projeto de Sistemas de Software

Um Processo de Engenharia de Domínio com foco no Projeto Arquitetural Baseado em Componentes

Curso: Engenharia de Software com Ênfase em Padrões de Software (UECE Universidade Estadual do Ceará) RUP

Curso Superior de Tecnologia em Banco de Dados e Sistemas para Internet Disciplina: Projeto Integrador III Prof.: Fernando Hadad Zaidan

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

ANÁLISE DE REQUISITOS EM LINHAS DE PRODUTO DE SOFTWARE

Engenharia de Software Tema da Aula Definição e Especificação de Requisitos I - Conceitos. Exercício

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

Engenharia de Ontologias Seminário UPON

Uma abordagem semi-automática para a manutenção de links de rastreabilidade

Análise de Sistemas. Contextualização. O Sucesso. Aula 4. Instrumentalização. Aula 4. Prof. Emerson Klisiewicz. Clientes satisfeitos

A definição do escopo trata-se de um processo onde é realizada uma descrição detalhada do projeto e do produto a ser desenvolvido;

Glossário de Terminologia Engenharia de Requisitos

Engenharia de Domínio baseada na Reengenharia de Sistemas Legados

Projeto de Sistemas I

UML Linguagem de Modelagem Unificada

! Tecnologia de Processos de Software. ! Visao Geral. ! WebAPSEE-PML. ! Definição. ! Atividades. ! Conexões. ! Artefatos. ! Recursos. !

Programação orientada a objetos usando a linguagem C++ CDTN Centro de Desenvolvimento de Tecnologia Nuclear

Table 1. Dados do trabalho

ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

Checklist-based Inspection Technique for Feature Models Review

Desenvolvimento estruturado versus orientado a objetos.

Instituto de Computação, Universidade Federal do Amazonas (UFAM) Manaus-AM, Brasil

Apoio a Configuração de Processos de Negócio

Análise e Projeto de Sistemas

rosefib.webnode.com.br

Um Estilo Arquitetural para Linhas de Produtos de Software

Odyssey-MDA: Uma Ferramenta para Transformações de Modelos UML

Integrando o Framework I* com a Gerência de Risco

2 Engenharia de Software

UML Visão Geral. Índice. Introdução. Diagramas. Modelos e diagramas. Elementos de modelação. Referências

UNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS UNIDADE ACADÊMICA DE GRADUAÇÃO CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS GUILHERME ERMEL

Professor: Curso: Disciplina: Aula 4-5-6

SIMPROS /01/2008

Model Assets: Um padrão de arquitetura de utilização de técnicas de MDE para geração de artefatos

Jugurta Lisboa Filho

Programa do Curso de Pós-Graduação Lato Sensu MBA em Engenharia de Software Orientada a Serviços (SOA)

PLANO DA SITUAÇÃO DE APRENDIZAGEM CURSOS TÉCNICOS. 2. Tipo Estudo de Caso X Situação Problema Pesquisa Projeto

3. Fase de Planejamento dos Ciclos de Construção do Software

SISTEMAS DE INFORMAÇÃO GERENCIAIS

ENGENHARIA DE SOFTWARE ExtremePlanner

Linguagem de Modelagem Unificada

Maratona CBOK Brasília, 23 de outubro de 2012

AVALIAÇÃO DE INTERFACES DE FERRAMENTAS CASE PARA ELABORAÇÃO DE DIAGRAMAS DA UML RESUMO

DOCUMENTANDO VARIABILIDADE EM CASOS DE USO EM LINHAS DE PRODUTOS DE SOFTWARE

Desenvolvimento de uma Técnica de Inspeção de Diagrama de Estados com apoio dos Diagramas de Atividades descrevendo os Casos de Uso do Software

são capturados de forma sistemática e intuitiva por meio de casos de uso.

Utilizando os Diagramas da UML (Linguagem Unificada de Modelagem) para desenvolver aplicação em JSF

Fase 1: Engenharia de Produto

Um processo para construção de software mais transparente

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

Requisitos do usuário, do sistema e do software [Sommerville, 2004]

Análise e Projeto Orientados a Objeto

UML - Unified Modeling Language

Métodos e Técnicas de Desenvolvimento de Linha de Produto de Software para Sistemas E-Commerce: uma Revisão Sistemática

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP

Transcrição:

Linhas de Produtos de Software Professor: Uirá DIMAp / UFRN, 2009.2

Aula 4: Modelagem de Variabilidades em Requisitos

Modelagem de Requisitos Documentação textual Não limita a expressividade dos requisitos especificados Pode gerar ambiguidade Requisitos baseado em modelos Conjunto de elementos e regras de composição bem definidos (metamodelo, constraints) Possui expressividade mais restrita

Variabilidade em Requisitos Textuais Exemplo: Não fica claro se ambos tipos de câmeras são suportadas ou se são mutualmente exclusivos...

Variabilidade em Requisitos Textuais Definição de relações explícitas com o modelo de variabilidades Mais expressividade e permite relacionar várias porções de requisitos a um mesmo feature.

Variabilidades em Modelos de Casos de Uso Modelagem de Cenários com Tabelas

Variabilidades em Modelos de Casos de Uso Modelagem de Cenários com Diagramas de Seqüência

Variabilidades em Modelos de Casos de Uso Modelagem de Cenários com Diagramas de Casos de Uso

Rastreamento de Variações Necessidade de propagar variações que ocorrem em uma dada representação para outras Definição de links de rastreamento entre mod. de variabilidades e requisitos permite avaliar se variabilidades estão sendo especificadas de forma consistente Tais links podem ser usados também em atividades de análise de impacto de mudança

Rastreamento de Variações

Rastreamento de Variações

Abordagens para Rastreabilidade Recentemente, várias abordagens foram desenvolvidas para especificar links de rastreamento/dependências entre modelos de requisitos e de variabilidades Abordagens Textuais PLUSS MSVCM Abordagens baseadas em Modelos Model Templates VML4RE

PLUSS Oferece suporte para gerência de variações em casos de uso Permite relacionar a features a: Um caso de uso, cenário ou passo de um cenário Permitir definir parâmetros nos casos de uso Texto específico variando

Implementação

MSVCM Modeling Scenario Variability as Crosscutting Mechanisms (MSVCM) Oferece suporte para gerência de variações em casos de uso, usando o conceito de aspectos (early aspects) Scenarios advices são usados para estender scenarios base Implementação: Bibliotecas Haskell para representar e validar modelos de features

Composição com Scenarios parâmetro variation point composition

Composição com Scenarios parâmetro variation point composition

Composição com Scenarios variation point composition

Modelo de Feature Produtos Mapeamento (Conhecimento de configuração)

Weaving Process

Model Templates Oferece suporte para gerência de variações em modelos de forma geral Permitir criar conjunto de anotações em elementos de modelo que indicam dependência para um dado feature Implementação: FMP (Feature Modeling Plugin) Rational Software Modeler Anotações modeladas como estereótipos

Exemplo: Model Templates

Exemplo: Model Templates

Exemplo: Meta-expressions

Model Templates: Visão Geral

VML4RE Variability Modeling Language For Requirements (VML4RE) Linguagem para composição de requisitos em LPS www.ample-project.net Propósitos: Suportar a definição de relações entre features (modelo de variabilidades) e requisitos (modelos de requisitos) Especificar a composição de modelos de requisitos para derivar produtos específicos

VML4RE: Visão Geral

Exemplo da VML4RE

Exemplo da VML4RE

Exemplo da VML4RE

Referências PLUSS M. Eriksson, J. Börstler & K. Borg (2006): Software Product Line Modeling Made Practical - An Example from the Swedish Defense Industry, Communication of the ACM (CACM), vol. 49(12), 49-54 M. Eriksson, J. Börstler& K. Borg (2005): The PLUSS Approach - Domain Modeling with Features, Use Cases and Use Case Realizations, Proceedings of the 9'th International Conference on Software Product Lines (SPLC'05), LNCS, Vol. 3714, Springer-Verlag, pp. 33-44

Referências PLUSS M. Eriksson, J. Börstler & K. Borg (2006): Software Product Line Modeling Made Practical - An Example from the Swedish Defense Industry, Communication of the ACM (CACM), vol. 49(12), 49-54 M. Eriksson, J. Börstler& K. Borg (2005): The PLUSS Approach - Domain Modeling with Features, Use Cases and Use Case Realizations, Proceedings of the 9'th International Conference on Software Product Lines (SPLC'05), LNCS, Vol. 3714, Springer-Verlag, pp. 33-44

Referências MSVCM R. Bonifácio, P. Borba: Modeling scenario variability as crosscutting mechanisms. AOSD 2009: 125-136 Model Templates K. Czarnecki, M. Antkiewicz: Mapping Features to Models: A Template Approach Based on Superimposed Variants. GPCE 2005: 422-437 VML4RE M. Alferez, J. Santos, A. Moreira, A. Garcia, U. Kulesza, J. Araújo, V. Amaral. Multi-View Composition Language for Software Product Line Requirements. Software Language Engineering (SLE 2009)