Roberta Coelho

ORCID: 0000-0003-0001-435X
Publications
Citations
Views
---
Saved
---
About
Contact & Profiles
Research Areas
  • Software Engineering Research
  • Advanced Software Engineering Methodologies
  • Service-Oriented Architecture and Web Services
  • Software System Performance and Reliability
  • Software Engineering Techniques and Practices
  • Software Testing and Debugging Techniques
  • Advanced Malware Detection Techniques
  • Software Reliability and Analysis Research
  • Model-Driven Software Engineering Techniques
  • Business Process Modeling and Analysis
  • Logic, programming, and type systems
  • Teaching and Learning Programming
  • Real-Time Systems Scheduling
  • ERP Systems Implementation and Impact
  • Information Science and Libraries
  • Information and Cyber Security
  • Capital Investment and Risk Analysis
  • Web Application Security Vulnerabilities
  • Breastfeeding Practices and Influences
  • Formal Methods in Verification
  • Scientific Computing and Data Management
  • Maternal and Neonatal Healthcare
  • Big Data and Business Intelligence
  • Mobile and Web Applications
  • Web Applications and Data Management

Universidade Federal do Rio Grande do Norte
2013-2024

Universidade Federal do Rio Grande
2023

University of Rio Grande and Rio Grande Community College
2011-2012

Pontifical Catholic University of Rio de Janeiro
2005-2008

The approach proposed by Silwerski, Zimmermann, and Zeller (SZZ) for identifying bug-introducing changes is at the foundation of several research areas within software engineering discipline. Despite foundational role SZZ, little effort has been made to evaluate its results. Such an evaluation a challenging task because ground truth not readily available. By acknowledging such challenges, we propose framework results alternative SZZ implementations. evaluates following criteria: (1) earliest...

10.1109/tse.2016.2616306 article EN IEEE Transactions on Software Engineering 2016-10-11

One of the main promises aspect-oriented programming (AOP) is to promote improved modularization crosscutting concerns, thereby enhancing software stability in presence changes. This paper presents a quantitative study that assesses positive and negative effects AOP on typical maintenance activities Web information system. The consists systematic comparison between object-oriented versions same application order assess what extent each solution provides maintainable decompositions. Our...

10.1109/icsm.2006.48 article EN Proceedings/Proceedings - Conference on Software Maintenance 2006-09-01

In this paper, we present a unit testing approach for MASs based on the use of Mock Agents. Each Agent is responsible single role an agent under successful and exceptional scenarios. Aspect-oriented techniques are used, in our approach, to monitor control execution asynchronous test cases. We implementation top JADE platform, show how extended JUnit framework order execute

10.1145/1138063.1138079 article EN 2006-05-22

