JGOOSE: Uma ferramenta de Engenharia de
Requisitos para Integração da Modelagem
Organizacional i* com a Modelagem Funcional de
Casos de Uso UML
André Abe Vicente
[email protected]
http://www.inf.unioeste.br/ abvicente
Orientador: Prof. Dr. Victor F. Araya Santander
Colegiado de Informática
Universidade Estadual do Oeste do Paraná - Unioeste
Defesa - Trabalho de Conclusão de Curso (TCC - 2006)
04 de dezembro de 2006
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
1/1
Sumário
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
2/1
Introdução
Motivações
Características de ambientes de computação
emergentes
Sistemas Distribuídos, Em Rede, Dinâmicos, Abertos.
Móveis/ se encontra em todos lugares (ubiquitous) / diversos ambientes
Alto Nível de Conhecimento envolvido
Estratégico: Ex.: Mudanças nos modelos de negócios
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
3/1
Introdução
Motivações
Falhas no Processo de Elicitação de Requisitos
Engenharia de Requisitos (ER) - Etapa Inicial » Crítica
Causa: Falta de Compreensão (principalmente da organização),
freqüência das mudanças organizacionais.
Conseqüência: geralmente resultam em documentos inconsistentes,
incompletos e conseqüentemente produtos de software que não
atendem a cronograma, orçamento (altos custos de manutenção) e
principalmente não atendem as reais necessidades do cliente.
Solução: Processo de Engenharia de Requisitos Maduro (precisão corretude, sem ambiguidades...), ampliação do entendimento do
contexto (Intenções, Razões, Estratégias).
Necessidade de se capturar requisitos organizacionais que definem
como o sistema atende aos objetivos da organização.
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
4/1
Introdução
Proposta
Proposta
Engenharia de Requisitos
Orientada a Objetivos
(GORE)
Modelagem Organizacional
(Tecnica i*)
Casos de Uso
Mapeamento
A técnica i* é bem adaptada para representar requisitos organizacionais que ocorrem
durante a captura de requisitos em sua fase inicial (early requirements);
UML (Unified Modelling Language)
A técnica de Modelagem UML se ajusta melhor aos estágios posteriores do
desenvolvimento. Ela falha em indicar como o sistema atende aos objetivos da
organização, quais foram as alternativas consideradas e o porquê das soluções
adotadas. (“Porquês”)
Requisitos Organizacionais devem ser relacionados a Requisitos Funcionais.
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
5/1
Técnicas de Modelagem
Framework i*
Framework i*
Entendimento dos objetivos e do meio ambiente de uma
organização. Suporte ao processo de análise e modelagem conceitual,
sob uma visão estratégica (motivações e razões) e intencional de
processos que envolvem diversos participantes denominados Atores.
Atores dependem um do outro para alcançar objetivos/metas, executar
tarefas e fornecer recursos.
Pode-se então utilizar a técnica i* para os seguintes propósitos:
1
2
3
obter um melhor entendimento dos relacionamentos
organizacionais entre diversos atores;
entendimento das razões de decisões tomadas;
ilustrar várias características encontradas na fase inicial da
engenharia de requisitos.
Outras técnicas de modelagem: descrevem tipicamente um processo
em termos de etapas de atividades e fluxos entre entidades.
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
6/1
Técnicas de Modelagem
Framework i*
Modelos i*
Modelo de Dependências Estratégicas (SD)
O modelo de Dependência Estratégica é uma rede de relacionamentos
de dependência entre atores.Captura das motivações e intenções por
trás das atividades e fluxos em um processo.
Quatro tipos de dependências: Tarefa (task), Recurso (resource),
Objetivo (goal), Objetivo soft(softgoal).
Modelo de Razões Estratégicas (SR)
Visão interna dos atores, proporcionando um nível de detalhamento
maior do modelo;
Estes relacionamentos proporcionam uma representação explicita das
razões por trás das dependências entre os atores e quais são
alternativas por trás dos processos;
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
7/1
Técnicas de Modelagem
Framework i*
Ligações SD/SR - Elementos e Ligações
Relação Dependência: Dependee (Depende) » Dependum
(Relação/Acordo) » Depender (Satisfaz)
Ligações SR: Decomposição de Tarefas e Meio-Fim
(Alternativas)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
8/1
Técnicas de Modelagem
Framework i*
Exemplo - Diagrama SD Medi@
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
9/1
Técnicas de Modelagem
Framework i*
Exemplo - Diagrama SR Medi@
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
10 / 1
Técnicas de Modelagem
Framework i*
Exemplo - Diagrama SR Medi@ (Processar Pedidos)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
11 / 1
Técnicas de Modelagem
Modelagem UML
UML e Casos de Uso
A UML (Unified Modeling Language) é uma linguagem-padrão para a elaboração da
estrutura de projetos de software, podendo ser empregada para visualização, a
especificação, construção e documentação de artefatos de software.
Casos de Uso bem-estruturados denotam somente o comportamento essencial do
sistema ou subsistema. Relacionados com funcionalidade.
Modelos organizacionais podem ajudar engenheiros de requisitos a desenvolver casos de
uso? SIM :) » Organização » Sistema
Caso de Uso 2
Caso de Uso
<<include>>
Caso de Uso 3
Ator 1
<<extend>>
Caso de Uso 4
Ator 2
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
12 / 1
Técnicas de Modelagem
Modelagem UML
RUP & Casos de Uso de Negócio
E porque não Casos de Uso de Negócio?
menor poder de expressividade
não permitem modelar uma série de questões importantes na
organzação, tais como: motivações, intenções e razões que
estão associadas aos processos organizacionais (mostrando a
complexidade dos relacionamentos da organização)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
13 / 1
Integrando a Modelagem Organizacional com Casos de Uso
Visão Geral da Proposta
Integrando a Modelagem Organizacional com Casos
de Uso
Diretrizes são necessárias
1. Descobrindo
Atores
Modelos de Dependencias
Estrategicas (SD)
desenvolvidos pelo
framework i*.
Modelos de Razoes
Estrategicas (SR)
desenvolvidos pelo
framework i*.
2. Descobrindo
Casos de Uso para
os Atores
Diretrizes sao aplicadas
em cada etapa do processo
de integraçao utilizando a analise
orientada a objetivos
3. Descobrindo e
Descrevendo cenarios
para os casos de uso
Diagrama de
Casos de Uso e
descriçoes textuais dos
cenarios
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
14 / 1
Integrando a Modelagem Organizacional com Casos de Uso
Derivando Casos de Uso da Modelagem Organizacional
Diretrizes
D1 - D4: Descobrindo atores e generalização de atores.
D5 - D6: Descobrindo Casos de Uso
D7: Objetivos para os casos de Uso
objetivo de negócios: “o media shop deseja aumentar suas
vendas”.
objetivo de contexto: “o aumento nas vendas usando uma
aplicação de e-commerce”.
objetivo do usuário: “o cliente deseja fazer pedidos”.
objetivos de subfunção: “O consumidor navega pelo catálogo”.
D8: Descobrindo Cenários para Casos de Uso (fluxo principal
de tarefas, fluxos alternativos, pré-condições e pós-condições
D9 - D10 : derivar novos objetivos de casos de uso a partir
dos passos nos cenários e Construção do Diagrama de Casos
de Uso
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
15 / 1
Integrando a Modelagem Organizacional com Casos de Uso
Derivando Casos de Uso da Modelagem Organizacional
Descobrindo Atores e Casos de Uso - Ex. Medi@
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
16 / 1
Integrando a Modelagem Organizacional com Casos de Uso
Derivando Casos de Uso da Modelagem Organizacional
Descobrindo e Descrevendo Cenários para os Casos de Uso - Ex. Medi@
Caso de Uso Objetivo: Processar Pedidos da Internet
Ator: Media Shop
Nivel: Objetivo de Contexto (veja D.7)
Requisitos Especiais: Atrair novos Clientes
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
17 / 1
Ferramenta JGOOSE
TELOS e OpenOME
Open Organizational Modeling Environment
Ferramenta de análise e modelagem orientada a objetivos e/ou agentes;
Representação do Conhecimento (OpenOME) - *.tel
Classes, Elementos (atributos), Ligações (from » to)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
18 / 1
Ferramenta JGOOSE
TELOS e OpenOME
Linguagem Telos
Classes, Elementos (atributos), Ligações (from » to)
Elementos e Ligações (TELOS)
Elementos:
ISTARACTORELEMENT: ator;
ISTARSOFTGOALELEMENT: objetivo soft;
ISTARGOALELEMENT: objetivo;
ISTARTASKELEMENT: tarefa;
ISTARRESOURCEELEMENT: recurso.
Ligações:
ISTARDEPENDENCYLINK: dependência;
ISTARMEANSENDSLINK: meio-fim;
ISTARDECOMPOSITIONLINK: decomposição;
ISTARISALINK: ISA.
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
19 / 1
Ferramenta JGOOSE
TELOS e OpenOME
Exemplo Linguagem Telos
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
20 / 1
5
0
Ferramenta JGOOSE
TELOS e OpenOME
Exemplo Linguagem Telos
Sintaxe Tokens Telos
Token [ Element | L i n k ] _ i d
IN [ Elemento | L i n k ]
WITH
a t t r i b u t e , [ t o | from ] / / L i n k s
[ a t r i b u t o ] : [ codigo ]
a t t r i b u t e , [ name ] / / Elements e L i n k s
[ a t r i b u t o ] : [ Element_id | L i n k _ i d ]
a t r i b u t e , [ c h i l d r e n | p a r e n t ] / / Elements
[ a t r i b u t o ] : [ Element_id ]
a t r i b u t e , [ l i n k s ] / / Elements
[ atributo ] : [ Link_id ]
END
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
21 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Ferramentas (i* » modelagem OO (UML)
Comparativo entre as Ferramentas
GOOD e XGOOD (CIN-UFPE): diagrama de classes UML
GOOSE e JGOOSE (INF-UNIOESTE): diagrama de casos de
uso UML
DIFERENÇA entre elas: formato de saida, abrangência de
diretrizes e funcionalidades.
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
22 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Novidades GOOSE =⇒ JGOOSE
Aspectos de Implementação:
Novas Funcionalidades na ferramenta processo de mapemento + claro ao
usuário da ferramenta.
Telos gerados pela ferramenta OME3 e OpenOME.
Orientação a Objetos: Java 1.5 =⇒ Classes Java que representam melhor
Elementos i*, Casos de Uso UML e a Ferramenta
Diretrizes:
implementação da SubDiretriz 5.4: objetivos-soft que são mapeados como
possíveis Requisitos Não-Funcionais (NFRs) relacionados com o Sistema.
Descrição Textual de Casos de Uso conforme a template proposta por
Cockburn (Writing Effective Use Cases)
aperfeiçoamento na Diretriz 8.1, na qual objetivos-soft que fazem parte da
decomposição de tarefas são mapeados como requisitos especiais na
descrição do Caso de Uso (template).
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
23 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta
PASSO 1 - Captura de Informações do Arquivo Telos:
Abrir Arquivo Telos: Diagrama SD/SR a ser mapeado
Ator Sistema Computacional: Escolhido pelo usuário da
ferramenta
Atores,Elementos,Links: Mostra informações sobre os objetos i*
capturados do arquivo Telos (*.tel)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
24 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta (Passo 1) - Arquivo Telos
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
25 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta (Passo 1) - Seleção Atores
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
26 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta
PASSO 2 - Seleção de Diretrizes:
Diretrizes D.1 - D.4: Sempre selecionadas
Diretrizes D.5 - D.6: Modelo SD/SR
Diretrizes D.8 - D.8.3: Apenas Modelo SR
Diretrizes D.10: Construir Diagrama de Casos de Uso UML
Diretrizes não atendidas: D.7 (Objetivos Cockburn) e D.9 (Novos
Casos de Uso)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
27 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta (Passo 2) - Seleção Diretrizes e Tutorial
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
28 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta
PASSO 3 - Atores,Casos de Uso e Descrições Mapeados:
Atores e Casos de Uso: Relação Ator x Casos de Uso e diretriz
correspondente.
Descrição de Casos de Uso: Template Cockburn (Modelo SR)
Requisitos Não-Funcionais: Ator x NFRs do Sistema
Atores ISA: Relações ISA mapeadas para «generalization»
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
29 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta (Passo 3) - Ator x Casos de Uso
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
30 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta (Passo 3) - Descrição Caso de Uso
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
31 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Funcionamento da Ferramenta (Passo 3) - NFRs e ISAs
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
32 / 1
Ferramenta JGOOSE
Visão Geral da Ferramenta
Diagrama de Casos de Uso UML (não automatizado)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
33 / 1
Ferramenta JGOOSE
Estudos de Caso
Estudos de Caso
Modelos i* Analisados
Medi@: Comércio Eletrônico de venda de mídias (CD, Livros,
DVDs...).
Conference Management System: Gerenciamento de
submissão de artigos para conferência.
E-News System: Sistema de Notícias Eletrônica (via Web)
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
34 / 1
Ferramenta JGOOSE
Estudos de Caso
Medi@ - 3o Passo (Descobrindo Cenários)
Cenário Fazer Pedidos
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
35 / 1
Ferramenta JGOOSE
Estudos de Caso
Medi@ - Diagrama de Casos de Uso
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
36 / 1
Ferramenta JGOOSE
Estudos de Caso
Conference Management System - Diagrama de
Casos de Uso
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
37 / 1
Ferramenta JGOOSE
Estudos de Caso
E-news System - Diagrama de Casos de Uso
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
38 / 1
Contribuições Esperadas,Trabalhos Relacionados e Futuros
Contribuições Esperadas da Proposta
Engenharia de Requisitos:
Objetivos dos atores em relação ao sistema = requisitos mais
claros (melhor rastreamento dos requisitos).
maior garantia de que cenários representam ou estão associados
a requisitos e objetivos relevantes da organização e que
(posteriormente serão implementados).
Melhoria da avaliação da dinâmica dos processos de negócio: Diversos
stakeholders, mudanças no ambiente tecnológico, organizacional e de negócios.
Casos de Uso (Problemas x Soluções)
Casos de uso são escritos do ponto de vista do sistema (não dos
atores) → dependências i*.
Muitos Casos de Uso → Casos de Uso essenciais ao sistema
pretendido.
O cliente não entende os casos de uso → integração dos
engenheiros e clientes durante o GORE.
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
39 / 1
Contribuições Esperadas,Trabalhos Relacionados e Futuros
Trabalhos Relacionados e Futuros
Trabalhos Relacionados
Alencar, Cysneiros e Pedroza (CIN-UFPE): i* » classes.
Estrada: metas organizacionais e funcionais a partir de modelos de
negócio.
Paiva e Rosa (INF-UNIOESTE): software legado (DFDs) » Modelos em
i*. Projeto de IC/Pesquisa LES (Atual).
Silva (CIN-UFPE): Tropos - i* » UML a nível de arquitetura de SMAs.
Projeto Tropos & CIN-UFPE: Elicitação e Modelagem de Requisitos à
Implementação.
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
40 / 1
Contribuições Esperadas,Trabalhos Relacionados e Futuros
Trabalhos Relacionados e Futuros
Trabalhos Futuros
Diretrizes: mais sistemáticas que melhorem o processo de elicitação
de NFRs e permitam analisar melhor modelos SR gerando descrições
de casos de uso mais precisas.
Ferramenta: Ampliar funcionalidades (baseado nas diretrizes), XMI,
TAOM4E (Itália).
Publicações de Resultados: Submissão de artigos para eventos da
área: WER07(X Workshop on Requirements Engineering), IDEAS07 (X
Workshop Iberoamericano de Ingeniería de Requisitos y Ambientes de
Software), CLEI07 (XXXIII Conferencia Latinoamericana de
Informática).
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
41 / 1
Dúvidas...Perguntas???
Laboratório de Engenharia de Software [Unioeste]
http://www.inf.unioeste.br/les
OBRIGADO
“There is no sense in being precise about something when you do not
even know what you are talking about.” - Von Neumann
André Abe Vicente (UNIOESTE)
Apresentação Defesa (TCC 2006)
04 de dezembro de 2006
42 / 1
Download

Slides Monograph PDF