
Ricardo Massa Ferreira Lima- Federal University of Pernambuco
Ricardo Massa Ferreira Lima
- Federal University of Pernambuco
About
127
Publications
13,854
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
801
Citations
Current institution
Publications
Publications (127)
Este Guia Didático-Pedagógico é destinado para que você, professor(a), possa usufruir das potencialidades do Recurso Educacional Digital (RED) ‘Olimpo vs. Slimes’ e explorar os conhecimentos sobre a noção dos fatores que alteram a velocidade das reações (Cinética Química), promovendo o engajamento de seus estudantes para uma aprendizagem ativa.
O Equilibrium é um jogo do tipo passatempo, gênero casual no qual o jogador realiza construções no planeta para tentar desenvolvê-lo de maneira sustentável, mas buscando obter lucros com esses recursos. Este RED foi concebido para auxiliar no ensino e na aprendizagem de conteúdos sobre Química Ambiental na área de Ciências da Natureza e suas Tecnol...
SAV é um jogo voltado para a aprendizagem de funções trigonométricas na área de Matemática e suas Tecnologias para o Ensino Médio. O RED foi inspirado no estilo de jogo Tower Defense e aborda conteúdos de funções trigonométricas seno e cosseno por meio de suas representações gráficas e algébricas e dos modos de interação do usuário com coeficientes...
VEX é um jogo voltado para a aprendizagem de processos de obtenção da medida do volume de sólidos geométricos regulares na área de Matemática e suas Tecnologias para o Ensino Médio. Nele, o usuário atua como funcionário de uma empresa de brinquedos que produz suas peças em formato de sólidos geométricos e deve organizá-los em caixas de transporte,...
BRT Espacial é um jogo voltado para a aprendizagem de notação científica na área de Matemática e suas Tecnologias no Ensino Médio. Nele, o jogador assume o papel de um motorista de um BRT Espacial e deve transportar as pessoas pela galáxia até seus destinos. Este Guia Didático-Pedagógico foi elaborado para que você, professor(a), possa usufruir das...
Makrinós – Explorando e Separando Misturas é um jogo do tipo gerenciamento. Este RED foi concebido para auxiliar os usuários no ensino e na aprendizagem do conteúdo referente à separação de misturas na área de Ciências da Natureza e suas Tecnologias (BRASIL, 2017). Nele, o estudante administra a retirada de materiais misturados de minas e a separaç...
O Recurso Educacional Digital (RED) Alquímico é um jogo do tipo puzzle que promove a combinação de elementos químicos. Ele foi concebido para auxiliar os usuários na aprendizagem do conteúdo sobre reações orgânicas e formações de compostos utilizados
no cotidiano, nas indústrias e na medicina estudando na área de Ciências da Natureza e suas Tecnolo...
Este Guia Didático-Pedagógico foi elaborado para que você, professor(a), possa usufruir das potencialidades do Recurso Educacional Digital (RED) Trevo S.A. e explorar os conhecimentos básicos, promovendo o engajamento de seus usuários para uma aprendizagem dinâmica.
Este Guia Didático-Pedagógico foi elaborado para instrumentar professores e professoras na apropriação e na utilização do Recurso Educacional Digital (RED) Enigmas de Yucatán.
O Recurso Educacional Digital (RED) RadioLab é um jogo do tipo gerenciamento voltado para mediar a aprendizagem de conceitos, noções e contextos relacionados aos fenômenos das radiações e suas origens na área de Ciências da Natureza e suas Tecnologias (BRASIL, 2020).
‘Função Resgate’ é um jogo voltado para a aprendizagem de funções matemáticas na área de Matemática e suas Tecnologias para o Ensino Médio. Nele, o usuário tem o poder de escolher heróis, os ‘peixorros’, metade peixe e meio cachorro, fazendo referência ao “melhor amigo do homem”. O objetivo é salvar vidas marinhas que estão presas em lixos provenie...
Este Guia Didático-Pedagógico é para que você, professor(a), possa usufruir das potencialidades do Recurso Educacional Digital (RED) ‘Função Resgate’ e explorar os conhecimentos básicos de funções matemáticas.
Context: The blended learning (or b-learning), has grown over the years. However, few studies have been carried out on the effectiveness of entrepreneurial training in the blended modality. Objective: The general objective of the study is to evaluate the effectiveness of the learning experience in the blended modality experienced by adults for the...
The world’s population growth and climate changes increase the demand for high-quality water. This fact forces humankind to create new water management strategies. Smart cities have successfully applied the Internet of Things (IoT) technology in many sectors. Moreover, Complex Event Processing (CEP) can analyze and process large data sets produced...
The consequences for a company losing its data or having its IT system disrupted are severe and can impact negatively on business operations. It can also cause customer
dissatisfaction and subsequent revenue loss. In a competitive global market, companies have been adopting disaster recovery (DR) strategies as an attempt to keep IT systems operatio...
Melhoria da Segurança de Servidores em Ambientes de Data Center: Uma Metodologia Multiperspectiva para Avaliar a Maturidade das Configurações de Segurança.
Registro do código da plataforma https://redu.digital/
Service-Oriented Architecture (SOA) is a paradigm for software development based on the concept of service. In SOA, the Quality of Services (QoS) impacts on the status of a business and on the relationship between service customers and providers. As customers expect to receive services with quality no less than they have paid for, it is usual to st...
Quality attributes play a very relevant role in the
service-oriented computing world, as they allow distinguishing
between functionally equivalent services. In fact, these attributes
have an impact in various activities related to the life-cycle of
service-based applications (SBAs), starting from service discovery
and permeating other activities su...
While digital innovations are transforming people's personal lives like never before, there are facets of corporate management that are still running behind the digital era. For instance, are there new ways through which a manager could ensure that employees are aligned with the company's strategy? This chapter describes a design approach and the i...
It is claimed in the literature that the contracts of a system present crosscutting structure during its realization. In this context, there has been attempts to improve separation of crosscutting contracts, e.g. by aspect-oriented programming and design by contract languages, but none give programmers textual separation of contracts/specifications...
Aspect-oriented programming (AOP) is a popular technique for modularizing crosscutting concerns. In this context, researchers have found that the realization of design by contract (DbC) is crosscutting and fares better when modularized by AOP. However, previous efforts aimed at supporting crosscutting contract modularity might actually compromise t...
Aspect-oriented programming (AOP) is a popular technique for modularizing crosscutting concerns. In this context, researchers have found that the realization of design by contract (DbC) is crosscutting and fares better when modularized by AOP. However, previous efforts aimed at supporting crosscutting contract modularity might actually compromise t...
Representing design decisions for complex software systems, tracing them to code, and enforcing them throughout the lifecycle are pressing concerns for software architects and developers. To be of practical use, specification and modeling languages for ...
It has been argued that traditional workflows lack the flexibility to cope with complex and changing environments found in several business domains. The declarative approach surged with the aim of enabling more flexible business process management systems. Processes are designed in terms of activities and rules that constrain their execution. As su...
Although it is assumed that the implementation of design by contract is better modularized by means of aspect-oriented (AO) programming, there is no empirical evidence on the effectiveness of AO for modularizing non-trivial design by contract code in realistic development scenarios. This paper reports a quantitative and qualitative case study that...
Declarative business process modeling is a flexible approach to business process management in which participants can decide the order in which activities are performed. Business rules are employed to determine restrictions and obligations that must be satisfied during execution time. In this way, complex control-flows are simplified and participan...
Information hiding controls which parts of a module are visible to different clients. This aids maintenance because hidden implementation details can be changed without affecting clients. The benefits of information hiding apply not only to code but also to other artifacts, such as specifications. In this demonstration we show how our client-aware...
Declarative Business Processes offer more flexibility to business processes by the use of business rules. Such business rules describe what must or must not be done during the process execution, but do not prescribe how. To fully experience the benefits of this modeling approach, companies need a rule engine capable of checking the rules and guidin...
Customer requirements and local legislation are forcing companies to provide green products and services. Such driving forces have resulted in the study of green supply chains (SCs), which are SCs that take into account factors that may cause positive or negative environmental impacts. However, some environmental indicators are often at odds with b...
Aspect-oriented programming (AOP) is a popular technique for modularizing crosscutting concerns. However, constructs aimed at supporting crosscutting modularity may break class modularity. For example, to understand a method call may require a whole-program analysis to determine what advice applies and what that advice does. Moreover, in AspectJ, a...
According to the Object Management Group, a rule is a proposition that is a claim of obligation or of necessity. The concept of rule is usually employed in the context of business process to manage companies operations. While a workflow is an explicit specification of tasks' execution flow, business rules only impose restrictions on the tasks' exec...
Declarative business process models focus on modeling what must be done but do not determine how. The existing engine for controlling the execution of declarative processes uses automata-based model checking. Unfortunately, the well-known state space explosion problem limits the ability to explore large processes through automata-based approaches....
The subject of business-IT alignment has increasingly attracted the attention of executives in the past decade. The purpose is to leverage the potential of IT to improve business performance. This goal can be achieved by developing mechanisms to enhance the communication between business and IT. In the same track, its essential to apply methods to...
To address the need for evaluation techniques for complex business processes, also known as workflows, this paper proposes an approach based on generalized stochastic Petri nets (GSPNs). We review ten related approaches published in the last fifteen years and compare them to our approach using a wide range of criteria. On the basis of this evaluati...
There is an increasing need to monitor quality attributes (e.g., perfor-
mance and availability) in SOA environments. Existing approaches to monitor
these attributes (commonly referred to as QoS attributes) do not allow reconfigu-
ration while services are in execution. This paper presents a generic QoS-aware
SOA mechanism able to monitor runtime qu...
Scheduling is an important tool for optimizing the performance of parallel systems. It aims at reducing the completion time of parallel applications by properly allocating the tasks to the processors. This work proposes a novel scheduling algorithm to parallelize tasks with dependence restrictions. The communication costs between processors and com...
In this paper we describe the application of process mining techniques to analyze a software development process. Software engineering practitioners often conduct quality auditing of the development process to assure conformance with organizational standards. Despite some works have explored process mining techniques for the conformance analysis of...
Design by Contract (DbC) is a technique for developing and improving functional software correctness through definition of "contracts" between client classes and their suppliers. Such contracts are enforced during runtime and if any of them is violated a runtime error should occur. Runtime assertions checkers (RACs) are a well-known technique that...
Despite the advances on business rules theory and the increasing number of large enterprises doing efforts to model their
business rules, there is still a lack for a meaningful integration between business analysis and process modeling activities.
The event-driven paradigm has been shown to be an effective solution for the implementation of process...
The construction of large scale parallel and concurrent ap-plications is one of the greatest challenges faced by soft-ware engineers nowadays. Modern programming models for concurrency including libraries implementing high level ab-stractions such as JCSP lead to tangled and scattered con-currency code. As such, this paper outlines our initial effo...
The Service Oriented Architecture (SOA) paradigm enables the organizations to compose complex business applications from distributed services, supported by third party partners. Usually, Service Level Agreements (SLA) are used to establish the requirements between customers and providers. Efforts to predict the quality of SOA transactions are justi...
Although It is assumed that the implementation of design by contract is better modularized by means of aspect-oriented (AO) programming there is no empirical evidence on the effectiveness of AO for modularizing non-trivial design by contract code in well-understood modularity attributes This paper reports a quantitative case study of the adequacy o...
The design and management of software development processes is essential to reduce costs and improve the quality of software products. The execution of such processes is usually monitored to register important information about the dynamic behavior of the software development process. As a result, a huge amount of information is stored in the datab...
There are numerous mechanisms for modularizing design by contract at the source code level. Three mechanisms have been the main focus of atten-tion, metadata annotations, pointcuts and advice. The latter two are well-known aspect-oriented programming mechanisms, and according to the literature, fare better in achieving contract modularization. Howe...
Embedded systems designers need to verify their design choices to find the proper platform and software that satisfy a given set of requirements. In this context, it is essential to adopt formal-based techniques to evaluate the impact of design choices on system requirements. To be useful, such techniques must produce accurate results with minimal...
In software industry, project managers usually rely on their previous experience to estimate the number men/hours required for each software project. The accuracy of such estimates is a key factor for the efficient application of human resources. Machine learning techniques such as radial basis function (RBF) neural networks, multi-layer perceptron...
The Service-Oriented Architecture (SOA) has become a unifying technical architecture that may be embodied through Web Service technologies. Predicting the variable behavior of SOA systems can mean a way to improve the quality of the business transactions. This paper proposes a simulation modeling approach based on stochastic Petri nets to estimate...
Real problem simulations involving physic phenomena can demand too much execution time. To improve the performance of these simulations it is necessary to have an approach to parallelize the processes that compose the simulation. MPhyScaS (Multi-Physics and Multi-Scale Solver Environment) is an environment dedicated to the automatic development of...
The most fundamental motivation for employing contracts in the de-velopment of OO applications is to improve the reliability. Contract enforcement is a well-known established technique in object-oriented (OO) programming. However, the need to intercept well defined points in the execution of a program to check design constraints makes the enforceme...
This paper proposes a methodology for modeling and evaluating supply chains based on generalized stochastic Petri net (GSPN) components. The proposed modeling process is based on a bottom-up approach, which assures desirable model properties that start from a set of predefined modules for typical supply chain entities. A compositional algebra that...
Real problem simulations involving physic phenomena can demand too much execution time. To improve the performance of these simulations it is necessary to have an approach to parallelize the processes that compose the simulation. MPhyScaS (Multi-Physics and Multi-Scale Solver Environment) is an environment dedicated to the automatic development of...
Aspect-oriented programming (AOP) enables the effective modularization of well-known crosscutting concerns. To take advantage of AOP, there are many techniques, including AOP laws, for a systematic refactoring of crosscutting concerns to aspects. However, there is also a need for supporting the systematic refactoring of AOP constructs. Existing tec...
The service-oriented architecture (SOA) has become an unifying technical architecture that can be embodied with Web service technologies, in which the Web service is thought as a fundamental building block. This paper proposes a simulation modeling approach based on stochastic Petri nets to estimate the performance of SOA applications. Using the pr...
In this paper we review several approaches for the performance evaluation of business workflows and propose an approach based on Generalized Stochastic Petri Nets, which presents desirable characteristics, such as analytic solutions. We present a case study demonstrating the application of our proposal and compare the results with that obtained by...
In previous work we presented a new JML compiler, ajmlc, which generates aspects that enforce preconditions, postconditions, and invariants. Although this compiler provides benefits of source-code mod- ularity and small bytecode size and running time, there is still a need for optimization of bytecode size and running time. To do this optimization...
Complex applications need powerful computers to achieve results in a valid time. However, such machines are very expensive and not always available. An alternative is the adoption of several simple, less powerful, and less expensive computers, which triggers the need for an adaptable framework that would support parallel and distributed execution i...
The AspectJ JML compiler (ajmlc) explores aspect-oriented programming (AOP) mechanisms to implement JML specifications, such as pre-and postconditions, and enforce them during runtime. This compiler was created to improve source-code modularity. Some experiments were conducted to evaluate the performance of the code generated through ajmlc. Results...
This work proposes the use of pre-defined generalized stochastic Petri net (GSPN) components to model and evaluate outbound logistics. The modeling process takes into account the automatic generation of these stochastic models from high-level end-user-oriented descriptions. The model resultant from this translation is guaranteed to have some expect...
Over the last few years, embedded software synthesis has drawn much attention. However, few works deal with software synthesis
for hard real-time systems considering arbitrary inter-tasks precedence and exclusion relations. Code generation for meeting
all timing and resource constraints is not a trivial task. Thus, this research area has several o...
The Java modeling language (JML) is a behavioral interface specification language (BISL) designed for Java. It was developed with the aim of improving the functional software correctness of Java applications. The JML compiler (jmlc) generates bytecodes that use the Java reflection mechanism and data structures not supported by Java ME applications....
The Java Modeling Language (JML) is a behavioral inter- face specification language (BISL) designed for Java. It was developed to improve functional software correctness of Java applications. However, the JML compiler explores the re- flection technique and data structures not supported by Java ME applications. In order to eliminate such a problem,...
Cache memory hierarchy contributes positively to system performance. Moreover, tuning cache architectures in platforms for embedded applications can dramatically reduce energy consumption. This paper presents an automated method for adjusting two-level cache memory hierarchy intended for data caches in order to reduce energy consumption and improve...
Cache memory hierarchy contributes positively to system performance. Moreover, tuning cache architectures in platforms for embedded applications can dramatically reduce energy consumption. This paper presents an automated method for adjusting two-level cache memory hierarchy intended for data caches in order to reduce energy consumption and improve...
The outbound logistics can determine the success or failure of an industry. It has a high participation in overall logistics costs and is a decisive factor for the Quality of Service (QoS). Measuring this activity and evaluating possible changes will help its management and can lead to a cost reduction and a better QoS. This paper proposes the use...
The globalized and highly competitive manufacturing industries have been imposing several challenges upon the field of production engineering. Tuning systems to high performance within cost constraints has been a reality and a critical factor of success for them. Hence, traditional performance metrics are not enough to supply these manufacturing in...
The global competition between companies and the requisition of high service levels for customers, led them to invest in the supply chain management. The outbound logistics deals with the transportation and storage of finished goods from the end of the manufacturing to the customers. It is one of the most complex and expensive logistical activity a...
Concurrent programs are essential in the development of Web based information systems. The wide dissemination of these systems increased the need for methods to create correct and efficient concurrent programs, which are usually difficult to implement and test. This paper presents guidelines to improve the concurrent control structure of object-ori...
Hard real-time embedded systems have stringent timing constraints that must be met in order to ensure the correct functioning of the system. In many cases, these systems are composed of several CPU-bound tasks, which may need to rely on multiple processors, since just a single processor may not allow meeting all timing constraints. In order to deal...
Non-functional requirements such as performance, program size, and energy consumption significantly affect the quality of software systems. Small devices like PDAs and mobile phones have little memory, slow processors, and energy constraints. The C programming language has been the choice of many programmers when developing application for small de...
The global competition between manufactures and the requisition of high service levels for customers, led companies to recognize the relevance of supply chain management. The outbound logistics deals with the transportation and storage of finished goods from the end of the manufacturing to the customers. This paper proposes the use of predefined Pe...