30 de Março de 2009

Modelos de Maturidade para Processos Ágeis e Empresas Ágeis

Arquivado sob: Processos de Software — marco @ 22:50

Processos ágeis ganham cada vez mais momento na indústria Brasileira. A palavra “ágil”, entretanto, ainda sucita muitas dúvidas e é muito mal interpretada. Leigos e não-técnicos muitas vezes confundem o termo ágil como indisciplinado ou “conserta e remenda”. A verdade não poderia estar mais longe, entretanto. Agilidade tem a ver com disciplina e trabalho coordenado e pode suportar, enquanto paradigma, projetos dos mais diferentes portes e até mesmo a gestão da TI de ume empresa.

Maturidade de Processos Ágeis

Para colocar alguma luz sobre estas questões, Scott Ambler publicou um excelente post sobre a maturidade de processos ágeis, que podemos resumir na figura abaixo.

Maturidade de Processos Ágeis

O nível 1 contempla um processo de ciclo de vida de desenvolvimento para alguma disciplina, como por exemplo gerência, modelagem, testes ou implementação. Exemplos incluem o SCRUM (para gerência ágil de projetos) ou Agile Modeling (modelagem ágil de projetos).

O nível 2 contempla um processo de ciclo de vida para todas as disciplinas de um projeto. Um excelente exemplo é o Open-UP ou um uso personalizado do RUP, que pode ser usado de forma ágil.

O nível 3 lida modelos de escalabilidade extremos como por exemplo projetos geograficamente distribuídos ou times de maior porte. Um exemplo muito interessante é o uso do CMMI com métodos ágeis. Pode parecer incoerente ou irreal, mas não é. Um relatório técnico do SEI mostra esta feliz união. O C.E.S.A.R tem diversos casos reais a respeito e inclusive está promovendo um evento técnico sobre CMMI e SCRUM, agendado para o próximo mês de maio em Recife.

Empresas Ágeis

Um outro artigo relacionado leva o modelo ágil a um patamar ainda maior, que lida com o gerenciamento de empresas através de modelos ágeis. Este termo, chamado Agile Enterprise, tem recebido também cada vez mais atenção por gestores e diretores.

Finalmente, recomendo dois livros chave sobre este tema para os mais interessados no assunto:
- The Enterprise and SCRUM, Ken Schwaber
- Scaling Software Agility: Best Practices for Large Enterprises, Dean Leffingwell

Pensamento do dia: Citius Altius Fortius. Expressão latina para o lema olímpico: Mais rápido, mais alto, mais forte!

Bons projetos ágeis e escaláveis.

21 de Março de 2009

Vídeo Disponível da Palestra “Melhores Práticas em Engenharia de Software”

Arquivado sob: Engenharia de Software — marco @ 16:30

Publicamos recentemente aqui uma apresentação sobre (algumas) melhores práticas em engenharia de software, tais como Projetos Centrados em Arquitetura ou Desenvolvimento Iterativo e Incremental. Felizmente, a nossa palestra foi gravada e está disponível também para visualiazação aqui.

14 de Março de 2009

Automação de Escritório nas Nuvens

Arquivado sob: Outros — marco @ 14:17

No já distante século XX, a única opção para organizarmos o nosso trabalho de escritório (Agendas, Gerenciadores de Projetos, Edtores de Texto, Planilhas) era a compra de pacotes de ferramentas de fornecedores como a Microsoft. Embora os preços sejam justos para o volume de funcionalidades disponibilizadas, eles são proibitivos para estudantes e profissionais em início de carreira.

