Total de visualizações de página

sábado, 15 de maio de 2010

Visão Ágil e Visão estruturada-Parte 8-Adendos e extensões

Adendos e Extensões-I

Pretendo colocar neste espaço final da série de artigos Agilismo x estruturalismo, algumas reflexões e observações que surgirem/surgiram depois da publicação dos posts.

SEMAT:

Costumam dizer que a mentira tem pernas curtas. Eu costumo dizer que as verdades absolutas tem pernas,digamos, relativas. O seu grau de veracidade vai depender de alguns fatores, dentre eles, claro, o ponto de vista de quem as defende e de quem se contrapõe a elas.
Recentemente foi lançado uma espécie de novo manifesto sobre Engenharia de software. Fui alertado para isso, por meu amigo, brilhante professor da área da UFV, ZéLuis Braga,por sinal consultor da minha equipe do CCOMP.MG. O Zé, num de seus posts falava sobre o SEMAT. Fui dar uma olhada. SEMAT que quer dizer: Software Engineering Method and Theory. A proposta é  pilotada por 3 outros " luminares" da área: Richard Soley, da famosa OMG-Object management Group, organismo plural apoiado por todas as gigantes do segmento e mentora dos padrões UML e CORBA, dentre outros. Também faz parte deste trio do novo manifesto, o "use-case man" ,  Ivar Jacobson, sueco, componente do famoso grupo "los 3 amigos"(juntamente com James Rumbaugh e Grady Booch) , que venderam a Rational para a IBM por mais de US$2,1 bilhões de dólares e hoje se dá ao luxo de pensar engenharia de sofware respaldado por uma confortável e merecida almofada de algumas centenas de milhões de dólares. O terceiro mosqueteiro desse novo manifesto é Bertrand Meyer,criador da linguagem Eiffel, francês, claro, muito mais conhecido no velho continente. A essência do SEMAT é defender uma maneira mais científica e cartesiana de se aplicar a engenharia de software, saindo dos moldes empíricos e se encaixando em conceitos que evitem modismos, proliferação de múltiplos termos e sejam fundamentalmente centrados na experiência acadêmica. A primeira vista, metaforizei como uma visão de engenharia de software mais  voltada para Descartes e Pitágoras, do que para Salvador Dali e Picasso.  Desnecessário dizer que a chapa esquentou com relação aos agilistas, que se sentiram cutucados. Esgrimas conceituais afloraram entre os agilistas Martin Fowler e Allistair Cockburn e a turma do Semat. Cockburn, agilista de primeira água, que desconfio ser anti-atleticano(pela tradução direta do seu  sobrenome) foi um dos que  mais brandiram a sua espada.Aliás, esses duelos de titãs também não são incomuns nessa estrada boiadeira por onde tenho andado nos últimos 40 anos. Já presenciei vários, normalmente sem vencedor no final. Empate técnico....A verdade é que a "verdade absoluta", como disse no começo dessas linhas , depende da ótica que se deseja aplicar. Na minha humilde visão, tenho certos recatos com métodos extremados, principalmente com os de genoma exclusivamente acadêmico. Aprendi que o que funciona bem, fora dos ppts,  é a exata mistura entre os conceitos gestados nas bancadas das universidades, com os ajustes por graxas e lubrificações necessárias, que aparecem  no dia-a-dia das empresas.Por aqui mesmo tenho testemunhado algo assim : O método Praxis, nascido dentro dos laboratórios da UFMG, através do pensamento de respeitados luminares da engenharia de software das alterosas, não se houve muito bem em muitas empresas por onde circulamos na implementação de engenharia de software. Ouvimos constantemente dos CIO, gerentes de projetos, SEPG, etc,  um certo desconforto, para ser elegante, com o seu excesso de academicismo, aliado ao seu porte agigantado e de difícil implementação. Faltam os ajustes e as adequações práticas necessárias, de que falei, palavras atrás.Falta algo como um Praxis adaptado, que carregue os conceitos corretamente propostos na sua essência , com as lubrificações necessárias impostas pela vida não linear e pedregosa,  existente dentro de um núcleo real de Informática. Assim , a discussão entre SEMAT e agilistas seguirá em frente com suas verdades relativas, normalmente encontradas nos embates entre o purismo e o pragmatismo da Informática.   E a verdade, como dizia o grande " metodologista"  Tancredo de Almeida Neves, normalmente se equilibra no meio.  


