Na última sexta-feira, eu conclui as minhas aulas na pós-graduação. Estou cursando a Especialização em
Sistemas de Informação com Ênfase em Componentes Distribuídos e Web, na
Faculdade Ruy Barbosa, e agora, só falta escrever a monografia e apresentá-la.
No intuito de ajudar a quem está querendo cursar uma pós nessa área, vou resumir as minhas impressões sobre as matérias, os professores e a instituição. Para ajudar a massagear o meu ego, colocarei também as notas de avaliação que obtive em cada uma das matérias.
Módulo 1 - Análise Orientada a Objetos - Profª. Rita SuzanaNessa disciplina foi visto, basicamente, a linguagem UML. Apesar de constar na ementa que seriam estudados também processos de desenvolvimento, em sala de aula só trabalhamos a construção de diagramas de casos de uso, de classes, de seqüência, e de atividades. No trabalho prático, foi exigido também o diagrama de estados. Minha expectativa é de que fôssemos também trabalhar com modelagem ágil e o RUP, mas isso não aconteceu.
Minha nota: 10,0.
Módulo 2 - Programação Orientada a Objetos - Prof. João GualbertoEssa disciplina deveria se chamar Programação em Java. Foram trabalhados, em sala de aula, os conceitos de orientação a objetos, peculiaridades da linguagem Java e da plataforma da Sun; vimos como construir programas gráficos usando Swing, como usar
threads, e como estruturar uma aplicação em camadas. O trabalho prático foi implementar parte do escopo da modelagem feita no Módulo 1, divido em camadas e com acesso a banco de dados. Eu penso que deveria ter sido ensinado também, nesse módulo, a linguagem C# e aspectos da plataforma .NET da Microsoft, ou criar um outro módulo para tal.
Minha nota: 9,0.
Módulo 3 - Bancos de Dados Orientados a Objetos - Profª. Tricia SantosA minha expectativa nessa disciplina era de ver SGBDOO's como
DB4O ou
Neodatis ODB. Apesar no nome, a professora só abordou o banco de dados Oracle e sua funcionalidades objeto-relacionais; na minha opinião, uma gambiarra no banco de dados. Na ementa constava que veríamos o banco Jasmine, mas isso não aconteceu. O trabalho prático foi bastante complicado de ser feito. Os exercícios práticos cobrados levaram bastante tempo para serem feitos, e isso atrapalhou bastante as pessoas que não conseguiram arranjar tempo na rotina diária para respondê-los.
Minha nota: 9,4.
Módulo 4 - Projeto de Interfaces - Prof. José Maria DavidMinha expectativa com essa disciplina era de que aprenderíamos muito sobre interface de aplicações web, mas o que o professor mostrou foram teorias relacionadas com interface em geral, e só ao final, ele direcionou um pouco para interface web. O trabalho prático foi feito em sala de aula mesmo, baseado nos trabalhos dos Módulos 1 e 2.
Minha nota: 8,0.
Módulo 5 - Componentes de Software e Aplicações Web I - Prof. João GualbertoComponentização através de JavaBeans, servlets, JSP e frameworks Struts e JSF, foram os assuntos vistos nessa disciplina. O professor gosta muito da IDE Netbeans, por isso fica muito mais fácil fazer o trabalho prático dele nessa IDE. O trabalho foi pegar a aplicação do Módulo 2, mudar a camada de apresentação para permitir acesso web, e mudar o acesso a banco de dados para ser através de pool de conexões.
Minha nota: 8,0.
Módulo 6 - Componentes de Software e Aplicações Web II - Prof. Eliseu Souza
Componentização através de DLL's, programação em C#, ASPX e framework .NET. Se tivéssemos tido anteriormente uma disciplina para a linguagem C#, essa disciplina teria sido mais proveitosa, pois tivemos ainda que aprender a programar nessa linguagem. O trabalho foi passar a aplicação Java do Módulo 5 para .NET, o que acabou se transformando numa rica experiência sobre a diferença entre as duas plataformas.
Minha nota: 9,5.
Módulo 7 - Padrões de Projeto e Frameworks - Prof. Edeyson Gomes
Design patterns na veia! Essa disciplina abordou um pouco de construção de frameworks e alguns padrões de projeto mais usados. O trabalho prático foi a implementação, em Java, com requisitos passados pelo professor, dos padrões de projeto Singleton, Factory Method, Abstract Factory, Decorator, Observer, Iterator, Adapter, State, Strategy, e Template Method.
Minha nota: 10,0.
Módulo 8 - Componentes Distribuídos e Web Services I - Prof. João Gualberto
Componentização distribuída na plataforma Java, com CORBA, RMI e EJB's. Um ponto bom dessa disciplina foi a atualização para o novo padrão EJB3. Assim, vimos como usar EJB Session, EJB Entity e EJB Message, além da criação de Web Services com EJB. O trabalho prático foi transformar a aplicação do Módulo 5 para usar EJB's e criar uma web service para disponibilizar serviços de acesso à aplicação.
Minha nota: 10,0.
Módulo 9 - Componentes Distribuídos e Web Services II - Prof. Marcos Lapa
Nessa disciplina, vimos como a componentização distribuída é feita na plataforma .NET, com COM+ e .NET Remoting, além de aprender a criar Web Services. O trabalho prático foi modificar a aplicação do Módulo 6 para aplicar os conceitos aprendidos nesse módulo.
Minha nota: 9,0.
Módulo 10 - Programação Orientada a Aspectos - Prof. João Gualberto
Nessa disciplina foram trabalhados os conceitos de Orientação a Aspectos, com a linguagem Java e o compilador AspectJ. O trabalho prático foi feito em sala de aula mesmo, e abordou implementar padrões de projeto com aspectos.
Minha nota: 9,5.
Módulo 11 - Extreme Programming e Refactoring - Prof. Edeyson Gomes
As técnicas e princípios que envolvem XP foram apresentados e trabalhados em sala de aula. O professor estendeu o conteúdo da disciplina colocando testes unitários e a ferramenta JUnit. O trabalho prático foi implementar uma primeira versão de um sistema fictício, documentar as mudanças especificadas, e testar tudo usando JUnit.
Minha nota: 9,5.
Módulo 12 - Segurança de Aplicações Web e Comércio Eletrônico - Prof. Sandro Andrade
As variações de criptografia, simétrica e assimétrica, usando a linguagem Java, foram os primeiros assuntos vistos nessa disciplina. Vimos também o funcionamento do JAAS (
Java Authorization and Authentication Service) e como implementar segurança usando o container JBoss. O trabalho prático foi implementar a segurança numa aplicação de comércio eletrônico dada pelo professor, colocando login e senha via JAAS para acessar o carrinho, criptografia para o número de cartão de crédito, e configuração SSL para a transação.
Minha nota: 9,5.
Módulo 13 - Arquitetura Orientada a Serviços - Prof. José Maria David
O assunto da moda no momento: SOA. Nessa disciplina, extremamente teórica, vimos os conceitos dessa arquitetura, suas vantagens e desvantagens, e relações com tecnologias EJB e Web Services. Pela primeira vez, tivemos prova ao invés de trabalho prático.
Minha nota: 10,0.
Módulo 14 - Modelagem e Otimização de Projetos de Negócio - Profª. Raimunda Queiroz
Para finalizar a evolução do desenvolvimento de sistemas (Orientação a Objetos, Orientação a Aspectos, e SOA), encerramos com Modelagem de Processos. A professora abordou a especificação de processos de negócio, os conceitos de integração de sistemas, ferramentas BPM e EAI, e otimização e melhorias de processos dentro de uma organização. A avaliação final consistiu em ler textos com os assuntos e fazer uma apresentação, rápida, para o restante da sala.
Minha nota: 9,0.
Sobre o curso
No geral, o curso levaria de mim uma nota 8,0. Pecou um pouco em falta de organização, com informações desencontradas entre alguns professores e a coordenação, e com aulas sendo desmarcadas e remarcadas em cima da hora - só melhorou depois que a turma reclamou muito. Além disso, quem não soubesse programar em Java não iria para a frente nesse curso. Destaques positivos para o conteúdo, bem atualizado, e para alguns professores que demonstraram bastante conhecimento dos assuntos e paciência para explicar várias vezes a mesma coisa aos alunos.
Enfim, quando eu concluir minha monografia, postarei aqui um link para ela e vocês poderão conhecê-la, ok?