Research and Development


Interest Areas: Software Engineering, Formal Methods, Domain Specific Languages, Compilers, Web development, Data Structures, AI applied to Software Engineering

ORCID:

https://orcid.org/0000-0002-9994-4620

About my current local of work: Unidade Acadêmica de Sistemas e Computação

During my Master and PhD, I worked in the Software Reliability Group (SRG). When I moved to Campina Grande, I also became a member of the Software Practices Laboratory (SPLab).

My Academical Unit (or Department) has been pioneer in establishing in Brasil a computer science course, in 1968 and the installation of the first computer in the North-Northeast of Brasil (and IBM 1130). For more detail please refer to this page. After 2005, it has been incorporated to the Centre of Electrical Engineering and Informatics (or CEEI for short) jointly with the Electrical Engineering Department.

Nowadays, my department is composed by 40 professors, 11 technical staff and offers Graduation, Master and PhD courses on Computer Science.

In terms of Research and Development, there are laboratories focused on several knowledge areas.

The CEEI also has the first EMBRAPII (Associação Brasileira de Pesquisa e Inovação Industrial) unit of the Northeast of Brazil. The main intention of EMBRAPII is to provide partial investments for research institutes (or universities) of technology focused on evolving the Brazilian industry. Since 2013, our EMBRAPII unit has accumulated more than 130 projects and 70 partners from industry. Some of them are: Petrobras (Brazilian Petrol Company), HUAWEI, AOC, LG, Ingenico, Hewlett-Packard, Dell, Motorola, Samsung, Le Novo, Xiaomi, Toshiba Medical, Epson, Gnatus, Bematech, Fiat Chrysler, Siemens, VTex, etc.

My PhD (finished in 2009) was focused on SoftwareEngineering/Formal Methods, specifically in the formalisms CSP (Concurrent Sequential Process) and Z, which I used to investigate ways to avoid the state space explosion problem in CPS-Z specifications by using data abstraction. After 2013 I have concentrated my efforts into projects with Industry, bringing real problems and private resources to the Academy. You can findo more information about my participation in projects as follows.

Projects with Government and Public Companies (Participations)

Systematic and Rigorous Development for Avionic Systems (2012 - 2014). Coordinator: Alexandre Cabral Mota. Participants: Augusto Cesar Alves Sampaio, Juliano Manabu Iyoda, Adalberto Cajueiro de Farias. Description: This project was aimed at apply testing techniques, formal methods and safety analysis in avionic systems. The mais challenge was to promote theoretical and practical advances for avionic industry and associated research areas, focused on producing knowledge to allow high quality development of avionic systems, where correctness and safety with lower costs. This project was a demand of EMBRAER (The Brazilian Avionic Industry) and considered all required standards such as FAR 25.1309 (Federal Aviation Regulations) and ARP 4754, 4761 (Aerospace Recommended Practice).

COMPASS Comprehensive Modelling for Advanced Systems of Systems (2011 - 2014). Coordinator: Alexandre Cabral Mota. Participants: Augusto Cesar Alves Sampaio (Brazilian side Coordinator), Juliano Manabu Iyoda, Marcio Lopes Cornelio, Adalberto Cajueiro de Farias. Description: The European COMPASS project augmented existing industry tools and practice with an underlying modelling language in which Systems of Systems (SoS) architectures and contracts can be expressed. A formal semantic foundation the first to be developed specifically for SoS engineering will enable this language to support analysis of global SoS properties. The language and methods will be supported by an open, extendible tools platform with integrated prototype plugins for model construction, dynamic analysis by simulation and test automation, static analysis by model checking and proof, and links to an established architectural modelling language (SysML). These strengthened foundations and tools will support enhanced methods guidelines that help users embed this new technology in industrial SoS practice. Technical advances in COMPASS are focussed on industry needs evaluated through substantial industry led case studies in three diverse and complementary areas. These were augmented by challenge problems solicited from a range of SoS stakeholders and developer organisations through a special interest group. The open platform, tools plugins, semantics, development guidelines, industry case study experience and challenge problems will ensure that COMPASS's outputs can be readily exploited by SoS developers and stakeholders as well as in future research and development. The resulting tool of this project is an Eclipse based environment with support for development of Systems of Systems.

