Uma Linha de Produto de Sistemas de
Gerenciamento de Projetos de Software
baseada em Agentes
Roberta Claudino Barreto Pessanha Gomes
[email protected]
Sumário
• Introdução
• Problemas
• Predição de Prazo
• Alocação de Recursos
• Alocação x Prazo
• Análise de Trabalhos Relacionados
• Limitações dos Trabalhos
• Solução Proposta
• Objetivos Gerais
• Avaliação dos Resultados
• Referências
05/11/2015
Roberta © LES/PUC-Rio
2
Introdução – Gráfico das Baleias
05/11/2015
Roberta © LES/PUC-Rio
3
Introdução – Alguns Artefatos
05/11/2015
Roberta © LES/PUC-Rio
4
Introdução
• Desenvolvimento RUP possui disciplinas
• Cada disciplina possui diversos artefatos e atividades
• Cada recurso possui uma especialidade (papéis)
• Projetos podem ter tamanhos diferentes
– Projetos de pequeno porte não demandam tantos artefatos
– Projetos de grande porte necessitam de maior cuidado em
todas as etapas e iterações
• Um recurso pode atuar em vários projetos simultaneamente
– De acordo com sua especialidade
– De acordo com a etapa dos projetos
05/11/2015
Roberta © LES/PUC-Rio
5
Introdução - Disciplina e Atividades
Modelagem de Negócios
05/11/2015
Roberta © LES/PUC-Rio
6
Introdução - Disciplina e Artefatos
Modelagem de Negócios
05/11/2015
Roberta © LES/PUC-Rio
7
Introdução – Papéis e Atividades
Analista do Processo de Negócio
05/11/2015
Roberta © LES/PUC-Rio
8
Introdução - Reconfiguração Dinâmica
• Um projeto deve ser constantemente monitorado e seu
planejamento ajustado durante todo o ciclo de vida
• Reconfiguração dinâmica é qualquer alteração feita sobre
um planejamento prévio de atividades e recursos associados
a um projeto
• Atividades de variados tipos devem ser associadas a
recursos com características particulares a fim de atingir os
objetivos relacionados a custo e prazo
• O gerenciamento de projetos deve refletir dinamismo
porque os projetos são intrinsecamente dinâmicos
05/11/2015
Roberta © LES/PUC-Rio
9
Problemas
• Estimativa de prazo e custo
– Projeto e suas atividades
• Escalonamento de Atividades
• Seleção de Recursos
• Alocação de Recursos
• Tamanho diferente dos projetos
– Pequeno, médio e grande porte
• Gerenciamento de múltiplos projetos
– um projeto pode afetar a data de término de outros projetos
– recursos compartilhados entre projetos
05/11/2015
Roberta © LES/PUC-Rio
10
Predição de Prazo
Recursos
• Quantidade Alocada
• Custo
• Nível de compartilhamento
• Disponibilidade
– Férias, folga e treinamento
• Capacidade
– Rendimento por Papel
Projetos
• Prioridade
• Complexidade
05/11/2015
Roberta © LES/PUC-Rio
11
Alocação de Recursos
• Problema largamente estudado na literatura
• Muitas soluções envolvendo heurísticas e técnicas de
pesquisa operacional
• Solução ótima: problema NP-completo
Contexto do Trabalho
• Margem de tolerância entre subalocação e superalocação
• Não há pretensão de obter a “melhor solução possível”
• Objetivo
– Melhor aproveitamento de recursos
– Maior atendimento da carteira de projetos
– Diminuição no tempo de execução dos projetos
05/11/2015
Roberta © LES/PUC-Rio
12
Alocação x Prazo
• Alocação dos recursos pode interferir no prazo dos projetos
– Poucos recursos alocados: pode atrasar o projeto
– Muitos recursos alocados: pode gerar diminuição no tempo de
execução do projeto
– Subalocação: atraso no projeto
– Superalocação: desperdício de recursos (atraso em outros projetos)
• Ideal: “ponto de equilíbrio” de alocação de recursos
05/11/2015
Roberta © LES/PUC-Rio
13
Análise de Trabalhos Relacionados
• Seleção de recursos
• Alocação de recursos
• Escalonamento de atividades
• Suporte a vários projetos
• Tipo de solução
• Método utilizado
• Uso de conhecimento especializado
• Uso de simulação
• Solução dinâmica
• Inclusão de caso de uso ou experimento
• Disponibilização de ferramenta
05/11/2015
Roberta © LES/PUC-Rio
14
Limitações dos Trabalhos
• Cenário longe de ser solucionado
• Nos trabalhos mais recentes não é apresentada uma solução
que trate simultaneamente mais de dois dos tópicos
levantados
• Há um aprofundamento em muitos deles em cada caso
isolado, não considerando o gerenciamento como um todo
• Existem problemas levantados que não tiveram solução
proposta
– alocação de um mesmo grupo de pessoas a atividades relacionadas
• Necessidade de maior estudo para integração do
planejamento de soluções com as atividades comuns de
uma organização
05/11/2015
Roberta © LES/PUC-Rio
15
Solução Proposta
• Linha de Produto de Software
– Infraestrutura reusável que provê suporte no desenvolvimento de
software de uma família de produtos
– Adequação ao tamanho dos projetos (pequeno, médio e grande porte)
• Sistemas Multi-agentes
– Adaptação a mudanças no ambiente e em outros agentes
– Raciocínio e aprendizado sobre o histórico dos projetos
– Conceito de papéis como uma abstração de primeira classe
– Problemas podem ser detectados e tratados com técnicas de
inteligência artificial (ex.: aprendizagem e raciocínio baseado em
casos)
05/11/2015
Roberta © LES/PUC-Rio
16
Solução Proposta – Estado Atual
• Cenário de multi-projetos
• Análise de alocação de recursos
– Subalocação
– Superalocação
• Predição de prazo para atendimento dos projetos
– Cálculo estimado de duração
05/11/2015
Roberta © LES/PUC-Rio
17
Solução Proposta – Estado Atual
Cálculo realizado pelo agente para predição do prazo:
05/11/2015
Nome do Autor © LES/PUC-Rio
18
Solução Proposta – Andamento do Trabalho
• Identificação de potenciais causas de atraso no projeto
– Subalocação de recursos
– Superalocação de recursos
– Alocação inadequada de recursos (e.g. papéis repetidos)
– Baixa produtividade dos recursos
– Escalonamento inadequado de atividades
– Retrabalho (e.g. atividades)
– Superprodução de artefatos
– Atraso na execução das atividades
05/11/2015
Roberta © LES/PUC-Rio
19
Objetivos Gerais
• Revisão Teórica
• Fechamento da Implementação da LPS
– Ajustes na configuração da LPS
– Remodelagem do sistema
– Refinamento no cálculo de predição de prazo
– Refinamento na identificação de subalocação e superalocação de
recursos
– Implementação dos agentes identificadores de causas de atraso
• Análise dos novos resultados obtidos
05/11/2015
Roberta © LES/PUC-Rio
20
Avaliação dos Resultados
• Simulações do uso da ferramenta com projetos reais e já
concluídos
• Comparação com dados existentes dos projetos
• Problemas na alocação de recursos são somente apontados,
não chegam a ser tratados automaticamente
• Indicação de pontos de gargalo na execução dos projetos
05/11/2015
Roberta © LES/PUC-Rio
21
Referências
•
Alcaraz, J. e Maroto, C. (2001) A Robust Genetic Algorithm for Resource
Allocation in Project Scheduling. In Annals of Operations Research 102, pp.
83-109.
•
Callegari, D. e Bastos, R. (2008) A Systematic Review of Dynamic
Reconfiguration of Software Projects. XXII Simpósio Brasileiro de
Engenharia de Software.
•
Clements, P. e Northrop, L. (2002) Software Product Lines: Practices and
Patterns. Addison-Wesley.
•
Dehlinger, J. e Lutz, R. (2005) A Product-Line Requirements Approach to
Safe Reuse in Multi-Agent Systems. In SELMAS, pp 1–7, New York, USA.
ACM Press.
•
Joslin, D. e Poole, W. (2005) Agent-Based Simulation for Software Project
Planning. In Proceedings of the 37th Conference on Winter Simulation
(Orlando, Florida, December 04 - 07). Winter Simulation Conference, pp.
1059-1066.
•
Jennings, N. R. (2001) An Agent-Based Approach for Building Complex
Software Systems. Communications of the ACM, Volume 44, Number 4, pp.
35-41.
05/11/2015
Roberta © LES/PUC-Rio
22
Referências
•
Kruchten, P. (1999) The Rational Unified Process. An Introduction, Addison
Wesley Longman Inc., Reading, MA, USA.
•
Lee, B. e Miller, J. (2004) Multi-Project Management in Software
Engineering Using Simulation Modelling. In Software Quality Journal,
Volume 12, Number 1, pp. 59-82, March.
•
Nunes, I., Nunes, C., Kulesza, U. e Lucena, C. (2009a) Developing and
Evolving a Multi-Agent System Product Line: An Exploratory Study. In:
Michael Luck; Jorge J. Gomez-Sanz. (Org.). Agent-Oriented Software
Engineering IX (LNCS). : Springer-Verlag, 2009, v. 5386, pp. 228-242.
•
Nunes, I., Lucena, C., Kulesza U. e Nunes, C. (2009b) On the Development
of Multi-agent Systems Product Lines: A Domain Engineering Process In:
AOSE 2009, Budapest, 2009, pp. 109-120.
•
Nunes, C., Kulesza, U., Sant'anna, C., Nunes, I., Garcia, A. e Lucena, C.
(2009c) Comparing Stability of Implementation Techniques for Multi-Agent
System Product Lines. In CSMR 2009, Kaiserslautern, Germany, 2009. pp.
229-232.
05/11/2015
Roberta © LES/PUC-Rio
23
Referências
•
Peña, J., Hinchey, M., Cortés, A. e Trinidad, P. (2005) Building the Core
Architecture of a NASA Multiagent System Product Line. AOSE 2006, pp.
208-224.
•
Pohl, K., Bockle, G. e Van Der Linden, F. (2005) Software Product Line
Engineering. Berlin, Heidelberg, New York: Springer-Verlag.
•
Sentas, P., Angelis, L. e Stamelos, I. (2007) A Statistical Framework for
Analyzing the Duration of Software Projects. In Empirical Software
Engineering, Journal, Springer.
•
Schwalbe, K. (2002) Information Technology Project Management. 2nd Ed.,
Thomsom Learning, Canada.
•
Wooldridge, M. (2001) Introduction to Multiagent Systems. John Wiley &
Sons, Inc.
05/11/2015
Roberta © LES/PUC-Rio
24
Download

RobertaPropostaSMA_2009_2