Ver :


http://www.semat.org/bin/view/Main/WebHome
http://www.semat.org/pub/Main/SematZurichMarch2010/Zurich_meeting_report.pdf
http://sematblog.wordpress.com

Visão Ágil e Visão estruturada-Parte 7-Conclusão

7) Conclusão:

Uma pesquisa publicada pelo site Dr Dobbs, sobre o uso conjunto de modelos ágeis e CMMI, analisada por Scott Ambler, em Dezembro de 2008, mostrou que:
-----
45% das empresas entrevistadas disseram usar projetos com modelos ágeis sem CMMI e com CMMI;
10% das empresas entrevistada disseram usar exclusivamente projetos ágeis com CMMI e
45% das empresas entrevistadas disseram usar exclusivamente projetos ágeis sem CMMI.
----
Isso mostra que o uso combinado das duas abordagens existe e quebra alguns tabus extremistas que sugeriam a incompatibilidade dos dois modelos.
No Brasil existem algumas implementações em empresas que usam MPS.BR com modelos ágeis, variando em níveis C(3 do CMMI, F(2 do CMMI) e G(sem correspondente no CMMI).
Entendo que tecnologia e metodologia não devem ter torcida, não devem inspirar rivalidade, mas sim ser usadas como ferramentas que nos ajudem a alcançar nossos objetivos profissionais. Paixão indiscutível não é compatível com métodos e ferramentas. Isso casa muito mais com política, futebol e religião.Quando expressa nos domínios da engenharia de software, a paixão denota muito mais imaturidade do que habilidade, "porra-loquice" do que sensatez e estilo ginasiano do que conduta profissional.Se até os lutadores de "ultimate fighting" hibridam seus estilos, buscando em outras modalidades, associações que os tornem mais fortes, por que não pensarmos em buscar o que há de melhor em cada uma das abordagens para formar um método mais eficiente e aplicável em cenários plurais? A própria música nos dá exemplo de junções de coisas aparentemente " água e óleo" e , à primeira vista, irreconciliáveis. A sonora Fernanda Takai transforma em bela balada, um samba de morro de Zé Keti. Os irreverentes do Jota Quest e Skank criam colorações ágeis e modernas com as velhas e belas baladas rítmicas de Roberto e Erasmo Carlos.
Existe um aforismo saboroso que diz que todas as generalizações são perigosas, inclusive esta(de que generalização é perigosa). Millor diz algo parecido como " Não aceite conselhos de ninguém, inclusive este". Algumas percepções desenvolvidas pelos agilistas a respeito do modelo CMMI acabaram definindo uma meia verdade sobre a impropriedade da proposta para o desenvolvimento de sistemas nos dias de hoje. Isso se cristalizou devido às raizes forte, discutidas anteriormente, que embasaram a aplicação do modelo nos tempos de seu nascimento, quando condições especiais ditavam regras. Embora o modelo ainda retenha uma parte desse sabor antigo, cada versão lançada tem procurado modificações a fim de oferecer novos e mais evoluídos arcos de opções.Por exemplo, imaginar que um sistema com iterações curtas, lançando releases com mais frequência não possa ser desenvolvido com CMMI ou MPS.BR é demonstração de absoluto desconhecimento, e esse, é um dos fatores que ainda determinam certas posições dicotômicas sobre as duas propostas. Processos iterativos tem sido aplicados no MPS.BR em MG, e no Brasil, em algumas dezenas das quase 180 empresas certificadas. Assim , embora a genética inicial fosse para sistemas com estilo cascata, não há rigorosamente nada hoje que impeça, via modelo, a aplicação de ciclos de vida mais iterativos na construção de produtos incrementais.Os modelos mais estruturados, como CMMI e MPS.BR acolhem com extrema facilidade essas proposições.O outro fator de engessamento genético do modelo CMMI, que seria a forte interação entre equipes com a presença marcante do cliente, também já está sendo desmistificado, agora em empresas com estilo Scrum e com vocação para produtos, quando o Product Owner( o nome é até sugestivo), no papel de porta-voz do cliente se encontra presente na equipe de desenvolvimento. A empresa mineira que alcançou o nível C(equivalente ao n3 do CMMI) aplicou esses preceitos no desenvolvimento de seus produtos, avaliados com sucesso no MPS.BR. Se fizermos uma tomografia da "anti-empatia" mútua entre agilistas e estruturados, perceberemos que a falta de informação tem sido um dos grandes fatores de ruído nessa arena. É muito mais fácil encontrar visões sobre o CMMI, feitas pelos agilistas, do que o contrário. Daí, as motivações para essas linhas e a nossa presença na "Maré de agilidade". Os exageros acontecem de ambos os lados: A percepção errada dos estruturados de que os métodos ágeis não são controlados é uma delas. Embora seja uma abordagem mais libertária,o Scrum puro não prescinde da disciplina, embora esta se torne mais intensa e formal quando se casa com modelos de maturidade, como nos casos em que participamos como implementadores. A ideía de que o "daily scrum" perde em efetividade é abobrinha pura. A concentração da equipe, mesmo que rapidamente, em cima dos problemas de ontem, do fazer de hoje e dos impedimentos que afloraram, é extremamente eficiente em qualquer estilo de gerência. Usamos essa prática hoje, na Fumsoft, com a equipe CCOMP.MG, para controlarmos as pendências do projeto MPS.BR em MG. Os problemas são claramente identificados, as soluções prontamente encaminhadas e os impedimentos alocados para solução.Como produto de excelência saem a forte coesão da equipe, o pleno entendimento de todos(eu, Rosângela, Rachel e Filardi) sobre os assuntos plurais de um projeto dessa natureza(técnicos, gerenciais, de comunicação, de marketing, financeiros,etc). Algumas dessas impropriedades de visão, entretanto, foram originadas, em parte, pelos rótulos pretensamente evoluídos que os agilistas adotaram para as suas práticas: "Scrum", como metáfora de um jogo de rugbi e "Extreme programming", sugerindo um simbolismo libertário de praticantes, digamos, de -skating-. Alguns posicionamentos extremados ditos por entusiastas de propostas inovadoras também são motivadores de falsas percepções. Certa feita, numa palestra sobre Scrum, quando perguntei ao apresentador agilista como era a documentação da sua empresa, um analista da platéia, nitidamente apaixonado pela causa, interceptou a resposta e me disse:
__Não existe documentação na nossa empresa.
Tenho quase 40 anos de estrada em TI e isso, rigorosamente, não me faz melhor do que os que estão por aí, há 5, 10 12,15,20,etc anos. Entretanto, posso assegurar que fui um observador atento em diversos momentos do meu ciclo de vida profissional, quando me deparei com decisões simplistas sobre (qual a melhor das) tecnologias e metodologias. Quando novas idéias(as vezes não tão novas assim) eram trazidas e tratadas como descobertas miraculosas. Tal como o óleo de cobra(snake oil), elixir milagroso usado no velho oeste americano e vendida para curar qualquer coisa, de picada de cascavel à flechada de apache. Depois de algum tempo, quando essas inovações desembarcavam das plataformas fantásticas do Powerpoint para comprovar utilidade no chão de um CPD, mostravam-se não tão espetaculares assim, com algumas fragilidades despidas na frente de todos. Esses exageros de ambas as partes, gerados por distorções, ruídos e paixões, em nada contribuem para uma visão possível de perfeita e pacífica coexistência entre as propostas ágeis e estruturadas. Colocações pejorativas encontradas em listas de discussões, das quais sou -ouvinte-, empobrecem a discussão das idéias: "os cascateiros(para aqueles que usam os métodos estruturados e onde o modelo cascata imperou por tempos, com uma mensagem subliminar de enganadores), ou "prestidigitadores"(aqueles que usam a "agilidade" de camelô para criar ilusões de ótica, rápidas e passageiras) são de uma imaturidade infanto-juvenil que inibe uma convivência possível. E essa convivência harmoniosa, existe e não é de hoje. Desde 2005, existem relatos de iniciativas de aproximação. Por exemplo, em 2005 o NDIA(National Defense Industrial Association) introduziu uma trilha de "agile and lean" no seu evento "CMMI Conference Technology and User Group" e em 2006 o próprio SEI-Software Engineering Institute introduziu trilha semelhante na "SEPG Conference". Em 2007, ambos os eventos aumentaram o espaço para as discussões sobre métodos Ágeis. Desde então, a discussão sobre a convergência desses métodos tem sido ampliada. Na "Agile Conference" de 2007 uma apresentação foi feita mostrando a aplicação bem sucedida de Scrum em uma organização que alcançou nível 5 de Maturidade CMMI. No evento,Maré de Agilidade, convidado pelo meu ex-aluno Márcio Sete, será apresentada a experiência da Powerlogic, empresa referência em modelos ágeis, no projeto de implementação do nível C(CMMI-N3). A única a alcançar esse nível no Brasil, com adoção de Scrum. Além do CMMI, o modelo MPS.BR, através da sua ETM(Equipe Técnica do Modelo), da qual faço parte, também já definiu um grupo de implementadores para escrever o Guia MPS.BR voltado para modelos ágeis. Ou seja, nada de ruídos e paixões.
A questão é de se buscar um ponto de equilíbrio existente entre as propostas, de forma a preservar seus atributos seminais e desenvolver soluções que permitam uma empresa buscar um modelo de maturidade sem abandonar por completo, preceitos culturais estabelecidos. E isso é plenamente possível na aproximação MPS.BR + Métodos Ágeis. Sem cascateiros e prestidigitadores!!

Referências do trabalho:

CMMI or Agile? Why Not Embrace Both! , nota técnica do SEI , escrito por Hillel Glazer, Jeff Dalton, David Anderson, Mike Konrad, and Sandy Shrum. Foi o artigo base dessas notas e reflexões. www.sei.cmu.edu/library/abstracts/reports/08tn003.cfm

Examining the Agile Manifesto, discute os valores do manifesto, na ótica de Scott Ambler. Além dos valores, também analisa os 12 princípios que suportam os valores. http://www.ambysoft.com/essays/agileManifesto.html


In Agile is Relative, Scott Ambler discute mitos e erros sobre os Modelos Ágeis .http://www.drdobbs.com/architecture-and-design/206501655;jsessionid=VOZ0PMDHLJ0JBQE1GHOSKH4ATMY32JVN?cid=Ambysoft


In Agile CMMI: No Oxymoron , Scott Ambler dicute os resultados da pesquisa Dr. Dobb's 2008 Process Framework survey. http://www.drdobbs.com/architecture-and-design/212501388;jsessionid=VOZ0PMDHLJ0JBQE1GHOSKH4ATMY32JVN?cid=Ambysoft

The SEI's CMMI website. site principal do SEI, onde se encontram trabalhos diversos sobre CMMI http://www.sei.cmu.edu/

Site da Softex, onde se encontram os Guias do MPS.BR http://www.softex.br/mpsBr/_guias/default.asp