Evento | Programação | Palestrantes | Mini-Cursos | Palestras | Inscrições | Contato | Blog
Patrocínio Ouro


Patrocínio Prata

Serpro

Serpro

Apoio
Centro Universitário Jorge Amado

InfoQueue Brasil

Engenharia de Software Magazine

Centro Acadêmico de Bacharelado em Sistemas de Informação e Processamento de Dados da Faculdade Ruy Barbosa
Rita Escobar Designer

Organização
JavaBahia
SEA Tecnologia
Revista Visão Ágil
 
Mini-Cursos

 
 

Gerenciamento Ágil de Projetos com Scrum - 26/03

Aprenda na prática como vencer os desafios da implantação da metodologia Scrum para o gerenciamento de projetos de software.  

Objetivo: Nesse mini-curso, o aluno aprenderá na prática, através de várias dinâmicas e exercícios, como usar os conceitos do Scrum combinado com outras metodologias como FDD (Feature-Driven Development) e TOC (Theory Of Constraints), para gerenciar e executar os ciclos de um projeto ágil de software, semelhante ao que importantes empresas estão aplicando em seus processos internos para gerar produtos com maior qualidade, mais velocidade e com menores custos.  

Tópicos:  

Desenvolvimento web ágil com RubyOnRails - 26/03

Agilidade não tem nada a ver com qualquer tecnologia, mas algumas tecnologias tem muito a ver com agilidade.

Ao contrário do que acredita senso comum de mercado, o desenvolvimento ágil (agile) não é consequência de mudança tecnológica, aquisição de produtos ou implantação de ferramentas. Não se compra Agile. Uma equipe não se torna ágil do dia pra noite com o estalo mágico dos dedos de qualquer consultor. Agile não é uma mudança de processos ou ferramentas, mas sim uma grande transformação interior de valores e princípios. Aderir à agilidade diz respeito, em primeiríssimo lugar, a uma mudança radical na forma de se pensar software. Para que métodos ágeis funcionem, a convicção absoluta da equipe é de principal importância. Enfim, não se justifica o uso de qualquer tecnologia específica para que se seja ágil no desenvolvimento.

Entretanto, algumas tecnologias, não todas, têm princípios ágeis internalizados em suas estruturas. Dentre elas, o framework web Rails, construído sobre a linguagem de programação Ruby, pode ser seu maior expoente. Não é difícil encontrar equipes Java ou .NET utilizando práticas ágeis, mas é muito difícil encontrar uma equipe Ruby/Rails NÃO utilizando Agile.