Felizmente, podemos usar a Web 2.0 e funcionalidades de última geração disponibilizadas como serviços para organizar o nosso escritório (pessoal ou empresarial) nas nuvens. Listo aqui algumas ferramentas muito interessantes neste contexto:

  • Google Docs. Um editor de texto, uma planilha e um editor de apresentações gratuito e compativel com o Microsoft Office. Além dos excelentes recursos para pessoas com necessidades básicas de editoração de texto, o que mais surpreende é a edição completamente colaborativa de documentos. Duas ou mais pessoas podem editar (simultaneamente) o mesmo documento.
  • Google Calendar. Um calendário nas nuvens com recursos excelentes para controle de atividades e marcações de reuniões. Além disso, você pode cadastrar o seu celular na agenda do Google e receber gratuitamente SMS de notificações de reuniões e lembretes de compromissos. Também sincroniza em ambas as direções com a agenda do Microsoft Outlook 2003 e Outlook 2007.
  • Office Live. O Microsoft Office nas nuvens. Usabilidade excelente e gratuito, também permite sincronização com o Microsoft Office tradicional.
  • ZOHO. Um excepcional conjunto de ferramentas colaborativas, tais como gerenciadores de projetos, agendas, planilhas, documentos, sites, wikis. Ideal para você organizar projetos pessoais ou empresariais de pequeno e médio porte.
  • Google Sites. Suporta a criação (sem codificação alguma) de sites Web 2.0, integrandos informações, fluxos de trabalho e aplicações.
  • Ning. Uma plataforma para criar redes sociais sem necessidade de codificação. Simples e prático, permite você criar a sua rede em poucos minutos.

Os mais conservadores podem se preocupar com a segurança e confiabilidade. Dado que voce esteja conectado à grande rede, podemos realmente confiar na segurança oferecida por estes serviços, que estão em patameres técnicos muito acima do que observamos na grande maioria das empresas de mercado. Particularmente, me beneficio muito destes serviços. Onde quer que você esteja, você acessa os seus projetos pessoas, agendas, tarefas, emails, documentos, planilhas e colabora em suas comunidades de práticas (redes sociais). O espaço é ilimitado e o custo é zero.

É interessante e paradoxal perceber que a Web 2.0 é o melhor combate à prirataria que temos atualmente. Estes recursos vão certamente evitar que muitos caiam em tentação e copiem softwares ilegais.

9 de Março de 2009

Ferramentas Sem Custo de Propriedade

Arquivado sob: Outros, Engenharia de Software — marco @ 19:37

Recebi duas interessantes notícias esta semana sobre ferramentas sem custo de propriedade, que gostaria de compartilhar neste nosso espaço de comunicação. Não uso o termo ferramenta gratuita pois toda ferramenta exige tempo de estudo e personalização e isso certamente não é gratuito. Mas uma ferramenta sem custo de propriedade tem um apelo quase emocional para gerentes e é vista com muitos bons olhos pela comunidade técnica.

A primeira notícia é um mapa com ferramentas para Controle de Versões, Estimativas, Gestão de Requisitos, Teste de Performance, Gestão de Projetos, Gestão de Testes, Testes Funcionais e Gestão de Defeitos, coleta por Cristiano Caetano.

A segunda indicação é um software como um serviço para a gerência de requisitos. Aqui você não baixa um software. Você cria o seu projeto na Web, monta a equipe, configura as permissões da equipe e faz todo o trabalho “nas nuvens”. Muito interessante.

(Algumas) Melhores Práticas de Engenharia de Software

Arquivado sob: Engenharia de Software — marco @ 19:26

Fizemos na semana passada uma apresentação sobre (algumas) melhores práticas de engenharia de software no Instituto de Gestão em Tecnologia da Informação.

Em particular, abordamos os seguintes pontos:

  • Projetos Centrados em Arquitetura
  • Gestão de Riscos com o Top-Ten Risks
  • Workshops de Requisitos
  • Change Boards
  • Desenvolvimento Iterativo
  • Liderança de Pessoas

Para os mais interessados, a apresentação está em anexo.

Blog do Marco Mendes | Artigos, Comentários e Opiniões sobre Engenharia de Software, Arquitetura de Software, SOA e Java