Shane McIntosh

Learn More
Defect prediction models help software quality assurance teams to effectively allocate their limited resources to the most defect-prone software modules. A variety of classification techniques have been used to build defect prediction models ranging from simple (e.g., logistic regression) to advanced techniques (e.g., Multivariate Adaptive Regression(More)
Prior research suggests that predicting defect-inducing changes, i.e., Just-In-Time (JIT) defect prediction is a more practical alternative to traditional defect prediction techniques, providing immediate feedback while design decisions are still fresh in the minds of developers. Unfortunately, similar to traditional defect prediction models, JIT models(More)
Software code review, i.e., the practice of having third-party team members critique changes to a software system, is a well-established best practice in both open source and proprietary software domains. Prior work has shown that the formal code inspections of the past tend to improve the quality of software delivered by students and small teams. However,(More)
Incubating cells at 20 degrees C blocks transport out of the Golgi complex and amplifies the exit compartments. We have used the 20 degrees C block, followed by EM tomography and serial section reconstruction, to study the structure of Golgi exit sites in NRK cells. The dominant feature of Golgi structure in temperature-blocked cells is the presence of(More)
Understanding the development of the cereal caryopsis holds the future for metabolic engineering in the interests of enhancing global food production. We have developed a Serial Analysis of Gene Expression (SAGE) data platform to investigate the developing wheat (Triticum aestivum) caryopsis. LongSAGE libraries have been constructed at five time-points(More)
The build system of a software project is responsible for transforming source code and other development artifacts into executable programs and deliverables. Similar to source code, build system specifications require maintenance to cope with newly implemented features, changes to imported Application Program Interfaces (APIs), and source code(More)
Build systems specify how source code is translated into deliverables. They require continual maintenance as the system they build evolves. This build maintenance can become so burdensome that projects switch build technologies, potentially having to rewrite thousands of lines of build code. We aim to understand the prevalence of different build(More)
The impacts of varying pretreatment parameters (temperature, time, and alkalinity) on enzymatic hydrolysis of sorghum straw were investigated. Following pretreatment, both solids and lignin content was found to be inversely proportional to the severity of the treatments. Higher temperatures and alkali strength were quintessential for maximising sugar(More)
The release engineering process is the process that brings high quality code changes from a developer's workspace to the end user, encompassing code change integration, continuous integration, build system specifications, infrastructure-as-code, deployment and release. Recent practices of continuous delivery, which bring new content to the end user in days(More)
Defect prediction models are classifiers that are trained to identify defect-prone software modules. Such classifiers have configurable parameters that control their characteristics (e.g., the number of trees in a random forest classifier). Recent studies show that these classifiers may underperform due to the use of suboptimal default parameter settings.(More)