A Pós-Graduação MIT Engenharia de
Software com Java, forma
profissionais que atendam a crescente demanda do mercado por:
Profissionais com certificação na tecnologia Java;
-
Desenvolvimento de projetos de software com qualidade;
-
Profissionais capazes de estabelecer e perseguir métricas que garantam
o sucesso do projeto.
Público-Alvo
Estudantes e profissionais que desejam se aprofundar na linguagem Java.
Escola Superior da TI
A Escola Superior da Tecnologia da Informação é formada por um corpo
docente alinhado com os freqüentes avanços nas metodologias de gestão da
TI. A Escola, que já formou mais de 30 mil alunos, oferece dezenas de
cursos intensivos e forma profissionais para empresas como Accenture,
Embratel, Oi, Furnas, Vale, Petrobrás e muitas outras, além de manter
parcerias próximas com a Microsoft, Oracle, Cisco, SAP, VUE e Prometric.
Depois de um período de intenso aprendizado, o aluno da Pós-Graduação
MIT em Engenharia de Software com Java se destaca no mercado pelas
seguintes competências:
Domínio dos processos de desenvolvimento e gerenciamento de software,
seu ciclo de vida e a importância dos requisitos, testes e da qualidade
dos sistemas desenvolvidos;
Capacidade de aplicar as metodologias RUP (Rational Unified Process), XP
(Extreme Programming) e Scrum para o desenvolvimento de software;
Conhecimento para aplicar métricas e estimativas no desenvolvimento de
projetos de sistemas;
Domínio da modelagem UML e de suas aplicações no desenvolvimento de
software orientado a objetos;
Prática nas técninas de acesso a banco de dados, uso de coleções e
generics, além da construção de interfaces gráficas;
Domínio da programação avançada em Java com desenvolvimento de
aplicações Web, incluindo o emprego de Servlets, JSP (JavaServer Pages),
Frameworks e JDBC (Java Database Connectivity);
Prática em programação avançada em Java com desenvolvimento de
aplicações distribuídas, incluindo o emprego de EJB (Enterprise Java
Beans), Hibernate, MVC (Model View Controller);
Conhecimento para o uso dos recursos do Java Authentication and
Authorization Service (JAAS), Criptografia, SSL e Lightweight Directory
Access Protocol (LDAP).
Além disso, o aluno prepara-se para três certificações muito valorizadas
no mercado:
SCBCD (Sun Certified Business Component Developer);
SCWCD (Sun Certified Web Component Developer);
SCJP (Sun Certified Java Programmer).
A Pós-Graduação é composta blocos de aprendizado, que totalizam 440
horas/aula. Esses blocos permitem que o aluno desenvolva uma visão
abrangente sobre Engenharia de Software, Métodos Ágeis e Programação em
Java. Ao término, o aluno consolida seu aprendizado em um Trabalho de
Conclusão de Curso (TCC), aplicando os conhecimentos desenvolvidos no
decorrer do curso. A ordem de alguns blocos não é pré-definida.
Blocos e EmentasEngenharia de Software130 horas/aulaIntrodução à
Engenharia de Software:Engenharia de Software e Ciência da Computação;
Processos de Desenvolvimento de Software; Melhoria dos Processos e
Software; Princípios de Análise de Requisitos; Ciclo de Vida;
Fundamentos e Descrição dos Projetos de Software; Desenvolvimento de
Programas com Qualidade; Técnicas de Teste; Garantia de Qualidade de
Software; Gerenciamento de Configuração de Software.
--------------------------------------------------------------------------------
Processos de Desenvolvimento de Software:Rational Unified Process: RUP;
RUP: Gestão de Requisitos e uso de Arquitetura baseada em Componentes;
RUP: Uso de Softwares de Modelos Visuais; RUP: Qualidade, Gestão e
Controle de Mudanças; RUP: Fases de Concepção, Elaboração, Construção e
Transição; RUP: Melhores Práticas, Desenvolvimento Interativo e
Qualidade; Extreme Programming: XP; XP: Princípios, codificação, unit
testing, refactoring, design e builds; Scrum.
--------------------------------------------------------------------------------
Métricas de Desenvolvimento de Software:Medidas, Métricas e
Especificação de Indicadores; Métricas de Processo e de Projeto;
Métricas Orientadas ao amanho; Métricas Orientadas por Função, Análise
de Pontos de Função: Procedimento de Contagem de Pontos de Função;
Processo de Estimativas de Projetos de Software, baseado na métrica
Análise de Pontos de Função (APF). Projeto de bloco:Desenvolvimento de
um planejamento de projeto de software detalhado, utilizando RUP ou XP,
e respectivas métricas.
Desenvolvimento Orientado a Objetos com Java140 horas/aulaAnálise e
Projetos de Sistemas Orientados a Objetos: Modelagem de Sistemas,
Orientação a Objetos (OO) e Unified Modeling Language (UML); OO:
Classes, Objetos, Herança, Polimorfismo e Interfaces; Diagramas UML:
Uso, Classes, Objetos, Sequência, Comunicação, Temporal, Estados e
Atividades; Design Patterns: Criação, Estrutura e Comportamento; Três
Estudos de Caso: 1. Relacionamento entre as fases do projeto e os
diagramas; 2. Levantamento de requisitos, análise e projeto; 3.
Elaboração de diagramas e geração de código.
--------------------------------------------------------------------------------
Programação Orientada a Objetos com Java: Tipos primitivos, Operadores
aritméticos, Compostos, Relacionais e Lógicos; Condições e Repetições,
Arrays unidimensionais, Bidimensionais e Multidimensionais; Java Virtual
Machine e Garbage Colector; Conversão de Objetos - Tipos Primitivos;
String, StringBuilder e StringBuffer; File IO, Formatação, Parsing,
Internacionalização e Resource Files; Criação de Classes, Herança,
Polimorfismo, Interfaces, Enums e Criação de Componentes; Classes
Abstratas, Internas e Anônimas; Tratamento de Erros, Exceptions,
Assertivos e Teste Unitário - Junit.
--------------------------------------------------------------------------------
Acesso a Dados, Coleções e Interface Gráfica em Java: Java Database
Connectivity: JDBC; JDBC: Conexão com Bancos de Dados, Consulta,
Atualização, Deleção e Inserção de Dados; JDBC: Tipos de Dados
Especiais: Data, Hora, Blobs, Clobs; JDBC: Cursores, Batch e Relatórios
(JReport e IReport); Coleções: Collection, Set, Map, List, Comparable e
Comparator; Generics; Swing: Componentes Básicos, Layouts, Look and
feel; Swing: Tratamento de Eventos e Componentes Avançados.
--------------------------------------------------------------------------------
Projeto de bloco:Desenvolvimento de um projeto em UML e sua respectiva
implementação em Java.
Desenvolvimento Web e Componentes com Java160 horas/aulaAplicações
Web:Questões avançadas de desenvolvimento de aplicações Web; Frameworks
para aplicações Web.
--------------------------------------------------------------------------------
Aplicações na Camada de Negócios:Objetos Distribuídos: RMI; Localização
de Serviços: JNDI; Design Patterns: Service Locator e Business Delegate;
Enterprise Java Beans: Session Beans, Design Pattern, Session Facade,
Acesso a Bancos de Dados, Transação, Relacionamento e Segurança, Message
Beans; Spring: Programação Orientada a Aspectos, Data Access Objects
(DAO), Mapeamento Objetos-BD: ORM; Spring: Design Pattern - Model View
Controller (MVC) e Web Services: Definição, vantagens e classes Java.
--------------------------------------------------------------------------------
Tópicos Avançados: Segurança em Redes: Tipos de Ataque e Níveis de
Segurança; Segurança em Java: Recomendações e Modelos de Segurança;
Security Manager e Security Policy; Segurança em Java: Criptografia e
Certificados Digitais; Segurança em J2EE: Segurança para Web, EJB,
Autenticação e Autorização com SSL; Segurança em J2EE: Java
Authentication and Authorization Service (JAAS) e Mecanismos de
Segurança: Lightweight Directory Access Protocol (LDAP).
--------------------------------------------------------------------------------
Projeto de bloco:Desenvolvimento de um projeto completo, desde os casos
de uso em UML até sua implementação utilizando uma das tecnologias
apresentadas (web e/ou negócios).
Fechamento10 horas/aula
TCC: O Trabalho de Conclusão de Curso tem como objetivo a construção de
um sistema complexo, comprovadamente de aplicação prática e comercial,
utilizando os conhecimentos adquiridos durante o curso
Observação
Em virtude de o projeto pedagógico ser constantemente aperfeiçoado,
eventualmente os nomes dos blocos, suas cargas-horárias e ementas
sofrerão mudanças sem aviso prévio. Por favor, verifique as
características detalhadas do curso no momento da sua matrícula.