This paper reports on a study mining the exception stack traces included in 159,048 issues reported Android projects hosted GitHub (482 projects) and Google Code (157 projects). The goal of this is to investigate whether trace information can reveal bug hazards related handling code that may lead decrease application robustness. Overall 6,005 were extracted, subjected source byte analysis. out-comes include identification following hazards: (i) unexpected cross-type wrappings (for instance,...

10.1109/msr.2015.20 article EN 2015-05-01

Aspect-oriented software development techniques provide a means to modularize crosscutting concerns in systems. A survey of industrial projects reveals the benefits and potential pitfalls aspect-oriented technologies.

10.1109/mc.2010.30 article EN Computer 2010-02-01

This paper presents an empirical study whose goal was to investigate the exception handling strategies adopted by Java libraries and their potential impact on client applications. In this study, flow analysis used in combination with manual inspections order: (i) characterize of existing from perspective users; (ii) identify anti-patterns. We extended static tool reason about flows handler actions 656 selected 145 categories Maven Central Repository. The findings suggest a current trend high...

10.1145/2901739.2901757 article EN 2016-05-14

This paper reports on a study mining the exception stack traces included in 159,048 issues reported Android projects hosted GitHub (482 projects) and Google Code (157 projects). The goal of this is to investigate whether trace information can reveal bug hazards related handling code that may lead decrease application robustness. Overall 6,005 were extracted, subjected source byte analysis. out-comes include identification following hazards: (i) unexpected cross-type wrappings (for instance,...

10.5555/2820518.2820536 article EN Mining Software Repositories 2015-05-16

Automated tests have been widely used as a supporting mechanism during software development and maintenance activities. It improves the confidence on releases it seeks to uncover regression bugs, serves live documentation which is very useful when evolving systems. Concerning multi agent systems (MASs), some characteristics such autonomy asynchronous message-based interaction bring degree of non-determinism presents new testing challenges. This paper proposes JAT, framework for building...

10.1109/icsm.2007.4362655 article EN Proceedings/Proceedings - Conference on Software Maintenance 2007-10-01

Despite being an old language feature, Java exception handling code is one of the least understood parts many systems. Several studies have analyzed characteristics code, trying to identify common practices or even link such software bugs. Few works, however, investigated issues from point view developers. None works focused on discovering guidelines adopted by current systems - which are likely be a driver practices. In this work, we conducted qualitative study based semi-structured...

10.1109/saner.2019.8668001 article EN 2019-02-01

One of the tasks reviewers is to verify that code modifications are well tested. However, current tools offer little support in understanding precisely how changes relate tests. In particular, it hard see whether (modified) test covers changed code. To mitigate this problem, we developed Operias, a tool provides combined visualization fine-grained source differences and coverage impact. Operias works both as stand-alone on specific project versions service hooked GitHub. latter case,...

10.1145/2950290.2983929 article EN 2016-11-01

The exception handling policy of a system comprises the set design rules that specify its behavior (how exceptions should be handled and thrown in system). Such is usually undocumented implicitly defined by architect. Developers are unaware such may think just sprinkling code with catch-blocks they can adequately deal exceptional conditions system. As consequence, once designed to make program more reliable become source faults (e.g., uncaught one main causes crashes current Java...

10.1109/saner.2018.8330228 article EN 2018-03-01

Aspects allow a developer to externally add new functionality program. This additional may also throw exceptions that will flow through the program execution until they are handled. Moreover, aspects can be used handle thrown by base code or even other aspects. Unfortunately, --- should handled them in unexpected ways leading failures such as uncaught being caught wrong handlers. In previous empirical study we investigated causes of Aspect-Oriented programs. this paper present catalogue bug...

10.1145/1753196.1753224 article EN 2008-10-18

There is a growing interest of the Computer Science education community for including testing concepts on introductory programming courses. Aiming at contributing to this issue, we introduce POPT, Problem-Oriented Programming and Testing approach Introductory Courses. POPT main goal improve traditional method teaching that concentrates mainly implementation neglects testing. According students' skills must be developed by dealing with ill-defined problems, from which students are stimulated...

10.1109/icse.2013.6606660 article EN 2013 35th International Conference on Software Engineering (ICSE) 2013-05-01

In a previous work, we proposed framework extension approach based on the use of new concept, called Extension Join Points (EJPs). EJPs enable systematic by means variability and integration aspects. this paper, show how can be implemented using mechanisms AspectJ language. To evaluate usefulness in process, have used them development three OO frameworks from different domains. As result our case studies, present: (i) an initial categorization kinds contracts between frameworks, aspects...

10.5753/sbes.2006.21212 article EN 2006-10-16

There is a growing interest of the Computer Science education community for including testing concepts on introductory programming courses. Aiming at contributing to this issue, we introduce POPT, Problem-Oriented Programming and Testing approach Introductory Courses. POPT main goal improve traditional method teaching that concentrates mainly implementation neglects testing. According students' skills must be developed by dealing with ill-defined problems, from which students are stimulated...

10.5555/2486788.2486939 article EN International Conference on Software Engineering 2013-05-18

Exception handling (EH) is a well-known mechanism that aims at improving software reliability in modular way - allowing better separation between the code deals with exceptional conditions and normal control flow of program. Although exception was conceived almost 40 years ago, formulating reasonable design still considered challenge, which might hinder its widespread use. This paper reports results an empirical study use mixed-method approach to investigate adoption handing C++. Firstly, we...

10.1109/scam.2015.7335398 article EN 2015-09-01

Checking the conformance between implementation and design rules is an important activity to guarantee quality on architecture source code. To address current needs of dependable systems it also define related exception handling behavior. The approaches automatically check rules, however, do not provide suitable ways policy a system. This paper proposes practical approach preserve system or family along with its evolution, based definition automatic checking that regulates how exceptions...

10.1109/ladcw.2011.26 article EN 2011-04-01

The process and activities of software development are very dynamic diverse. For instance, source code has to be written, tested revised, e-mails have sent, bugs communicated, managed fixed. As a consequence, the contributions developers diversified. This paper describes an empirical study whose goal was assess compare through repository mining. Two medium-sized projects -- open commercial project were analyzed. Overall, 17,490 commits 10,308 reports In first part our study, we classified...

10.1145/2554850.2555030 article EN 2014-03-24

The exception handling policy of a system comprises the set design rules that specify its behavior (how exceptions should be handled and thrown).Such is usually undocumented implicitly defined by architect.For this reason, developers may think just including catch-blocks in code they can deal with conditions.This lack information turn into generalized "goto" mechanism making program more complex less reliable.This work proposes domain-specific language called ECL (Exception Contract...

10.18293/seke2015-133 article EN Proceedings/Proceedings of the ... International Conference on Software Engineering and Knowledge Engineering 2015-07-01

Design by Contract (DbC) is a technique for developing and improving functional software correctness through definition of "contracts" between client classes their suppliers. Such contracts are enforced during runtime if any them violated error should occur. Runtime assertions checkers (RACs) well-known that enforces such contracts. Although they largely used to implement the DbC in contemporary languages, like Java, studies have shown characteristics exception handling mechanisms can...

10.1145/2076674.2076681 article EN 2011-07-25
Coming Soon ...