Perguntas e Respostas

Perguntas e Respostas

por Marcio Vinicius dos Santos -
Número de respostas: 10
Integrantes:
Marcio Vinicius dos Santos
Marcelo de Rezende Martins

Objetivo:

Um serviço colaborativo online, que permite usuários criarem e responderem perguntas de uma forma rápida e simples, incentivando-os através de um sistema de pontuação das melhores respostas.
O serviço permitirá também que usuários através de um sistema de busca, possam procurar respostas para perguntas já criadas.
Em resposta à Marcio Vinicius dos Santos

Casos de Uso

por Marcio Vinicius dos Santos -
Em resposta à Marcio Vinicius dos Santos

Telas

por Marcio Vinicius dos Santos -
Em resposta à Marcio Vinicius dos Santos

Diagrama de classes

por Marcio Vinicius dos Santos -
Em resposta à Marcio Vinicius dos Santos

Projeto versao war

por Marcio Vinicius dos Santos -
Em resposta à Marcio Vinicius dos Santos

Projeto versao zip

por Marcio Vinicius dos Santos -
Em resposta à Marcio Vinicius dos Santos

Projeto versao gz

por Marcio Vinicius dos Santos -
Em resposta à Marcio Vinicius dos Santos

Re: Projeto versao gz

por Carlos Eduardo Giordano -
Perguntas e Respostas

Análise: ok. Nota:10.
GUI: ok. Nota:10.
Arquitetura: implementar HashCode e Equals.
muito código no JSP -> díficil manutenção.
falta separar em camadas, camada de apresentação acessa o banco de dados. Nota:4.
Legibilidade: faltam comentários, especialmente nas interfaces. Nota: 7.
Funcionalidade: ok. Nota:10.
Média Final: 8.
Em resposta à Marcio Vinicius dos Santos

Re: Projeto versao gz

por Alexandre Albano -

(Documento também disponível no Google Docs: http://docs.google.com/Doc?id=dftw2w5p_39gmpgv6gx , se vocês quiserem permissão de edição, digam seus e-mails por favor.)

Revisão do Grupo 3: "Perguntas e Respostas"


Critério Análise – As funcionalidades previstas no diagrama de casos de uso foram feitas, porém com pequenas alterações. No Home o usuário não responde às perguntas como está no caso de uso, ação que pode ser feita na tela de Visualização de Pergunta. E na Tela de Visualização da Pergunta ele não filtra perguntas por categoria, nem adiciona uma pergunta ao seu grupo de favoritos, ações que podem ser feitas no Home.

O diagrama de classes serviu de base para o sistema, porém não foi previsto o uso das entidades do pacote mac5855.app.dao e as entidades do diagrama sofreram algumas alterações.

Apesar das divergências entre o sistema e os diagramas, é natural que elas ocorram. Nota: 7,0


Critério Interface com o Usuário – Interface simples e intuitiva. Talvez um logo e um nome para o site melhorariam ainda mais e também os links de Home e Logout poderiam seguir o estilo do site. Não conseguimos encontrar as perguntas favoritas, nem sabemos se está implementada a visualização (apenas das favoritas). O símbolo de pergunta adicionada aos favoritos poderia ser um gif. Os pontos do usuário também não sabemos se foram implementados. Nota: 9,5


Critério Arquitetura – O sistema foi bem-dividido. A existência de um Controller nos pareceu ser uma boa prática para este projeto, mas acreditamos que dá pra tirar mais proveito dele. Em particular, o Controller poderia devolver um tipo String contendo o endereco da página a ser redirecionada após o .execute() de um BusinessLogic. Isso enxugaria um pouco o código.

Talvez uma subdivisão do pacote dao em dao.jdbc onde seriam colocadas as classes JdbcXDAO pudesse ser feita.

AdminFilter e AuthenticationFilter poderiam ir para mac5855.app.filters.

Alguns métodos não são utilizados.

Nota: 9,0


Critério Legibilidade – Há comentários em inglês e em português. Seria bom escolher apenas um idioma. A escolha dos nomes (tanto de classes quanto de variáveis e atributos) foi boa, o que facilitou a compreensão do código, apesar das classes não possuírem documentação. Há quebras das convenções de código e muitos scriptlets nas jsp’s. Usar a variável estática JDBC quando for chamar DAOFactory.getDAOFactory().Nota: 6,5


Critério Corretude – O sistema funciona de acordo com o esperado. Apenas algumas funcionalidades achamos que não foram implementadas. Nota: 10,0


Critério Funcionalidade – O sistema é simples e funcional. Não precisaria ser mais complexo para fazer aquilo a que se propõe. É claro que pode ser melhorado, mas com o tempo e tecnologias disponíveis está bom. Nota: 10,0


Nota final: 8,7

Em resposta à Alexandre Albano

Re: Projeto versao gz

por Marcelo Rezende Martins -
Concordamos as observações e alteramos a implementação tendo por foco, diminuir a quantidade de código Java dentro das JSP's através de Servlets de controller. Não foram utilizados Taglibs, pois visualizamos a mudança do código para JSF (estamos esperando a apresentação da Tecnologia para fazer a alteração).

Em anexo uma versão atualizada da aplicação.
Em resposta à Marcelo Rezende Martins

Re: Projeto versao gz

por Marco Aurélio Gerosa -

Olá,

- O diagrama de casos de uso e a prototipacao de telas ficaram legais.
- O diagrama de classes tem problemas com relação a notação UML. Alem disto, classes de projeto, como servlets nao entram na modelagem conceitual.
- O uso de Factory nos DAOs está adequada (apesar de particularmente, achar este padrão desnecessário neste caso)
- O uso de filtros foi uma solução legal para controle de permissão.
- O css, imagens e outros estavam presos desnecessariamente (hard coded) ao contexto /PerguntaResposta/ o que dificulta o eventual uso em outro contexto
- A usabilidade do site pode melhorar.
- A versao final continua com problemas de legibilidade ao usar, por exemplo DAOFactory.getDAOFactory(1)

abraco,

Marco