Safely analysis based on Models for Autonomous Systems (2009 - 2011). Coordinator: Alexandre Cabral Mota. Participants: Augusto Cesar Alves Sampaio (Brazilian side Coordinator), Juliano Manabu Iyoda, Adalberto Cajueiro de Farias. Description: cooperation with the AEB (Agencia Espacial Brasileira - Brazilian Space Agency) to apply Formal Methods and Reliability techniques to aerospace systems. The mais focus was to define formal modeling strategies and analysis of functional and non-funcional requirements, where high quality and correctness and cost reduction are the aim.


Projects/Contracts with Private Companies (Coordinator/Responsible for)

Template API Generator (2022- 2023). Coordinator: Adalberto Cajueiro de Farias. Participants: Fabio Morais, Tiago Massoni, Wilkerson Andrade. Description: Any application developed for Dell is a service (normally a Web API) that must satisfy several requirements (code, safety, authorization, healthy conditions, etc) in the pipeline phase (before being deployed). Besides that, as applications must be used by other applications, they must (desirably) be auto contained, in the sense that ir must provide all necessary information to be used as well as provide information about used resources (memory, CPUs, storage, etc. so its is possible to optimize the resources when the application is running). The solution is to develop a platform that allows one to monitor applications as well as to provide Web APIs self contained. This allows one to optimize application resources on demand (ex. increase/decrease memory) and avoid interactions between teams to explain how to use a specific API. The project still has the aim of generating Web API automatically satisfying the several criteria required by Dell do deploy an application.

DBDevOps Tool (2021- 2022). Coordinator: Adalberto Cajueiro de Farias. Participants: Carlos Pires, Maxwell Oliveira. Description: This project was a Research and Development cooperation with Dell to provide a Service Platform and Data (SPnD) web portal to provide a new tool for finding differences between database schemas and point out them in an intuitive UI. The several environments (production and non-production) used by Dell demands a constant attention by architects and database administrators. Applications change constantly its structures (business objects and databases) and their evolution between environments must be consistent. A way to verify conformance between different schemas is to extract all its internal structures (tables, sequences, procedures, triggers, views, functions, packages, types) and compare them. This requires a high expertise in preparing SQL queries, execute them and compare results of different databases (or different snapshots of a same database). A complete comparison between two snapshots requires at least two hours of an expert. We developed a tool (Web based solution) which is able to extract and compare database snapshots (containing more than 8,000 objects) in less than 2 minutes, and show differences on demand, generate a differences report (in PDF format) and automatically manage snapshots of a same database (automatic and flexible schedule). This last feature allows one to generate a history of changes in a same database along time. The tools is being used by the Dell DEVOPS team.

Omnichannel Context Store (2021- 2022). Coordinator: Adalberto Cajueiro de Farias. Participants: Claudio Campelo, Everton Leandro, Melina Mongiovi. Description: This project was a Research and Development cooperation with Dell to provide a new solution for handling contextual information as a centralized caching mechanism for the several applications of the Dell contact center team. Besides begin fast, a context store needs to be scalable so that many applications that handle contextual information must be able to use as a centralized and efficient caching infrastructure. In this way, different applications of the contact center (using different channels such as phone, email, chatbot, etc.) can be able to find the information efficiently. Although the old solution used by Dell has a high performance, it could not be used by different applications. We have developed a caching mechanism based on REDIS that allows complex queries to be executed while still being very fast (less than 400ms for complex queries). We developed a new modeling for contextual data, investigated extra plugins for REDIS and designed tests (up to 1,000,000) to assure performance.

Digital Services API Portal (2020- 2022). Coordinator: Adalberto Cajueiro de Farias. Participants: Carlos Pires, Wilkerson Andrade. Description: This project was a Research and Development cooperation with Dell to provide a Service Platform and Data (SPnD) web portal to provide a unique system to handle onboardings by Dell. The Dell company has a wide SaaS infrastructure to accommodate services so they become available to users and other applications. The process to use a new service was completely performed by email and could not be scaled for the several customers. A complete flow to use a service normally took 3 weeks to finish and required many interactions between Dell and the customer. The solution was to provide a Web portal where customers could be able to see and choose the service to be used, choose them, generate a new onbarding (service demand), check its processing status and access dashboards with continuous information. Besides reducing the complete flow for an onboarding, the SPnD portal made the process completely automatic (requiring only approval by someone from Dell), scalable and user friendly (a metaphor of a market place where services can be put into a bucket).

