posts recentes

arquivos

tags

participar

links

Quarta-feira, 29 de Junho de 2011
Leitura de EXIF implementado e alguns afinamentos

Novos progressos foram feitos no nosso site. Para começar, uma das funcionalidades "core" a que nos comprometemos está concluída: a leitura de metadados EXIF. Isto permite que as fotografias que contenham estes dados sejam automaticamente georreferenciadas, despreocupando o utilizador. Este automatismo acontece aquando do processo de upload, depois da descrição das fotografias, isto é, quando se passa para o passo de georreferenciação. Aqui as coordenadas são automaticamente guardadas na base de dados e consequentemente essas imagens não aparecem para o utilizador georreferenciar manualmente. Para o utilizador não ser apanhado de surpresa, terá algum feedback do acontecimento.

Neste processo tudo corre bem, excepto quando o dispositivo (telemóvel ou máquina fotográfica) tem o GPS desligado, ou seja, as coordenadas ficam como 0,0. Então tivemos que fazer a verificação das coordenadas, fazendo assim a georreferenciação automática apenas quando a latitude e longitude são diferentes de 0.

E como isto foi feito?

A leitura dos dados exif é feita em php, com a função exif_read_data(“caminho_da_foto”,'GPS'). No entanto, esta informação das coordenadas vem em graus, minutos e segundos, que é incompatível com a API do Google Maps. Sendo assim, para o Google Maps reconhecer a latitude e longitude era necessário converter estes valores para decimal. Para isto usamos a seguinte fórmula: Graus + (Minutos * 1/60 ) + (Segundos * 1/60 *1/60).

E esta foi uma funcionalidade importante no nosso projecto, e sinceramente pensávamos que iria demorar imenso tempo, mas numa questão de poucas horas ficou resolvido.

 

Entretanto fomos limando outras arestas e descobrindo alguns bugs.

Na página de registo, ao escolher o avatar, na thickbox (a janela que aparece em pop-up), depois da imagem estar carregada e pronta para escolher a área que queremos para avatar, o 'formulário' inicial para fazer o upload de imagem continuava lá, o que suscitava dúvida ao utilizador. Como tal, apenas recorremos ao já conhecido jQuery, onde utilizamos a função hide() para esconder a div que continha o tal 'formulário', quando a respectiva página é carregada [ou seja, quando $(document).ready].

Tínhamos também um problema com a lightbox, que funcionava impecavelmente em localhost, mas não no servidor. Isto porque faltavam dois ficheiros .js, que, por razão que até agora não percebemos, não foram copiados.

No index também optimizamos o slider, mais precisamente o mapa. O mapa era criado 4 vezes (o mesmo número que as imagens), para obter as coordenadas das 4 fotos, mas agora tal não acontece. Diminuímos o código correspondente à criação do mapa para um quarto, ou seja, o código de criação do mapa apenas existe uma vez, e o que é actualizado apenas são as variáveis latitude e longitude (variáveis que definem a posição do marker), que vão variar o valor conforme a imagem que estiver visível. Economia de tempo e recursos é o que esta diminuição de código permite.




Terça-feira, 28 de Junho de 2011
Actualização da tabela de bugs

 


tags:


Actualização do corrente estado do projecto

Cá estamos mais uma vez a escrever.

As actualizações de maior relevância são essencialmente duas: a resolução de bugs (e aparecimento de mais alguns) e uma mudança ao nível da interacção na página da timeline.

Vejamos: 

Quanto aos comentários, aquele aspecto de não aparecerem os parágrafos devidamente formatados, está corrigido, apenas faltava usar a função nl2br. Ainda nos comentários, desta vez na questão da textarea expansível, que no Chrome não tinha um correcto funcionamento (expandia a cada caractere escrito), está também resolvido, com uma solução extremamente simples: apenas foi trocado o ficheiro .js correspondente a esta funcionalidade.

 

