Programa do Curso

Software Engineering 5 dias

Dia 1: Projeto Management

  • Gerenciamento de projeto versus gerenciamento de linha e manutenção e suporte
  • Definição de projeto e formulários de projeto
  • Management – regras gerais e gestão de projetos
  • Management estilos
  • O que há de especial para projetos de TI?
  • Processo básico do projeto
  • Processo de projeto iterativo, incremental, em cascata, ágil e enxuto
  • Fases do projeto
  • Funções do projeto
  • Documentação do projeto e outros artefatos
  • Fatores suaves e peopleware
  • PRINCE 2, PMBOK, PMI, IPMA e outros padrões de projeto

Dia 2: Business Análise e Requirements Engineering Fundamentos

  • Definindo metas de negócios
  • Business análise, gerenciamento de processos de negócios, melhoria de processos de negócios
  • A fronteira entre análise de negócios e de sistema
  • Partes interessadas do sistema, usuários do sistema, contexto do sistema e limites do sistema
  • Por que os requisitos são necessários?
  • O que somos engenharia de requisitos
  • A fronteira entre engenharia de requisitos e projeto arquitetônico
  • Onde a engenharia de requisitos costuma estar escondida?
  • Engenharia de requisitos em desenvolvimento iterativo, enxuto e ágil e em integração contínua – FDD, DDD, BDD, TDD
  • Processo, funções e artefatos de engenharia de requisitos básicos
  • Padrões e certificações: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA

Dia 3: Fundamentos de Arquitetura e Desenvolvimento

  • Programming linguagens – paradigmas estruturais e orientados a objetos
  • Desenvolvimento orientado a objetos – quanto é a história, quanto é o futuro
  • Modularidade, portabilidade, manutenibilidade e escalabilidade de arquiteturas
  • Definição e tipo de arquiteturas de software
  • Arquitetura corporativa e arquitetura de sistema
  • Programming estilos
  • Programming ambientes
  • Programming erros e como evitá-los e preveni-los
  • Modelagem de arquitetura e componentes
  • SOA, Web Services e microsserviços
  • Construção automática e integração contínua
  • Quanto design de arquitetura existe em um projeto?
  • Programação extrema, TDD e refatoração

Dia 4: Garantia de Qualidade e Fundamentos de Teste

  • Qualidade do produto: o que é? ISO 25010, FURPS etc.
  • Qualidade do produto, experiência do usuário, modelo Kano, gestão da experiência do cliente e qualidade integral
  • Design centrado no usuário, personas e outras maneiras de tornar a qualidade individual
  • Qualidade suficiente
  • Garantia de Qualidade e Controle de Qualidade
  • Estratégias de risco no controle de qualidade
  • Os componentes da garantia de qualidade: requisitos, controle de processo, configuração e gerenciamento de mudanças, verificação, validação, teste, teste estático e análise estática
  • Garantia de qualidade baseada em risco
  • Testes baseados em risco
  • Desenvolvimento orientado ao risco
  • Curva de Boehm na garantia de qualidade e nos testes
  • As quatro escolas de teste – qual atende às suas necessidades?

Dia 5: Tipos de Processos, Maturidade e Melhoria de Processos

  • A evolução do processo de TI: de Alan Turing, passando pela Big Blue, até a startup enxuta
  • Processo e organização orientada a processos
  • A história dos processos no artesanato e nas indústrias
  • Modelagem de processos: UML, BPMN e mais
  • Gerenciamento de processos, otimização de processos, reengenharia de processos e sistemas de gerenciamento de processos
  • Abordagens de processos inovadores: Deming, Juran, TPS, Kaizen
  • A qualidade (do processo) é gratuita? (Philip Crosby)
  • A necessidade e o histórico de melhoria de maturidade: CMMI, SPICE e outras escalas de maturidade
  • Tipos especiais de maturidade: TMM, TPI (para teste), Requirements Engineering Maturidade (Gorschek)
  • Maturidade do processo versus maturidade do produto: alguma correlação? Alguma relação causal?
  • Maturidade de processos versus sucesso empresarial: alguma correlação? alguma relação causal?
  • Uma lição abandonada: Prevenção automatizada de defeitos e o próximo salto em Productivity
  • Tentativas: TQM, SixSigma, retrospectivas ágeis, estruturas de processos

