Monografia - Trabalho de Formatura Supervisionado

Primeira Parte

Sobre a Empresa

O Grupo LIBERCON é composto de oito empresas, LIBERCON Auditoria, Assessoria e Consultoria, LIBERCON Consultoria para Estrangeiros, LIBERCON Consultoria de Imóveis, LIBERCON Japan, Inc., LIBERCON Consultoria de Recursos Humanos, LIBERCON Passagens e Turismo, LIBERCON Serviços Temporários e LIBERCON Business Consulting, que atuam em suas respectivas áreas.

Atuando na prestação de serviços há 30 anos e focados, em sua grande maioria, nas empresas japonesas a LIBERCON presta a seus clientes serviços diversificados e personalizados.

Meu estágio se deu no departamento de TI que atende a todas as empresas do grupo, sendo que estive sob coordenação de Cristhia Takada, diretora do Grupo LIBERCON.

Topo

Sobre o Trabalho

O projeto em que participei visou à substituição de um sistema obsoleto, utilizado pela LIBERCON Consultoria para Estrangeiros, escrito em DataFlex que rodava em DOS. Tinha uma interface gráfica desenhada com caracteres, muito simples, porém confusa. Este sistema estava sendo usado somente para algumas consultas, pois já não atendia às necessidades do setor, e estava instalado em um antigo micro que não estava conectado à rede.

O novo sistema, ao contrário, estaria acessível via intranet e rodaria em um servidor com Conectiva Linux utilizando banco de dados PostgreSQL e com interface baseada em browsers Internet Explorer.

O 'Sistema EST', como foi provisoriamente chamado, será utilizado para gerenciar o cadastro das empresas clientes e dos estrangeiros, além do 'workflow' dos processos que a 'LIBERCON Consultoria para Estrangeiros' gerenciava.

Participei desde o início do projeto e as responsabilidades que me foram atribuídas eram:

  • Fui responsável pelo levantamento de requisitos com base no sistema anterior, analisando o código fonte da aplicação em DataFlex. Para isto estudei os manuais existentes, imprimi os fontes de toda a aplicação e levantei a estrutura - campos, tipos, limites, chaves primárias e estrangeiras - que serviram de base para o novo banco de dados;
  • Levantei, também, os novos requisitos necessários para o sistema, através de reuniões com a parte requisitante. E a partir das informações coletadas, elaborei a documentação sobre os requisitos. Estes documentos passavam por aprovação da parte requisitante e foram utilizados durante o projeto;
  • Fiz a modelagem do banco de dados inicial e implantei-o no PostgreSQL. Realizei a normalização do banco de dados seguindo os conceitos aprendidos anteriormente;
  • Criei o 'esqueleto' do novo sistema utilizando pseudocódigo, apenas para facilitar a codificação posterior;
  • Comecei a codificação do sistema em JSP, mas a tarefa de codificação foi passada para outra pessoa em seguida, pois ainda havia outros requisitos a serem analisados;
  • Elaborei material para aplicar um breve treinamento e ministrei-o para a parte requisitante, após a conclusão da versão 1.0.
Topo

A Equipe

Inicialmente estávamos apenas em duas pessoas. Eu estava levantando os requisitos da aplicação enquanto o outro membro da equipe levantava os requisitos da infra-estrutura.

Durante a codificação do sistema em JSP mais uma pessoa juntou-se ao grupo, para agilizar a construção do sistema.

Quase no fim da codificação, mais uma pessoa foi convocada para melhorar a modelagem e performance do banco de dados, criando algumas 'stored procedures' no PostgreSQL.

A coordenação ficava a cargo de Cristhia Takada, diretora do Grupo LIBERCON.

Topo

Prazos

No Início do projeto houve uma tentativa de se usar o 'MS Project 2000' para controlar o workflow do projeto, mas não houve uma continuidade no seu uso, pois ninguém sabia usá-lo de maneira adequada.

Na estimativa inicial de finalização do sistema a data final era em Dezembro de 2002. Por uma série de fatores não conseguimos finalizar o sistema dentro dos prazos estipulados e o sistema foi entregue em Fevereiro de 2003. Isto nos deixou um pouco desanimados, mas seguimos em frente.

Topo

Ferramentas e Técnicas Utilizadas

Não foram utilizadas quaisquer ferramentas, nem técnicas específicas no desenvolvimento do sistema.

O sistema foi escrito em uma IDE que apenas destacava, com cores, a sintaxe dos JSPs no código. Talvez deveríamos ter despendido algum tempo e aprendido a usar alguma IDE 'decente' como o Eclipse.

As documentações sobre as APIs utilizadas foram baixadas da internet e consultadas a todo o momento. Consultei os manuais do DataFlex que existiam na empresa para aprender um pouco sobre a linguagem.

Topo

Acompanhamento