Agora, a página da timeline sofreu uma mudança. Como entendemos que pode às vezes ser melhor/mais fácil/mais agradável navegar pelo mapa com uma área de mapa grande, damos a possibilidade ao utilizador de expandir ou encolher o mapa. Isto implica fazer desaparecer ou aparecer a sidebar, para dar lugar ao mapa. E como é que isso foi conseguido? Com o nosso grande amigo jQuery, com o plugin animation, que neste caso acontece em duas situações em simultâneo: enquanto a animação do mapa aumenta, acontece a mesma animação na sidebar, mas em sentido inverso. A situação repete-se, mas ao contrário, quando se encolhe o mapa.

Com isto surgiu um, chamemos-lhe assim, um pequeno bug: durante a animação da sidebar a diminuir, o texto lá presente ajustava-se à div, o que dava um efeito esquisito. A solução para isto apenas consistiu em forçar a largura da div, para assim o texto não se ajustar.

 

Terminado este assunto, havia outra coisa que nos preocupava bastante: o upload de fotos no formato png em runtime html5. Simplesmente não carregava a imagem. Depois de várias tentativas e soluções diferentes nada resultou, até que acrescentamos vários ficheiros .js e para nosso espanto o nosso problema ficou corrigido. Portanto para este problema bastaram acrescentar dois ficheiros que faltavam (os outros que não faziam diferença eliminámos).

 

E por hoje é tudo!




Sexta-feira, 17 de Junho de 2011
Fomos ao fundo da questão

 

Bug da timeline resolvido.

Já se pode submeter imagem sem que os dados sejam totalmente preenchidos (mas caso não se preencha as coordenadas é natural que a fotografia não apareça no mapa)




Sexta-feira, 10 de Junho de 2011
Merchandising FindMemories Round two

Aqui fica o resto do merchandising FindMemories.

 

Mini Outdoor

Cadernos

T-shirt + Packaging

Pin + Packaging

Flyer + Packaging

Amostras de lona

 

Cartaz

T-shirt




Quinta-feira, 9 de Junho de 2011
Entrega TP06 | Versão beta - testes

 A segunda fase da entrega: os testes. Estes testes servem para verificar a robustez e qualidade da versão beta, bem como recolher contributos, opiniões e sugestões para o desenvolvimento da versão final.

Os testes que realizamos foram os seguintes:


Teste de funcionalidade (que estão sempre a decorrer)

Neste tipo de teste temos a tabela que temos vindo a actualizar desde a última entrega


 

Conclusão

Com este teste verificamos e testamos as funcionalidades da aplicação, bem como localizar, descrever e corrigir erros/bugs. A construção desta grelha permitiu-nos o controlo do processo de debugging, facilitando a nossa organização como grupo na eliminação de erros.


Teste de segurança

Neste aspecto tivemos o cuidado de encriptar as passwords com MD5, controlar o acesso às páginas por parte de utilizadores sem sessão iniciada e utilizar o método POST para a submissão de dados.

