Carlos Henrique Cabral DuarteBanco Nacional do Desenvolvimento | BNDES · Department of Capital and Consumer Goods Industries, Commerce and Services
Carlos Henrique Cabral Duarte
PhD
Sectoral studies
About
59
Publications
91,473
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
635
Citations
Introduction
My research focuses on Public Policies for Information and Communication Technology Industries (Pol-ICT), Software Engineering (SE) and Distributed Systems (DS). Regarding SE/DS, I have studied development processes (from requirement elicitation and design to implementation methods, techniques and tools) and application areas (programming languages, database systems etc). Concerning Pol-ICT, I have studied, developed and applied technology transfer, financing and digital transformation methods.
Additional affiliations
June 1996 - March 1998
May 2020 - February 2024
July 1995 - September 1995
Hewlett Packard Labs, Bristol, UK
Position
- Visiting Researcher
Education
October 1994 - February 1999
March 1992 - June 1994
March 1988 - February 1992
Publications
Publications (59)
The adoption of quality assurance methods based on software process improvement models has been regarded as an important source of variability in software productivity. Some companies perceive that their implementation has prohibitive costs, whereas some authors identify in their use a way to comply with software development patterns and standards,...
Few economic sectors are more regulated than healthcare. Although excessive healthcare regulation is a bad thing, regulatory compliance may bring with it many benefits, such as market entry, product quality and availability, as well as access to tax rebates and financial incentives. Goal-oriented regulations, in particular, embody in their formulat...
Letter addressed to the editor-in-chief of IEEE Software regarding a recently published paper on Digital Transformation and Requirements Engineering.
This article presents an overview and discusses the future of authorship and peer review, considering the recent advances in using artificial intelligence.
We propose a new first-order many-sorted branching-time logical system with equality devoted to support the development of open distributed systems. The inherent characteristics of this family of systems, which ought to be treated in rigorous software development processes, are used throughout the paper to motivate the specific features of our form...
Practitioners perceive software productivity as one of the most important subjects of software engineering (SE) because it connects technical to social and economic aspects. Nonetheless, software processes are complex and productivity means different things to different people. In order to realize the full contribution of software productivity rese...
Well-Being, Aging, and Health (WBAH) are important aspects of life that affect us all. The requirements for WBAH systems have also become a topic of common interest for researchers from different disciplines. This is unsurprising, given that health-related expenses often represent about 10% of a country's gross domestic product, according to the Wo...
The webinar is available online on YouTube: https://www.youtube.com/watch?v=9EEAfHsdSR0
Few economic sectors are more regulated than healthcare. While excessive healthcare regulation is a bad thing, regulation compliance brings with it the benefits of market entry, product quality and availability, as well as access to tax rebates and credit benefits. In this paper, we investigate some connections between regulatory compliance and nor...
Software productivity is perceived by practitioners as one of the most important subjects of Software Engineering (SE), because it establishes a connection between technical and economic concerns. Nonetheless, software processes are complex and productivity means different things to different people. In order to realize the full contribution of pro...
Digital Transformation and Software/Requirements Engineering
This instalment of the Software Technology department discusses how the digital transformation is affecting software technology and the software industry.
An empirical study is an investigation, using established procedures (also called “empirical research methods”), for the purpose of gaining knowledge through observation. Empirical studies lie at the heart of Software Engineering (SE). The quality of these studies is a determinant of the validity of the research findings, including that of the comp...
Slides of an invited talk at the Brazilian-German Chamber of Commerce and Industry (AHK), Rio de Janeiro, on the 8th of March, 2018.
Software Quality Assurance has been a central subject of concern among Brazilian researchers, practitioners and policy makers at least since the 1990s. Many technical studies and developments, industry actions and policy measures have been implemented as a result of their collective and collaborative work. We present here a personal recollection an...
This is a compilation of data on appraisals and software development quality levels verified in Brazilian organizations from 1997 to 2016 in accordance to the MPS.BR and CMMI software process improvement models. The data set is provided in support to some publications of the author.
This is a compilation of data from secondary sources on the revenues and employment in Brazilian IT companies from 1990 to 2016. The data set is provided in support to some publications of the author.
Few would deny today the importance of empirical studies in the field of Software Engineering. An increasing number of studies are being conducted involving the software industry, but, while literature abounds on idealistic empirical procedures, relatively little is known about the dynamics and complexity of conducting empirical studies in the soft...
Industry and society as a whole are facing radical changes due to fast growing digital technologies and their penetration of practically all areas. Products and services will increasingly augment and integrate the real world with the digital world. This digital transformation has reached all business areas. The role of Requirements Engineering is t...
The effectiveness of public policy measures to foster
the competitiveness of Information Technology (IT) industries has
been intensively debated nowadays, since a multitude of policy
instruments can be applied to different business segments and
time frames, with varying levels of legal security and expected
results. In this paper, we investigate th...
Info cases consist in a functional requirements specification technique, based on the elicitation of information flows between a system and its external actors, which aims to reconcile use case models and domain models. Empirical studies suggest that they guide requirements elicitation activities to happen in a more systematic way, while reducing i...
Few would deny today the importance of empirical studies in the field
of Software Engineering and, indeed, an increasing number of studies
are being conducted involving the software industry. While literature
abounds on idealistic empirical procedures, relatively little is known
about the dynamics and complexity of conducting empirical studies in
t...
Technology and knowledge have been recognized as main sources of competitive advantage of corporations, industries and nations, particularly in the software domain. They have led to the creation of local ecosystems devoted to development and transfer activities, which ensure not only personal and institutional motivation/recognition, but also socia...
Few would deny today the importance of empirical studies in the field of Software Engineering (SE) and, indeed, an increasing number of studies are being conducted involving the software industry. While literature abounds on empirical procedures, relatively little is known about the dynamics and complexity of conducting empirical studies in the sof...
Technology can be regarded as scientific knowledge embodied in products or services. Particularly in the software domain, it has been recognized as a source of competitive advantage of corporations, industries and nations. Cooperative technology development and transfer happen in academic environments, but there is a wider context in which they can...
Quality assurance methods based on software process im-provement models have been regarded as a main source of variability in software productivity. In this paper, we investi-gate the relationship between labor productivity and quality assurance levels, using a data set containing more than 500 Brazilian software firms. We perform statistical analy...
The sector of the Brazilian economy related to Information and Communication Technologies has been benefited over the last decades from the existence of specific public policies aiming at fostering the accelerated development of this sector. In the present article, the specific measures adopted over the decade from 2001 to 2010 with this objective...
We propose an alternative characterisation of object-based distributed systems in terms of algebraic structures and topological spaces. Some examples are given in order to attest the adequacy of this approach to the subject. We also illustrate a method of transference of results from these mathematical theories that can further contribute to the ad...
In this paper, we propose a new method, based on the use of temporal logic, for developing and reasoning about functional programs. Our software development method is rigorous and systematic: starting with a list of informal requirement descriptions, we initially derive a set of object-based specifications, which are later on transformed into modul...
The research arm of Brazil's Ministry of Science and Technology, CNPq, assembled a community of professors, entrepreneurs, and policy makers. Their goal was to define a strategic program that would eventually replace Brazil's existing information technology policy. At that time, a strict policy regulated the internal market, protecting the local IT...
The efforts of the World Wide Web Consortium in defining and recommending the adoption of an extensible markup language, XML, and a document object model, DOM, have been received with enthusiasm by the software development community. These recommendations have been continuously adopted as a pratical way to define and realize two party interaction....
We present in this paper a brief survey of the current research and development trends related to the rigorous development of distributed object based software development. The topics covered here range from programming language design and implementation to software development methods, techniques and tools.
There is an intense discussion, nowadays, concerning the future impacts of Information Technologies on the society. Usually, this discussion happens solely on tecno-scientific grounds, but the social and economic impacts on the whole society of such technologies and respective companies is equally important. In order to subsidise the development of...
In this paper we present Clara, a new programming language for high performance distributed computing. Clara has been developed to embody in an efficient distributed computing environment the conceptual clarity of the actor model, an object-based framework for the design and implementation of open distributed systems. We describe our Clara compiler...
Application frameworks are collections of related software artifacts that de-signers and programmers can instantiate, compose, or customize for specific purposes. They are developed to attempt to facilitate reuse by grouping together artifacts that encapsulate either the knowledge concerning an application domain or best-practice implementations. A...
A number of authors have studied the design of distributed systems considering the existence of an environment over which little (if any) control is retained. Perhaps the most systematic of these studies suggest the use of rely and guarantee conditions that assert respectively what is assumed from the environment and what the system is committed to...
PhD Thesis extended abstract.
The pioneering work of Hewitt and Baker on the foundations of concurrency during the seventies has inspired the development of a promising object-based framework for understanding open distributed systems, the actor model. So far, theoretical research on actors has focused on identifying the basic primitives of the model and on characterising the o...
Actors has been regarded as a promising model for open distributed systems. Although the operational semantics of actor programs
has already been studied in some recent work, means of reasoning about the behaviour of communities of interconnected actors
at a high abstraction level are still lacking. In this paper we argue that a proof-theoretic sem...
Extensible software systems have been increasingly demanded as a means of supporting in a more faithful way constantly changing user requirements and also as a necessary logical counterpart to rapidly evolving networking architectures. Such terms as open, reconfigurable, mobile and reflexive have been used to attempt to describe relevant facets of...
With the advent of technologies to realise parallel computing in mobile sometimes portable platforms, it is now possible to fulfil requirements related to the very dynamic and mutable user location. Designing the required applications calls for improved formal methods to treat mobility while assuring correctness. In this paper, we argue that mobile...
The 1990s has already seen enormous change to the computer
industry in Brazil. But the greatest change of all is expected in the
area of software. By the end of 2000, Brazil is out to capture 1 percent
of a US $ 200 billion international software market, according to the
federal Govemment's National Program of Software for Export, or Softex
2000. F...
As more and more computing platforms appear and the number of features embedded in programming languages grows, dimensions like complexity and size acquire a fundamental importance in compiler development. In order to treat these issues, this paper proposes a systematic method combining the object oriented and the transformational approaches for co...
Compiler construction is a complex activity, which demands the creation of rigorous programming language specifications to make possible the development and maintenance of products in a feasible manner. In this paper, a systematic method for compiler development is proposed, combining object orientation and formal specification of programming langu...
The development of functional language compilers is a complex activity, which demands a careful design to avoid the inefficient final product and to allow it to be maintained and extended in a simple manner. In this thesis, we describe the development of a compiler for the functional language Miranda using a method which joins object orientation as...
Heterogeneus Database Management Systems have been presented as a possible solution for problems in handling and integrating distributed data in different databases. This paper presents the characteristics of HEROS, a heterogeneous datadabase management system being developed at PUC-Rio, describing its architecture and functionality.
Large effort has been done to find techniques which turn software development tractable. Statechart is a visual formalism that has been widely used, intending to eliminate the problems in this activity. This paper propose a different approach to solve part of these problems, by integrating this formal technique to other informal one. Either, formal...
In this paper we study the formal specification of a DBMS formally based on the entity-relationship concept. We use the Norman's Database (NDB) example which has been explored by several authors in the recent literature. The system's operations and structure are described, by means of techniques, which extend VDM through nesting and inheritance. Th...
Questions
Question (1)
Fellow Friends,
I hope everything is fine with you!
I wonder if you are aware of the following publication, which seems to be related to your project?
Patterns of Cooperative Technology Development and Transfer for Software-Engineering-in-the-Large
It is available here in ResearchGate.
Kind regards,
Carlos Henrique