Agile encaixa-se num contexto de mudanças muito maior que o de processos de desenvolvimento de software. Acreditamos que Agile é parte integrante de uma nova escola de pensamento que cada vez mais atrai novos adeptos (http://tinyurl.com/manifesto20). Essa nova escola define novas crenças e valores sobre os quais muito da tecnologia Ruby/Rails tem se baseado.

Esta tecnologia (Rails) que começou como um concorrente explícito à plataforma Web Java é hoje uma grande parceira. É de comum acordo entre líderes de ambas as comunidades, Rails e Java, que nenhuma das alternativas é perfeita para todas as ocasiões. Java tem seu nicho de atuação corporativo extremamente consolidado. Já Ruby/Rails surge como alternativa imediata para o empreendimento de idéias através da construção muito, mas muito muito muito, rápida de aplicativos Web. Pova disso, são os investimentos que empresas tradicionalmente Java como Sun e Red Hat têm realizado sobre as tecnologias Ruby e Rails.

Atualmente, ambos os principais servidores de aplicação Java open source do mercado, JBoss e Glassfish, suportam a execução de aplicativos Rails e a tendência é de expansão dessa lista, de tal forma que não se envolver logo com a tecnologia Ruby/Rails pode representar a perda de grandes oportunidades futuras.

Este mini-curso irá então introduzir a linguagem de programação Ruby e o framework Web Rail, relacionando sua integração com a plataforma Java, através dos seguintes tópicos:

Ruby: linguagem de programação
JRuby: implementação da linguagem Ruby sobre a plataforma Java
RubyOnRails: framework de desenvolvimento web em Ruby, famoso por sua produtividade
JRubyOnRails: uso do framework Rails sobre a implementação JRuby
Construção de aplicativos web JRubyOnRails no NetBeans
Deploy de aplicativos JRubyOnRails no Glassfish e no JBoss

Os únicos pré-requisitos necessários para participação do treinamento são (a) alguma noção de desenvolvimento web e (b) vontade absurda de aprender.

eXtreme Programming (XP) na Prática - 27/03

Venha experimentar na pele o dia a dia de um projeto XP real!  

Nesse minicurso serão apresentados os conceitos básicos do Extreme Programming, e teremos um primeiro contato com a metodologia "de dentro pra fora", do ponto de vista da própria equipe. Ao longo de um dia inteiro de atividades a turma realizará todas as etapas de um projeto XP real, envolvendo planejamento, levantamento de requisitos, design, programação e testes de verdade, chegando ao fim do dia (se Deus quiser :-P ) com uma versão funcional de um pequeno software - simples, mas palpável e útil.
 
Saber programar não é, de forma alguma, um pré-requisito para o curso, embora algumas noções básicas e familiaridade com lógica de programação sejam desejáveis. De qualquer forma, haverá espaço para todos, pois as sessões de programação se darão de forma coletiva - em formato
CodingDojo - e porque uma equipe XP é formada, na prática, com todo tipo de especialidades.  Quem não se sentir à vontade programando poderá no mínimo observar de perto como o design do código floresce naturalmente, cultivado por práticas como Desenvolvimento Orientado a Testes, Refatoração, programação em par, e Integração contínua - além de participar ativamente do levantamento de histórias, jogo do planejamento e retrospectivas.        

Gestão Ágil de Requisitos - 27/03

Nesse treinamento, será exposta uma visão pragmática da aplicação de práticas ágeis e enxutas para promover o aprendizado iterativo e incremental para modelar e desenvolver um produto de software, alinhado à estrutura de uma organização e dentro das expectativas de prioridades para as entregas.

Tópicos:

  • A estrutura de produto dentro uma organização
  • As dimensões do escopo (Tamanho, simplicidade e aderência.)
  • Modelagem de negócios
  • Processo de aprendizado de escopo
  • Estado Lean para o desenho de software
  • Representando desejos com User Story
  • Modelando Papéis
  • Formato para User Story
  • O modelo INVEST
  • Usando Temas e Épicos
  • Representando desejos com Features
  • O modelo ARO (Ação Resultado Objeto)
  • Aplicando a FBS (Feature Breakdown Structure) da FDD (Feature Driven Development)
  • Usando Áreas e Atividades
  • Priorização por Áreas, Atividades ou Temas
  • Estratégia de entrega em alto nível
  • Critérios de Aceitação em diferentes níveis
  • DoD (Definition of Done) em diferentes níveis
  • Monitoramento de resultados
  • Exemplos de Product Backlogs
  • Técnicas de Modelagem Ágil
  • E como ficam meus casos de usos?
  • Aplicando a TOC (Teoria das Restrições) na engenharia de requisitos
  • Terminei o projeto e agora, onde fica toda a informação?
  • Dinâmicas para aplicação dos conceitos

CSM - Certified ScrumMaster - 30 e 31/03

AVISO: Esse treinamento é uma realização da AdaptWorks, empresa parceira do evento Maré de Agilidade. Informações sobre local de realização, valores de inscrição e outros detalhes no site da Scrum Alliance.

Neste curso de dois dias, você não somente conhecerá os fundamentos do Scrum, mas terá experiências hands-on usando Scrum.

Este curso coloca a teoria em ação através do exercício ScrumLand (baseado no 59-Scrum Game, mas mais extenso e aprofundado) onde você e seu time poderão aplicar na prática os conceitos do Scrum em um projeto não-técnico. Durante o curso, os participantes irão entender como um simples - mas eficiente - processo como Scrum pode transformar os resultados de uma empresa.

Os participantes deste curso irão adquirir experiência com as ferramentas utilizadas no Scrum e em atividades ligadas a Product e Sprint Backlogs, Daily Meetings, Sprint Planning Meeting e Burndown charts. Irão também aprender como aplicar Scrum para todos os tipos de projetos, do single collocated team ao time distribuído em ambiente off-shore.

Obtendo sucesso no curso, cada participante se tornará um Certified ScrumMaster. Esta certificação inclui o credenciamento e manutenção por um ano como membro da Scrum Alliance, onde há disponível um conjunto de rico material exclusivo para CSMs.

Mais do que uma certificação, após concluir esse curso você terá acesso a base de artigos exclusivo da ScrumAlliance.org, seu certificado digitalizado, seu profile dentro do site e contato com todos os CSMs ao redor do mundo.