===== Tópicos Avançados em Informática 2007.2 =====
==== Horário/Sala ====
Quartas: 20:20 - 22:00\\
Laboratório: 3
==== Lista de discussão ====
==== Ementa ====
Discussão de temas atuais da Informática, de interesse para a formação do profissional da área que: ou não tenham sido incorporados aos conteúdos programáticos das demais disciplinas do curso ou que precisem ser mais aprofundados.
==== Objetivos Programáticos ====
Capacitar a desenvolver softwares utilizando boas práticas de programação, tais como padrões de projeto, pair-programming, uso de uma metodologia de desenvolvimento e testes exploratórios. Usar tecnologias de ponta na área de desenvolvimento de sistemas que explorem: deployment de aplicações, controle de versão e servidor de aplicação.
==== Programa ====
^ UNIDADE ^ ASSUNTO ^
| 1 | |
==== Plano de Aulas ====
^ Data ^ Assunto ^ Material ^ Referências ^ Local ^
| | Apresentação da disciplina | | | Sala |
| | Conversa com o cliente sobre as necessidades | | | Sala |
| | cont. Conversa com o cliente sobre as necessidades | | | Sala |
| | Levantamento de requisitos e casos de uso | | | Lab |
| | Levantamento de requisitos e casos de uso | | | Lab |
| 26/09 | Arquitetura e JSF | {{tai:arquitetura_e_jsf.ppt}} | Olhar tutoriais abaixo | Sala |
| 03/10 | Reforma Lab | | | Lab |
| 10/10 | JSF e padrões de projeto | | | Lab |
==== Bibliografia ====
* Java Como Programar – H. M. Deitel e P. J. Deitel – 3a./5a Edição – Bookman.
* Core Java 2: Volume 1, Fundamentos. Horstmann e Cornell, Makron Books, 2000.
* [[http://www.mindview.net/Books/TIJ/|Thinking in Java - Livro grátis]]
==== Avaliação ====
* Nota 1: No mínimo 5 mini-testes realizados em sala de aula (10,0)
* Nota 2: No mínimo 5 avaliações do projeto em laboratório (10,0)
=== Notas dos alunos ===
{{tai:notas-tai-2007.2.xls|Notas}}
==== Projeto ====
=== Descrição ===
O projeto consiste em implementar um sistema de acompanhamento de estágios. O aluno evoluirá o código durante as aulas de laboratório e a avaliação levará em conta tanto o trabalho durante o laboratório quanto as funcionalidades implantadas. O sistema deve ter minimamente dados sobre:
* Empresas;
* Estagiários;
* Carga-horária do estágio;
* Área de Atuação do Estagiário;
* etc.
O cliente é a Coordenação de Sistemas de Informação. Todos os requisitos deverão ser levantadas juntamente com o professor Bruno e/ou Jefferson.
=== Metodologia ===
== Papéis ==
* Cliente: definir as necessidades do sistema. (coordenação de SI do IESP)
* Gerente: Manter o projeto no prazo e avaliar a equipe de desenvolvedores. (prof. Gustavo)
* Analista de requisitos: levantar requisitos e modelá-los em UML; (alunos)
* Arquiteto de Software: definir arquitetura para o sistema; (prof. Gustavo)
* Desenvolvedores: desenvolver código a partir dos casos de uso levantados. (alunos)
=== Arquitetura do Sistema ===
{{tai:arquitetura.gif}}
=== Ferramentas ===
* Java Sun Studio Creator V2 Update 1: http://developers.sun.com/jscreator/downloads/ (é necessário ser cadastrado na sun developers. Para se cadastrar, vá no site: https://reg.sun.com/register?program=sdn);
* JBoss Eclipse IDE: http://docs.jboss.com/jbosside/install/build/en/html/installation.html;
* JBoss 4.2.1.GA: http://labs.jboss.com/jbossas/downloads; (basta descompactar na raiz);
* JSDK 1.5 ou superior;
* ArgoUML: http://argouml.tigris.org/
* CVS: usaremos o cvs público do java.net. Para isso, iremos criar um projeto lá para cada grupo. Primeiramente, crie uma conta no java.net: https://www.dev.java.net/servlets/Join
=== Tutoriais ===
== Sun Studio Creator e JSF ==
* Introdução à ferramenta: http://developers.sun.com/jscreator/learning/tutorials/2/jscintro.html http://developers.sun.com/jscreator/learning/tutorials/2/helloweb.html
* Trabalhando com componentes: http://developers.sun.com/jscreator/learning/tutorials/2/about_components.html http://developers.sun.com/jscreator/learning/tutorials/2/message_components.html
* Navegação entre páginas: http://developers.sun.com/jscreator/learning/tutorials/2/simplepagenav.html
* Mais tutoriais em: http://developers.sun.com/jscreator/learning/tutorials/2/index.jsp