Desafios na construção de frameworks de desenvolvimento
29 de outubro de 2009 Waldemir Cambiucci Desenvolvimento de Software
Esses dias estive com algumas empresas falando sobre frameworks de desenvolvimento e o impacto na arquitetura de soluções. Sempre que percorro esse assunto, muitas questões são recorrentes, como:
Qual é a maturidade do framework em produção na empresa, se já existir algum?
O que se espera realmente com a construção do novo framework? Melhor desempenho? Maior produtividade? Melhor testabilidade? Padronização?
Qual é o envolvimento dos times de desenvolvimento na orientação do novo framework?
Qual é a maturidade da equipe usuária do framework?
Qual é a maturidade da equipe de arquitetura responsável pelo framework?
Existem templates e bons exemplos de código utilizando o framework, servindo para divulgação e learning?
Qual é a maturidade do processo de desenvolvimento de software e ALM – Application Lifecycle Management da empresa?
Qual é a arquitetura de referência escolhida, para o framework e para as aplicações alvo?
Quais são as recomendações de desenvolvimento, patterns e templates artefatos do framework?
De um modo geral, existem muitos benefícios prometidos com o uso de um framework, com certeza você já ouviu sobre alguns deles:
Maior qualidade do software gerado;
Redução de escopo;
Redução da quantidade de linhas de código;
Padronização e manutenção facilitada;
Aplicação de padrões adotados;
Reuso de arquitetura, patterns e código;
Utilização de soluções prontas e testadas;
Pensando nisso, coloquei alguns posts (ao longo do ano) que consolidam idéias sobre blocos de aplicação e frameworks de desenvolvimento, que sempre aparecem juntos nesses bate-papos:
Ref.: http://blogs.msdn.com/wcamb/archive/2009/07/15/frameworks-de-desenvolvimento-e-blocos-de-aplica-o.aspx
Ref.: http://blogs.msdn.com/wcamb/archive/2008/11/06/evoluindo-frameworks-dom-sticos-por-onde-come-ar.aspx
Mais recentemente, temos visto as novidades do .NET 4.0 e mais um passo de evolução no framework da plataforma Microsoft.
Ref.: http://blogs.msdn.com/wcamb/archive/2009/10/28/net-4-0-e-visual-studio-2010-beta-2-no-ar.aspx
De modo geral, o mundo de TI tem evoluído de forma acelerada, com novos recursos sendo oferecidos para desenvolvedores e arquitetos a todo instante. Exemplo disso são times que já começam a avaliar a integração de autenticação/autorização de seus frameworks locais com ambientes de cloud computing. Na plataforma Microsoft isso aparece com a integração de um framework on-premise em .NET com os recursos do novo WIF – Windows Identity Foundation, do projeto "Geneva". Veja mais por aqui: http://msdn.microsoft.com/en-us/security/aa570351.aspx
Diante dessa evolução constante, vale o comentário: as plataformas e frameworks de fornecedores vão continuar evoluindo, seja na plataforma .NET, seja na plataforma Java. Assim, quando estiver construindo seus frameworks de desenvolvimento, espere sempre por mudanças! Prepara-se para elas!
Isso irá minimizar o impacto de futuras evoluções, além de ajudá-lo a rapidamente combinar as arquiteturas existentes com novas abordagens disponíveis para o mercado, como computação em grid, computação em nuvem, realidade ampliada, redes sociais corporativas, mashups corporativos, aplicações de composição, pervasive computing, entre tantas outras que irão nascer, com certeza!
Marcelo Bernart Schmidt 30 de outubro de 2009 às 20:00
Gostei do artigo. O melhor de tudo é quando há encapsulamento de código não-gerenciado
Testei um framework versão beta do grupo AELHIS – SC que conseguiu criar um módulo chamado COMPLUS. O nome acaba sendo sugestivo No mais, parabéns pelo artigo!