Para este teste recorremos a entidades externas, nomeadamente ao software "Acunetix" (http://goo.gl/Oeiil), que faz um procura de vulnerabilidades de toda a plataforma, bem como do servidor onde se encontra alojada.

 Aqui está o resultado:

 

  Sumário de alertas

 Alerta de prioridade elevada

 Alertas de prioridade média

O erro de prioridade elevada é relativo a uma porta do servidor, com tal não podemos resolvê-la.

Os erros relacionados com o método de encriptação MD5 são um aspecto a melhorar para a versão final.

 

Conclusão

Com este teste percebemos o nível de robuztez do site face a intrusões ilícitas, e permitiu-nos verificar que o MD5 não será o melhor método de encriptação de dados sensíveis, pelo que teremos de encontrar uma melhor alternativa. Permitiu-nos ainda perceber o nível de segurança do nosso servidor.

Já agora, descobrimos também que podemos utilizar esta ferramenta para o lado positivo e negativo, pois com isto vemos que sites estão mais vulneráveis a ataques.

 

Teste de compatibilidade

Para testar a compatibilidade analisamos o comportamento de cada página em 5 browsers (na sua versão mais recente), em 3 resoluções diferentes e dois sistemas operativos diferentes. 

Apenas de referir que, tal como a Google está agora a anunciar o fim do suporte a browsers antigos (1), optamos por optimizar o site apenas para as versões mais recentes de cada browser.

 1 - http://pplware.sapo.pt/informacao/google-anuncia-fim-do-suporte-para-browsers-antigos/


PDFtabela_compatibilidade.pdf

 

Conclusão

Este teste deu-nos uma visão sobre a consistência e compatibilidade do site entre diferentes browsers, resoluções e sistemas operativos. Como era de esperar, os comportamentos são diferentes em cada um deles, pelo que o nosso desenvolvimento tenta ao máximo minimizar essas diferenças.

A construção desta grelha ajuda-nos a controlar o processo de correcção, porque desta forma vamos directos ao erro, e sabemos especificamente onde falha.

Analisando então a tabela, verificamos que os erros mais críticos acontecem no Opera, onde a timeline "salta" para o ano 2038 numa primeira interacção, e no Safari, onde a página da timeline só é crrectamente apresentada depois de um refresh à página (o que nos deixou confusos porque não entendemos a razão disto acontecer). Felizmente estes browsers são os menos utilizados, totalizando apenas 6.4% de utilização, em Maio (fonte: http://www.w3schools.com/browsers/browsers_stats.asp).


Teste de usabilidade

Este teste foi realizado por 6 participantes, sub-divididos em 3 categorias: 2 participantes com gosto pelo tema, 2 com literacia técnica e 2 sem literacia técnica. Será assim para recolhermos críticas e opiniões mais diversificadas, permitindo evoluir o projecto.

Para recolher os dados submetemos os participantes a uma utilização da plataforma segundo um guião, enquanto estava a ser gravado o monitor, para registar todos os movimentos. Pedimos ainda aos participantes para verbalizar todos os pensamentos enquanto navegavam pelo site.

Durante todo este processo íamos também tirando as notas necessárias.

neste teste medimos a eficiência (em tempo e número de clicks) e a satisfação do utilizador (perguntámos no fim ao participante se o site lhe agradou e que sugestões teria para o mesmo.

PDF - tabela_usabilidade.pdf

PDF - cognitive_walkthrough.pdf

 

Conclusão

Este teste ilucidou-nos sobre a forma de utilização da plataforma, ou seja, conseguimos perceber, no contexto real de utilização, se o site é  eficaz/eficiente e se os utilizadores ficam satisfeitos ou não.

Analisando então os resultados, em primeiro lugar percebemos que os utilizadores ficaram satisfeitos, pois descreveram, na generalidade, a aplicação como intuitiva, visualmente agradável e acessível. 

Um outro aspecto positivo que retiramos deste teste, foi que os utilizadores associam bem o botão "Minhas memórias" como link para a página das fotografias do próprio utilizador (e para carregar fotos também).

No entanto, reparamos que falhamos num ou outro aspecto: na página de descrever as fotografias, os utilizadores ficam confusos com os botões de finalizar e continuar, e pensavam também que ao terminar os dados ficariam todos gravados automaticamente (sem gravar individualmente). Isto foi assinalado pela maioria dos participantes.

Na página editar perfil, vários utilizadores pensaram que o botão "Alterar dados" apenas alterava os dados textuais e não submetia a alteração do avatar. isto talvez será resolvido com o reposicionamento do botão.

 

Teste de CSS

Este teste foi realizado, no site http://jigsaw.w3.org/css-validator/, para percebermos se a nossa folha de estilos corresponde aos standards web e se está bem construída.

 

 

Conclusão

Depois desta análise verificamos que o código está dentro dos conformes: os erros que existem dizem respeito a código que diz respeito apenas a determinados browser, ou seja, código para um determinado aspecto funcionar num browser específico, e os alertas é sobre código repetido.

 

 

Em suma

Todos estes testes foram deveras úteis, na medida em que permitirá uma melhor evolução do site, bem como perceber o ponto da situação em que nos encontramos. São também essenciais, no caso específico do de usabilidade, para retirar feedback e adaptar o site ao público-alvo, melhorando a sua experiência de utilização. 

É de salientar que com a evolução do projecto, fomos sempre fazendo os respectivos testes (nomeadamente os de funcionalidade e compatibilidade), para não chegarmos ao fim e sermos surpreendidos. Permitiu também acompanhar o comportamento do site nos três browsers mais utilizados, e como se vê no resultado do teste, são os browsers onde obtemos melhores resultados.

Em jeito de remate, podemos afirmar com segurança que estes testes são indispensáveis a qualquer projecto.




Terça-feira, 7 de Junho de 2011
Entrega TP06 | Versão beta

Os objectivos desta versão beta são dar continuidade ao processo de desenvolvimento da prototipagem e identificar e resolver problemas críticos.


A estrutura deste post/entrega estará dividida em 3 partes: as últimas actualizações que fizemos, novos bugs descobertos e as normas/notas para o correcto funcionamento desta versão beta.
Assim sendo:


Actualizações

Bugs
No mapa os balões não fecham quando se abrem outros;
Nas minhas memórias os ícones de editar e apagar aparecem em posições diferentes (nas imagens da ultima coluna aparecem mais acima que nas outras)

Aqui fica então a lista actualizada de bugs:

Notas

Regras

Apenas de referir que a qualquer momento alguma funcionalidade poderá deixar de funcionar correctamente, devido a prováveis actualizações (isto porque estaremos sempre a desenvolver o site)

 

http://findmemories.dsystm.com/

Para usufruir da aplicação convém fazer o registo. Caso não estejam com vontade, aqui ficam as

 Credenciais de acesso (3 utilizadores)

 Login: leo.ferreira@ua.pt, jony_moto@hotmail.com, nelsontaleite@ua.pt

Pasword:123456, joaosousa, nelsontaleite


tags: | | |

publicado por nelsontaleite às 19:56
editado por joaofsousa em 17/06/2011 às 00:13
link do post | comentar | adicionar aos favoritos |

Sábado, 4 de Junho de 2011
Ainda há quem trabalhe ao sábado!

 Antes de mais, está aqui a tabela prometida no último post:

Agora, mais actualizações:

Por hoje é tudo!

 




Sexta-feira, 3 de Junho de 2011
Pré fim de semana

 Antes de entrarmos em fim de semana, temos umas quantas coisinhas novas feitas. Como de costume, vamos listá-las, é mais fácil:

Enquanto desenvolvíamos todos contentes este nosso belo site, encontramos mais dois bugs (em momento oportuno actualizaremos a nossa tabelinha):

  1. Se ao comentar uma fotografia fizermos parágrafos, ao visualizar o comentário submetido, o texto aparece seguido, sem os tais parágrafos
  2. Na página de editar perfil há um pequeno problema de design, a linha que separa o rodapé do conteúdo está ligeiramente à esquerda do alinhamento



Quarta-feira, 1 de Junho de 2011
Aula #24 - Mais do mesmo

 Durante o dia de hoje, tal como na aula, foi só trabalhar. Fizemos vários progressos, sendo um deles de elvada relavância.

- A página de editar perfill já está completa e a funcionar (o nome do avatar vai encriptado e aleatório, para não haver a possibilidade de ficheiros com o mesmo nome);

- Na página de discussão da foto a caixa de texto onde se escreve o comentário é expansível;

- Finalmente e o mais importante para já: a página da descrição de fotos, após o upload, já funciona correcta e dinâmicamente.

Enquanto isto, esbçamos como que de novo, a página da georreferenciação. Isto é, pensamos melhor como iria funcionar. Fica aqui o tal esboço:

Mais um reparo: modificamos as nossas propostas para a versão beta. Devido às dificuldades que estamos a enfrentar em alguns aspectos, e tendo em conta o tempo que vamos dispender ao fazer testes, "riscamos" a página de criar álbuns. Fica assim sem efeito para esta versão beta.




mais sobre mim

 

Junho 2011
Dom
Seg
Ter
Qua
Qui
Sex
Sab

1
2
3
4

5
6
7
8
9
11

12
13
14
15
16
18

19
20
21
22
23
24
25

26
27
30