2016
Authors
Almeida, J; Barbosa, M; Pacheco, H; Pereira, V;
Publication
ERCIM NEWS
Abstract
Cryptography is an inherently interdisciplinary area and the development of high-quality cryptographic software is a time-consuming task drawing on skills from mathematics, computer science and electrical engineering, only achievable by highly skilled programmers. The challenge is to map high-level cryptographic specifications phrased using mathematical abstractions into efficient implementations at the level of C or assembly that can be deployed on a target computational platform, whilst adhering to the specification both in terms of correctness and security. The High Assurance Software Laboratory at INESC-TEC maintains a domain-specific toolchain for the specification, implementation and verification of cryptographic software centred on CAO, a cryptography analyses and operations-aware language.
2016
Authors
Martins, P; Fernandes, JP; Saraiva, J; Van Wyk, E; Sloane, A;
Publication
SCIENCE OF COMPUTER PROGRAMMING
Abstract
Attribute grammars are a suitable formalism to express complex software language analysis and manipulation algorithms, which rely on multiple traversals of the underlying syntax tree. Attribute grammars have been extended with mechanisms such as reference, higher order and circular attributes. Such extensions provide a powerful modular mechanism and allow the specification of complex computations. This paper studies an elegant and simple, zipper-based embedding of attribute grammars and their extensions as first class citizens. In this setting, language specifications are defined as a set of independent, off-the-shelf components that can easily be composed into a powerful, executable language processor. Techniques to describe automatic bidirectional transformations between grammars in this setting are also described. Several real examples of language specification and processing programs have been implemented.
2016
Authors
de Holanda, JAM; Cardoso, JMP; Marques, E;
Publication
2016 IEEE 14TH INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN)
Abstract
Object detection in images is a computing demanding task which usually needs to deal with the detection of different classes of objects, and thus requiring variations and adaptations easily provided by software solutions. Object detection algorithms are being part of real-time smarter embedded systems, such as automotive, medical, robotics and security systems. In most embedded systems, efficient implementations of object oriented algorithms need to provide high performance, low power consumption, and programmability to allow greater development flexibility. The Histogram of Oriented Gradients (HOG) is one of the most widely used algorithms for object detection in images. In this paper, we show our work towards mapping the HOG algorithm to an FPGA-based system consisting of multiple Nios II softcore processors and bearing in mind high-performance and programmability issues. We show how to reduce 19x the algorithms execution time by source to source transformations and specially avoiding redundant processing. Furthermore, we show how the use of pipelining processing using three Nios II processors allows a speedup of 49x compared to the embedded baseline application.
2016
Authors
Garcia, JE; Paiva, ACR;
Publication
International Journal of Software Engineering and its Applications
Abstract
In the context of SaaS, where the change requests can be frequent, there is the need for a systematic requirements management process so as to maintain requirements updated and ease the management of changes required to improve the service to provide. Changes to perform need to be prioritized and their impact on the system should be assessed. The extraction and analysis of the use of the servicesprovided through the web and their relationship to the requirements can help identify improvements and help keep the service useful for longer period of time. This paper presents REQAnalytics, a recommender system that collects information on the usage of a web service, relates that information back to the requirements, and generates reports with recommendations and change suggestions that can increase the quality of that service. The proposed approach aims to provide reports of the analysis made in a language closer to the business where, for example, it indicates new workflows and navigation paths, identifies the features that can be removed and presents the relationship between requirements andthe proposed changes helping to maintain the software requirements specification updated and useful. © 2016 SERSC.
2016
Authors
Silva, S; Valente, A; Soares, S; Reis, MJCS; Paiva, J; Bartolomeu, P;
Publication
Proceedings of the 2016 SAI Computing Conference (SAI)
Abstract
The ability of the Arduino platform to enhance student interest and performance in science, technology, engineering, and mathematics (STEM) courses, while fostering skills that are important prerequisites for future IT careers, has been proven more than once in the past years. But can the future be crafted without the past? We believe that many past inventions crave the future, so their understanding is a bridge of knowledge that must be passed to students. According to Grand View Research website the microcontroller market will rise from the 20 billion units in 2015 to an amazing 39 billion units in 2020. Therefore, an increase on IT careers is also expected. The Morse code and the telegraph revolutionized long-distance communication in the past and laid the groundwork for the communications revolution. In fact, although developed in the 1830s and 1840s by Samuel Morse (1791-1872) and other inventors, only in 1844 the first telegraph message, from Washington, D.C., to Baltimore, Maryland, was sent. To provide the means to students to start learning this technology we have developed four experiences that introduce them to the fundamentals of communications, including the Li-Fi technology. This new technology is based on the Morse code, and can spark again the communications revolution by using tiny, imperceptible flickering lights can provide a new way of sending data to computers and mobile devices. Therefore, we decided to revitalize the almost forgotten Morse code by implementing it with an Arduino in order to lay again the foundations to this new revolution that is coming. This paper presents the implementation model of two Morse code translators, how they work, their implementation, and some results. We also present a VLC (Visible Light Communication) system based on the same principles of the Morse code building this way the foundation for students to proceed with this course of the investigation.
2016
Authors
Silva, Sofia; Pinho, Olívia; Bruno M P M Oliveira; Padrão, Patrícia;
Publication
Abstract
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.