42
Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Embed Size (px)

Citation preview

Page 1: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Estruturação de Descrições de Casos de Uso através de Mecanismos de

Extensibilidade da UML

Gabriel Silva Bornia

Prof. Dr. Roberto Tom PriceOrientador

Page 2: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Roteiro

• Contexto Atual

• Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

• Vínculo da descrição com o resto do Modelo

• Processamento da Descrição Estruturada

• Ferramenta CASE: UC Designer

Page 3: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Contexto Atual

Page 4: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Modelagem de Casos de Uso

• Casos de Uso– mecanismo de levantamento de requisitos– descrevem o comportamento do sistema

• Diagramas de Casos de Uso– suportados por ferramentas que seguem a

especificação UML

• Descrição de Casos de Uso– representação desvinculada do modelo UML

Contexto Atual

Page 5: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Requisitos da especificação através de Casos de Uso

• Convenções usuais para descrições de caso de uso– devem poder ser validadas com o usuário;– devem servir como “contrato” entre o desenvolvimento

e o usuário– devem servir aos demais envolvidos no processo de

construção do sistema– forma narrativa é livre de uma representação

estruturada ou formal– Jacobson, Cockburn, Fowler, Firesmith, Ambler,

Armour & Miller• Choque entre requisitos: simplicidade X conteúdo

Contexto Atual

Page 6: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Simplicidade x Conteúdo

“Os casos de uso são uma forma elegante de comunicar as necessidades de um negócio

ou sistema.”

Ivar Jacobson

Contexto Atual

Page 7: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Simplicidade x Conteúdo

Contexto Atual

Casos de Uso e o RUP

Page 8: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Contexto Atual

• Formas estruturadas utilizadas hoje em dia para descrever o comportamento do sistema– Linguagens estruturadas (Portugol, etc.)

– Diagramas de Atividade

– Diagramas de Seqüência

– Redes de Petri

– Entre outras...

• Mais difíceis de entender do que uma representação narrativa

Contexto Atual

Page 9: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Descrições de Casos de Uso através de Mecanismos de Extensibilidade

da UML

Page 10: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Objetivos do trabalho

• Estruturar as descrições de caso de uso• Permitir uma visão de fácil entendimento• Representar a descrição com UML

– Altamente difundida– Possibilidade de integrar a descrição de casos de uso

com outros modelos do sistema– Possui mecanismos de extensibilidade

• Permitir a representação diagramática das descrições de casos de uso

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 11: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Descrições de Casos de uso como Diagramas de Atividade Estendidos

• Por que Diagramas de Atividade?– Boa representação para condições, paralelismo

e sincronização– UML 2.4 suporta sub-diagramas para as

atividades (estruturação hierárquica)– Facilmente transformáveis em diagramas de

seqüência

• Podem ser associados a outros modelos

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 12: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Extensões utilizadas

Elementos da descrição Estereótipo

Descrição do caso de uso <<use case description>>

Evento do Ator <<actor>>

Evento do Sistema <<system>>

Ponto de Inclusão <<inclusion point>>

Ponto de Extensão <<extension point>>

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 13: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Sistema

2. Valida o usuário e a senha.

3. Realiza o login do usuário.

Alternativa ao passo 2: O usuário e senha estão inválidos. Informa o usuário sobre o erro e requisita novamente as informações de login.

Ator1. Preenche o usuário e a senha.

Fluxo principal e seqüência alternativa

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 14: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Seqüência alternativaFluxo principal

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 15: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Inclusão de casos de uso

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 16: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 17: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Cadastra Funcionário Cadastra Pessoa

<<include>>

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 18: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Extensão de casos de uso

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 19: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 20: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Efetua Compra Pagamento em Dinheiro

<<extend>>

Pagamento em Cheque

<<extend>>

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 21: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Casos de colaboração

Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML

Page 22: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Vínculo da descrição com o resto do Modelo

Page 23: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Relação com a arquitetura

Vínculo da descrição com o resto do Modelo

Page 24: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Relação com o modelo de classes

Vínculo da descrição com o resto do Modelo

Page 25: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Navegabilidade e Rastreamento

Vínculo da descrição com o resto do Modelo

Page 26: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Processamento da Descrição Estruturada

Page 27: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Processamento da Descrição Estruturada

• É possível verificar todos os caminhos possíveis

• Verificação de Cenários

• Validação do caso de uso

Page 28: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Mecanismo de transformação

Mecanismo de Transformação

Processamento da Descrição Estruturada

Page 29: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Mecanismo de Transformação

Processamento da Descrição Estruturada

Descrições de Casos de Uso Estruturadas

Descrições Narrativas Simples

Descrições Narrativas Detalhadas

Cenários de Testes

Artefatos específicos da organização

Page 30: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 31: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 32: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 33: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 34: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 35: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 36: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 37: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta CASE: UC Designer

Page 38: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Trabalhos Futuros

Page 39: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Ferramenta...

• Migrar para plataforma Eclipse– API para criação de plug-ins– Controle de versões (CVS)– Existem plug-ins para editoração UML (ex:

Together)– Vínculo da descrição do caso de uso não apenas

com outros modelos da UML: vínculo com a implementação

Trabalhos Futuros

Page 40: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Áreas a serem exploradas...

• Teste de sistemas

• Padrões de Casos de Uso

• Interface Homem-Máquina

• Rastreabilidade de Requisitos

• Estimativas de Esforço

• Processo de desenvolvimento

Trabalhos Futuros

Page 41: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Código

Fonte

IHM

Diagramas

da

UML

Planos de Teste

Requisitos

Projeto

ArquiteturaGerenciamento

Descrições de

Casos de Uso

Trabalhos Futuros

Page 42: Estruturação de Descrições de Casos de Uso através de Mecanismos de Extensibilidade da UML Gabriel Silva Bornia Prof. Dr. Roberto Tom Price Orientador

Obrigado!

Gabriel Silva Bornia

[email protected]