Requirements Engineering - 2 dias

Dia 1: Elicitação de Requisitos, Negociação, Consolidação e Management

  • Encontrando requisitos: o quê, quando e por quem
  • Classificação das partes interessadas
  • Partes interessadas esquecidas
  • Definindo o contexto do sistema – definindo fontes de requisitos
  • Métodos e técnicas de elicitação
  • Prototipagem, personas e elicitação de requisitos por meio de testes (exploratórios e outros)
  • Marketing e elicitação de requisitos – MDRA (“Market-Driven Requirements Engineering”)
  • Priorizando requisitos: MoSCoW, Karl Wiegers e outras técnicas (incluindo MMF ágil)
  • Refinando requisitos – “especificação por exemplo” ágil
  • Negociação de requisitos: tipos de conflitos, métodos de resolução de conflitos
  • Resolver incongruências internas entre alguns tipos de requisitos (por exemplo, segurança versus facilidade de uso)
  • Rastreabilidade de requisitos – por que e como
  • Mudanças no status dos requisitos
  • Requisitos CCM, versionamento e linhas de base
  • Visão do produto e visão do projeto sobre requisitos
  • Gerenciamento de produtos e gerenciamento de requisitos em projetos

Dia 2: Análise de Requisitos, Modelagem, Especificação, Verificação e Validação

  • Análise é o pensamento e o repensar que você faz entre a elicitação e a especificação
  • O processo de requisitos é sempre iterativo, mesmo em projetos sequenciais
  • Descrevendo requisitos em linguagem natural: riscos e benefícios
  • Modelagem de requisitos: benefícios e custos
  • As regras para usar linguagem natural para especificação de requisitos
  • Definição e gerenciamento do glossário de requisitos
  • UML, BPMN e outras notações de modelagem formais e semiformais para requisitos
  • Usando modelos de documentos e frases para descrição de requisitos
  • Verificação de requisitos – objetivos, níveis e métodos
  • Validação – com prototipagem, revisões e inspeções e testes
  • Validação de requisitos e validação de sistema

Teste - 2 dias

Dia 1: Design de Teste, Execução de Teste e Teste Exploratório

  • Design de teste: após testes baseados em risco, escolha da maneira ideal de usar o tempo e os recursos disponíveis
  • Design de teste “do infinito até aqui” – testes exaustivos não são possíveis
  • Casos de teste e cenários de teste
  • Design de teste em vários níveis de teste (do nível de teste de unidade ao sistema)
  • Design de teste para testes estáticos e dinâmicos
  • Business design de teste orientado e orientado à técnica (“caixa preta” e “caixa branca”)
  • Tentativa de quebrar o sistema (“testes negativos”) e apoiar os desenvolvedores (testes de aceitação)
  • Design de teste para alcançar cobertura de teste – várias medidas de cobertura de teste
  • Design de teste baseado em experiência
  • Projetando casos de teste a partir de requisitos e modelos de sistema
  • Heurísticas de design de teste e testes exploratórios
  • Quando projetar casos de teste? – abordagem tradicional e exploratória
  • Descrevendo casos de teste – quantos detalhes?
  • Execução de testes – aspectos psicológicos
  • Execução de testes – registro e relatórios
  • Projetando testes para testes “não funcionais”
  • Projeto de teste automático e MBT (teste baseado em modelo)

Dia 2: Organização de Teste, Management e Automação

  • Níveis de teste (ou fases)
  • Quem faz os testes e quando? – várias soluções
  • Ambientes de teste: custo, administração, acesso, responsabilidade
  • Simuladores, emuladores e ambiente de teste virtual
  • Testando em ágil scrum
  • Testar a organização e a função da equipe
  • Processo de teste
  • Automação de testes – o que pode ser automatizado?
  • Automação de execução de testes – abordagens e ferramentas
 63 horas

Declaração de Clientes (6)

Cursos Relacionados

Categorias Relacionadas