O que se espera de um protótipo horizontal de médio nível?


Espera-se de um protótipo horizontal que ele permita uma experiência completa de navegação e visualização, em particular, mostrar detalhes para os cenários propostos. Os dados utilizados podem ser falsos (arquivos com dados de teste ou dados hard-coded nos fontes do protótipo ao invés de leituras reais a um banco de dados, por exemplo), mas a experiência proporcionada deve ser quase idêntica à esperada no produto real. Limitado ao cenário, um usuário deve ser capaz de interagir com a interface e ter a experiência mais completa possível.

Como fazer um protótipo para o Sakai

Sakai é uma aplicação web, construída sobre Apache, JSP e MySQL. Porém, o protótipo não precisar ser construído utilizando-se a mesma tecnologia. Na verdade, é possível criar protótipos muito próximos à aparência do Sakai utilizando tecnologias completamente diferentes.

A demo contida neste arquivo contém uma aplicação Java Swing com aparência muito próxima ao Sakai original. Ela possui duas sugestões de melhorias de design: os cursos são organizados em uma combo-box e um ícone ressalta a posição do link para logout. A demo foi construída utilizando-se Netbeans, uma ferramenta que permite construção rápida de interfaces gráficas em Java/Swing.

Eventos

Podemos implementar um protótipo para o Sakai utilizando outros frameworks porque todos eles implementam, de alguma forma, o padrão Model-View-Controller.

O modelo armazena o estado do sistema e os dados. Como dito anteriormente, o modelo não precisa ser armazenado em banco de dados ou utilizar qualquer esquema sofisticado de persistência de dados: qualquer forma simples e rápida é preferida em um protótipo horizontal (por exemplo, listas em memória cujos valores são perdidos ao final da demo).

A visualização é dada por widgets, sejam eles GUI widgets ou Web widgets (ou paper widgets, no caso de seus protótipos PICTIVE). Uma boa ferramenta de prototipação de interfaces permite a construção rápida pela manipulação de widgets (Netbeans, Glade, etc.).

O controlador é o sistema de manipulação de eventos que permite capturar as intenções do usuário. O sistema, em resposta, altera o modelo da forma desejada e a visualização reproduz o novo estado. Uma boa ferramenta de prototipação permite a definição e o tratamento de eventos. Novamente, a intenção é apenas definir o mínimo necessário para a simulação do sistema.

Demo

A demo pode ser executada utilizando

$ java -jar fakesakai/dist/fakesakai.jar

Note que essa demo não é um protótipo horizontal, pois não implementa nenhum dos cenários. Ela apenas demonstra como prototipar uma alternativa ao Sakai em um framework diferente do original, mas conservando parte do design original. Contudo, lembre-se da dica do professor: procure inovar. Não se sinta preso ao design original, mas lembre-se que não é necessário ignorá-lo por completo e partir do zero.
Last modified: Wednesday, 29 December 2010, 8:59 PM