Engenharia de Software Aplicada<\/strong><\/p><\/div><\/div>- Aplicar Modelos de Processos de Software e de Engenharia de Requisitos<\/li>
- Utilizar requisitos funcionais, n\u00e3o funcionais, regras de neg\u00f3cio e matriz de rastreabilidade<\/li>
- Aplicar os conceitos de gest\u00e3o de configura\u00e7\u00e3o<\/li>
- Aplicar Engenharia de Software Distribu\u00eddo e Arquitetura Orientada a Servi\u00e7os (SOA)<\/li>
- Descrever SaaS, PaaS, IaaS e Cloud Computing<\/li>
- Descrever os conceitos de Dom\u00ednio, Subdom\u00ednio, Contexto<\/li>
- Delimitado e Linguagem Ub\u00edqua<\/li>
- Descrever os conceitos de Mapas de Contexto, Entidades, Objetos de Valor<\/li>
- Descrever os conceitos de Servi\u00e7os, M\u00f3dulos, Agregados, F\u00e1bricas e Reposit\u00f3rios<\/li>
- Realizar o levantamento de requisitos e modelagem de dom\u00ednio de um projeto de software<\/li><\/ul><\/div><\/div><\/div><\/div><\/div>
\u00a0<\/p>
Modelagem de Software<\/strong><\/p><\/div><\/div>- Utilizar a modelagem de sistemas orientados a objetos (OO)<\/li>
- Utilizar os diagramas da Unified Modeling Language (UML)<\/li>
- Aplicar Contextos Delimitados e Linguagem Ub\u00edqua no projeto estrat\u00e9gico<\/li>
- Aplicar Subdom\u00ednios e Mapas de Contexto no projeto estrat\u00e9gico<\/li>
- Aplicar Agregados e Eventos de Dom\u00ednio no projeto t\u00e1tico<\/li>
- Descrever os conceitos de Test Driven Design (TDD)<\/li>
- Utilizar Padr\u00f5es SOLID e GRASP na modelagem<\/li>
- Utilizar Padr\u00f5es GOF<\/li>
- Criar a modelagem de um sistema de software<\/li><\/ul>
\u00a0<\/p>
Projeto de Bloco<\/strong><\/p>Elaborar o planejamento de um projeto de software detalhado, incluindo levantamento de requisitos, modelagem usando DDD (Domain Driven Design) e UML.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div>\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t<\/div> \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t
Desenvolvimento \u00c1gil e DevOps<\/span>\t\t\t\t\t\t<\/i><\/i><\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
Processos \u00c1geis de Desenvolvimento de Software<\/strong><\/p><\/div><\/div>- Descrever Domain Driven Design<\/li>
- Descrever os Princ\u00edpios de Desenvolvimento \u00c1gil<\/li>
- Descrever Extreme Programming: XP<\/li>
- Aplicar o SCRUM<\/li>
- Criar User Stories e Backlog do produto<\/li>
- Realizar Sprint Planning, Review e Retrospectiva<\/li>
- Gerenciar tarefas com KANBAN<\/li>
- Utilizar frameworks para processos \u00e1geis<\/li>
- Estimar tempo, custo e lead time no desenvolvimento de software \u00e1gil<\/li>
- Construir burndown chart e burnup chart<\/li>
- Analisar casos de implanta\u00e7\u00e3o de metodologia \u00e1gil<\/li><\/ul><\/div><\/div><\/div><\/div><\/div>
\u00a0<\/p>
Integra\u00e7\u00e3o Cont\u00ednua e DevOps\u00a0<\/strong><\/p><\/div><\/div>- Descrever os conceitos de CI\/CD<\/li>
- Gerenciar reposit\u00f3rios<\/li>
- Empregar testes automatizados e cont\u00ednuos<\/li>
- Criar m\u00e1quinas virtuais<\/li>
- Implantar virtualiza\u00e7\u00e3o e Software as a Service (SaaS)<\/li>
- Implantar projetos com arquitetura de microsservi\u00e7os<\/li>
- Implantar projetos com arquitetura sob cont\u00eaineres<\/li><\/ul>
\u00a0<\/p>
Projeto de Bloco<\/strong><\/p>Elaborar User Stories, Backlog do produto e Sprint Planning de um sistema de software, al\u00e9m de construir um burnup chart e um plano de testes.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div>\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t<\/div> \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t
Tecnologia Java<\/span>\t\t\t\t\t\t<\/i><\/i><\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
Tecnologia Java<\/strong><\/p><\/div><\/div>- Descrever a plataforma do Java e seus principais componentes<\/li>
- Utilizar os conceitos de Orienta\u00e7\u00e3o a Objetos<\/li>
- Construir aplica\u00e7\u00f5es Java, utilizando Padr\u00f5es de Projeto<\/li>
- Utilizar Domain-Driven Design<\/li>
- Implantar aplica\u00e7\u00f5es empregando SOLID e GRASP<\/li>
- Utilizar tratamento de erros em aplica\u00e7\u00f5es Java<\/li>
- Utilizar testes unit\u00e1rios e TDD<\/li>
- Implantar projetos utilizando generics, collections e threads<\/li>
- Implantar projetos utilizando Stream API e Lambda<\/li><\/ul><\/div><\/div><\/div><\/div><\/div>
\u00a0<\/p>
Java Web<\/strong><\/p><\/div><\/div>- Utilizar JDBC na integra\u00e7\u00e3o com bancos de dados<\/li>
- Construir aplica\u00e7\u00f5es Web com arquitetura e protocolo HTTP<\/li>
- Utilizar MVC, middleware e containers<\/li>
- Construir aplicativos Java com Servlets<\/li>
- Implantar projetos com DDD e SOLID<\/li>
- Utilizar JSP com Expression Language e Java Standard Tag Libraries<\/li>
- Construir aplicativos utilizando gerenciamento de sess\u00e3o, filtros e listeners<\/li>
- Utilizar os Design Pattern: Data Transfer Object, Controller, Fa\u00e7ade e DAO<\/li>
- Escrever interfaces simples com HTML e CSS<\/li>
- Utilizar o Java Persistence API com JPA e Java Server Faces (JSF)<\/li><\/ul><\/div>
\u00a0<\/p>
Projeto de Bloco<\/strong><\/p><\/div><\/div>Projetar e implementar um sistema Web empregando a tecnologia Java, e apresent\u00e1-lo de forma funcional.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/div>\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t<\/div> \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t
Persist\u00eancia e Servi\u00e7os em Nuvem <\/span>\t\t\t\t\t\t<\/i><\/i><\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
Persist\u00eancia e MVC<\/strong><\/p><\/div><\/div>- Especificar sistemas utilizando DDD e diagramas UML<\/li>
- Compreender o padr\u00e3o MVC para desenvolver aplica\u00e7\u00f5es<\/li>
- Construir softwares simples com interfaces gr\u00e1ficas utilizando os recursos visuais do IDE<\/li>
- Desenvolver em grupo sistemas em Java utilizando os recursos visuais e wizards do IDE<\/li>
- Criar e implementar modelos de dados relacionais em bancos de dados<\/li>
- Utilizar o conceito de ORM (Modelagem Objeto-Relacional)<\/li>
- Construir aplica\u00e7\u00f5es empregando o Mapeamento de Entidades<\/li>
- Empregar Design Patterns: Inversion of Control e Dependency Injection<\/li>
- Construir aplica\u00e7\u00f5es empregando o Hibernante<\/li>
- Desenvolver aplica\u00e7\u00f5es web com MVC em Java<\/li><\/ul><\/div><\/div><\/div><\/div><\/div>