Gerenciamento colaborativo de riscos em projetos de software usando CBR e argumentação
1. RACIOCÍNIO BASEADO EM
CASOS PARA GERENCIAMENTO
COLABORATIVO DE RISCOS
Mestrando: Nielsen Rechia
Orientador: Prof. Dr. Luis Alvaro de Lima Silva
Co-orientadora: Prof.ª Dr.ª Lisandra Manzoni Fontoura
Programa de Pós-Graduação em Informática - PPGI
Universidade Federal de Santa Maria - UFSM
1
2. AGENDA
• Introdução;
• Referência teórico;
• Motivação/Problema;
• Objetivos da pesquisa;
• Nossa abordagem de Raciocínio Baseado em Casos (CBR) para
gerenciamento colaborativo de riscos em projetos de software:
✓ Uma memória reusável contendo casos de discussão de riscos;
✓ Consultas CBR baseadas em características factuais e argumentativas;
✓ Templates de explicação para a inspeção dos resultados recuperados;
✓ RD System v3.0
• Trabalhos Relacionados;
• Validação;
• Considerações Finais;
2
3. GERENCIAMENTO DE
RISCOS
• Gerenciamento de riscos em novos projetos é mais eficaz
quando se pode recorrer a experiências concretas de
como lidar com riscos em projetos passados.
!
✓ Aprender lições importantes destes casos passados
✓ Evitar a repetição dos erros do passado
3
5. GERENCIAMENTO
COLABORATIVO DE RISCOS
Uma abordagem de gerenciamento de riscos também deve
considerar perspectivas e experiências de diferentes partes
interessadas de um projeto
✓ Existe uma necessidade de envolver as partes
interessadas de um projeto em cenários de discussão
colaborativa de riscos
✓ …Mesmo quando elas estão em locais diferentes
5
7. GERENCIAMENTO
COLABORATIVO DE RISCOS
Risk Discussion System v1.0 emprega um protocolo de
interações para organizar as atividades de discussão de
riscos
!
✓ …baseado na noção de Jogos de Diálogo
7
8. LOCUÇÕES DO JOGO
DE DIÁLOGO
Propose {risk, probability, impact,
plan}
• argument_pro
• argument_con
• ask
• inform
• …
8
9. LOCUÇÕES DO NOSSO
JOGO DE DIÁLOGO
Propose risk
O ato de criação de um risco na discussão atual
!
... então, este risco pode ser identificado e analisado por
outros participantes
!
Propose risk: “O cronograma e o orçamento do projeto são
irreais.”
9
10. LOCUÇÕES DO NOSSO
JOGO DE DIÁLOGO
Propose impact and probability
Eles são usados nas tarefas de análise de risco
!
... determinando o impacto e a probabilidade que um certo
risco possui no projeto atual
!
Propose impact: “Este risco possui um impacto alto no
desenvolvimento do projeto.”
10
11. LOCUÇÕES DO NOSSO
JOGO DE DIÁLOGO
Propose plan
O ato de ações que definem o que deve ser considerado
durante o desenvolvimento do projeto
!
... então, participants podem lidar com os riscos priorizados
!
Propose plan: “Melhorar a produtividade, aterando alguns
padrões de codificação.”
11
12. OBJETIVO
• Algum conhecimento em gerenciamento de riscos baseado
em experiência pode ser alcançado através da exploração de
técnicas de Inteligência Artificial.
!
✓ Aprender a partir de dados de projetos passados
✓ ... para entender melhor a relevância de riscos em novos
projetos
!
✓ Nossa abordagem para este problema:
✓ Raciocínio baseado em casos
✓ Argumentação
12
13. RACIOCÍNIO BASEADO
EM CASOS
• Raciocínio Baseado em Casos enfatiza o papel das
experiências passadas na solução de novos problemas
!
✓ CBR captura e reusa informações factuais juntamente
com uma solução para um problema
✓ CBR também pode tratar qualquer conhecimento que as
partes interessadas no projeto possam expressar em
termos de argumentos
13
14. ARGUMENTAÇÃO
• Argumentação enfatiza o processo de diálogo em que
participantes de um projeto oferecem diferentes tipos de
argumentos no desenvolvimento de tarefas de
gerenciamento de riscos
✓ Protocolos de jogo de diálogo expressam movimentos
de argumentação que ocorrem quando agentes debatem
questões relativas a gestão de riscos
✓ ... principalmente em termos de atos de locução, tais
como: propose, ask, inform, etc
14
15. ENFOQUE
• Experiências de gerenciamento de riscos são capturadas
como casos de discussões colaborativas
• Casos de discussão são organizados de acordo com
características factuais e um protocolo de jogo de
diálogo para gerenciamento de riscos
• Consultas são baseadas em características factuais e
propriedades de argumentação gravadas em casos
passados
• Templates de explicação ajudam na compreensão de
movimentos chave da argumentação nas discussões
15
16. Características de um projeto de
software
Argumentos coletados em uma
discussão colaborativa de riscos
16
19. UMA MEMÓRIA
REUSÁVEL
• O registro de experiências de gerenciamento colaborativo
de riscos em uma memória reusável
!
✓ … mas participantes de um projeto ainda precisam
consultar esta memória
19
21. CONSULTAS CBR
• Participantes de um projeto podem executar consultas
baseadas em similaridade a qualquer momento da
discussão de gerenciamento de riscos
• Similaridade estimada é determinada quando
propriedades de um problema atual são comparadas com
propriedades (características factuais e argumentativas)
de casos passados
!
✓ K-nearest neighbor algorithm - KNN
✓ Weighted Euclidian distance function
21
23. CONSULTAS BASEADAS EM
CARACTERÍSTICAS FACTUAIS
• Problema atual:
✓ Project size: Very large
✓ Team size: Large
✓ Team Distribution: Geographic distribution
✓ …
!
• Solução atual:
✓ ??? (ex.: Quais riscos devem ser considerados -
identificação de riscos)
23
25. CONSULTAS BASEADAS EM
CARACTERÍSTICAS
ARGUMENTATIVAS
• Problema atual:
!
Propose risk: especificação dos requisitos de software
imprecisa.
Propose plan: requisitos de software …
!
• Solução atual:
??? (ex.: gerenciamento de riscos no projeto atual)
25
27. CONSULTAS BASEADAS EM
CARACTERÍSTICAS FACTUAIS
E ARGUMENTATIVAS
• Problema atual:
✓ Project size: Very large
✓ Team size: Large
✓ Team Distribution: Geographic distribution
✓ …
!
Propose risk: especificação dos requisitos de software impreciso
Propose plan: requisitos de software …
!
Solução atual:
??? (ex.: gerenciamento de riscos no projeto atual)
27
29. TEMPLATES DE
EXPLICAÇÃO
• Árvores de argumentação que representam as discussões
colaborativas de gerenciamento de riscos podem conter um
grande número de movimentos de argumentação
!
✓ ... isto pode dificultar a comparação do usuário entre
casos atuais e passados recuperados
29
31. TEMPLATES DE
EXPLICAÇÃO
• Formas de templates para complementar os resultados
de recuperação: facilitando a reutilização dos argumentos
de gerenciamento de riscos do passado
!
✓ Seleção e realce dos passos da argumentação
disponíveis nestas narrativas
31
32. TEMPLATES DE
EXPLICAÇÃO
• A partir destas necessidades de explicação, três tipos de templates foram
desenvolvidos:
!
✓ Templates específicos de domínio
✓ Templates específicos para filtrar e realçar argumentos diretamente
relacionados ao processo de identificação, análise e planejamento de
risco,
✓ Templates específicos de argumentação
✓ Templates com características típicas de processo de argumentação tais
como: profundidade da sub-árvore de discussão; quantidade de
argumentos prós e contra apresentados; entre outros
✓ Templates específicos de domínio e de argumentação
✓ Templates que combinam as etapas de gerenciamento de riscos com
características típicas do processo de argumentação.
32
33. TEMPLATES DE
EXPLICAÇÃO
• Por exemplo, temos com parte dos templates específicos
de domínio o template “Atividades chave de
gerenciamento de riscos”:
!
✓ identificação de riscos, análise de riscos e planejamento
de riscos.
33
35. TEMPLATES DE
EXPLICAÇÃO
• Como parte dos templates específicos de domínio e
argumentação o template “Riscos priorizados mais
discutidos”:
!
✓ identificação de riscos, análise de riscos e planejamento
de riscos.
35
37. TRABALHOS
RELACIONADOS
• (TOLCHINSKY, CORTES, et al., 2006; TOLCHINSKY et al., 2012)
✓ Transplantes de órgãos
!
• (SILVA et al., 2008; 2010)
✓ Tarefas de autenticação de pinturas históricas
!
• (HERAS et al., 2013)
✓Argumentação envolvendo agentes computacionais em sistemas
multi-agentes
!
• (ALEVEN, 2003)
✓Apoio ao processo de interpretação e decisão de problemas legais
37
38. TRABALHOS
RELACIONADOS
TOLCHINSKY et al.,
2012)
(SILVA et al., 2010) (HERAS et al., 2013) (ALEVEN, 2003) (MACHADO et al., 2014)
Qual é o
papel de
CBR nestes
sistemas?
Auxiliar agentes
heterogêneos na
viabilidade de um
órgão humano ser
transplantado.
Autenticar datas de pinturas.
Realizar acordos entre
agentes, resolvendo os
problemas encontrados
pela sociedade.
Ensinar estudantes iniciais de
direito na construir
argumentos jurídicos.
Apoiar participantes de
projetos de sofware na
solução de problemas de
gerenciamento de riscos.
Quais as
formas de
consultas
utilizadas?
movimentos
dialéticos
(argumentos) que
determinam uma
deliberação descrita
em termos de
esquemas de
argumentação.
propriedades factuais de uma
pintura, a partir de tipos de
argumentos utilizados em
discussões de autenticação, ou
utilizando estas características de
forma combinada.
visando casos de
domínio (características
factuais),
argumentações,
esquemas de
argumentação ou uma
combinação destas..
combinação de fatores legais
a serem considerados na
solução de um problema
alvo.
características factuais,
argumentativas ou pela
combinação de ambas, com
possibilidade de aplicar
templates de explicação
Qual a
capacidade
de
explicação?
Recursos de
explicação não
foram
explicitamente
explorados neste
trabalho.
Casos são caracterizados em
diferentes grupos (diferentes
taxonomias por um processo de
agrupamento) e são explicadas
conforme o grau de
pertencimento a tais taxonomias.
Recursos de explicação
não foram
explicitamente
explorados neste
trabalho.
Permite gerar argumentos
organizados visando explicar
diferenças e semelhanças
entre casos, bem como
selecionar os melhores casos
a serem citados no suporte a
decisão em um problema.
Templates oferecem formas de
localizar e realçar partes
específicas do processo de
argumentação, facilitando a
compreensão e o reuso destes
argumentos na solução de
novos problemas.
38
39. VALIDAÇÃO
• Com o objetivo de validar os recursos de CBR e explicação em CBR
desenvolvidos nesta dissertação em um processo de gerenciamento colaborativo
de riscos…
!
✓ …além de um estudo de caso, um experimento envolvendo 15 alunos do PPGI
da UFSM foi realizado.
!
✓ Avaliar a importância da utilização de experiências passadas na solução de
problemas atuais na área de gerenciamento colaborativo de riscos em
projetos de software;
✓ Avaliar a importância da utilização de templates de explicação no auxílio a
localização e realce de tais experiências passadas;
!
✓ No final, eles responderam um questionário de validação.
39
40. 40
Q1 e Q2 mostram que é importante
armazenar características factuais, e
características argumentativas nos
casos.
Q3, Q4 e Q5 mostram que é
importante construir consultas com
características factuais,
argumentativas e com a
combinação de ambas as
características.
Q6 mostra que vale a pena reusar
argumentos na construção ou
justificativa de problemas atuais.
Q7 e Q8 mostram que a aplicação
de templates de explicação auxilia na
tarefa de reutilizar experiências
passadas.
41. 41
Em média os templates
desenvolvidos obtiveram
importância 4.
1. Riscos priorizados mais
questionados
2. Planos propostos mais questionados
3. Riscos priorizados
4. Riscos priorizados mais discutidos
5. Planos propostos mais discutidos
42. CONSIDERAÇÕES
FINAIS
• Colaboração e reutilização de experiências de projetos
anteriores são necessidades essenciais para os usuários que
permitem alcançar um gerenciamento de riscos eficaz
✓ Casos concretos e avançados de gerenciamento de riscos são
moldados por características factuais e argumentativas;
✓ Participantes de um debate podem explorar diferentes formas
de consultas, com maneiras alternativas de recuperar e reusar
o conhecimento representado em termo de argumentos;
✓ Novos templates de explicação, os quais visam ajudar as
partes interessadas de um projeto na inspeção de um
determinado problema, proposta ou solução expressos no
corpo de casos de discussão riscos.
42
43. CONSIDERAÇÕES
FINAIS
!
• A maioria dos participantes do experimento concordam que:
!
✓ Vale a pena reusar experiências passadas na construção ou
justificativa de soluções para um problema atual.
✓ O uso de templates de explicação oferece uma nova maneira
de apresentar e analisar uma discussão colaborativa de riscos
passada.
✓ …contextualizando necessidades de usuários neste domínio
de aplicação;
✓ …auxiliando no processo de entendimento dos casos
recuperados.
43
44. PUBLICAÇÕES
• MACHADO, N. L. et al. Case-based Reasoning for
Experience-based Collaborative Risk Management. The
Twenty-Sixth International Conference on Software
Engineering and Knowledge Engineering (SEKE 2014), p.
262-267, 2014.
!
✓ convite para a publicação de uma versão expandida deste
artigo, em formato de uma revista, na International Journal
of Software Engineering and Knowledge Engineering
(IJSEKE). Esta futura publicação deve ser buscada no ano
de 2015.
44
45. REFERÊNCIAS
BIBLIOGRÁFICAS
• ALEVEN, V. Using Background Knowledge in Case-Based Legal Reasoning: A
Computational Model and an Intelligent Learning Environment. Artificial
Intelligence, v. 150, n. 1-2, p. 183-237, 2003.
• HERAS, S. et al. Argue to agree: A case-based argumentation approach.
International Journal of Approximate Reasoning, v. 54, n. 1, p. 82-108, 2013.
• MACHADO, N. L. et al. Case-based Reasoning for Experience-based Collaborative
Risk Management. The Twenty-Sixth International Conference on Software
Engineering and Knowledge Engineering (SEKE 2014), p. 262-267, 2014.
• SILVA, L. A. D. L. Enhancement of Case-Based Reasoning through Informal
Argumentation, Reasoning Templates and Numerical Taxonomy. 2010. 304 (PhD in
Computer Science). Department of Computer Science, University College London,
London.
• TOLCHINSKY, P. et al. Increasing Human-Organ Transplant Availability:
Argumentation- Based Agent Deliberation. IEEE Intelligent Systems, v. 21, n. 6, p.
30-37, 2006.
45
46. RACIOCÍNIO BASEADO EM
CASOS PARA GERENCIAMENTO
COLABORATIVO DE RISCOS
Mestrando: Nielsen Rechia
Orientador: Prof. Dr. Luis Alvaro de Lima Silva
Co-orientadora: Prof.ª Dr.ª Lisandra Manzoni Fontoura
Programa de Pós-Graduação em Informática - PPGI
Universidade Federal de Santa Maria - UFSM
46