ImoLive
From Laboratório MM 5
- RELATÓRIO
- LABORATÓRIO MULTIMÉDIA 5
2011/2012
Realizado por:
21281 – Diana Moreira | 46277 – João Pedro Santos | 47317 – Paulo Brites
Contents |
Introdução
No âmbito da unidade curricular de Laboratório Multimédia 5 do curso de Novas Tecnologias da Comunicação da Universidade de Aveiro, serve o presente relatório como descrição e registo de processos resultantes da criação e implementação de uma nova aplicação online enquadrada nas tecnologias web 2.0.
Objectivo do documento
Com recurso aos conteúdos programáticos e às tecnologias lecionadas, o presente documento tem como principal objectivo o suporte e descrição dos passos dados na implementação do projecto proposto na U.C. bem como a contextualização das ferramentas e processos utilizados. Pretende-se descrever todo o processo de criação da aplicação nomeadamente a concepção da base de dados, a sua implementação, a programação utilizada como: Server Behaviours, Queries e Recordsets bem como a integração com outras tecnologias como Javascript, Ajax ou HTML.
Visão geral do projecto
ImoLIVE consiste numa aplicação online, associada a uma empresa do ramo imobiliário, para a comercialização de imóveis. Pretende-se que o seu aspecto agradável e as suas funcionalidades tornem mais fácil e acessível a quem procura um negócio imobiliário, pesquisar e conhecer as possibilidades ao seu dispôr numa lógica de prosumer (produtor e consumidor). Através de uma área de pesquisa, o utilizador poderá encontrar diversas soluções enquadradas ao seu interesse ordenadas pelos parâmetros previamente seleccionados bem como colocar no mercado imobiliário o imóvel do qual é proprietário que pretenda comercializar.
Estudos gráficos
Procurou-se desde o início do projecto uma imagem simples e eficaz que fosse explícita do objectivo da aplicação. Neste sentido optou-se por um design sóbrio em fundo negro. Já para a imagem do lettering bem como do logótipo, optou-se por criar uma imagem marcante que fosse de fácil identificação e com uma identidade bem definida que mantivesse o destaque em todo o layout. Para o tipo de letra, optou-se por uma que fosse diferenciadora. A fonte Geomancy foi a escolhidade de entre mais de 100 diferentes e foi alvo de uma ligeira personalização no ponto do i.
.
Base de dados desenvolvida
A base de dados criada é constituida por 11 tabelas e foi desenvolvida através da aplicação MySQLWorkbench.
Partindo da principal tabela, Imóveis, é aí guardada toda a informação relativa aos imóveis: morada, preço, ano de construção, área, data de angariação e detalhes. A esta tabela encontra-se directamente ligada a tabela de Proprietários, onde constarão a informações dos mesmos, sendo que um proprietário pode ter vários imóveis. E ainda a Natureza do mesmo, ou seja, apartamento, escritório ou moradia, etc. A localização por Concelho e Freguesia, o Estado e a sua Disponibilidade também se encontram previstas nas tabelas directamente relacionadas com os Imóveis. Associada ainda à tabela Imóveis, encontra-se a tabela do ramo de Negócio que será distinto em cada imóvel inserido e directamente ligado à tabela Utilizadores onde será guardada a informação relativa aos mesmos: nome, email, morada, contactos, username e password.
O tipo de utilizador, (administrador, editor e utilizador registado) cada um com permissões distintas, as quais são definidas através da tabela Utilizadores onde também se inserem os seus dados pessoais. O tipo de utilizador define todo o resto da interacção com a aplicação, como as permissões, o que é mostrado, e o que é possível alterar na mesma.
Implementação
Descrição das principais funcionalidades da aplicação Web
A aplicação imoLIVE caracteriza-se por um design limpo de aspecto sóbrio com o objectivo claro de direccionar a atenção dos utilizadores para as funcionalidades aí implementadas. Numa primeira abordagem ao site, na página Home, o utilizador tem a possibilidade navegar pelas funcionalidades disponíveis, tais como, consulta de imóveis e informação geral sobre a empresa.
Para utilizadores assíduos existe a possibilidade de Registo através de formulário para o efeito. Após o respectivo registo, através da área de Login com os dados pessoais, é possível ao utilizador entrar na plataforma e usufruir das funcionalidades disponíveis na aplicação web com as respectivas restrições. Este tipo de utilizador não poderá adicionar, editar ou apagar qualquer imóvel.
O Editor tem permissão para adicionar novos imóveis ou editar a informação dos imóveis associados à sua conta sem que, no entanto, lhe seja permitido eliminar registos.
Já o utilizador registado como Administrador tem permissões para adicionar, apagar ou editar imóveis sem qualquer restrição.
Mapa de páginas
Na página Home o utilizador encontra em destaque imagens dos mais recentes imóveis inseridos na base de dados. De igual forma ao seu dispor um menu com Sobre, Imóveis, Informações e Contactos.
Na Home ainda se encontra:
- Registo - direccionando para a um formulário em que é necessário introduzir os dados pessoais (nome, username, password, entre outros);
- Login - para utilizadores com conta criada onde devem inserir o seu username e password;
- Procura - página onde se pode pesquisar imóveis de diversos segmentos.
Na zona de conteúdos vemos em destaque, através de um slideshow, imagens dos mais recentes imóveis inseridos na base de dados. Nas restantes páginas da plataforma a zona que se altera é a zona de conteúdos, visto que teremos sempre presente o header, menu e footer.
No footer encontra-se a informação sobre a equipa que desenvolveu o site.
Na página Sobre encontra-se a informação respeitante à empresa: a localização, notícias e a versão Mobile para download.
Página Inserir tal como na página de registo esta é composta por um formulário com os itens necessários para se inserir novos conteúdos na base de dados da plataforma, incluindo o upload de imagens;
Página Editar para que se proceda a qualquer alteração à informação previamente inserida na base de dados;
Página Eliminar, como o nome indica serva para eliminar definitivamente os registos anteriormente. Uma mensagem popup de confirmação será exibida ao utilizador.
Server Behaviours utilizados
Foram utilizados vários Server Behaviours ao longo do desenvolvimento da plataforma, nomeadamente:
Insert Record – inserção dados na base de dados, através do registo de utilizadores ou da submissão de imóveis;
Check Username - verificação a utilização do mesmo username;
Repeat Region – repetição de determinados excertos de código;
Update Record – actualização de dados inseridos;
Dynamic Text Field – introdução de dados que são dinamicamente armazenados na base de dados
Restrict Access To Page – para o acesso restrito a determinados utilizadores. Por exemplo, só o administrador pode apagar conteúdos.
Recordsets/Queries utilizados
Para se proceder ao carregar, inserir e manipular dinamicamente os dados existentes na Base de Dados da plataforma, foram criados vários Recordsets e várias queries que permitem chegar à informação pretendida.
rs_registar: para o registo de novo utilizador;
rs_adicionar: para se proceder à inserção de novos conteúdos;
rs_update: fazer actualização dos imóveis;
rs_login: efectuar o registo do utilizador;
rs_imoveis: dispor a informação dos imóveis;
rs_imoveis1: mostrar imóveis;
detalhespage": mostra detalhes de conteúdos.
Parâmetros passados entre páginas
Utilizaram-se três métodos para passar parâmetros entre páginas: o método GET, POST, por url, e através da Session, ou seja, do id do utilizador que tem, no momento, a sessão iniciada.
Utilizamos o método GET através de $action para registo e para login e o $result para detectar se a função criada foi bem desempenhada. O método POST foi usado, principalmente, no preenchimento de formulários, como o de registo. Para perceber que utilizador fez login e mostrar assim a sua página de widgets actualizada, utilizamos o parâmetro de Session "MM_Username", que corresponde ao username, único para cada utilizador.
Integração
No desenvolvimento desta aplicação, para além do PHP, fundamental na incorporação dos conteúdos dinâmicos entre páginas, foram utilizadas outras tecnologias, para o desenvolvimento da plataforma:
Html - usado no desenvolvimento e estruturação de todas as páginas presentes na nossa plataforma
Css – utilizado para a uniformização do layout no que diz respeito a cores, fontes, tamanhos, etc...;
Javascript – para a validação de formulários;
Desenvolvimentos Futuros
- Em plena era web 2.0, um dos desenvolvimentos que consideramos mais marcantes para futura implementação seria a integração de uma funcionalidade que directamente ligasse a aplicação às redes sociais, bem como a criação de aplicações específicas para as mesmas. De igual modo a criação de uma aplicação mobile para dispositivos móveis.
Outro dos desenvolvimentos considerados será a criação de um espaço onde uma ligação através do Google Maps, dê a localização exacta do imóvel que é consultado. Inovador seria igualmente a inserção na página de um espaço para conversação/“chat” em tempo real entre os utilizadores. Seria o espaço para colocar todas as dúvidas e esclarecer qualquer detalhe em relação às consultas.
Consideramos ainda a colocação de um formulário de inscrição para recrutamento de colaboradores e candidaturas a franchisings.
Conclusões
- A aplicação na prática das teorias aprendidas é, quanto a nós e sem qualquer dúvida, o melhor meio de consolidar a aprendizagem. Naturalmente por esta razão tornou-se importantíssimo o desenvolvimento deste projecto.
No desenvolvimento deste trabalho e na implementação da aplicação, sentiu o grupo a satisfação de consolidar as matérias leccionadas ao longo do semestre. O protótipo apresentado carece no entanto de algumas funcionalidades e características reais que gostaríamos de ver implementadas, embora nos pareça que seja um produto muito próximo daquele que poderia ser apresentado a uma empresa do mercado.
Cumpre-nos ainda agradecer aos professores, Licínio Mano, Helder Caixinha e Nuno Ribeiro, a disponibilidade, sapiência e paciência com que nos orientaram ao longo dos últimos meses em mais este percurso académico. Bem haja!
Referências bibliográficas
Consultados ao longo do desenvolvimento do projecto:





