
Imagine mesclar os conceitos Web 2.0 (Wikis, Blogs, Chats/IM, Emails, Fóruns de discussão, WhiteBoards) e os conceitos de metodologias ágeis (XP/SCRUM) dentro de um ambiente de desenvolvimento poderoso como o Eclipse. Esta interessante idéia foi apresentada na ACM em 2003 como um projeto de pesquisa e criou um novo conceito, chamado de ambientes colaborativos de desenvolvimento (CDEs). Um CDE estende uma IDE incorporando conceitos de métodos ágeis como SCRUM e XP e os conceitos de colaboração contexto em tempo real.
O melhor é que isso agora em 2008 é realidade, com uma plataforma aberta de colaboração chamada Jazz (http://jazz.net). O Jazz é um ambiente aberto (assim como o Eclipse) e está sendo usado pela IBM para gerar toda a sua nova linha de produtos. O primeiro produto desta linha se chama IBM Rational Team Concert e possui uma versão gratuita para times de até 3 pessoas.
Realmente a promessa de produtividade no primeiro dia é realizada com o Jazz. Em menos dez minutos já havia instalado o Jazz e disparado o servidor (que opera sobre Middleware Tomcat/Derby na sua instalação default). Rapidamente consegui criar um projeto baseado em um processo SCRUM através de templates pré-definidos, alocar pessoas a estes times, criar tarefas, subir código para o repositório SCM Jazz, gerar um build da minha aplicação de teste através do engine de automação de builds do Jazz e operar o portal Web para examinar métricas diversas tais como Burndown, backlog de atividades, retrospectivas e defeitos em aberto, dentre inúmeras outras
Anexo a este blog uma apresentação realizada esta semana na Squadra sobre a plataforma Jazz e as suas excitantes possibilidades no desenvolvimento ágil e colaborativo entre times.
- A plataforma Jazz
Entregar sistemas de software não é uma arte. É uma complexa ciência que requer, dentre vários outros fatores, muito estudo. Para apoiar neste aspecto, compilo artigos que me muito me ajudaram nos últimos anos, escritos por “mestres” na arte de desenvolver sistema e que são uma eterna fonte de inspiração.
- Processos ágeis - The Seven Habits of Effective Iterative Development
- Projetos Iterativos - Planning an Iterative Project e Iterative Development
- Bom planejamento de Projetos - Project planning best practices
- Gerência de Riscos - Gambling with Success: Software Risk Management
- Estimativa de Tamanho de Software - Estimating Software Development Effort based on Use Cases - Experiences from Industry
- Modelagem de Negócios - Effective Business Modeling with UML: Describing Business Use Cases and Realizations
- Gerência de Requisitos - So You Want to be a Requirements Analyst? e The Five Levels of Requirements Management Maturity
- Modelagem de Casos de uso - Why Use Cases Are Not Functions, Features, Requirements, Use Cases, Oh My e The Top Ten Ways Project Teams Misuse Use Cases – and How to Correct Them.
- Escrita Estruturada de Regras de Negócio - Business Rule Overview e Business Rules.
- Especificação de Glossário de Termos - Glossary Overview.
- Mapas de Navegação e Prototipação - User experience storyboards: Building better UIs with RUP, UML, and use cases.
- Análise Robusta e Modelagem de Domínio - Robustness Diagram Overview e Driving Design: The Problem Domain.
- Modelagem Arquitetural - Reference Architecture: The Best of Best Practices e Capturing Architectural Requirements.
- Modelagem de Estruturas de Análise e Desenho - Driving Design: The Problem Domain
- Modelagem Comportamental - Sequence Diagrams: One Step at a Time
- Mapeamento Objeto Relacional - The Object-Relational Impedance Mismatch.
- Gerência de Mudanças - Software Change Management.
- Gerência da Qualidade - Software Quality at Top Speed e Determining Your Project’s Quality Priorities
- Desenvolvimento Centrado em Testes Generating Test Cases From Use Cases, Test-Driven Development.
- Refactoring e Testes de Unidade - Refactoring, a first example.
É fato notório para a comunidade de TI Brasileira o uso das soluções JBOSS para o desenvolvimento de aplicações corporativas basadas em Java. A ausência de um reconhecimento formal, entretanto, gerava questionamento por diversos decisores sobre a maturidade desta solução. Uma notícia recente, entretanto, lança o devido reconhecimento técnico e mercadológico desta solução.
O JBOSS AS figura no Gartner Magic Quadrant como um membro do quadrante líder, conforme mostrado na figura abaixo.
.
Vejo esta análise de forma similar as análises realizadas pelo grupos de investimento internacionais, como o Standard and Poors, a respeito da maturidade da economia Brasileira. A análise, por si só, nada muda na solução JBOSS AS, mas traz possibilidade de adoção da solução em contextos onde esta hipótese nao caberia por falta de respaldo de institutos de renome como o Gartner.
Apesar disso, o grupo JBOSS ainda carece de um modelo de serviço e suporte mais presente no Brasil para que possa enfrentar definitivamente os seus grandes concorrentes (BEA, IBM, Oracle e Microsoft) no disputado mercado de servidores de aplicação. Mais informações sobre esta análise podem ser encontradas no relatório do Gartner, disponível aqui.