FUNDAÇÃO UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO PROFESSOR: Adilson Vahldick PROGRAMAÇÃO ORIENTADA A OBJETOS II Trabalho 2 Padrões de Projetos O objetivo desse trabalho é proporcionar uma experiência em que os alunos pesquisem e estudem um padrão de projeto e refatorem um código existente para aplicar o padrão de projeto selecionado. Esse trabalho será executado por equipes de no máximo quatro alunos, e a quantidade máxima de equipes na turma são oito. O código original está disponível no AVA na pasta Trab2. Em sala será sorteado o padrão de projeto que cada equipe aplicará (não haverão duas equipes com o mesmo padrão). Na aplicação do padrão a equipe pode melhorar o código existente ou implementar novos recursos no sistema. Os padrões de projeto a serem sorteados são: Abstract Factory, Adapter, Command, Composite, Builder, Bridge, Decorator e PlugIn. As apresentações acontecerão em sala nos dias 22, 26 e 29 de setembro. As datas das apresentações de cada equipe serão sorteadas em outro momento. Será garantido um projetor multimídia para essas datas. Cada equipe deve se encarregar do computador. A avaliação será baseada na apresentação que a equipe fará para a sala num tempo máximo de 30 minutos por equipe. O professor interrompe a apresentação quando ela alcançar o tempo. Na apresentação deverão constar: • explicação sobre o padrão que a equipe utilizou; • diagrama de classes da solução (inclui todas as classes do sistema); • a solução passo-a-passo, desde o problema original até a implementação final. Essa parte é a mais importante da apresentação. A equipe precisa apresentar o processo de transformação do código original ao código final. Além disso, cada equipe deve providenciar um documento de no máximo uma página no formato PDF contendo o resumo do padrão assim como um roteiro da utilização do padrão no sistema. Ele deve ser enviado ao professor até às 16hs na data da apresentação para que ele possa imprimir uma cópia para cada aluno. Também deve ser postado no AVA até 18hs do dia da apresentação na pasta Trab2 do AVA os códigos fontes completos da nova versão do sistema que a equipe apresentará naquele dia. Os colegas de sala avaliarão cada equipe, segundo critérios abaixo, e as notas serão distribuídas conforme o ranqueamento da turma. A equipe com melhor nota terá 10,0; 2º - 9,5; 3º - 9,0; 4º - 8,0; 5º- 7,0; e os demais recebem 6,0. O professor tem 30% de participação na avaliação das equipes. O professor decide o desempate. Os critérios serão avaliados sobre a equipe como um todo, o que compromete a boa participação de todos, e a nota é a mesma para todos os participantes da equipe. Cada critério será avaliado em uma escala de 0 a 4. Os critérios são: • Clareza e domínio no assunto: mostraram segurança na fala, os slides e a apresentação foram esclarecedores, ficou compreendido o padrão de projeto. Nota 4 indica que todos foram muito bem. Nota 0 indica que todos desconhecem do assunto. • Organização da apresentação: seguiu a ordem de apresentação solicitada pelo professor. A equipe mostrou organização distribuindo o tempo de forma igual para todos, ou seja, todos falaram na mesma proporção. Os membros da equipe não interromperam a fala de seus colegas. Nota 4 indica que todos falaram exatamente na mesma FUNDAÇÃO UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO PROFESSOR: Adilson Vahldick PROGRAMAÇÃO ORIENTADA A OBJETOS II Trabalho 2 proporção, e não houve interrupções nas falas dentro da própria equipe. Nota 0 indica que o tempo foi direcionado a somente um aluno; • Qualidade do material apresentado: os slides e a folha de resumo foram compreensíveis e bem feitas. Nota 4 para um material que foi bem organizado e claro. Nota 0 quando nem entregaram a folha; • Complexidade ou utilidade do recurso implementado: o recurso implementado teve uma complexidade relevante ao trabalho, assim como, se relaciona com o sistema original e com o padrão. Nota 4 indica muita criatividade e relevância da implementação. Nota 0 indica que a implementação é desconsiderável. Para definir o ranking de cada equipe, serão somados os pontos de todas as avaliações dos colegas, aplicado peso 7, e os pontos do professor aplicado peso 3. O professor pode desclassificar uma equipe quando a soma total de pontos for menor ou igual a cinco. A desclassificação implica na equipe não entrar na avaliação pelo ranking. Nesse caso, a nota da equipe será atribuída segundo os critérios acima somente da ficha professor, onde cada critério tem peso 2,5. As avaliações serão identificadas e tabuladas. Se a avaliação que o aluno fez de todas equipes ficar fora do desvio padrão da sala mais o professor, sua nota individual será descontada em dois pontos. Isso implica em avaliar as equipes com responsabilidade. O aluno que faltar na apresentação precisa ter uma justificativa muito forte (morte de parente – apresentando atestado de óbito; internação em hospital – apresentação declaração do hospital; e coisas do gênero). Nesses casos, o aluno fará uma prova de substituição em sala na primeira aula de laboratório após 29 de setembro contendo o padrão de projeto que sua equipe apresentou. Atenção: uma vez definidos os membros de cada equipe, ela não pode mais ser desmanchada. O único caso em que pode haver transferência de alunos é quando acontece a desistência dos alunos na disciplina, de tal forma que a equipe tenha somente 1 membro.