O acompanhamento do estágio foi bem livre, deixando-me com bastante autonomia para aprender a resolver os problemas que apareciam.

Como não havia uma pessoa com maior conhecimento técnico sobre o sistema e sobre as tecnologias que estávamos utilizando, eu não tive muito a quem recorrer senão ao 'Google' e às listas de discussões na internet. Aprendi muito pesquisando na internet.

Topo
Segunda Parte

Desafios e Frustrações

O maior desafio que tive foi conciliar as aulas, os trabalhos e provas do IME e o estágio. O IME exige muita dedicação por parte de seus alunos. Parece que todos os professores acham que o aluno faz apenas a matéria que ele está lecionando e pede uma dedicação praticamente inviável quando você está fazendo mais que duas matérias no semestre.

Uma de minhas frustrações foi a de não ter certos conhecimentos que poderiam ter ajudado a construir uma aplicação mais robusta e melhor escrita. Hoje, após adquirir outros conhecimentos, talvez optássemos pela combinação Struts com Velocity e Hibernate para escrever a aplicação, tendo menos 'dores-de-cabeça' com vários detalhes da implementação.

Tive também alguns contra-tempos pessoais que acabaram colocando mais barreiras a serem vencidas.

Topo

Disciplinas Relevantes

As disciplinas que considero de maior relevância são:

  • MAC122, pois é aqui que construímos a base de todo o curso do BCC;
  • MAC323, que complementa o que vimos em MAC122;
  • MAC242, aonde conhecemos um pouco de POO (Programação Orientada a Objetos);
  • MAC426, para a modelagem de bancos de dados;
  • MAC332, onde vimos às fases necessárias para o desenvolvimento de uma aplicação;

Topo

Diferenças: BCC vs. Estágio

O estágio deixou claro algo que eu já desconfiava. O BCC não prepara, de forma adequada, seus alunos para o mercado de trabalho.

A ênfase dada às matérias 'teóricas' prejudica o aluno que deseja sair, da faculdade para o mercado de trabalho.

Caso o aluno tenha algumas informações, ou vá atrás delas, e consegue 'encaixar' algumas disciplinas optativas na sua grade, ele consegue um embasamento mais prático para melhorar seu currículo frente às empresas no mercado de trabalho.

Topo

Conceitos Estudados vs. Aplicações Reais

Dos conceitos estudados usados na vida real destaco a 'Engenharia de Software', 'Sistemas de Bancos de Dados', 'Laboratório de Programação II' e 'Princípios de Desenvolvimento de Algoritmos', pois mesmo não sendo utilizados adequadamente serviram de guia durante o desenvolvimento do sistema.

'Engenharia de Software' foi útil ao apresentar como são as fases no desenvolvimento de um software e seu ciclo de vida.

Já a matéria 'Sistemas de Bancos de Dados' foi de grande ajuda durante a modelagem do banco de dados necessário ao sistema. Mostrou como utilizar as regras para normalização, a integridade referencial de dados e o uso da linguagem SQL.

Também 'Laboratório de Programação II' que apresentou a linguagem Java 2, necessária para o desenvolvimento em JSP.

E como base para tudo, os 'Princípios de Desenvolvimento de Algoritmos' forneceram uma visão global no desenvolvimento do sistema.

Topo

Conclusões Finais

Cada experiência é única e portanto, as conclusões que farei aqui valem para minha experiência dentro do IME e do Grupo LIBERCON.

A USP forma pessoas com alta capacitação técnica, mas com uma bagagem prática muito limitada. Saímos sabendo muita teoria, mas sem conhecer aquilo que o mercado de trabalho procura.

Como muitas empresas contratam apenas pessoas com conhecimentos específicos em determinada áreas acabamos perdendo estas oportunidades para outras pessoas que têm esses conhecimentos.

Considero que algumas matérias deveriam ser ministradas com enfoque mais prático para que a inserção e adaptação dos alunos do IME no mercado de trabalho seja facilitada.

A experiência que vivi dentro do IME e do Grupo LIBERCON foi muito satisfatória, pois me proporcionou um entendimento das diferenças entre o mundo acadêmico e o mundo real.

Esta experiência será utilizada para que eu possa me aperfeiçoar e me adequar ao mercado de trabalho para que em um futuro próximo, eu alcance o reconhecimento profissional que busco.

Topo

Bibliografia

Grupo LIBERCON
http://www.libercon.com.br/

Conectiva - Linux
http://www.conectiva.com.br/

Tomcat - Servlets e JSP
http://jakarta.apache.org/tomcat/

PostgreSQL - Banco de Dados Relacional
http://postgresql.dbexperts.com.br/

Ministério do Trabalho e Emprego - MTE
http://www.mte.gov.br/

Tecnologia - JavaServer Pages Technology
http://java.sun.com/products/jsp/

Pesquisas - Google
http://www.google.com.br/

Topo
Dezembro/2003