Supporting Use Case Based Requirements Engineering David Marques Filipe Garcês Ricardo Cruz.

Slides:



Advertisements
Apresentações semelhantes
Aula 8 Contratos.
Advertisements

APSOO Aula 03.
Rational Unified Process
Engenharia de Software
ENGENHARIA DE REQUISITOS
Linguagem de Montagem Visão geral.
Especificação de Requisitos
O Processo Praxis 3.0 Processos de Software 25/03/2017
(Unified Modeling Language)
Identificando requisitos
Engenharia de Software
Engenharia de Software
Adriano Teixeira João Vide Luís Silva Maria Pedroto
Dispositivos lógicos programáveis (DLP)
Projeto de Sistemas de Software
Projeto de Sistemas de Software
Um Processo Baseado em MDA para a Especialização de Mecanismos de Persistência Fabio Seixas Marques Seminário LES – 7 de abril de.
Camila R. Rocha RA: Silvia C. M. Soares RA: Disciplina: Engenharia de Software I Professora: Eliane Martins SDL Specification and Description.
Componentes: A Abordagem Catalysis
Metodologias Orientadas a Agentes
Introdução a diagrama de classes e UML
Engenharia de Requisitos
Uma Ferramenta para Geração Automática de Requisitos a partir de Modelos CSP Glaucia Peres e Alexandre Mota 06/out/2007.
Análise e Projeto de Sistemas
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador
Especificação de Requisitos em PIT-RSL
Modelagem para Web Aula de 11/04/2011.
Uma visão geral Grupo: Alexandre Henrique Vieira Soares
Laboratórios de Informática IV Projecto 6 : Apresentação da 2ª Fase
Análise e Projeto de Sistemas de Informação Orientados a Objeto
Projeto de Sistemas de Software
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
Arquiteturas de Referência
Especificação de Requisitos de Software - ERSw
Fase de Elaboração: Fluxo de Requisitos
Processo Praxis – Fase de Concepção
MAS-ML Tool: Um Ambiente de Modelagem de Sistemas Multi-Agentes
LABORATÓRIOS DE INFORMÁTICA IV ENGENHARIA DE SOFTWARE: DA TEORIA À PRÁTICA GRUPO 13.
Fase de Elaboração: Fluxo de Análise Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
OS MODELOS O modo de implementação do trabalho de projecto, como metodologia de aprendizagem tem sido objecto de várias aproximações que se centram em.
Detalhes sobre o curso
Casos de Uso no Engenharia de Software e Sistemas {abab, dtvp, jmmn, mscla, rmb2,
ANÁLISE ESTRUTURADA DE SISTEMAS
CONSTRUÇÃO DE UM PORTAL QUE APÓIE A SELEÇÃO E IMPLANTAÇÃO DE SISTEMAS ERP DO TIPO SL/CA, Engenharias. Nome(s) do(s) autor(es), Diogo Domingos Cedório e.
METODOLOGIA, MÉTODOS E FERRAMENTAS
Métodos Formais.
Revisão 2º Bimestre Engenharia de Software I
Processos de Software.
Requisitos de Software
Ferramentas de Suporte a MDD: Um Quadro Comparativo
Desenvolvimento de Software Dirigido a Modelos
O Sistema TeleMicro Marcelo Fantinato Tarcisio da Rocha Profa. Eliane Martins Maio de 2002 Instituto de Computação - Unicamp Especificação e Validação.
Linguagem de Modelagem Unificada
Diagramas de Caso de Uso
Engenharia de Requisitos
Gestão da Configuração do Software
Mestrando: Pedro Barbosa Cordeiro Orientador: Bernardo Lula Júnior
Modelação Aula T15 Modelação Conceptual de Sistemas Revisão do Comportamento OCL – Object Constraint Language José Borbinha.
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.
1 Linguagens de Programação Pedro Lopes 2010/2011.
André Drummond RA Danilo Benzatti RA
Sistemas de Informação
Programação Pragmática Carla Maria Pinheiro. 05/11/2004 Tópicos Avançados Engenharia de Software 3 Agenda O que é Programação Pragmática? Programador.
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
Testes (verificação e validação)
Aula 02 de Eng. de Requisitos
APS II Análise e Projeto de Sistemas de Informação II
OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE.
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.
Transcrição da apresentação:

Supporting Use Case Based Requirements Engineering David Marques Filipe Garcês Ricardo Cruz

Conteúdos Contexto Motivação Estado da arte Principais resultados Conclusões Contexto Motivação Estado da arte Principais resultados Conclusões ERSS

Contexto - Informações Autor: Stéphane S. Somé Ano: 2005 Publicação: Information and software technology 48 (2006) Autor: Stéphane S. Somé Ano: 2005 Publicação: Information and software technology 48 (2006) ERSS3

Contexto - Temas Engenharia de requisitos Linguagem Natural UML Modelo de domínio Casos de uso Modelo de estados Prototipagem Engenharia de requisitos Linguagem Natural UML Modelo de domínio Casos de uso Modelo de estados Prototipagem ERSS4

Motivação Engenharia de requisitos é uma tarefa critica Casos de Uso e UML com grande aceitação Processo manual Processo informal Engenharia de requisitos é uma tarefa critica Casos de Uso e UML com grande aceitação Processo manual Processo informal ERSS5

Motivação Simulação por prototipagem é um processo custoso Verificação tardia entre requisitos e especificação pretendida Verificação de consistência entre casos de uso é difícil Verificação do comportamento global é quase impossível Simulação por prototipagem é um processo custoso Verificação tardia entre requisitos e especificação pretendida Verificação de consistência entre casos de uso é difícil Verificação do comportamento global é quase impossível ERSS6

Estado da arte Linguagem natural para descrição de casos de uso Trabalhos efectuados por: Rolland & Ben Achour Fantechi Cockburn Padrões de linguagem Evitar erros e ambiguidades Linguagem natural para descrição de casos de uso Trabalhos efectuados por: Rolland & Ben Achour Fantechi Cockburn Padrões de linguagem Evitar erros e ambiguidades ERSS7

Estado da arte Composição de cenários Caso de uso é composto por um ou mais cenários Representados de forma gráfica (diagramas de sequência,…) Play-in/Play-out (Harel and Marelly) Composição de cenários Caso de uso é composto por um ou mais cenários Representados de forma gráfica (diagramas de sequência,…) Play-in/Play-out (Harel and Marelly) ERSS8

Estado da arte Vista do sistema em Grey box/ Black box UML: diagramas de classes, de casos de uso, de estados REST (Requirements Engineering with Scenario Tool) Vista do sistema em Grey box/ Black box UML: diagramas de classes, de casos de uso, de estados REST (Requirements Engineering with Scenario Tool) ERSS9

Nova aproximação Processo formal Processo automático Apoiado por uma ferramenta: UCEd Clarificação dos requisitos Processo formal Processo automático Apoiado por uma ferramenta: UCEd Clarificação dos requisitos ERSS10

Sintaxe abstracta dos casos de uso Sintaxe baseado no template de Cockburn Dois tipos de casos de uso: normal e extensos Cada caso de uso é um tuplo com titulo, passos, alternativas, pré- condição e pos-condição Definição completa e não ambigua. Sintaxe baseado no template de Cockburn Dois tipos de casos de uso: normal e extensos Cada caso de uso é um tuplo com titulo, passos, alternativas, pré- condição e pos-condição Definição completa e não ambigua ERSS11

Sintaxe abstracta dos casos de uso ERSS12

Linguagem natural Casos de uso definidos por dois componentes básicos: operações e condições Gramática inglesa para definir a sua descrição textual Módulo de Edição de casos de uso no UCEd Verificação automática da sintaxe Casos de uso definidos por dois componentes básicos: operações e condições Gramática inglesa para definir a sua descrição textual Módulo de Edição de casos de uso no UCEd Verificação automática da sintaxe ERSS13

Linguagem natural ERSS14

Modelo de domínio Extensão do diagrama de classes UML Serve de dicionário Define os conceitos do sistema e as suas relações Cada conceito é definido por: Valores possíveis Operações possíveis Extensão do diagrama de classes UML Serve de dicionário Define os conceitos do sistema e as suas relações Cada conceito é definido por: Valores possíveis Operações possíveis ERSS15

Modelo de domínio Integrado no UCEd Possibilidade de criação manual do modelo ou Criação automática a partir dos casos de uso Verificação constante da consistência entre casos de uso e modelo de domínio Integrado no UCEd Possibilidade de criação manual do modelo ou Criação automática a partir dos casos de uso Verificação constante da consistência entre casos de uso e modelo de domínio ERSS16

Modelo de estados Geração feito por um algoritmo Gera todos os cenários possíveis Pode conter sequências inválidas UCEd integra os casos de uso e o modelo de domínio e gera o modelo de estados Geração feito por um algoritmo Gera todos os cenários possíveis Pode conter sequências inválidas UCEd integra os casos de uso e o modelo de domínio e gera o modelo de estados ERSS17

Simulação UCEd possui um módulo de simulação Validação feita pelo modelo de estados gerado Simulação pode ser feita muito cedo Possibilidade de ver o comportamento global do sistema Interface gráfica UCEd possui um módulo de simulação Validação feita pelo modelo de estados gerado Simulação pode ser feita muito cedo Possibilidade de ver o comportamento global do sistema Interface gráfica ERSS18

Simulação ERSS19

Nova aproximação Nova aproximação ao processo de engenharia de requisitos ERSS20

Conclusões Formalização do processo de engenharia de requisitos Visão unificada dos requisitos Aplicação simples que integra todos os passos Verificação automática de erros Formalização do processo de engenharia de requisitos Visão unificada dos requisitos Aplicação simples que integra todos os passos Verificação automática de erros ERSS21

Futuro Introdução de notações personalizadas nos casos de uso Suporte para requisitos não-funcionais Integração da OCL (Object Constraint Language) Transição da fase de requisitos para fase de desenho (Casos de uso para cenários) Introdução de notações personalizadas nos casos de uso Suporte para requisitos não-funcionais Integração da OCL (Object Constraint Language) Transição da fase de requisitos para fase de desenho (Casos de uso para cenários) ERSS22

Questões Modelo de estados é util sendo que sequências inválidas têm de ser removidas manualmente? Poderá usar-se esta solução em qualquer contexto? Como proceder num ambiente em que não o inglês? Formalização do processo não torna o processo muito restrictivo? Modelo de estados é util sendo que sequências inválidas têm de ser removidas manualmente? Poderá usar-se esta solução em qualquer contexto? Como proceder num ambiente em que não o inglês? Formalização do processo não torna o processo muito restrictivo? ERSS23