TermMonitor (2016 - 2017). Coordinator: Adalberto Cajueiro de Farias. Participants: Claudio Campelo. Description: The first contribution of this project was the development of a new support for remote management of Media Campaign on terminals. Besides being able to execute local advertisements, some terminals are able to communicate with a centralized service that allows software management in terminals. This ecosystem provides a high level control of campaigns so that hey can be created/deleted/configured using a Web system and send automatically to terminals. The second contribution of this project was the remote management of terminals possibly in different locations of the world, where strategical information about volume of transactions and errors were used to generate alerts and support decisions at business level. For example, any Ingenico client could be able to visualize information about transactions in its terminals (individually or by groups), update software version and send a maintenance request based on the error report. The core challenge of this project was to interact with Ingestate (centralized solution for remote management of terminals) to create new campaigns exhibitable in terminals and to obtain relevant information uploaded by terminals, apply descriptive analysis and build intuitive dashboards in a new Web system.

FlexTrans - Infrastructure for implementing flexible transactions in Ingenico terminals (2015 - 2017). Coordinator: Adalberto Cajueiro de Farias. Participants: Wilkerson de Lucena Andrade, Dalton Guerrero. Description: The potencial scenarios for using terminals have increased with connectivity/communication. Simpler terminals (based on Telium II) are able to execute the complete validation of a payment flow. However, they are not able to execute complex applications. The solution was to develop an automatic communication layer between terminals and mobile devices (Android) via Bluetooth. In this solution, mobile devices run sophisticated applications and interact automatically with terminals for achieving payments. More complex terminals (based on Telium IV) have a graphical display, and support for executing both native and web applications. The second phase of this project was to develop a proof of concept of a Web application whose the entire UI could be executed in Android ou in Telium IV terminals. The only difference is that Android uses a communication layer between a mobile device and the terminal, while in a Telium IV terminal the UI uses an internal layer (in Javascript) to access native functionalities to execute the payment. The core challenge of this project was to identify architectures and design patterns for integrating heterogeneous ecosystems (mobile and terminals) and using Web technologies to allow modern and sophisticated web applications to use payment functionalities of terminals.

Smart-TCE (2013 - 2015). Coordinator: Adalberto Cajueiro de Farias. Participants: Wilkerson de Lucena Andrade, Leandro Balby, Nazareno Andrade, Andrey Elísio Monteiro Brito. Description: Investigation of techniques for storage and visualization of data of HP computers in Vertica. Data are pushed automatically by HP computers to the cloud and moved to Vertica to allow application of descriptive analysis techniques and visualization. The core challenge was to apply descriptive analysis techniques to a large amount of data to show statistics and graphs to the business level. These information allowed, for example, HP to choose the best HD or battery suppliers due to the low tax of errors.


Projects/Contracts with Private Companies (Participates in)

Content Management Interface (2022- 2023). Coordinator: Carlos Pires. Participants: Adalberto Cajueiro de Farias, Maxwell Oliveira. Description: Dell uses the Oracle Webcenter Content to manage documents used internally. Besides providing a poor user interface, each update of OWC has the overhead of customizing all UI templates again. The core challenge of this project is to build a new UI (Web application) with a new user experience for manipulating documents inside OWC, without being affected by new releases of OWC.

Digital Salesforce Performance Analysis (2022- 2023). Coordinator: Everton Leandro. Participants: Adalberto Cajueiro de Farias, Melina Mongiovi. Description: The Salesforce solution used by salesforce journey. The core challenge of this project is to investigate the data sources used by Salesforce and provide a Web system that shows indicators/metrics of performance for a complete Journey in real time.

