O dinamismo do desenvolvimento e da evolução da área de Tecnologia da Informação exige que seus profissionais estejam em constante processo de reciclagem / aprendizagem. Para se desenvolver software de qualidade e que atendam às reais necessidades de seus usuários, é de suma importância a utilização de metodologias que conduzam de forma eficiente e eficaz esse processo. O curso apresenta uma visão crítica e prática do emprego da Engenharia de Software no processo de desenvolvimento de software para os mais variados ambientes organizacionais, abordando técnicas, tendências e estado da arte da Engenharia de Software, como desenvolvimento de aplicações web front-end e back-end, SCRUM, DevOps, DevSecOps, Design Thinking, Design Sprints, TDD, Generative AI, dentre outras. O curso é tradicional na PUC Minas, ocorrendo semestralmente desde 1999.
Titulação: Especialista
COMO FUNCIONA A MODALIDADE
OBJETIVOS
O Curso de Especialização em Engenharia de Software visa:
Desenvolver junto aos alunos habilidades de análise e utilização das tecnologias e metodologias da Engenharia de Software com o intuito de aplicá-las nos mais variados contextos organizacionais;
Capacitar os alunos a gerenciar projetos de software de forma ágil e eficiente, utilizando metodologias como Scrum, Kanban, e práticas DevOps e DevSecOps para promover uma cultura de colaboração e automação contínua;
Preparar os alunos para utilizar abordagens de design de software, incluindo Design Thinking e Domain-Driven Design, para criar soluções centradas no cliente;
Ensinar os fundamentos da engenharia de requisitos e da qualidade de software, com foco na garantia da qualidade e na satisfação do cliente;
Desenvolver habilidades para trabalhar com diferentes tecnologias e bancos de dados, incluindo relacionais e não relacionais.
Fornecer habilidades práticas para a criação e gestão de APIs seguras e eficientes e a utilização de bancos de dados relacionais e não relacionais para atender às necessidades de dados diversificadas;
Explorar a aplicação de IA no desenvolvimento de software para melhorar a produtividade e a qualidade do desenvolvimento de software.
Competências a serem desenvolvidas
Ao final do curso, o aluno será capaz de:
Compreender questões conceituais, padrões e práticas relacionadas à Engenharia de Software;
Aplicar metodologias ágeis, como Scrum e Kanban, para planejar, executar e monitorar projetos de software;
Implementar práticas de DevOps e DevSecOps, incluindo integração contínua, entrega contínua e segurança em todo o ciclo de vida do desenvolvimento;
Aplicar processos de engenharia de software, aplicando técnicas de Design Thinking, DDD, e desenvolvimento centrado no usuário;
Projetar designs intuitivos e acessíveis, utilizando ferramentas de prototipação e realizando testes de usabilidade;
realizar o levantamento, análise e gerenciamento de requisitos de software, assegurando que atendam as expectativas dos stakeholders;
Projetar soluções escaláveis e resilientes em ambientes de nuvem;
Implementar arquiteturas modernas para desenvolvimento front-end, incluindo SPAs, PWAs e responsividade
Aplicar padrões, protocolos, e frameworks para construção de soluções back-end ;
Projetar, desenvolver e gerenciar APIs, utilizando diferentes abordagens arquiteturais como REST e GraphQL;
Projetar e otimizar bancos de dados relacionais e não relacionais;
Realizar testes de software eficazmente, usando técnicas como TDD e integrando testes no fluxo de CI/CD;
Implementar processos de garantia de qualidade;
Aplicar técnicas de inteligência artificial para melhorar o desenvolvimento de software, como a geração de código e a automação de testes;
Implementar práticas de segurança no ciclo de desenvolvimento.
Áreas de atuação do egresso:
O especialista em Engenharia de Software poderá atuar como Engenheiro de Software e, também, nas mais diversas áreas que demandam conhecimentos de desenvolvimento, evolução e operação de software. Além disso, ele poderá atuar nos mais diversos tipos de projetos inovadores em TI.
ÁREA DE ATUAÇÃO DO EGRESSO
O especialista em Engenharia de Software poderá atuar como Engenheiro de Software e, também, nas mais diversas áreas que demandam conhecimentos de desenvolvimento, evolução e operação de software. Além disso, ele poderá atuar nos mais diversos tipos de projetos inovadores em TI.
PÚBLICO-ALVO
Profissionais com formação superior:
Em Ciência da Computação, Engenharia de Computação, Engenharia de Software, Sistemas de Informação, tecnólogos da área de Tecnologia da Informação ou áreas afins;
Nas mais diversas áreas e que necessitam de competências emergentes para atuarem na área de Engenharia de Software;
Que já atuam na área de Engenharia de Software, mas que precisam aprofundar seus conhecimentos na área.
PROGRAMA DO CURSO
Competências Disciplinares
Módulo 1: Fundamentos e Estratégias de Engenharia de Software
Estratégias para Desenvolvimento de Software
Ao final da disciplina, os alunos deverão ser capazes de:
Aplicar os processos de engenharia de software em projetos reais
Utilizar abordagens de Design Thinking no desenvolvimento de soluções
Aplicar princípios de DDD (Design Dirigido pelo Domínio) e FDD (Desenvolvimento Dirigido por Funcionalidades)
Implementar Design Sprints para acelerar a inovação
Otimizar a experiência do desenvolvedor (DevEx)
Engenharia de Requisitos
Ao final da disciplina, os alunos deverão ser capazes de:
Conduzir o levantamento, análise, especificação e validação de requisitos funcionais e não funcionais de software.
Diferenciar e especificar requisitos funcionais e não funcionais
Identificar e gerenciar stakeholders em projetos de software
Aplicar métodos de priorização e análise de requisitos
Criar casos de uso, cenários e histórias de usuário
Gerenciar mudanças nos requisitos ao longo do ciclo de vida do projeto
Integrar Design Thinking na Engenharia de Requisitos
Design de Experiência do Usuário
Ao final da disciplina, os alunos deverão ser capazes de:
Criar personas e storyboards para representar usuários-alvo
Realizar pesquisas de UX e aplicar ferramentas de prototipação, garantindo acessibilidade e usabilidade através de testes como Testes A/B e Mapas de Calor
Criar designs responsivos e compatíveis com diferentes dispositivos
Desenvolver arquiteturas de informação eficientes
Criar protótipos e mockups usando ferramentas de design
Realizar e interpretar testes de usabilidade
Implementar layouts responsivos e style guides consistentes
Qualidade de Software
Ao final da disciplina, os alunos deverão ser capazes de:
Aplicar fundamentos de qualidade de software, estabelecendo métricas e práticas para assegurar a qualidade do processo e produto
Definir e medir métricas de qualidade de processo e produto
Aplicar normas e modelos de maturidade para avaliar processos e garantir a certificação e melhoria contínua
Realizar avaliações de qualidade e auditorias de software
Compreender a importância da qualidade de software para os objetivos estratégicos do negócio
Módulo 2: Metodologias Ágeis e DevOps
Gerenciamento Ágil de Projetos
Ao final da disciplina, os alunos deverão ser capazes de:
Compreender e aplicar fundamentos de gerenciamento de projetos, diferenciando abordagens tradicionais e ágeis
Implementar e adaptar frameworks ágeis como Scrum e Kanban
Fomentar uma cultura ágil em equipes de desenvolvimento
Definir e ajustar planos, acompanhar o progresso e fazer ajustes conforme necessário
Gerenciar mudanças em ambientes ágeis
Cultura e Práticas DevOps
Ao final da disciplina, os alunos deverão ser capazes de:
Compreender a cultura DevOps e seus benefícios
Implementar CI/CD e infraestrutura como código utilizando ferramentas como Docker e Kubernetes
Projetar pipelines de build e deployment seguros e eficazes
Promover uma cultura de DevOps colaborativa e centrada na automação de testes e processos
Integrar práticas de DevOps em projetos de desenvolvimento soluções
Cultura e Práticas DevSecOps
Ao final da disciplina, os alunos deverão ser capazes de:
Conhecer os conceitos fundamentais de DevOps e DevSecOps
Entender do Secure Development Lifecycle (SDLC)
Implementar práticas de segurança end-to-end no desenvolvimento de software
Gerenciar e construir de pipelines DevSecOps .Aplicar as melhores práticas em DevSecOps
Usar técnicas de verificação de segurança (IAST, SAST, DAST, RASP)
Compreender Security Observability
Módulo 3: Arquitetura e Desenvolvimento
Arquitetura de Soluções em Nuvem
Ao final da disciplina, os alunos deverão ser capazes de:
Avaliar diferentes provedores de nuvem (IaaS, SaaS, PaaS) para escolher a melhor solução baseada em necessidades específicas de elasticidade e disponibilidade
Projetar arquiteturas de nuvem seguras e escaláveis que suportem DevOps, proporcionando uma integração contínua e entrega ágil
Implementar soluções eficientes de multi-cloud e cloud híbrida, assegurando a interoperabilidade entre nuvens públicas e privadas
Realizar análises de viabilidade técnica e financeira para justificar o uso de certas tecnologias e abordagens de nuvem
Arquitetura de Front End
Ao final da disciplina, os alunos deverão ser capazes de:
Dominar o ambiente de desenvolvimento moderno, incluindo IDEs, gerenciadores de pacotes, loaders e bundlers
Aplicar a abordagem Mobile First e responsividade
Utilizar frameworks e pré-processadores CSS
Aplicar abordagens arquiteturais para CSS (BEM, SMACSS, OOCSS, RSCSS, CSS-in-JS)
Implementar abordagens arquiteturais de front end (SPA, PWA, SSR, WebAssembly, Micro frontends)
Abordar aspectos de segurança no front end
Aplicar técnicas de otimização para motores de busca (SEO)
Arquitetura de Back End
Ao final da disciplina, os alunos deverão ser capazes de:
Compreender os estilos arquiteturais de back end
Aplicar mecanismos arquiteturais de back end
Dominar padrões, protocolos e especificações de back end
Implementar diferentes abordagens arquiteturais de back end
Selecionar tecnologias e frameworks adequados para a construção de back end
APIs e Web Services
Ao final da disciplina, os alunos deverão ser capazes de:
Compreender os fundamentos e arquiteturas de APIs (SOAP, REST, GraphQL, etc.).
Projetar, documentar e testar APIs, assegurando segurança e boas práticas.
Implementar diferentes abordagens arquiteturais de APIs
Utilizar protocolos como REST e SOAP para criar e consumir APIs
Documentar APIs de forma clara e completa
Aplicar práticas de segurança no desenvolvimento de APIs
Gerenciar o ciclo de vida completo de API
Módulo 4: Implementação e Testes de Software
Bancos de Dados Relacionais e Não Relacionais
Ao final da disciplina, os alunos deverão ser capazes de:
Compreender e aplicar modelos relacionais e NoSQL, utilizando SQL e explorando os benefícios de cada abordagem.
Comparar e selecionar entre modelos relacionais e NoSQL para diferentes cenários
Implementar e gerenciar transações em diferentes tipos de bancos de dados
Utilizar eficientemente os principais SGBDs do mercado
Práticas de Implementação e Evolução de Software
Ao final da disciplina, os alunos deverão ser capazes de:
Planejar e executar sprints de desenvolvimento
Modelar e projetar soluções de software
Implementar sistemas usando padrões arquiteturais como MVC
Integrar práticas de teste no processo de desenvolvimento
Planejar e executar implantações de software
Aplicar técnicas eficazes de manutenção de software
Testes de Software
Ao final da disciplina, os alunos deverão ser capazes de:
Aplicar fundamentos de testes de software ao longo do ciclo de vida de desenvolvimento, utilizando abordagens como TDD
Integrar testes no fluxo de CI/CD, utilizando ferramentas de automação para assegurar a qualidade contínuaSelecionar e utilizar ferramentas de automação de testes
Configurar e gerenciar ambientes de teste
Implementar testes não funcionais automatizados
Analisar e reportar resultados de testes
Módulo 5: Inovação e Tecnologias Emergentes
IA Generativa em Desenvolvimento de Software
Ao final da disciplina, os alunos deverão ser capazes de:
Aplicar técnicas de IA Generativa para automatizar tarefas de desenvolvimento de software.
Avaliar o impacto da IA Generativa na produtividade e qualidade do software.
Utilizar e integrar ferramentas de IA Generativa no processo de desenvolvimento de software.
Comunicar os benefícios e desafios da IA Generativa para stakeholders.
Utilizar IAs Generativas para melhorar a experiência do usuário (UX) em interações com software.
Gerenciar e configurar soluções de AI-as-a-Service, AI-as-a-Commodity e AI Gateways.
Humanidades
Ao final da disciplina, os alunos deverão ser capazes de:
Refletir sobre o papel da ética e da espiritualidade no contexto científico e tecnológico.
Avaliar os impactos sociais e humanistas do uso de dados e tecnologia.
Desenvolver uma ética profissional sólida em ambientes de trabalho colaborativos e tecnológicos.
CONTEÚDO PROGRAMÁTICO
APIs e Web Services
Arquitetura de Back End
Arquitetura de Front End
Arquitetura de Soluções em Nuvem
Bancos de Dados Relacionais e não Relacionais
Cultura e Práticas DevOps
Cultura e Práticas DevSecOps
Design de Experiência do Usuário
Engenharia de Requisitos
Estratégias para Desenvolvimento de Software
Gerenciamento Ágil de Projetos
IA Generativa em Desenvolvimento de software
Práticas de Implementação e Evolução de Software
Qualidade de Software
Testes de Software
Humanidades*
*Atenta as tendências de mercado e visando desenvolver a compreensão do ser humano frente às ambiguidades existenciais e sócio religiosas da contemporaneidade, a PUC Minas Virtual disponibilizará como disciplina bônus, além das disciplinas previstas para cada um de seus cursos, a disciplina Humanidades.
Confira as disciplinas e suas respectivas ementas AQUI.
- Ao clicar no botão Quero me Inscrever, o candidato deverá seguir as etapas do processo, que acontece dentro do portal de inscrições Vem Pra PUC.
- Na página inicial do curso escolhe a forma de pagamento, parcelada ou à vista;
- Após a conclusão desta fase, o candidato receberá um e-mail com a confirmação da inscrição.
2. MATRÍCULA
O candidato receberá e-mail com o link do Painel do candidato para cumprir três procedimentos:
- atualização dos dados cadastrais;
- upload da documentação necessária. Confira AQUI a lista dos documentos necessários;
- adesão ao termo de matrícula.
PAINEL DO CANDIDATO
Caso não receba o e-mail da matrícula, o candidato poderá acessar o ambiente Painel do candidato e seguir com os passos para a realização do processo por lá. Além disso, ele conseguirá acompanhar as informações da matrícula e consultar o status do curso.
IMPORTANTE
Somente após a realização da inscrição que o candidato estará apto a seguir para a etapa da matrícula.
A realização do upload dos documentos exigidos na fase de matrícula é obrigatória para a continuidade do processo.
Etapas de inscrição e matrícula finalizadas? Agora o candidato deverá aguardar as informações e orientações que serão enviadas por e-mail e também disponibilizadas no Painel do Candidato.
ATENÇÃO • REQUISITO PREVISTO EM LEI
Apenas os candidatos que tenham colado grau na graduação poderão se inscrever para um curso de pós-graduação da PUC Minas. Este é um requisito previsto na Lei nº 9.394 e também no Contrato de Prestação de Serviços (clique AQUIpara ter acesso). A conferência desse requisito será feita pela PUC Minas e, caso seja identificada alguma irregularidade, a matrícula será cancelada a qualquer momento (conforme cláusula 4.5.1 do contrato). Neste caso, o candidato não terá direito ao recebimento de reembolso dos valores já pagos.
Migração de cursos:
Caso você tenha realizado a sua inscrição e o pagamento, mas queira mudar de opção de curso, clique aqui e faça a sua solicitação de migração. A nossa equipe irá receber a sua solicitação e dar andamento.
Caso não receba as mensagens da PUC Minas, confira sempre a sua caixa de spam.
As orientações de acesso ao curso serão enviadas para o e-mail do aluno em até 72h após a confirmação do pagamento da primeira parcela.
REQUISITOS TECNOLÓGICOS
O aluno deve possuir ou ter acesso a um computador com a seguinte configuração mínima:
Processador com frequência mínima de 2 GHz ou superior e 2 núcleos;
4 GB de memória RAM (recomenda-se 8 GB) *;
Placa de vídeo configurada com resolução mínima de 1024 x 768 pixels;
Placa de som com caixas acústicas (ou fones de ouvido) e microfone;
Windows 10 (atualizado para a versão 1903 ou superior), Windows 11, MacOS (versão 10.13 - High Sierra ou superior) ou Linux;
Google Chrome (versão mais recente) ou Mozilla Firefox (versão mais recente);
Acesso à Internet, com velocidade mínima de conexão de 2 Mbps;
Correio eletrônico pessoal (e-mail).
Observação: O aluno com necessidades especiais deverá informar à Universidade no ato da inscrição. Para alunos portadores de necessidades especiais no campo da visão, é necessário acesso a um programa (software) de leitura de tela.
* Alunos dos cursos BIM Manager e BIM PROJETOS PARAMÉTRICOS E DESIGN DIGITAL APLICADOS À CONSTRUÇÃO CIVIL: A universidade não se responsabiliza pela aquisição das licenças comerciais dos softwares a serem utilizados no curso. O aluno deverá obter versões acadêmicas e gratuitas no site dos fabricantes. É recomendável que o computador do usuário possua no mínimo 16 Ghz de memória RAM (recomenda-se 32) para uso de softwares de autoria BIM.
REQUISITOS ACADÊMICOS
Já ter colado grau.
Possuir diploma de curso de graduação (reconhecido pelo Ministério da Educação do Brasil).
Preencher os requisitos básicos de formação de acordo com a necessidade de cada curso.
Curso está confirmado - Liberação das aulas em até 72h após a conclusão da inscrição e do pagamento da primeira mensalidade.
Carga Horária
O curso possui carga horária total de 360 horas. A prestação dos serviços é prevista para 18 meses.
Investimento
24 x R$ 260,00
20 x R$ 312,00
15 x R$ 416,00
10 x R$ 624,00
5 x R$ 1248,00
1 parcela - pagamento à vista com desconto 7% - 5.804,00
Pagamento parcelado: a primeira parcela será quitada no ambiente da loja VEM PRA PUC. As demais deverão ser pagas diretamente à própria instituição PUC Minas por meio de boletos gerados pelo aluno no sistema acadêmico (também serão enviados por e-mail mensalmente).
Alunos que residem no exterior: a forma de pagamento deve ser à vista e realizada por transferência bancária ou em 1x no cartão de crédito. Para mais esclarecimentos, gentileza contatar diretamente a Divisão Financeira - ead.financeiro@pucminas.br
Pessoa Jurídica como responsável pelo pagamento das mensalidades
Nos casos em que o candidato será beneficiado por uma pessoa jurídica que arcará no todo ou em parte com as mensalidades dos cursos de pós graduação EAD, será necessário gerar o
contrato de coparticipação financeira e preencher todos os dados editáveis do documento, imprimir, assinar e carimbar o respectivo documento e enviar a cópia digitalizada para
ead.financeiro@pucminas.br. O processo também se aplica se por ventura o curso for pago à vista.
Trabalho de conclusão de curso
Para os alunos que ingressarem a partir de 2023, o Trabalho de Conclusão de Curso não é mais obrigatório na PUC Minas Virtual*, no entanto, o aluno poderá, opcionalmente, contratar um TCC. Após a contratação, será apresentada ao aluno a proposta de trabalho, bem como designado um orientador individual. As informações que dizem respeito à execução do TCC também serão disponibilizadas por meios de textos e vídeos. A duração prevista para o trabalho é de 60 dias e, ao final, o aluno deverá fazer uma apresentação via Internet.
*Exceto para o curso de Engenharia de Segurança do Trabalho.
Certificação
Você receberá o certificado de especialista emitido em formato digital pela PUC Minas. O documento terá um link e código para verificação de autenticidade e veracidade. O certificado do curso a distância é igual ao de um curso presencial.
Utilize material didático exclusivo, com acesso a Bibliotecas virtuais.
Tenha suporte acadêmico e tecnológico
Diploma Estrangeiro
Alunos com diploma de graduação emitido fora do territorio nacional, devem acessar o link oficial do MEC para revalidar ou reconhecer seu diploma no Brasil
Estágio
Informamos que assinamos e autorizamos a realização de estágio nos cursos de pós-graduação a distância. O estágio não obrigatório poderá ser realizado em qualquer período do Curso, desde que o curso tenha sua oferta confirmada e as aulas tenham iniciadas.
Ademais, as atividades desenvolvidas no estágio deverão visar o aprendizado de competências próprias da atividade profissional e à contextualização curricular, seguindo o previsto na Lei Federal n° 11.788 de 25 de setembro de 2008 (BRASIL, 2008) e Normas Acadêmicas da PUC Minas (2018). *
*Exceto para o curso de EDUCAÇÃO BILÍNGUE E PLURILÍNGUE
Estude na Melhor
Não decidiu qual curso fazer? Faça um teste de orientação profissional para ajudar você na sua escolha.