Download - Especificação Técnica
2
Índice
Modelo de Arquitectura Técnica ............................................................................................. 3
Mapas de navegação .................................................................................................................... 5
Fluxogramas das principais funções ......................................................................................... 8
Modelo de Base de Dados ......................................................................................................... 12
3
Especificação Técnica
Modelo/arquitectura do sistema
Diagrama de Blocos inserido no contexto da Arquitectura de Sistemas
Todo o sistema no qual a aplicação TouchEat se integra baseia-se em três plataformas
distintas, a designar: a mesa multi touch construída no ano passado pelos elementos do
projecto "DecaTouch", o StandAlone da aplicação e a por último a aplicação web de
backoffice.
4
A mesa multi touch tem como base de construção um setup LLP (laser light plane) em
que se recorre a lasers de infra-vermelhos para identificação de Blops (eventos de toque) que
são captados por uma câmara PlaystationEyetoy, alterada com um filtro de IR.
No momento que se verifica a interrupção do sinal de infravermelhos, a câmara – em
conjunto com o software de tracking CCV/TBeta - reconhece a descontinuidade dos feixes,
criando os já citados Blops, aos quais é atribuído um identificador.
A aplicação Stand-alone tem como constituintes dois softwares e um plugin: TBeta/CCV,
FlashCS4 (AS3.0) e ainda o Plugin GestureWorks para o flash. Como já referido a aplicação
CCV faz o tracking dos inputs de toque. O Flash (ferramenta de programação) atribui um
significado a esses mesmos inputs, auxiliado pela biblioteca de gestos GestureWorks, o
terceiro software, que de forma simples e directa permite estabelecer a associação do Blop à
funcionalidade.
No entanto, importa referir que a triangulação destes três softwares, apesar de se
apresentar como uma solução de fácil aplicação não funciona na sua totalidade. Registam-se
algumas falhas de comunicação entre o CCV e a última versão do GestureWorks, facto que se
tem apresentado como obstáculo à fluidez de trabalho esperado inicialmente.
Por último, a aplicação web do backoffice tem como principal função a edição (remota e
não local) dos principais conteúdos da aplicação TouchEat. Este backoffice será feito com
recurso às tecnologias de PHP e PhpMyAdmin - gestão de base de dados, de maneira permitir
que qualquer pessoa externa à construção da aplicação (em AS3.0) possa alterar conteúdos da
mesma.
No diagrama de blocos apresentado regista-se ainda a ligação da aplicação TouchEat à
internet, permitindo a realização de todo o percurso de PHP - Servidor - BD, para registo,
leitura e manipulação de dados.
5
Especificação Técnica
Mapas de navegação
Aplicação:
Mapa de navegação relativo à Aplicação Touch Eat
Na aplicação TouchEat apenas haverá um tipo de utilizador (genérico), não havendo
diferenciação de idades, géneros, etc. O mapa de navegação apresentado representa o
percurso que o utilizador comum (ou utilizadores) fazem na aplicação, tal como as escolhas
que fazem parte desse percurso. Importa referir que as escolhas não condicionam o trajecto,
mas sim os conteúdos que posteriormente são apresentados em cada uma das fases.
6
No bloco "Início" apenas será apresentado na mesa o Logótipo do TouchEat. Com
double tap há uma animação de aparecimento da primeira fase do Cardápio e do ícone de
"mais info" do restaurante.
Neste "mais info" aparecem quatro opções: História, fotos, chefe e imprensa. Na
primeira secção, o cliente pode ler a história do restaurante, na secção de fotos pode visualizar
capturas fotográficas tanto do próprio edifício como de outros momentos marcantes
acontecidos no local, na opção "Chefe" pode ler mais sobre o/os chefes do restaurante
(historial, sítios por onde passou) e na secção de imprensa o utilizador pode consultar artigos
em que o restaurante é referenciado.
Ainda ao mesmo nível e como referido anteriormente, o cliente pode proceder à
escolha da sua refeição através do cardápio interactivo. Esta fase é constituída por duas etapas:
- Escolha sobre o tipo de comida (peixe ou carne), tipo de bebida (bebidas genéricas
ou vinhos) e sobremesas.
- Depois de escolhida a opção anterior, é permitida a especificação da escolha esta
surge como um menu popUp que responde a um evento semelhante ao conhecido OnPress.
Depois de escolhida a refeição e de esta ser submetida, pelo funcionário do
restaurante - e nunca pelo cliente, toda a aplicação muda para o menu de "Curiosidades",
referido no Mapa de Navegação como "Auto aprendizagem e aprendizagem colaborativa",
sendo estas dois conceitos fundamentais do nosso projecto. Nesta secção o utilizador pode ler
curiosidades sobre os pratos e partilha-la com o seu companheiro.
Após esta fase de espera onde se pretende promover o diálogo e partilha de
informação é iniciado o menu de refeição.
Consoante o identificador enviado pela submissão do pedido do Cardápio o ambiente
gráfico da mesa modifica-se: no caso de a escolha ser prato de peixe o ambiente torna-se
marinho, no caso de ser um prato de carne o ambiente mostrará algo relacionado com o prato
(paisagens alentejanas, p.e.). Nesta fase apenas haverá um ícone de ocultação de animação, pois
o grupo compreende que pode não ser agradável, para alguns utilizadores, jantar num
ambiente com animações a decorrer em plano de fundo.
Quando a refeição terminar e o funcionário retirar os pratos, este dá ordem à mesa
de passagem para a próxima fase através de um botão lateral. Neste momento intermédio são
mostradas opções de sobremesas e cafés, que o utilizador pode escolher com base em
fotografia e informação, tal como acontece no cardápio.
7
Uma vez mais, quando o funcionário retirar as sobremesas acciona a nova fase,
denominada no mapa como "Jogo", onde o utilizador pode jogar com o seu companheiro
enquanto aguarda a vinda do café ou digestivo.
Finalmente, e mais uma vez após o funcionário dar ordem para a próxima fase surge o
último ambiente, onde o cliente pode classificar e comentar todo o serviço prestado.
BackOffice:
Relativamente ao backoffice, este foi conceptualizado de forma a permitir a visualização
dos conteúdos previamente existentes na base de dados da aplicação.
Uma das funcionalidades que importa salientar é a possibilidade de editar o conteúdo já
existente (conteúdo referente aos diversos parâmetros integrados na base de dados), com
intuito de minimizar a ocorrência de comentários, cujo cariz não se adapte ao contexto do
restaurante. Ou por sua vez, contornar a possibilidade de se verificar algum erro aquando da
introdução de novos conteúdos - também realizada no backoffice.
Mapa de navegação relativo à Aplicação Touch Eat
8
Especificação Técnica
Fluxogramas das principais funções
Sendo os fluxogramas uma representação padronizada, pela utilização de símbolos,
definidos da sequência de instruções e processos lógicos de um algoritmo, apresentam claras
vantagens no que toca à sua objectividade, clareza de interpretação e possibilidade de ser
transposto para qualquer linguagem de programação.
Segundo Manzano e Oliveira, o fluxograma tem como objectivo primordial a
representação de um fluxo de acção de um processo lógico manual ou mecânico.
Assim o grupo optou por representar, sob a forma de fluxograma, as funções
principais e que pelo mesmo motivo representarão um desafio de implementação futuro. No
entanto, conhecendo a forma como implementar as funções fulcrais da aplicação, possui-se um
importante documento de auxílio na fase de que se aproxima: prototipagem.
Interessa assim relembrar que o grupo seleccionou as funções que considerou
principais: Percurso percorrido desde que o utilizador entra em contacto com a mesa táctil,
percorrendo a aplicação até validar a encomenda do prato desejado; Período de auto
aprendizagem e aprendizagem colaborativa, no contexto do aparecimento de características
relativas aos pratos que cada utilizador validou como pedido final; Momento final da
experiência da aplicação, nomeadamente o jogo, atribuição de rating ao prato e introdução de
um comentário finalizador em resposta à questão - ”Esta experiência fez-me pensar em…”.
Simbologia segundo a norma ISSO 5807: 1985.
Principal simbologia utilizada em fluxogramas ou diagrama de blocos
9
Fluxograma representativo à escolha de um prato.
10
Fluxograma referente ao momento de auto aprendizagem / aprendizagem colaborativa, em que
surgem na mesa curiosidades relativas ao prato pedido.
11
Fluxograma relativo à acção de atribuir ranking ao prato que consumiu e comentário sobre a
experiência.
12
Especificação Técnica
Modelo da Base de Dados
Base de dados da aplicação Touch Eat
A presente base de dados é conceptualizada mediante algumas fases/menus do
projecto Touch eat.
Antes do pedido ser efectuado, no contexto de restaurante, à recurso a base de dados
para obter o valor das votações atribuidas aos diversos pratos (numa escala de 1-5 estrelas),
pelos clientes que frequentam o restaurante.
Recorre-se, igualmente, à base-de-dados, referente à informação do Restaurante, com
o objectivo de permitir a visualização de comentários elaborados por cada cliente, que se
encontra disposto a deixar o seu parecer sobre esta nova experiência de lazer e refeição.
Volta-se a consultar a base-de-dados, na fase final do jogo, em que é guardada a
pontuação, adquirida pela mesa (dentro da corrente sessão), e devolvida a lista das melhores
pontuações da mesma.
Após o jogo, o cliente pode demonstrar a sua satisfação perante o prato que
consumiu, e escrever a sua própria opinião relacionada com a experiência vivida comentando.
13
Os campos preenchidos, referentes ao rating do prato (valor 1-5), ao nome, local, e
comentário propriamente dito, são guardados na base-de-dados que actualiza, adicionando os
novos dados, os parametros dos comentários do Restaurante e das votações dos Pratos.
Cada vez que a sessão é iniciada, é atribuido um “id” único relacionado com o“id” da
mesa, na qual se inicia a aplicação, sendo registadas a data e hora corrente e guardadas a
pontuação final e tempo obtido na realização do jogo.
A sessão, perante os pratos seleccionados na fase do pedido, guarda os “id”s
correspondentes para no final da refeição ser possível proceder à votação a atribuir ao pedido
efectuado. Os valores atribuidos têm “id”s identificativos que permitem a actualização do
rating, atribuído a cada um dos diversos pratos disponíveis no menu.
Referente aos comentários, guardados por sessão, são registados os seguintes
parâmetros relativos ao cliente: data, local, nome e o comentário em si.
Os campos preenchidos na aplicação Flash, comunicam através de AS3 com o PHP que
por sua vez ligado a um servidor entra em contacto com a base de dados, actualizando a
informação referente a cada parâmetro.
Esta actualização é enviada da base-de-dados pelo servidor para o PHP que comunica
com o Flash pelo AS3 e permite a visualização da nova informação, numa nova sessão da
aplicação.