370 research outputs found
Crowd-sensing our Smart Cities: a Platform for Noise Monitoring and Acoustic Urban Planning
Environmental pollution and the corresponding control measurements put in place to tackle it play a significant role in determining the actual quality of life in modern cities. Amongst the several pollutant that have to be faced on a daily basis, urban noise represent one of the most widely known for its already ascertained health-related issues. However, no systematic noise management and control activities are performed in the majority of European cities due to a series of limiting factors (e.g., expensive monitoring equipment, few available technician, scarce awareness of the problem in city managers). The recent advances in the Smart City model, which is being progressively adopted in many cities, nowadays offer multiple possibilities to improve the effectiveness in this area. The Mobile Crowd Sensing paradigm allows collecting data streams from smartphone built-in sensors on large geographical scales at no cost and without involving expert data captors, provided that an adequate IT infrastructure has been implemented to manage properly the gathered measurements. In this paper, we present an improved version of a MCS-based platform, named City Soundscape, which allows exploiting any Android-based device as a portable acoustic monitoring station and that offers city managers an effective and straightforward tool for planning Noise Reduction Interventions (NRIs) within their cities. The platform also now offers a new logical microservices architecture
Approach in the development of lightweight microservice architecture for small data center monitoring system
In the past decade there is a significant trend of implementing IoT technologies and standards in different industries. This trend brings cost reductions to the companies and other benefits as well. One of the main benefits is real-time and uniform data collection. The data are transferred using diverse communication protocols, from the sensor nodes to the centralized application. So far, current approaches in developing applications are not proved itself to be efficient enough in scenarios when a significant amount of data needs to be stored and analyzed. The focus of this paper is on development of software architecture suitable for usage in Internet of Things (IoT) systems where the larger amount of data can be processed in real-time. The software architecture is developed in order to support the sensor network for monitoring the small data center and it is based on microservices. Besides the system and its architecture, this paper presents the method of analysis of system performances in real-time environment. The proposal for lightweight microservice architecture, presented in this paper, is developed with .NET Core and RabbitMQ, with the utilization of MongoDB and SQLite databases systems for storing data collected with IoT devices. In this paper, the system evaluation and research results in different stress scenarios are also presented. Because of its complexity, only the most significant segments of architecture will be presented in this paper. The proposed solution showed that proposed lightweight architecture based on microservices could deal with the larger amount of sensor data in the case of using MongoDB. On the other hand, the usage of SQLite database is not recommended due to the lower performances and test results
An Enhanced Adaptive Learning System based on Microservice Architecture
This study aims to enhance Adaptive Learning Systems (ALS) in Petroleum Sector in Egypt by using the Microservice Architecture and measure the impact of enhancing ALS by participating ALS users through a statistical study and questionnaire directed to them if they accept to apply the Cloud Computing Service “Microservices” to enhance the ALS performance, quality and cost value or not. The study also aims to confirm that there is a statistically significant relationship between ALS and Cloud Computing Service “Microservices” and prove the impact of enhancing the ALS by using Microservices in the cloud in Adaptive Learning in the Egyptian Petroleum Sector. After developing and strengthening the ALS using the cloud computing with the benefits of using Function as a Services “FaaS”, the functions are start rapidly in order to allow handling of individual requests by using the Microservice Architecture. This study includes a description of the statistic field study approach (The study’s community and its sample. As well as used tools, methodologies, and their validity and reliability. It also includes used procedures for tools codification and their application. Finally, statistical processes that were relied upon in study analysis)
Science Gateways with Embedded Ontology-based E-learning Support
Science gateways are widely utilised in a range of scientific disciplines to provide user-friendly access to complex distributed computing infrastructures. The traditional approach in science gateway development is to concentrate on this simplified resource access and provide scientists with a graphical user interface to conduct their experiments and visualise the results. However, as user communities behind these gateways are growing and opening their doors to less experienced scientists or even to the general public as “citizen scientists”, there is an emerging need to extend these gateways with training and learning support capabilities. This paper describes a novel approach showing how science gateways can be extended with embedded e-learning support using an ontology-based learning environment called Knowledge Repository Exchange and Learning (KREL). The paper also presents a prototype implementation of a science gateway for analysing earthquake data and demonstrates how the KREL can extend this gateway with ontology-based embedded e-learning support
The Knowledge Graph Construction in the Educational Domain: Take an Australian School Science Course as an Example
The evolution of the Internet technology and artificial intelligence has changed the ways we gain knowledge, which has expanded to every aspect of our lives. In recent years, Knowledge Graphs technology as one of the artificial intelligence techniques has been widely used in the educational domain. However, there are few studies dedicating the construction of knowledge graphs for K-10 education in Australia, and most of the existing studies only focus on at the theory level, and little research shows practical pipeline steps to complete the complex flow of constructing the educational knowledge graph. Apart from that, most studies focused on concept entities and their relations but ignored the features of concept entities and the relations between learning knowledge points and required learning outcomes. To overcome these shortages and provide the data foundation for the development of downstream research and applications in this educational domain, the construction processes of building a knowledge graph for Australian K-10 education were analyzed at the theory level and implemented in a practical way in this research. We took the Year 9 science course as a typical data source example fed to the proposed method called K10EDU-RCF-KG to construct this educational knowledge graph and to enrich the features of entities in the knowledge graph. In the construction pipeline, a variety of techniques were employed to complete the building process. Firstly, the POI and OCR techniques were applied to convert Word and PDF format files into text, followed by developing an educational resources management platform where the machine-readable text could be stored in a relational database management system. Secondly, we designed an architecture framework as the guidance of the construction pipeline. According to this architecture, the educational ontology was initially designed, and a backend microservice was developed to process the entity extraction and relation extraction by NLP-NER and probabilistic association rule mining algorithms, respectively. We also adopted the NLP-POS technique to find out the neighbor adjectives related to entitles to enrich features of these concept entitles. In addition, a subject dictionary was introduced during the refinement process of the knowledge graph, which reduced the data noise rate of the knowledge graph entities. Furthermore, the connections between learning outcome entities and topic knowledge point entities were directly connected, which provides a clear and efficient way to identify what corresponding learning objectives are related to the learning unit. Finally, a set of REST APIs for querying this educational knowledge graph were developed
LEAN DATA ENGINEERING. COMBINING STATE OF THE ART PRINCIPLES TO PROCESS DATA EFFICIENTLYS
The present work was developed during an internship, under Erasmus+ Traineeship
program, in Fieldwork Robotics, a Cambridge based company that develops robots to
operate in agricultural fields. They collect data from commercial greenhouses with sensors
and real sense cameras, as well as with gripper cameras placed in the robotic arms. This
data is recorded mainly in bag files, consisting of unstructured data, such as images and
semi-structured data, such as metadata associated with both the conditions where the
images were taken and information about the robot itself.
Data was uploaded, extracted, cleaned and labelled manually before being used to
train Artificial Intelligence (AI) algorithms to identify raspberries during the harvesting
process. The amount of available data quickly escalates with every trip to the fields, which
creates an ever-growing need for an automated process.
This problem was addressed via the creation of a data engineering platform encom-
passing a data lake, data warehouse and its needed processing capabilities. This platform
was created following a series of principles entitled Lean Data Engineering Principles
(LDEP), and the systems that follows them are called Lean Data Engineering Systems
(LDES). These principles urge to start with the end in mind: process incoming batch or
real-time data with no resource wasting, limiting the costs to the absolutely necessary for
the job completion, in other words to be as lean as possible.
The LDEP principles are a combination of state-of-the-art ideas stemming from several
fields, such as data engineering, software engineering and DevOps, leveraging cloud
technologies at its core.
The proposed custom-made solution enabled the company to scale its data operations,
being able to label images almost ten times faster while reducing over 99.9% of its associated
costs in comparison to the previous process. In addition, the data lifecycle time has been
reduced from weeks to hours while maintaining coherent data quality results, being able,
for instance, to correctly identify 94% of the labels in comparison to a human counterpart.Este trabalho foi desenvolvido durante um estágio no âmbito do programa Erasmus+
Traineeship, na Fieldwork Robotics, uma empresa sediada em Cambridge que desenvolve
robôs agrícolas. Estes robôs recolhem dados no terreno com sensores e câmeras real-
sense, localizados na estrutura de alumínio e nos pulsos dos braços robóticos. Os dados
recolhidos são ficheiros contendo dados não estruturados, tais como imagens, e dados semi-
-estruturados, associados às condições em que as imagens foram recolhidas. Originalmente,
o processo de tratamento dos dados recolhidos (upload, extração, limpeza e etiquetagem)
era feito de forma manual, sendo depois utilizados para treinar algoritmos de Inteligência
Artificial (IA) para identificar framboesas durante o processo de colheita.
Como a quantidade de dados aumentava substancialmente com cada ida ao terreno,
verificou-se uma necessidade crescente de um processo automatizado. Este problema foi
endereçado com a criação de uma plataforma de engenharia de dados, composta por um
data lake, uma data warehouse e o respetivo processamento, para movimentar os dados nas
diferentes etapas do processo. Esta plataforma foi criada seguindo uma série de princípios
intitulados Lean Data Engineering Principles (LDEP), sendo os sistemas que os seguem
intitulados de Lean Data Engineering Systems (LDES). Estes princípios incitam a começar
com o fim em mente: processar dados em batch ou em tempo real, sem desperdício de
recursos, limitando os custos ao absolutamente necessário para a concluir o trabalho, ou
seja, tornando-os o mais lean possível.
Os LDEP combinam vertentes do estado da arte em diversas áreas, tais como engenharia
de dados, engenharia de software, DevOps, tendo no seu cerne as tecnologias na cloud. O
novo processo permitiu à empresa escalar as suas operações de dados, tornando-se capaz
de etiquetar imagens quase 10× mais rápido e reduzindo em mais de 99,9% os custos
associados, quando comparado com o processo anterior. Adicionalmente, o ciclo de vida
dos dados foi reduzido de semanas para horas, mantendo uma qualidade equiparável, ao
ser capaz de identificar corretamente 94% das etiquetas em comparação com um homólogo
humano
Developing A Multi Application Real-Time Platform Using Cloud Serverless Technologies
Magycal Interactive is a software company that has produced a significant impact in
the Portuguese television sector. Magycal is Magycal Interactive’s cloud based server-side
framework that was developed to standardize common services (chats, polls, authentication)
provided by applications such as Viva Ronaldo, Secret Story e SPORT TV Digital
Hub.
As popularity and success of each application increases, Magycal becomes more technically
outdated. Its monolithic architecture, which previously allowed for easy development
is becoming a development bottleneck. Scaling the server is increasing in cost
as the platform grows, and developing updates and new features is more difficult since
services are becoming more tightly coupled with each release.
In this work, we propose an architectural shift for Magycal where we decouple services
for better scalability, development and deployment. After a study of existing architectural
options, we have concluded that the most suitable candidate architecture that meets
the demands of Magycal is the microservices architecture. To test our hypothesis and
determine the feasibility of the architectural change, we have selected a service of Magycal
that was implemented following a microservice-oriented design.
Our implementation was validated via API calls to ensure the modifications maintained
correct behavior of the framework. The new service had its implementation benchmarked
and compared to the corresponded Magycal existing service. We concluded that
the changes to Magycal yield a more robust framework with reduced costs of maintaining,
development and deployment.A Magycal Interactive é uma empresa de software que produz um impacto significativo
no setor televisivo português. Magycal é a plataforma servidor da empresa na cloud
desenvolvida para padronizar serviços comuns (canais de conversa, votações, autenticação)
fornecidos por aplicações como Viva Ronaldo, Secret Story e SPORT TV Digital
Hub.
À medida que a popularidade e o sucesso de cada aplicação aumenta, o Magycal tornase
tecnicamente mais desatualizado. A sua arquitetura monolítica, que anteriormente
permitia desenvolvimento fácil, torna-se um problema. O custo de escalabilidade do
servidor está a aumentar à medida que a plataforma cresce, e o desenvolvimento de
atualizações e novos recursos é mais difícil, pois os serviços tornam-se mais fortemente
acoplados a cada nova versão.
Neste trabalho, propomos uma mudança de arquitetura para o Magycal, onde dissociamos
os serviços para melhor escalabilidade, desenvolvimento e deployment. Após um
estudo das opções arquiteturais existentes, concluímos que a arquitetura candidata mais
adequada às necessidades do Magycal é a arquitetura de microserviços. Para testar nossa
hipótese e determinar a viabilidade da mudança arquitetural, selecionamos um serviço
do Magycal que foi implementados seguindo um design orientado a microsserviços.
A nossa implementação foi validada com chamadas API para garantir que as modificações
mantiveram o comportamento correto da estrutura. O novo serviço teve a sua
implementação medida e comparadas ao serviço existente no Magycal. Foi concluído que
as mudanças no Magycal produzem uma estrutura mais robusta, com custos reduzidos
de manutenção, desenvolvimento e implementação
Microservices applied to Web and mobile applications internship
Microservices is a software architecture that has seen an increase in popularity and use in recent years.
Due to its simplicity and ease of implementation it is nowadays the standard reference for web services.
This report focuses on the general concepts of microservices and their real-world application.
The report was divided into three main points: (a) general concepts of microservices, (b) facial and
emotion recognition applied to an adaptive user interface using microservices and (c) restructure an
existing web application following a microservices architecture.
The first point, (a) general concepts of microservices, introduces the definition of a microservice and
what are the main traits that a microservice should have. The second point, (b) describes the
implementation of a mobile application with an adaptive user interface that uses microservices for facial
and emotional recognition. In this point it is possible to understand how to consume microservices
developed by third parties. The third point, (c) describes the restructuring of an existing web application,
through a microservices architecture, exemplifying the concepts mentioned in point (a) and small excerpts
of code from an open-source project to demonstrate its real-world code usage.Micro serviços é uma arquitetura de software que cresceu em popularidade e utilização nos anos mais
recentes. Devido à sua simplicidade e facilidade de implementação é hoje em dia o padrão referência para
serviços web. Este relatório foca os conceitos gerais de micro serviços e a sua aplicação num âmbito
profissional.
O relatório foi dividido em 3 pontos principais: (a) conceitos gerais de micro serviços, (b)
reconhecimento facial e de emoções aplicado a uma interface adaptativa de utilizador utilizando micro
serviços e (c) reestruturar uma aplicação web existente seguindo uma arquitetura de micro serviços.
O primeiro ponto, o (a) conceitos gerais de micro serviços, introduz a definição de um micro serviço e
quais as principais características que um micro serviço deve obedecer. No segundo ponto, (b) descreve-se
a implementação de uma aplicação mobile com uma interface adaptativa de utilizador recorrendo a micro
serviços para reconhecimento facial e de emoções. Neste ponto é possível compreender como consumir
micro serviços desenvolvidos por terceiros. No terceiro ponto, (c) descreve-se a reestruturação de uma
aplicação web existente, através de uma arquitetura de micro serviços, exemplificando os conceitos
mencionados no ponto (a) e pequenos excertos de código de um projecto open-source para demonstrar a
sua utilização
ICSEA 2021: the sixteenth international conference on software engineering advances
The Sixteenth International Conference on Software Engineering Advances (ICSEA 2021), held on October 3 - 7, 2021 in Barcelona, Spain, continued a series of events covering a broad spectrum of software-related topics.
The conference covered fundamentals on designing, implementing, testing, validating and maintaining various kinds of software. The tracks treated the topics from theory to practice, in terms of methodologies, design, implementation, testing, use cases, tools, and lessons learnt. The conference topics covered classical and advanced methodologies, open source, agile software, as well as software deployment and software economics and education.
The conference had the following tracks:
Advances in fundamentals for software development
Advanced mechanisms for software development
Advanced design tools for developing software
Software engineering for service computing (SOA and Cloud)
Advanced facilities for accessing software
Software performance
Software security, privacy, safeness
Advances in software testing
Specialized software advanced applications
Web Accessibility
Open source software
Agile and Lean approaches in software engineering
Software deployment and maintenance
Software engineering techniques, metrics, and formalisms
Software economics, adoption, and education
Business technology
Improving productivity in research on software engineering
Trends and achievements
Similar to the previous edition, this event continued to be very competitive in its selection process and very well perceived by the international software engineering community. As such, it is attracting excellent contributions and active participation from all over the world. We were very pleased to receive a large amount of top quality contributions.
We take here the opportunity to warmly thank all the members of the ICSEA 2021 technical program committee as well as the numerous reviewers. The creation of such a broad and high quality conference program would not have been possible without their involvement. We also kindly thank all the authors that dedicated much of their time and efforts to contribute to the ICSEA 2021. We truly believe that thanks to all these efforts, the final conference program consists of top quality contributions.
This event could also not have been a reality without the support of many individuals, organizations and sponsors. We also gratefully thank the members of the ICSEA 2021 organizing committee for their help in handling the logistics and for their work that is making this professional meeting a success.
We hope the ICSEA 2021 was a successful international forum for the exchange of ideas and results between academia and industry and to promote further progress in software engineering research
- …