CES088 |
Agile Programming: Princípios e Técnicas |
|
|
||
|
Objectivo Geral |
|
|
||
Este curso tem como objectivo dotar os participantes de sólidos conhecimentos nos princípios da programação Agile, para que possam planear, desenvolver e implementar com êxito um projecto de software Agile.
A Programação Agile é uma framework de processos que reduz o tempo médio de desenvolvimento ao mesmo tempo que incrementa a colaboração. Esta abordagem garante um produto final que foi controlado em todas as fases e mantém a confiança.
|
|
|
OBJEcTIVos Específicos |
|
|
No final deste curso os participantes saberão:
· Desenvolver interacções adaptáveis de software e releases baseadas nas metodologias Agile
· Minimizar bugs e maximizar a produtividade com Desenvolvimento Dirigido ao teste e unit teste
· Retrabalhar o código existente para melhorar a sua manutenção e o design
· Adoptar de princípios consistentes de programação de forma a atingir uma qualidade de design
· Simplificar os problemas complexos de programação com padrões de design
· Adoptar boas práticas para gerir com sucesso projectos Agile
|
|
|
Destinatários |
|
|
Este Curso destina-se a todos os profissionais com experiência em desenvolvimento, nomeadamente, engenheiros e arquitectos de software, analistas, programadores e gestores técnicos.
|
|
|
PRÉ-REQuisitos |
|
|
Assumem-se conhecimentos básicos de conceitos de programação por objectos e experiência em linguagens de programação, tais como VB, Java ou C#.
|
|||
|
Duração |
||
|
18 horas |
|
|
|
|||
|
Conteúdo Programático |
||
· Adoptar as boas práticas do Manifesto Agile
· Comparação entre as metodologias de software tradicional e Agile
· Identificação de crenças e práticas Agile
2 - PLANEAR UMA RELEASE AGILE
· Estabelecimento do projecto Agile
· Reconhecimento da estrutura de uma equipa Agile (Programadores/Gestores/Clientes)
· Desenvolver a “fundação” com casos dos utilizadores
· Levantamento e análise de requisitos da aplicação
· Captura e reconhecimento das boas «estórias» dos utilizadores
· Estimação e o "Planning Game"
· Distinguir entre release e iteração
· Priorização e selecção de «estórias» de utilizador com o Cliente
· Definição de uma unidade de estimação
· Projecção da velocidade da equipa para releases e iterações
· O processo de programação Agile
· Prioritização das actividades dum design coeso
· Escrever testes, escrever código, refactoring
· Alocação de tempo para um spike
3 - CONSTRUIR SOFTWARE ADAPTATIVO ATRAVÉS DE DESENVOLVIMENTO TEST-DRIVEN
· Condução do processo de design com teste automatizado
· Escrever testes de aceitação pelo utilizador
· Desenvolver e correr testes completos
· Integração de testes unit
· Distinção entre testes de utilizador e testes de unit
· Desenvolver conjuntos de testes efectivos
· Conseguir "luzes verdes" através de teste contínuo
· Optimização do desenvolvimento dirigido ao teste
· Construir um teste unit que é simples isolado e rápido
· Isolar classes para teste efectivo
· Criação de objectos de simulacro para teste
4 - REFACTORING PARA UM DESIGN ELEGANTE
· Reconhecimento de código intuitivo
· Lógica condicional; Duplicação de código; Código que exige comentários
· Limpar o código com refactoring
· Renomear campos e métodos
· Extrair métodos e classes base
· Programação por intenção
· Remoção da lógica condicional
5 - INTEGRAÇÃO DOS PRINCÍPIOS DA PROGRAMAÇÃO ORIENTADA A OBJECTOS (OO)
· Adopção de princípios de boas práticas
· Princípio da Responsabilidade Singular (SRP)
· Princípio de Open/Closed (OCP)
· Princípio da Inversão da Dependência (DIP)
· Princípio de Substituição de Liskov (LSP)
· Desenvolvimento bottom up do design
· Delegação de responsabilidades de classe
· Atingir comportamentos poli mórficos
· Preferência da composição em vez da herança
6 - SIMPLIFICAÇÃO DE PROBLEMAS ARQUITECTURAIS COMPLEXOS ATRAVÉS DE PADRÕES DE DESENHO
· Definição de padrões de desenho
· Padrões criacionais, Estruturais e Comportamentais
· Preservação da correcção de um design adaptável
· Integrando padrões de design no processo Agile
· Método de Modelos, Adaptar, Estratégia, Singleton e Método Factory
· Ultrapassar o comportamento com funções virtuais e abstractas
· Partilhar a funcionalidade com a utilização de campos e métodos estáticos
7 - GERIR O “AGILE MANIFESTO”
· Desenvolver a primeira iteração
· Planear a próxima iteração
· Adaptar “Agile” para servir a metodologia de desenvolvimento
Preços
1º participante | 2º participante | 3º participante |
---|---|---|
1,990.00 EUR | 990.00 EUR | 890.00 EUR |
1º participante | 2º participante | 3º participante |
---|---|---|
1,830,800.00 AOA | 910,800.00 AOA | 818,800.00 AOA |
1º participante | 2º participante | 3º participante |
---|---|---|
199,000.00 MZN | 99,000.00 MZN | 89,000.00 MZN |
Outras Informações
Aos valores acresce IVA à taxa legal em vigor.GARANTIA DE REALIZAÇÃO - POLÍTICA DE NÃO CANCELAMENTO
Porque respeitamos as necessidades de formação e disponibilidade dos nossos clientes, desenvolvemos uma Política de não Cancelamento, com base na qual garantimos a realização de qualquer curso, em pelo menos um dos regimes disponíveis, mesmo que este seja ministrado apenas para 1 pessoa numa lógica one to one.
REGIMES, MODALIDADES E HORÁRIOS 100% FLEXÍVEIS
Todos os cursos podem ser ministrados em regime presencial ou à distância.
Caso pretenda iniciar o seu curso noutra data, contacte-nos!
Temos também disponível a modalidade intra empresa no horário que lhe for mais conveniente: laboral ou pós-laboral.