Escolha o seu idioma
Curso de Engenharia de Software
Mais de 2 milhões de alunos no mundo todo

Curso de Engenharia de Software

4,2

Domine toda a disciplina da engenharia de software, desde requisitos e design até testes, arquitetura e entrega. Este curso oferece o conhecimento estruturado e as habilidades práticas que engenheiros profissionais utilizam todos os dias. Esteja você avançando na carreira ou construindo uma base sólida, é aqui que a prática rigorosa de engenharia começa.

Dedika para empresas

O que você vai aprender:

Você vai aprender a coletar e especificar requisitos de software, projetar sistemas usando padrões consolidados e princípios SOLID, e documentar arquiteturas com UML. O curso aborda o ciclo de vida completo do desenvolvimento de software, incluindo frameworks ágeis, planejamento de projetos e gerenciamento de riscos. Você desenvolverá habilidades de teste nos níveis de unidade, integração e sistema, e configurará pipelines automatizados de CI/CD. Os tópicos também incluem práticas de codificação segura, design de API, estratégias de persistência de dados e fundamentos de DevOps. Ao final, você terá a profundidade técnica e as habilidades profissionais para contribuir de forma eficaz em equipes reais de engenharia.

Como você estuda de forma prática Curso de Engenharia de Software

Como você pratica Curso de Engenharia de Software

Para si que é empresa e quer formar a equipa

Na Dedika para empresas, o curso inclui exercícios e exemplos do próprio negócio e adaptados às necessidades da sua empresa.

Clique aqui

Conteúdo do curso

8 Capítulos • 40 AulasDuração entre 4 e 360 horas (você decide)

Capítulo 1Ver detalhes

Fundamentos da Engenharia de Software

  • Aula 1 • Responsabilidades Profissionais e Éticas

    Examina códigos de conduta, propriedade intelectual e tomada de decisão ética no trabalho com software. Conecta padrões profissionais a escolhas reais de engenharia.

  • Aula 2 • Princípios Essenciais de Engenharia

    Apresenta abstração, modularidade, separação de preocupações e encapsulamento. Esses princípios fundamentam todas as decisões de design e arquitetura abordadas posteriormente.

  • Aula 3 • Atributos de Qualidade de Software

    Aborda confiabilidade, manutenibilidade, escalabilidade e usabilidade como metas mensuráveis. Os alunos aprendem a avaliar trade-offs entre atributos de qualidade concorrentes.

  • Aula 4 • O Que É Engenharia de Software

    Define engenharia de software e a distingue da programação. Ancora o capítulo ao enquadrar o rigor da engenharia como essencial à prática profissional.

  • Aula 5 • História e Evolução da Área

    Traça marcos importantes desde o início da computação até as práticas modernas. Fornece contexto sobre por que as metodologias atuais existem e como surgiram.

Capítulo 2Ver detalhes

Modelos de Ciclo de Vida do Desenvolvimento de Software

  • Aula 1 • Modelos em Cascata e Sequenciais

    Analisa a estrutura de fases do modelo cascata e seus pontos fortes em projetos com requisitos estáveis. Identifica limitações que motivaram alternativas iterativas.

  • Aula 2 • Selecionando o Modelo Adequado

    Fornece um framework de decisão baseado no tamanho do projeto, risco e estabilidade dos requisitos. Os alunos praticam a seleção de modelos por meio de análise de cenários.

  • Aula 3 • Modelos Iterativos e Incrementais

    Aborda modelos espiral, incremental e de processo unificado que entregam software em ciclos. Os alunos comparam estratégias de gerenciamento de riscos entre esses modelos.

  • Aula 4 • Visão Geral das Fases do SDLC

    Mapeia as fases padrão, desde os requisitos até a manutenção. Estabelece um framework compartilhado para todas as comparações posteriores de metodologias.

  • Aula 5 • Frameworks Ágeis na Prática

    Apresenta Scrum, Kanban e Extreme Programming como implementações ágeis. Os alunos mapeiam cerimônias e artefatos ágeis para as fases do SDLC.

Capítulo 3Ver detalhes

