Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Tópicos
de interesse
Detalhes

Detalhes

  • Nome

    Tiago Boldt Sousa
  • Cargo

    Investigador Colaborador Externo
  • Desde

    01 outubro 2011
Publicações

2022

A Survey on the Adoption of Patterns for Engineering Software for the Cloud

Autores
Sousa, TB; Ferreira, HS; Correia, FF;

Publicação
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING

Abstract
This work takes as a starting point a collection of patterns for engineering software for the cloud and tries to find how they are regarded and adopted by professionals. Existing literature assesses the adoption of cloud computing with a focus on business and technological aspects and falls short in grasping a holistic view of the underlying approaches. Other authors delve into how independent patterns can be discovered (mined) and verified, but do not provide insights on their adoption. We investigate (1) the relevance of the patterns for professional software developers, (2) the extent to which product and company characteristics influence their adoption, and (3) how adopting some patterns might correlate with the likelihood of adopting others. For this purpose, we survey practitioners using an online questionnaire (n = 102). Among other findings, we conclude that most companies use these patterns, with the overwhelming majority (97 percent) using at least one. We observe that the mean pattern adoption tends to increase as companies mature, namely when varying the product operation complexity, active monthly users, and company size. Finally, we search for correlations in the adoption of specific patterns and attempt to infer causation, providing further clues on how some practices depend or influence the adoption of others. We conclude that the adoption of some practices correlates with specific company and product characteristics, and find relationships between the patterns that were not covered by the original pattern language and which might deserve further investigation.

2017

Engineering Software for the Cloud: Messaging Systems and Logging

Autores
Sousa, TB; Ferreira, HS; Correia, FF; Aguiar, A;

Publicação
Proceedings of the 22nd European Conference on Pattern Languages of Programs, EuroPLoP 2017, Irsee, Germany, July 12-16, 2017

Abstract
Software business continues to expand globally, highly motivated by the reachability of the Internet and possibilities of Cloud Computing. While widely adopted, development for the cloud has some intrinsic properties to it, making it complex to any newcomer. This research is capturing those intricacies using a pattern catalog, with this paper contributing with three of those patterns: Messaging System, a message bus for abstracting service placement in a cluster and orchestrating messages between multiple services; Preemptive Logging, a design principle where services and servers continuously output relevant information to log files, making them available for later debugging failures; and Log Aggregation, a technique to aggregate logs from multiple services and servers in a centralized location, which indexes and provides them in a queryable, user friendly format. These patterns are useful for anyone designing software for the cloud, either to guide or validate their design decisions. © 2017 Copyright is held by the owner/author(s).

2014

A testing and certification methodology for an open Ambient-Assisted Living ecosystem

Autores
Faria, JP; Lima, B; Sousa, TB; Martins, A;

Publicação
International Journal of E-Health and Medical Communications

Abstract
To cope with the needs raised by the demographic changes in our society, several Ambient-Assisted Living (AAL) technologies have emerged in recent years, but those 'first offers' are often monolithic, incompatible and thus expensive and potentially not sustainable. The AAL4ALL project aims at improving that situation through the development of an open ecosystem of interoperable AAL components (products and services), tied together by an integration infrastructure, comprising a message-queue based service bus and gateways bridging the communication with devices. To that end, the project encompasses the specification of interfaces and requirements for interoperable components, against which candidates can be tested and certified before entering the ecosystem. This paper proposes a testing and certification methodology for such an ecosystem. Besides fulfilling specified pre-requisites, candidate components must pass unit tests that check their conformance with interface specifications and integration tests that check their semantic interoperability with other components in specified orchestration scenarios. Copyright © 2014, IGI Global.

2014

Collaborative Web Platform for UNIX-Based Big Data Processing

Autores
Castro, O; Ferreira, HS; Sousa, TB;

Publicação
COOPERATIVE DESIGN, VISUALIZATION, AND ENGINEERING, CDVE 2014

Abstract
UNIX-based operative systems were always empowered by scriptable shell interfaces, with a core set of powerful tools to perform manipulation over files and data streams. However those tools can be difficult to manage at the hands of a non-expert programmer. This paper proposes the creation of a Collaborative Web Platform to easily create workflows using common UNIX command line tools for processing Big Data through a collaborative web GUI.

2013

A testing and certification methodology for an Ambient-Assisted Living ecosystem

Autores
Faria, JP; Lima, B; Sousa, TB; Martins, A;

Publicação
2013 IEEE 15th International Conference on e-Health Networking, Applications and Services, Healthcom 2013

Abstract
To cope with the needs raised by the demographic changes in our society, several Ambient-Assisted Living (AAL) technologies have emerged in recent years, but those 'first offers' are often monolithic, incompatible and thus expensive and potentially not sustainable. The AAL4ALL project aims at improving that situation through the development of an open ecosystem of interoperable products and services for AAL, tied together via an integration infrastructure. To that end, the project encompasses the specification of a set of reference models and requirements for interoperable products and services, against which candidate products and services can be tested and certified, and subsequently integrated as components of the ecosystem. This paper proposes a testing and certification methodology for such an ecosystem. © 2013 IEEE.