Professional Documents
Culture Documents
GERENCIAMENTO ÁGIL
DE PROJETOS EM TA
mudança de requisito aumenta com o tamanho do projeto, Uma abordagem linear significa que o projeto é desenvolvido
o que aumenta ainda mais a dúvida se o resultado do projeto etapa por etapa. Por exemplo:
vai atender as nossas necessidades. Então só resta aguardar e 1. O time de projeto primeiro analisa, determinando e
ter esperança que tudo dê certo. Os resultados, no entanto, priorizando os requisitos.
são incertos e normalmente decepcionantes. Os clientes
2. Em seguida, na fase de “Design” os requisitos são
normalmente ao verem o resultado pela primeira vez tem a
traduzidos em soluções técnicas e as decisões são
síndrome da reação “Sim... Mas...” [3]:
tomadas em relação a qual tecnologia utilizar, i.e.
Sim, isto é realmente legal e apreciamos o que foi feito, mas Java, VB, etc..
não é exatamente o que precisamos. Talvez:
3. Uma vez que os processos são definidos se inicia a fase de
1. Você não tenha entendido o que queríamos; ou “desenvolvimento do código”.
2. Você tenha entendido, mas mesmo assim tenha feito algo 4. A próxima fase envolve o teste completo do software.
diferente; ou
5. Por fim, a última fase envolve a manutenção do software.
3. Isto é o que queríamos, mas agora precisamos de algo
A Figura 1 mostra a sequência de desenvolvimento em um
diferente.
modelo “cascata”
O que precisamos é de uma forma do cliente ver e avaliar o
progresso antes que seja tarde demais. Precisamos de um Water
processo que ofereça visibilidade mais cedo e que aceite DISCOVER fall
Business method
mudanças, mas que mantenha rigor em relação à qualidade. requirements
DESIGN
Technical
design
DEPLOY
práticas recomendadas para o Desenvolvimento de Client OK
& launch
Software, sendo que essas práticas, geralmente, passam
por fases ou passos que são subdivisões do processo para
Figura 1
ordená-lo e melhor gerenciá-lo [4].
InTech 130 33
artigo GERENCIAMENTO DE PROJETOS
aumentar o rigor do processo de planejamento e aumentar • O trabalho dentro de um Sprint é fixo. Uma vez que o
a disciplina. No entanto os processos modernos de escopo é definido, é proibida a adição de funcionalidade
desenvolvimento sugerem introduzir uma abordagem durante o Sprint exceto pelo time de desenvolvimento.
que encoraje o planejamento frequente em que os times • Todo o trabalho a ser feito é caracterizado como um
usem a experiência ganha ao longo do projeto e o usem “product backlog”. Inclui requisitos a serem entregues,
na próxima etapa de planejamento. testes e atividades de infraestrutura e projeto.
• Encarar a incerteza. Para melhor gerenciar a incerteza
• Um “Scrum Master” gerencia a equipe “auto-
os times de desenvolvimento de software precisam mudar
organizada” que é responsável pelo sucesso dos
da forma tradicional, com abordagem preditiva baseada
resultados de cada Sprint.
em artefatos e processos definidos para uma mais flexível,
baseada em observações. O processo de desenvolvimento • Uma reunião diária em pé é o método de comunicação
é melhor descrito como uma série de objetivos ao invés padrão;
de uma lista de atividades para serem feitas. Focando • Uma grande ênfase em obedecer o período de tempo
no “Por que” ao invés do “como” as técnicas modernas definido. Sprints, reuniões diárias, reuniões de revisão e
permitem aos times mais flexibilidade para criar um apresentação são todas finalizadas no tempo combinado.
produto de sucesso. A Figura 3 resume os artefatos do Scrum:
1 – Scrum
Scrum é um processo de gerenciamento de projetos ágeis,
adaptado para a área de desenvolvimento de software pelo
especialista Ken Schwaber. Ken define Scrum em um de seus
livros como: “um processo Ágil, ou ainda, um framework
para gerenciamento de projetos Ágeis. É um processo de
gerência de projetos” [6], [7].
Martin Fowler, um dos maiores estudiosos em desenvolvimento Figura 3
InTech 130 35
artigo GERENCIAMENTO DE PROJETOS
A maior utilização de métodos Ágeis está criando novas situações A Figura 5 ilustra um modelo de convergência para ajudar
em suas aplicações. Quando originalmente descrita no Manifesto a definir os componentes que devem ser verificados em
Ágil, o objetivo das práticas Ágeis era ajudar times a desenvolver cada área [8].
melhor softwares customizados. O estudo da Forrester mostrou
que os Integradores de Sistema (SI) estão expandindo o uso de
técnicas Ágeis a qualquer situação em que se tenha um time, um
problema, e um alto risco. Estas situações incluem desenvolvimento
de softwares customizados, mas também manutenção de sistemas,
gerenciamento de projetos, desenvolvimento de interfaces com
usuário e levantamento de requisitos. Alguns integradores
estão utilizando Scrum até mesmo para atividades que não
estão relacionadas com o desenvolvimento de software.
Na prática o que vemos são Integradores de Sistemas
aplicando os princípios do Gerenciamento Ágil, mas com
algumas pequenas modificações. Por exemplo, eles nem
sempre entregam um software pronto para uso a cada Figura 5
Sprint, ao invés disto, podem entregar um protótipo. Esta
abordagem pragmática permite usar o melhor do Manifesto
É sempre importante pensar em como a integração entre a
Ágil numa abordagem em que se deseja criar valor para os
área de automação e a área de TI pode ajudar a empresa a
clientes. As práticas Ágeis estão expandindo para incluir:
realizar o seu negócio de forma mais efetiva.
• Implantação de Sistemas: As empresas estão utilizando
A pesquisa realizada por Thanesh [12] indica que há
os métodos ágeis não apenas no desenvolvimento de
um profundo relacionamento entre as funções da
softwares customizados mas também na implantação
Automação Industrial e a Tecnologia da Informação (TI) nas
de pacotes de aplicações (ERP, CRM, etc.) e soluções de
organizações e desta forma existem várias responsabilidades
Business Intelligence (BI).
comuns entre as duas áreas.
• Manutenção de software existente: Uma tendência
crescente entre Integradores de Sistemas é a utilização da Levando em conta estas pesquisas podemos concluir
abordagem Ágil para melhor gerenciar a manutenção de que é perfeitamente plausível a utilização de métodos
sistemas existentes. Ágeis para gerenciamento de projetos em automação
industrial. Cuidado especial deve ser tomado para
softwares com “missão crítica”, visto que uma análise
GERENCIAMENTO ÁGIL DE PROJETOS EM TA detalhada de cada elemento do software é necessária e
Mudando a pergunta anterior, O desenvolvimento Ágil o sistema pode ter uma interação com outros softwares e
de Projetos funciona para empresas de TA (Tecnologia de hardwares [13]. Apesar disto não encontramos nenhuma
Automação)? Vários estudos tem demostrado o impacto da publicação indicando a utilização destas técnicas por
convergência crescente entre TI e TA nos últimos anos [11], [12]. empresas de automação.
ESTUDO DE CASO
A fim de avaliarmos os resultados da utilização de
Gerenciamento Ágil de projetos em TA, analisaremos
os resultados em uma empresa que atua na área de
Automação Industrial e Integração de sistemas de
informação há mais de 15 anos [14].
InTech 130 37
artigo GERENCIAMENTO DE PROJETOS
O Scrum foi adotado como metodologia formal e, após vários ganho de qualidade. Fazer a mudança para uma prática ágil
projetos executados sob esta nova abordagem de gerenciamento, desafia as nossas noções de best practices de engenharia
podemos citar as seguintes vantagens/desvantagens: de software, metodologias de gerenciamento de projetos e
Vantagens: estilos de liderança de times de projeto.
• Equipe mais comprometida com as metas traçadas no O caminho para esta transição nem sempre é fácil e a
dia-a-dia. metodologia tradicional e a metodologia Ágil não só podem
como devem coexistir para atender os diferentes tipos de
• Software pronto mais cedo para avaliação do cliente.
projetos e clientes. O futuro aponta para uma coexistência
• Alta visibilidade do projeto. Os problemas e dificuldades
pacífica onde o melhor de cada um seja utilizado [15],
ficam explícitos permitindo uma atuação mais rápida.
[16]. Projetos de indústrias que são regulamentadas, e que
• Equipe focada. À medida que temos atividades diárias exigem a validação do sistema ao seu final não vão deixar
explicitadas a equipe não se dispersa. de existir simplesmente porque a equipe está adotando uma
• Melhor atendimento aos requisitos de prazo, com menos metodologia Ágil. Ao invés disto estes times precisam aprender
burocracia e mais iteração. a integrar estas necessidades em seus procedimentos ágeis e
• As prioridades do cliente são atendidas mais cedo. iniciar um trabalho de investigação de como fazer para que
estes requisitos não prejudiquem o projeto.
Desvantagens:
• Necessidade de uma maior participação do cliente. Se o
REFERÊNCIAS BIBLIOGRÁFICAS
cliente não participa do projeto por indisponibilidade os
1. Pressman, R. S. Engenharia de Software, 5ª Edição Makron Books 2002.
resultados são comprometidos, pois a diminuição da
2. CHAOS Summary 2009. The Standish Group International, 2009.
documentação formal neste caso deixa o cliente sem www.standishgroup.com
feedback sobre o andamento do projeto. 3. Leffingwell, Dean e Muirhead, Dave, Tactical Management of Agile
Development: Achieving Competitive Advantage. Rally Software
• Clientes que exigem uma grande documentação formal
Development Corporation Whitepaper, 2004.
como item contratual tendem a dificultar a adoção da
4. Sommerville. Software Engineering. 6th Edition, Addison Wesley, 2000.
abordagem Ágil. 5. Agile Manifesto, http://agilemanifesto.org
• Durante o período de comissionamento e startup é 6. Schwaber, Ken, Mike Beedle. Agile Software Development with
mais complicada a utilização da metodologia ágil pela Scrum. Prentice Hall 2002.
7. Schwaber, Ken. Agile Project management with Scrum.
dificuldade de realização da reunião diária e pela grande
Microsoft Press, 2004.
dependência de fatores externos à equipe.
8. Fowler, Martin. The New Metodology.
http://martinfowler.com/articles/newMethodology.html
CONCLUSÃO 9. Neto, Oscar Nogueira de Souza. Análise Comparativa
das Metodologias de Desenvolvimento de Softwares Tradicionais
A indústria de desenvolvimento de software evoluiu e e Ágeis: TCC Bacharelado Ciência da Computação da Universidade
se transformou em uma das mais importantes indústrias da Amazônia, 2004.
do nosso tempo. Do controle da produção de alimentos, 10. West, Dave. Agile Systems Integrators: Plausible or Paradoxical?
Forrester Research, July 2010.
passando pelo fornecimento de segurança e controle dos
11. The New Megatrend: Convergence in Manufacturing. Publicação
veículos que dirigimos à automação e gerenciamento
ENET-SP007A-EN-P – June 2008. Rockwell Automation.
de negócios o software se tornou uma das propriedades 12. Marimuthu, Thanesh: The impact of the convergence of
intelectuais mais valiosas do mundo. Information Technology and Industrial Automation on operational
excellence in the Manufacturing Environment. Dissertação para o
Neste ambiente competitivo, a empresa para ter sucesso MBA na Universidade de Kwazulu-Natal, 2007.
tem que ter a habilidade de criar e desenvolver produtos 13. Wang, Lingfeng and Tan, Kay chen. Modern industrial automation
de software de forma mais rápida e que melhor atenda às software design: Principles and real-world examples.
John Wiley and Sons, 2006.
necessidades reais dos seus clientes.
14. www.techplus.com.br/itech
Metodologias ágeis de desenvolvimento estão liderando
15. Sliger, Michele. Bridging the Gap: Agile Projects in the Waterfall
este caminho ajudando equipes de software a entregarem Enterprise. Better Software magazine, July/August 2006.
produtos de forma mais frequente e com significativo 16. http://agile.vc.pmi.org: Agile Community of Practice.