Engenharia de Requisitos

  • Aula 1 • Casos de Uso e Histórias de Usuário

    Apresenta diagramas de caso de uso e histórias de usuário narrativas como ferramentas de especificação complementares. Os alunos modelam o comportamento do sistema a partir de uma perspectiva centrada no ator.

  • Aula 2 • Requisitos Funcionais e Não Funcionais

    Distingue requisitos comportamentais de restrições de qualidade e propriedades do sistema. Os alunos escrevem declarações testáveis para ambas as categorias.

  • Aula 3 • Validação e Gerenciamento de Requisitos

    Aborda técnicas de revisão, validação por protótipo e processos de gerenciamento de mudanças. Os alunos aprendem a lidar com requisitos em evolução sem aumento de escopo.

  • Aula 4 • Documentos de Especificação de Requisitos

    Orienta os alunos na estruturação de documentos formais de especificação com matrizes de rastreabilidade. Conecta a qualidade da especificação à precisão do design e dos testes downstream.

  • Aula 5 • Técnicas de Elicitação

    Aborda entrevistas, workshops, observação e prototipação como métodos de elicitação. Os alunos praticam a seleção de técnicas com base na disponibilidade das partes interessadas e na complexidade do domínio.

Capítulo 4Ver detalhes

Princípios e Padrões de Projeto (Design Patterns) de Software

  • Aula 1 • Padrões Estruturais e Comportamentais

    Apresenta os padrões Adapter, Decorator, Observer, Strategy e Command. Os alunos compõem padrões para resolver problemas de design com múltiplas preocupações.

  • Aula 2 • Princípios de Design SOLID

    Ensina os cinco princípios SOLID como diretrizes para código flexível e extensível. Os alunos refatoram exemplos mal projetados para satisfazer cada princípio.

  • Aula 3 • Padrões de Design Criacionais

    Aborda os padrões Singleton, Factory, Abstract Factory, Builder e Prototype. Os alunos implementam cada padrão e identificam contextos de uso apropriados.

  • Aula 4 • Design Estruturado e Orientado a Objetos

    Contrasta a decomposição procedural com as estratégias de design orientado a objetos. Os alunos modelam sistemas usando classes, responsabilidades e colaborações.

  • Aula 5 • Documentação de Design com UML

    Usa diagramas de classe, sequência e componentes para comunicar decisões de design. Os alunos produzem um pacote completo de design UML para uma especificação fornecida.

Capítulo 5Ver detalhes

Arquitetura de Software

  • Aula 1 • Avaliação Arquitetural e Trade-offs

    Aplica métodos de avaliação estruturados para comparar arquiteturas candidatas em relação aos atributos de qualidade. Os alunos realizam uma revisão arquitetural baseada em cenários.

  • Aula 2 • Pensamento Arquitetural e Visões

    Apresenta o conceito de visões arquiteturais e documentação orientada por partes interessadas. Os alunos distinguem as visões lógica, de processo, física e de desenvolvimento.

  • Aula 3 • Arquiteturas Orientadas a Eventos e Reativas

    Apresenta corretores de mensagens, event sourcing e CQRS como padrões para sistemas assíncronos. Os alunos modelam fluxos de eventos para cenários de alto throughput.

  • Aula 4 • Arquiteturas em Camadas e Cliente-Servidor

    Analisa a arquitetura em camadas e os padrões cliente-servidor como estilos fundamentais. Os alunos avaliam sua adequação para aplicações corporativas e web.

  • Aula 5 • Microsserviços e Arquitetura Orientada a Serviços

    Aborda decomposição de serviços, contratos de API e estratégias de comunicação entre serviços. Os alunos comparam os trade-offs monolíticos e de microsserviços em relação à escalabilidade.

Capítulo 6Ver detalhes

Construção de Software e Qualidade de Código

  • Aula 1 • Técnicas de Refatoração

    Apresenta movimentos sistemáticos de refatoração, como extrair método, renomear e substituir condicional. Os alunos aplicam refatoração com segurança usando cobertura de teste automatizada.

  • Aula 2 • Padrões e Convenções de Codificação

    Estabelece convenções de nomenclatura, formatação e comentários como acordos em nível de equipe. Os alunos auditam o código existente em relação a um padrão definido e produzem correções.

  • Aula 3 • Princípios de Código Limpo

    Aborda nomes significativos, funções pequenas e efeitos colaterais mínimos como princípios do código limpo. Os alunos reescrevem funções complexas para atender aos critérios de legibilidade.

  • Aula 4 • Gerenciamento de Dívida Técnica

    Define dívida técnica, suas causas e estratégias para pagamento controlado. Os alunos avaliam uma base de código, quantificam a dívida e propõem um plano de remediação.

  • Aula 5 • Análise Estática e Revisão de Código

    Aborda ferramentas de análise estática e processos estruturados de revisão por pares para prevenção de defeitos. Os alunos conduzem uma revisão de código formal usando uma abordagem baseada em checklist.

Capítulo 7Ver detalhes

