Treinamentos

Better Developer Fundamentals


O curso explora todos os pilares do desenvolvimento moderno, apresentando de forma abrangente os conceitos que podem ser aplicados no desenvolvimento de software.



Objetivo do Curso

Desenvolver e executar capacitação sobre melhores práticas de desenvolvimento de software com o objetivo de transmitir o conhecimento desenvolvido pelo instrutor em quatorze anos de desenvolvimento de software no Canadá. A capacitação visa articular conhecimento e prática através de mais de 400 slides e 25 exercícios práticos de forma que os participantes possam utilizar os conhecimentos adquiridos em suas empresas de forma sistemática e duradoura.


Método

Esta capacitação será ministrada para uma turma de até 24 (vinte e quatro) participantes por meio de conteúdo teórico e exercícios práticos. A carga horária será de 16 (dezesseis) horas e abordará técnicas e ferramentas que são características de um bom profissional sênior de desenvolvimento de software. O curso se divide em duas partes:

- Parte 1: Brownfield Development (Conversão de Projetos Legados em sistemas modernos de software)
- Parte 2: Greenfield Development (Melhores práticas a serem utilizadas em um novo projeto de software)

Na primeira parte o aluno experimentará, através de exercícios, pegar um projeto legado existente e convertê-lo em um ambiente com métricas, Dashboard, testes, cobertura de código, etc. Aprenderá como identificar áreas propícias para refatoração e como efetuar tal operação de forma controlada e baixo risco. Na segunda parte do curso o aluno verá os conceitos principais necessários na escrita de uma aplicação moderna, modular e com dashboard, build contínuo, testes unitários com TDD, testes de aceitação (ATDD) e arquitetura DSM triangular inferior. Será fornecido material didático impresso. O material em formato eletrônico está disponível a empresas que capacitem quarenta ou mais colaboradores.


Público Alvo

Desenvolvedores Senior envolvidos com software legado ou com dificuldades de aplicar conceitos modernos de software como TDD, ATDD, Build Contínuo, Plugins etc em seus projetos. O curso possui exemplos em Java, C++, Delphi e C# além do BetterDeveloper Setup, o instalador que configura na sua empresa todas as ferramentas e exemplos ensinados no curso, tanto para as desktops de seus desenvolvedores quanto para o servidor.


Benefícios

O conteúdo do curso deverá permitir aos participantes:

- Escrever uma aplicação web ou desktop com cobertura de testes automatizados com Dashboard
- Especificar critérios de aceitação executáveis, em FIT/Fitnesse
- Diagnosticar em projetos legados ou modernos as zonas de maior débito
- Técnico e decidir sobre estratégias para resolver o problema
- Controlar e direcionar a evolução da arquitetura do projeto (legado ou novo) com ferramentas e build contínuo


Ementa

Código Legado - Definição, Sintomas e Desafios
Análise Estática de Código e Métricas -‐ Code Cloning, McCabe, Bug Finders, Coding Standards, Instabilidade
Dependency Structure Matrix (DSM) aplicada a Software Legado
Dashboard e Débito Técnico
Integração Contínua
DSM e Métricas aplicados a Build Contínuo
Desenvolvimento Ágil, Extreme Programming, Backlogs, SCRUM e Kanban
(A)TDD -‐ (Acceptance) Test Driven Development com FitNesse
TDD -‐ Test Driven Development com xUnit
APIs, Design by Contract, Modularidade , Inversão de Dependência, Injeção de Dependência
Plugins e OSGi
Refactoring, Design Patterns, GoF, MVC, MPD
Cobertura de Testes Automatizados -‐ técnicas e ferramentas
Estimativas, Planejamento e Peopleware