A good understanding of the impact of different types of bugs on various project aspects is essential to improve software quality research and practice.
Such models are essential to properly manage the major software development outcomes (e.g., cost, schedule, quality) and to build up organizational knowledge.
An example situation in which such a mapping is necessary is when defect data from a variety of projects is aggregated to build a quality model that relates some characteristics of
software development to resulting quality in terms of defects.
To be effective, however, the models must be built using a significant base of historical
data that describes numerous variations within the domain of the model (e.g., an organizational unit).
To enable swift detection of bugs and other quality issues, continuous integration (CI) has become a main staple in the quality assurance tool box of companies.
To be effective, however, the models must be built using a significant base of historical
data that describes numerous variations within the domain of the model (e.g., an organizational unit).
slew
Indeed, for every success and breakthrough that has been made, there are a slew of failures.
Some categorizations are orthogonal, i.e., they address different dimensions of interest (e.g., severity vs. technical cause), so combining them results in categories that are not mutually exclusive.
Some categorizations are orthogonal, i.e., they address different dimensions of interest (e.g., severity vs. technical cause), so combining them results in categories that are not mutually exclusive.
So instead one must choose a set of discrete categories and devise mapping rules to convert the data consistently and coherently into the new categories.
The communication activities that follow the initiation time would presumably be less cohesive, and more connected to individual preferences and styles of work.
On the other hand, for the worst case, i.e., the most pessimistic view of the state of the software, we take the highest level of severity between the two responses.
We designed and built a tool named SEVERIS (SEVERity ISsue assessment) to automatically review issue reports and alert when a proposed severity is anomalous.
Release engineering is the process responsible for taking the individual code contributions of developers and bringing those to the end user in the form of a high quality software release.
The first two points suggest that mobile apps related to health, finance, privacy, and intellectual property safety are more likely to get obfuscated, both actively or passively.
In essence, this reflects an assumption that larger classes are inherently ‘more likely to be faulty’, or ‘more faulty’, than smaller classes.
Intuitively, if there are many bugs reported in the last x days with a higher severity level than BR, BR is likely not assigned a high priority level since there are many higher severity bug reports in the bug tracking system that need to be resolved too.
Emotion mining from software development artifacts like issue reports, emails or change logs is not trivial, since such artifacts consist of unstructured, natural language text (Bacchelli et al 2010, 2012).
Lately, security of the release engineering pipeline in general, and the CI server in particular, also has become a major concern [9], since any malicious script capable of injecting a payload in the CI’s build output could infect the rest of the release engineering pipeline.
former Etsy’s Noah Sussman (“continuous delivery is mainstream”) [77] indicated that for large IT companies, implementing continuous delivery for web apps is straight-forward, given that tools have become widely available or even commodities.
While large companies with substantial resources can afford trial-and-error and even failure (as discussed in the various keynote talks at the RELENG workshop [1]), younger companies with smaller margins for error do not have this luxury and want to adopt the right tools and practices from the start.
Based on our experience, this section provides concrete advice about how release engineering can impact software engineering researchers who need to mine software repositories.
Such projects use a staged release pipeline (akin to superscalar processor architectures [81]), where release i is in beta, while release i − 1 is in alpha and i − 2 in nightly testing.
As a result, for one project 4 weeks might be negligible compared to the total cycle time, while for another project this might be the full cycle time between two subsequent releases.
If zero does not fall between the resulting confidence interval values of LL and UL (i.e., both values are either positive or negative) then it is concluded that the indirect effect is not zero with 95% confidence [20].