Trabalhos de MAC 5715
Além dos trabalhos realizados em sala de aula, teremos 3 trabalhos para
realizar em casa.
Datas de Entrega dos Trabalhos:
- Padrão (em duplas): 2 / 10
- Especificação do Projeto Final: 15 / 10
- Padrão Refatorado: 27 / 10
- Projeto Final: 6 / 12
Projeto Final
O projeto final poderá ser uma monografia, seminário ou implementação de
software. É possível também apresentar um seminário e além disso participar de
um grupo de implementação de software. Quem fizer essas duas coisas receberá
simpatia especial do professor no momento da avaliação.
Tópicos para Monografias
De 8 a 10 páginas escrita individualmente em excelente português (serei bem rigoroso na correção).
- Sugira o seu tópico
Tópicos para Seminários
Feitos em grupos de um ou dois e apresentados em 45 minutos. O seminário
deverá ser muito bem preparado e os alunos deverão demonstrar que estudaram
muito bem o tópico abordado. Os slides devem ser submetidos ao professor (nos
formatos .ppt, .ps ou .pdf) para revisão 72 horas antes da
apresentação.
- AspectJ
- Silvio Lago (slago at zipmail.com.br)
- Programação Orientada a Aspectos
- Marcos Farah Nagato (mfnagato at linux)
- 2 padrões do GoF
- Marcus Moyses (mmoyses at linux) e Maíra Ramos (mramos at linux)
- 2 padrões dos livros POSA
- Flavio Regis Arruda (flavio.arruda at promon.com.br) e Leandro Santos
(farinale at yahoo.com.br) Reactor e Proactor
(e se der tempo Active Object)
- Germano Bezerra (germano.bezerra at icsonline.com.br) 2 padrões do POSA II
- 2 padrões do PLoP 2002
- Dairton Filho (dairton at linux) e Bruno Pera (pera at linux)
- padrões educacionais do PLoP 2002
- 4 a 6 tipos de refatoramento (do livro do Martin Fowler)
- Rodrigo Leme (leme at linux)
- Ferramentas para refatoramento automático (links a partir de www.refactoring.com)
- Fabio Braga de Oliveira (fbdo at terra.com.br) e Flavia Greggio
- Ferramentas para testes automatizados em Java e C++
- Fabiana Piesigilli (fabi at linux)
- Visão Geral dos diferentes métodos ágeis de desenvolvimento de software.
- Thiago Sandoval (thepoet at terra.com.br) e Marcos Romeiro Hryniewicz (mr.h at uol.com.br)
- O uso
de padrões e arcabouços no sistema operacional Choices
- Sandro Hung (shung at ime) e Alfraino Souza Diniz (cabelo_diniz at yahoo.com.br)
- Guaraná: uma
implementação reflexiva de Java
- Padrões de Re-engenharia
Orientada a Objetos
- Modelos Adaptativos de Objetos
- Adriano Saturno Muniz (drsaturno at yahoo.com.br)
Tópicos para Implementações
Em grupos de 2 pessoas (recomendo programação pareada). No final do semestre, a
execução do software será demonstrada para o professor, assistente e demais
interessados.
- Aplicação reconfigurável utilizando os Configuradores de
Componentes propostos pelo que vos escreve.
- Aplicação usando o Guaraná
- Daniel Cordeiro (danielc at linux) e Fabio Nishihara (fhn at linux)
- Marcos Broinizi (mbroinizi at bol.com.br) e Peter Kreslins (pkj at linux.ime.usp.br)
- Aplicação usando o AspectJ
- Danilo Conde (danconde at linux) e Emilio Francesquini (emilio at objective.com.br)
- Stefan Guilhen (snstz at yahoo.com) e Flávia Rainone (flaviarnn at
yahoo.com)
- Aplicação Distribuída Adaptativa baseada no Arcabouço do Francisco
- Aplicação qualquer baseada em padrões (pelo menos 4 deles)
- Rodrigo Leme (leme at linux) Regis de Abreu Barbosa
- Marcos Koga (marcos at linux) Alex Minoru Kusano (alexmk at linux)
- Dairton Filho (dairton at linux) e Bruno Pera (pera at linux)
- Paulo Yokosawa (paulo_tokosawa at non.hp.com) e Renato Araújo
- Aplicação J2EE usando um servidor de aplicações
- Rafael, Rodrigo (rodrigo_d at rededc.com.br), Danilo Sato (dtsato at linux)
- Aplicação OO para PalmPilots (ou outro tipo de computador de mão)
- Rubens Altimari (rubens at bcc2000.net) e Jorge ().
- Tiago Martinez (tiagotm at directtalk.com.br)
- Uma solução para o Desafio
de Software Nacional para Gestão Pública voltado para
intrumentalizar o agente de saúde utilizando computador de mão, comunicação
sem fio e acesso à base de dados na Secretaria de Saúde, sendo vencedora a
solução mais aberta, mais barata, mais eficiente e mais nacional.
Uma possibilidade bem interessante é juntar 2 trabalhos em 1 no final do
curso. Ou seja, 2 (ou mais) grupos de 2 pessoas trabalham cada um em uma parte
independente de um sistema maior, combinando inicialmente qual vai ser a
interface usada para a comunicação entre os dois sistemas. No final, cada
grupo entrega o seu trabalho separadamente (com testes para a sua parte) mas o
demo é feito integrando-se todas as partes.
Página de MAC 5715
Página do Fabio
Página do DCC