O post hoje é sobre Metodologias. Por mais que você pense que é um assunto banal, eu sempre ouço as pessoas distorcendo o real conceito e função. Como trabalhei 4 anos com Metodologias aplicadas em produtos e projetos de Tecnologia de Informação, hoje vou compartilhar meu conhecimento e experiência com vocês.
Metodologia vem da palavra “método”, que é o processo para se atingir um objetivo. Podemos dizer que “método” é um conjunto de procedimentos, que quando realizados, nos levam a caminhos para se chegar a um determinado fim. Logo, Metodologia significa estudo dos melhores métodos praticados numa área específica de conhecimento. Se formos pensar em Tecnologia, a Metodologia é uma forma de guiar as pessoas no desenvolvimento de um produto ou projeto para serem entregues.
Para implantarmos uma Metodologia numa área de negócio precisamos pensar nos pilares, para que o trabalho seja eficaz. Os 5 pilares que vou citar abaixo, sustentam a Metodologia e vão auxiliar os funcionários envolvidos nos produtos e projetos a terem mais clareza do que precisa ser feito. São eles: Processos, Pessoas, Comunicação, Capacitação e Ferramentas. Pode falar… você não imagina que quando falamos de Metodologia envolvia todo esse conteúdo! Pois é! Eu fiz questão de mostrar, para você saber, que implantar e rodar uma Metodologia não é tão simples quanto parece ser. Vamos aos pilares:
PROCESSOS: é um conjunto sequencial e particular de ações que quando realizadas sequencialmente, entregam valor, meta. Os processos são construídos para orientar o fluxo de trabalho da área de negócios e das demandas que chegam de outras áreas impactadas, que tem relação com o projeto ou produto.
PESSOAS: é o principal pilar da Metodologia, pois as pessoas detém conhecimento sobre o produto e processos. Pessoas ditam a cultura de uma empresa. Cada profissional carrega consigo conhecimentos, habilidades e atitudes, que quando integradas num time, geram melhorias, novos produtos, serviços e projetos. Portanto é muito importante ter profissionais competentes para realizar funções específicas. Do contrário, teremos problemas de adaptação, integração e entrega.
COMUNICAÇÃO: é muito importante termos procedimentos que orientem a forma de comunicar. Existem técnicas para planejar a comunicação sobre o projeto como os 5W2H, intranet, email, mural, newsletter sobre o projeto, reunião de andamento… o mais importante é lembrar que a comunicação deve ser clara, objetiva e transparente sempre.
CAPACITAÇÃO: toda mudança precisa ser comunicada e dependendo do impacto da mudança, se faz necessário capacitar profissionais envolvidos. Implantar Metodologias e Modelos sem envolver, treinar, adaptar e ouvir as pessoas, corre o risco de fracassar. Se tiver novas funções e perfis é necessário capacitar até para saber se as pessoas desejam ou não a mudança.
FERRAMENTAS: ferramentas servem para suportar processos! Comprar uma ferramenta e implantar em toda área de negócio sem definir processo, capacitar e comunicar pessoas, achando que a FERRAMENTA JÁ É A METODOLOGIA É O MAIOR ERRO QUE UMA ORGANIZAÇÃO PODE COMETER, POIS UMA EMPRESA NÃO FUNCIONA COMO TODAS. CADA UMA TEM SUA CULTURA, SEU PROCESSO E SEU PRODUTO! (leia o post que escrevi sobre isso aqui! ).
Agora que você já sabe o que é Metodologia e como ela é formada, vamos falar sobre os modelos de Metodologias mais aplicadas nos projetos de TI; Cascata ou Waterfall (mais antiga), Iterativo e Incremental (não tão antigo) e Ágil (mais atual).
Cascata ou Waterfall como é conhecido, traz um padrão para desenvolver projetos, com muito controle, documentação e burocracia. São aplicados em projetos com loga duração, muito investimento e muito impacto em sistemas e usuários. Utilizam técnicas de Gerenciamento de Projeto como PMBOK (Project Management Institute), que possui 42 processos distribuídos em áreas de conhecimento: Integração, Escopo, Tempo, Custo, Qualidade, Comunicação, RH, Risco e Aquisições. ou Prince2 (Office of Government Commerce) que possui 7 princípios como: justificativa comercial, lições aprendidas, papeis e responsabilidades, gestão por etapas/estágios, gerenciamento por exceção, produto focado, ajuste/adaptação. No Brasil, o modelo mais utilizado, sem dúvida foi o PMBOK durante muitos e muitos anos.
Mas, por volta de 2006, trabalhando no escritório de projetos, começamos a receber reclamações da longa entrega dos produtos e começamos a desenvolver software aplicando Modelo Iterativo e Incremental, que é uma estratégia de planejamento estagiado em que várias partes do sistema são desenvolvidas em paralelo e integradas quando completas. Ou seja, eu só vou pegar as partes mais importantes de cada fase do projeto e desenvolver. Esse modelo permite desenvolver um sistema incremental, fazendo com que o desenvolvedor tire vantagem daquilo que foi aprendido durante a fase inicial de desenvolvimento do sistema. O aprendizado ocorre simultaneamente tanto para o desenvolvedor, quanto para o usuário. Com isso, ganhamos velocidade, satisfação do usuário/cliente, diminuimos o tempo, custo e esforço de desenvolvimento do sistema e entregamos mais rápido.
Com essa mudança de mindset e evolução na forma de gerenciar projetos, surge o Modelo Ágil. É uma nova forma de gerir e desenvolver softwares, porque utiliza uma abordagem de planejamento e execução baseada no Modelo Iterativo e Incremental, voltado para processos com níveis de complexidade diferentes (complexos, caóticos ou com incertezas). A ideía principal é que se temos execuções menores, podemos encontrar e tratar os problemas com mais rapidez e entregarmos o produto com mais qualidade. Também podemos fazer mudanças, caso seja necessário, sem afetar ou comprometer todas as partes do projeto. O Modelo Ágil nos dá mais flexibilidade, inspeção e adaptação sobre todos os passos do projeto. Eh foi por isso que o Ágil vem avançando e ganhando cada vez mais espaço nas empresas e fábricas de Engenharia de Software ( se quiser ler mais sobre as vantagens e desvantagens do Ágil leia aqui! ). Falamos muito sobre Metodologia Ágil porque somamos o processo mais a gestão. Por exemplo: utilizamos o Scrum (framework) + Extreme Programming (método de gerir pessoas em framework ágeis).
Mas fica uma pergunta na nossa mente…
Qual melhor modelo utilizar para gerenciar projetos?
A minha resposta é DEPENDE!!! Vai depender das características do produto que você está desenvolvendo. Se eu estiver desenvolvendo um aplicativo de 2 meses, não vou utilizar PMBOK, pois em vez de ganhar velocidade, vou atrasar todo o projeto. Se o seu produto for construir um navio no estaleiro eu te digo que o PMBOK vai cair como uma luva. E se o seu produto for desenvolver um sistema que gerencia um curso na faculdade, vou te dizer que vc pode utilizar o Iterativo e Incremental.
Portanto, para mim não existe qual o melhor modelo para gerenciar projetos porque o que vai determinar o que seguir, são as características do produto que você vai desenvolver. O que falta hoje no mercado não é modelo a ser seguido, é profissional que tenha conhecimento e experiência nos assuntos para criar uma “esteira” de desenvolvimento para softwares, tornando as Metodologias nas empresas muito mais eficientes do que as que temos hoje.
Por isso, todo esse post imenso que escrevi hoje é para pararmos de brigar por nomes e começarmos a trabalhar com os “N” modelos de que temos no mercado. Quanto mais aplicar, mais experiência você terá para definir o que é melhor para o seu produto.
Desejo que esse o assunto de hoje tenha realmente clareado a sua mente 🙂
Até breve pessoal!
Excelente conteúdo, como sempre!
Um tempinho atrás, estava lendo materiais sobre Business Plan X Business Model Canvas e pensei que a regra apresentada por Alex Osterwalder talvez também se aplique aqui.
PMBOK pode ser excelente quando o produto final já é conhecido e o desafio está na execução (como no exemplo do navio que você deu).
Já as Metodologias Ágeis podem ser mais adequadas quando a incerteza sobre o produto é grande.
Parabéns e obrigado por compartilhar! 🙂
Ah! Que bom que gostou Fabricio! Sempre vejo os escritórios de projetos querendo adotar um padrão para aplicar em todos. Eh isso é um tiro no pém porque em vez de ganharmos velocidade de entrega, emperramos o processo por aplicar um modelo errado. Temos que tornar os processos mais dinâmicos. Obrigada por acompanhar os posts e por sempre estar presente 🙂