2 resultados para JSON

em Repositório Científico do Instituto Politécnico de Lisboa - Portugal


Relevância:

10.00% 10.00%

Publicador:

Resumo:

O contínuo desenvolvimento na área da Web 2.0 potencia a implementação de portais Web de carácter multi-funcional com uma elevada versatilidade e uma grande riqueza interactiva. Este projecto pretende tirar partido do desenvolvimento ocorrido nas tecnologias desta área de forma a apresentar uma proposta de portal institucional para o Instituto Superior de Engenharia de Lisboa (ISEL) que espelhe a Instituição como inovadora e actual. Para a implementação desta proposta foi desenvolvida uma plataforma de integração ao nível da camada de apresentação, seguindo os conceitos Web 2.0 aplicáveis, assente em tecnologias cliente suportadas em browser. Com esta plataforma pretende-se disponibilizar os alicerces para a integração das várias aplicações de front-office da Instituição numa camada homogénea, reduzindo a curva de aprendizagem das várias aplicações e contribuindo para uma integração destas que diminua a complexidade de utilização e facilite a manutenção e evolução. Sendo uma plataforma de integração, foi disponibilizada a possibilidade de efectuar as comunicações com base em JSON, XML, cabeçalhos dos pedidos http e Web services SOAP, sendo utilizadas mensagens ACL a nível aplicacional. O que permite um maior desacoplamento tecnológico entre a plataforma e os serviços utilizados. O desenvolvimento do projecto foi assente nos conceitos de desenvolvimento ágil, baseado na prototipagem. A gestão do projecto foi feita com recurso a uma aplicação de gestão de projecto colaborativa, o Redmine, que permitiu a adequação do projecto às necessidades ao longo do desenvolvimento e uma partilha mais fácil do estado do mesmo e de informações críticas do seu desenvolvimento aos vários intervenientes.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O presente projecto tem como objectivo a disponibilização de uma plataforma de serviços para gestão e contabilização de tempo remunerável, através da marcação de horas de trabalho, férias e faltas (com ou sem justificação). Pretende-se a disponibilização de relatórios com base nesta informação e a possibilidade de análise automática dos dados, como por exemplo excesso de faltas e férias sobrepostas de trabalhadores. A ênfase do projecto está na disponibilização de uma arquitectura que facilite a inclusão destas funcionalidades. O projecto está implementado sobre a plataforma Google App Engine (i.e. GAE), de forma a disponibilizar uma solução sob o paradigma de Software as a Service, com garantia de disponibilidade e replicação de dados. A plataforma foi escolhida a partir da análise das principais plataformas cloud existentes: Google App Engine, Windows Azure e Amazon Web Services. Foram analisadas as características de cada plataforma, nomeadamente os modelos de programação, os modelos de dados disponibilizados, os serviços existentes e respectivos custos. A escolha da plataforma foi realizada com base nas suas características à data de iniciação do presente projecto. A solução está estruturada em camadas, com as seguintes componentes: interface da plataforma, lógica de negócio e lógica de acesso a dados. A interface disponibilizada está concebida com observação dos princípios arquitecturais REST, suportando dados nos formatos JSON e XML. A esta arquitectura base foi acrescentada uma componente de autorização, suportada em Spring-Security, sendo a autenticação delegada para os serviços Google Acounts. De forma a permitir o desacoplamento entre as várias camadas foi utilizado o padrão Dependency Injection. A utilização deste padrão reduz a dependência das tecnologias utilizadas nas diversas camadas. Foi implementado um protótipo, para a demonstração do trabalho realizado, que permite interagir com as funcionalidades do serviço implementadas, via pedidos AJAX. Neste protótipo tirou-se partido de várias bibliotecas javascript e padrões que simplificaram a sua realização, tal como o model-view-viewmodel através de data binding. Para dar suporte ao desenvolvimento do projecto foi adoptada uma abordagem de desenvolvimento ágil, baseada em Scrum, de forma a implementar os requisitos do sistema, expressos em user stories. De forma a garantir a qualidade da implementação do serviço foram realizados testes unitários, sendo também feita previamente a análise da funcionalidade e posteriormente produzida a documentação recorrendo a diagramas UML.