COR - Centro de Operação Remota (Remote Operation Center) (2018- 2019). Coordinator: Edmar Candeia. Participants: Adalberto Cajueiro de Farias, Claudio Campelo. Description: This project was a Research and Development cooperation with Siemens to provide a Web system able to calculate values to be paid by each part of a grid system. A big factory, for example, is an example of a grid system, where the whole supplied power is consumed by different sub-parts. Based on records of power consumption by each element of the grid, its respective percentage was calculated accordingly (following internal rules of Siemens).

ARIC - Reuse Analysis and Component Integration for ePT (2017- 2018). Coordinator: Carlos Pires. Participants: Adalberto Cajueiro de Farias, Claudio Campelo. Description: The main challenge of this project was to understand the model used by FIAT Chrysler to evaluate the possibilities of using electrical components in projects of electrical and hybrids automobiles. Position, dimensions, etc are parameters that have impacts in performance and costs. The implemented solution was a Web software that allowed engineers to use Pugh Matrix to choose the best configuration of Electrical Power Train components in a car platform at project level.

Dev Telium (2016 - 2017). Coordinator: Patricia Machado. Participants: Wilkerson de Lucena Andrade, Adalberto Cajueiro de Farias. Description: The focus os this project was to validate applications developed for terminals based on Telium II. The validation is based on static analysis and tests to avoid crashes and errors during real executions in terminals, as well as improving the performance of applications by reducing memory consumption. The core challenge was to understand the real problems occurred in code execution of terminals, using techniques/tools for detection and defining code standards to be adopted by developers. The result was a tool, patterns and standards to be adopted by Ingenico for development of healthy applications for Telium II devices/terminals.

Investigation of new Scenarios for Using Ingenico terminals (2014 - 2014). Coordinator: Wilkerson de Lucena Andrade. Participants: Adalberto Cajueiro de Farias, Patricia Machado, Nazareno Andrade, Dalton Guerrero. Description: Investigation of new scenarios for using Ingenico terminals. Based on the many families of terminals and their resources (operating systems, etc) the aim was to find new scenarios for using the terminals as well as to improve the safety of code execution inside them. The core challenge of this project was to understand the potential features of terminals which applications scenarios could be explored by Ingenico to increase the interest of clients by its products (besides transactions).

SAFF - Statistical Analysis of files related to faults in Ingenico Telium terminals (2014 - 2014). Coordinator: Wilkerson de Lucena Andrade. Participants: Adalberto Cajueiro de Farias, Alexandre Mota, Jorge Abrantes. Description: File-based fault analysis of Ingenico Terminals. Through accessing files of terminals, it is possible to find detailed information of faults and errors, so that recommendation for maintenance can be provided to the several maintenance centers in Latim America. The core challenge was to understand and interpret the error files according to the Ingenico standards and provide a mapping mechanism to the suitable maintenance report in order to indicate to the repair partners the correct sequence of maintenance actions.

Component-based development for Contactless and Biometric Identification (2013 - 2013). Coordinator: Wilkerson de Lucena Andrade. Participants: Adalberto Cajueiro de Farias, Patrícia Machado, Dalton Guerrero. Description: Development of applications for using contactless and biometric identification in Ingenico terminals (machines for finance transactions). The core challenge was to understand the development model and SDK of transaction machines and how to use the several features in embedded software.


Short CV:

    • 2010 - Current - Associate Professor at Universidade Federal de Campina Grande, Brazil.

    • 2009 - 2010 - Assistant Professor at Universidade Federal Rural de Pernambuco

    • 2008 - 2009 - Assistant Professor at Instituto Federal de Pernambuco

    • 2004-2009 - PhD student at Centro de Informática, Universidade Federal de Pernambuco, Brazil. Participation in Marktoberdorf Summerschool 2006.

    • 2001 - 2007 - Professor at Faculdade Integrada do Recife

    • 2001-2003 - Master student at Centro de Informática, Universidade Federal de Pernambuco, Brazil

    • 1999-2000 - Software Engineer at CESAR, Recife, Brazil.

    • 1995-2000 - Undergraduate student at Centro de Informática, Universidade Federal de Pernambuco, Brazil.

For a Lattes version of my CV, please click here.