Teste de Software e Garantia de Qualidade

  • Aula 1 • Automação de Testes e Testes Contínuos

    Apresenta frameworks de automação, estratégia de pirâmide de teste e integração com pipeline de CI. Os alunos configuram uma suíte de teste automatizada que é executada a cada commit de código.

  • Aula 2 • Técnicas de Caixa-Preta e Caixa-Branca

    Ensina particionamento de equivalência, análise de valor limite e cobertura de caminhos como técnicas complementares. Os alunos derivam casos de teste a partir da especificação e da estrutura do código.

  • Aula 3 • Teste de Sistema e Teste de Aceitação

    Aborda testes de sistema ponta a ponta, suítes de regressão e processos de teste de aceitação do usuário. Os alunos projetam um plano de teste de sistema alinhado aos requisitos.

  • Aula 4 • Teste Unitário e de Integração

    Aborda desenvolvimento orientado a testes, objetos mock e estratégias de teste de integração. Os alunos escrevem testes unitários e testes de integração para um conjunto de módulos fornecido.

  • Aula 5 • Fundamentos e Terminologia de Teste

    Define verificação, validação, falhas, erros e o conceito de oráculo de teste. Estabelece um vocabulário compartilhado para todas as técnicas de teste subsequentes.

Capítulo 8Ver detalhes

Gerenciamento e Entrega de Projetos de Software

  • Aula 1 • Planejamento de Projeto e Gerenciamento de Escopo

    Aborda estruturas analíticas de projeto (EAP), definição de marcos e criação de linha de base de escopo. Os alunos decompõem um projeto em tarefas gerenciáveis com entregas claras.

  • Aula 2 • Planejamento de Release e Métricas de Entrega

    Apresenta planejamento de release train, acompanhamento de velocidade e métricas de saúde da entrega. Os alunos interpretam gráficos burndown e ajustam planos com base em dados reais.

  • Aula 3 • Técnicas de Estimativa de Esforço

    Apresenta análise de pontos de função, story points e julgamento de especialistas como métodos de estimativa. Os alunos calibram estimativas usando dados históricos de velocidade.

  • Aula 4 • Gerenciamento de Riscos em Projetos de Software

    Ensina identificação de riscos, avaliação de probabilidade-impacto e seleção de estratégias de mitigação. Os alunos constroem um registro de riscos e um plano de resposta para um projeto de exemplo.

  • Aula 5 • Dinâmica de Equipe e Comunicação

    Aborda modelos de formação de equipe, canais de comunicação e estratégias de resolução de conflitos. Os alunos aplicam o planejamento de comunicação a um cenário de equipe distribuída.

Certificação

Seu certificado válido de conclusão

Este curso é para si:

  • Desenvolvedor júnior: quer crescer além de escrever código para uma prática de engenharia estruturada.

  • Graduado em ciência da computação: precisa de metodologia do mundo real para complementar a teoria acadêmica.

  • Programador autodidata: não tem treinamento formal em engenharia, mas tem experiência prática em programação.

  • Engenheiro de QA: busca aprofundar a compreensão do processo completo de desenvolvimento e entrega.

  • Gerente técnico de projetos: busca fluência em engenharia para colaborar mais efetivamente com desenvolvedores.

  • Profissional em transição de carreira: traz expertise de domínio e agora quer formalizar habilidades de engenharia de software.

O que os nossos alunos dizem

As vossas aulas são perfeitas. Adquiri o pacote de um ano e, finalmente, tenho a oportunidade de acompanhar diversos temas do meu interesse sem precisar mudar de plataforma... agradeço por tudo o que fazem, já vos recomendei a outras pessoas...
Giulio Carlo
Giulio CarloAluno de Marketing Digital
Gosto de como as lições são directas ao assunto e como consigo alterar capítulos e saltar conteúdos que não preciso.
Mariana Ferres
Mariana FerresAluna de Fotografia
Gosto do conteúdo e do modo de apresentação e transcrição de vídeos, o que acelera o processo!
Luciana Alvarenga
Luciana AlvarengaAluna de Design de Unhas
A plataforma é rápida, simples de usar. A diversidade de conteúdo e os vídeos complementares ajudam muito na aprendizagem.
André Felipe
André FelipeAluno de Engenharia de Prompt

Principais capacitações

FAQ

Quem é a Dedika?

O certificado é válido em Brasil?

Os cursos são gratuitos?

Qual é a carga horária do curso?

Como são os cursos?

Como funcionam os cursos?

Qual é a duração dos cursos?

Qual é o custo ou preço dos cursos?

O que é um curso EAD ou online e como funciona?

Curso em PDF