Titulo Estágio
Public Display Application Platform
Áreas de especialidade
Sistemas de Informação
Engenharia de Software
Local do Estágio
DEI
Enquadramento
For more details see [url=https://goo.gl/tuIZ4P]this document[/url].
Digital public displays are already everywhere: we find them in shopping centers, cafés, universities, waiting rooms, and even in the streets. Most of these displays show a predefined sequence of non-interactive content items. However, in the last few years there has been an increasing research effort on interactive public displays with the goal of making them more valuable, dynamic, and interactive. One of the research directions has been on multi-purpose interactive public displays: displays that can run applications from different vendors just like smartphones do.
Objetivo
The aim of this project is to implement and enhance an existing definition of a public display platform.
In previous work [1], we have specified a new runtime life-cycle for public display applications, and developed a prototype platform that implements that life-cycle. In this project we aim at re-implementing the platform making it more robust and production ready. We also want to enhance the existing life-cycle specification making it more flexible and powerful allowing new types of applications and use-case scenarios. The intended public display application platform will be developed as a hybrid desktop application making it easy to use and deploy.
We also intend to combine functionality from another project [2], providing real-time interaction functionality to public display application from users’ smartphones.
Plano de Trabalhos - Semestre 1
1. Familiarization with the existing platforms
2. Study and analyse other public display systems
3. Study hybrid desktop (e.g, Electron) programming model
4. Define the architecture of the system
5. Partial implementation of the system
Plano de Trabalhos - Semestre 2
6. Implement the proposed platform
7. Implement demo applications
8. Demo the complete system in a public display
9. Write the report and a scientific paper
The main functionality to implement is:
- Provide a cron-inspired scheduling of public display applications.
- Each application should run in a separate browser tab.
- Support background and foreground applications
- Support notifications from apps that are not in the foreground
- Support legacy applications (i.e., standard web pages)
- Manage the life-cycle of all scheduled applications, exposing the necessary callbacks through JavaScript so that apps can manage their resources
- Monitoring of applications, penalizing those that consume more resources - CPU, bandwidth, memory (i.e., destroying them if necessary)
- Provide a direct manipulation, remote, interaction mechanism via smartphones or tablets. Applications should have minimum effort in using this functionality (i.e., the smartphone interface should be automatically generated, standard input events should be easily available as callbacks to the application, etc.)
Condições
Workplace at CISUC's lab
Observações
Required student profile
Good knowledge of JavaScript and object-oriented programming.
HTML and CSS is a plus;
References and conferences
[1] Cardoso, J. C. S., & Perpétua, A. (2015). Design and Implementation of a New Run-time Life-cycle for Interactive Public Display Applications. In Proceedings of the 5th International Conference on Pervasive and Embedded Computing and Communication Systems (PECCS-2015) (pp. 4–14). SCITEPRESS Science and Technology Publications, Lda. http://doi.org/10.5220/0005205600050014
[2] Cardoso, J., & Barreira, M. (2014). A web-based toolkit for remote direct manipulation interaction with public displays via smartphones. In Proceedings of the 11th International Conference on Mobile and Ubiquitous Systems: Computing, Networking and Services (pp. 357–358). London, UK: ICST. http://doi.org/10.4108/icst.mobiquitous.2014.258067
Orientador
Jorge CS Cardoso
jorgecardoso@dei.uc.pt 📩