Sherlock A. Licorish

Sherlock A. Licorish
  • Doctor of Philosophy
  • Professor (Associate) at University of Otago

About

142
Publications
89,091
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
2,272
Citations
Current institution
University of Otago
Current position
  • Professor (Associate)
Additional affiliations
December 2013 - present
University of Otago
Position
  • Professor (Associate)

Publications

Publications (142)
Preprint
Practitioners are increasingly dependent on publicly available resources for supporting their knowledge needs during software development. This has thus caused a spotlight to be paced on these resources, where researchers have reported mixed outcomes around the quality of these resources. Stack Overflow, in particular, has been studied extensively,...
Article
Full-text available
Machine learning and artificial intelligence models have become popular for climate change prediction. Forested regions in California and Western Australia are increasingly facing intense wildfires, while other parts of the world face various climate-related challenges. To address these issues, machine learning and artificial intelligence models ha...
Preprint
Full-text available
for possible open access publication under the terms and conditions of the Creative Commons Attri-bution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/). Abstract: Machine learning and artificial intelligence models have become popular for climate change 1 prediction. Forested regions in California and Western Australia are increas...
Preprint
Full-text available
Due to climate change, forest regions in California, Western Australia, and Saskatchewan, Canada, are increasingly experiencing severe wildfires, with other climate-related issues affecting the rest of the world. Machine learning (ML) and artificial intelligence (AI) models have emerged to predict wildfire hazards and aid mitigation efforts. Howeve...
Preprint
Full-text available
Much is promised in relation to AI-supported software development. However, there has been limited evaluation effort in the research domain aimed at validating the true utility of such techniques, especially when compared to human coding outputs. We bridge this gap, where a benchmark dataset comprising 72 distinct software engineering tasks is used...
Article
Agile methods and associated practices have been held to deliver value to software developers and customers. Research studies have reported team productivity and software quality benefits. While such insights are helpful for understanding how agile methods add value during software development, there is need for understanding the intersection of us...
Preprint
Agile methods and associated practices have been held to deliver value to software developers and customers. Research studies have reported team productivity and software quality benefits. While such insights are helpful for understanding how agile methods add value during software development, there is need for understanding the intersection of us...
Preprint
Full-text available
This research explores the development of wildfire prediction models using One-class classification algorithms, addressing limitations in previous research that relied on biased or imbalanced datasets for multi-class classification. A range of diverse One-class algorithms were used to build linear, ensemble, proximity-based, probabilistic, and neur...
Preprint
Full-text available
Large Language Models (LLMs), such as GPT models, are increasingly used in software engineering for various tasks, such as code generation, requirements management, and debugging. While automating these tasks has garnered significant attention, a systematic study on the impact of varying hyperparameters on code generation outcomes remains unexplore...
Article
Full-text available
Predicting wildfires using Machine Learning models is relevant and essential to minimize wildfire threats to protect human lives and reduce significant property damage. Reliance on traditional wildfire indices for forecasting wildfires has failed to provide the expected prediction outcomes, resulting in limited application of these models. Thus, th...
Article
The need for collective intelligence in technology means that online Q&A platforms, such as Stack Overflow and Reddit, have become invaluable in building the global knowledge ecosystem. Despite literature demonstrating a prevalence of inclusion and contribution disparities in online communities, studies investigating the underlying reasons behind s...
Article
Full-text available
Just-In-Time (JIT) defect prediction aims to identify defects early, at commit time. Hence, developers can take precautions to avoid defects when the code changes are still fresh in their minds. However, the utility of JIT defect prediction has not been investigated in relation to crashes of mobile apps. We therefore conducted a multi-case study em...
Article
Full-text available
Software cross-project defect prediction (CPDP) makes use of cross-project (CP) data to overcome the lack of data necessary to train well-performing software defect prediction (SDP) classifiers in the early stage of new software projects. Since the CP data (known as the source) may be different from the new project’s data (known as the target), thi...
Chapter
Full-text available
Due to climate change, forest regions in California are increasingly experiencing severe wildfires, with other issues affecting the rest of the world. Machine learning (ML) and artificial intelligence (AI) models have emerged to predict wildfire hazards and aid mitigation efforts. However, the wildfire prediction modelling domain faces inconsistenc...
Preprint
Full-text available
Predicting wildfires using Machine Learning (ML) models is relevant and essential to minimize wildfire threats to protect human lives and reduce significant property damage. Reliance on traditional wildfire indices for forecasting wildfires has failed to provide the expected prediction outcomes, resulting in limited application of these models. Thu...
Article
Full-text available
Convolutional neural networks (CNNs) performance requires tuning of network architectures, which requires machine learning knowledge and significant time and effort. Thus, modern deep CNN in soil spectroscopy faces a major barrier as a result of this process. The components in convolutional neural networks (CNNs) for spectroscopic modelling are usu...
Article
Full-text available
A key function of a software system is its ability to facilitate the manipulation of data, which is often implemented using a flavour of the Structured Query Language (SQL). To develop the data operations of software (i.e, creating, retrieving, updating, and deleting data), developers are required to excel in writing and combining both SQL and appl...
Preprint
Full-text available
A key function of a software system is its ability to facilitate the manipulation of data, which is often implemented using a flavour of the Structured Query Language (SQL). To develop the data operations of software (i.e, creating, retrieving, updating, and deleting data), developers are required to excel in writing and combining both SQL and appl...
Article
This article is theoretical in nature and sets out to explore how human resources software systems create “hassles” for human resource practitioners (HRPs) that elicit negative discrete emotions (e.g., anger, frustration, exasperation, etc.) and how HRPs create feral systems (workarounds) to alleviate these elicited negative discrete emotions. Fera...
Article
Context Over the years, there has been debate about what constitutes software quality and how it should be measured. This controversy has caused uncertainty across the software engineering community, affecting levels of commitment to the many potential determinants of quality among developers. An up-to-date catalogue of software quality views could...
Conference Paper
Stack Overflow is used to solve programming issues during software development. Research efforts have looked to identify relevant content on this platform. In particular, researchers have proposed various modelling techniques to predict acceptable Stack Overflow answers. Less interest, however, has been dedicated to examining the performance and qu...
Conference Paper
Cross-project defect prediction (CPDP) models are used in new software project prediction tasks to improve defect prediction rates. The development of these CPDP models could be challenging in cases where there is little or no historical data. For this reason, researchers may need to rely on multiple sources and use transfer learning-based CPDP for...
Preprint
Full-text available
—Cross-project defect prediction (CPDP) makes use of cross-project (CP) data to overcome the lack of data necessary to train well-performing software defect prediction (SDP) classifiers in the early stage of new software projects. Since the CP data (known as the source) may be different from the new project’s data (known as the target), this makes...
Preprint
Intense competition in the mobile apps market means it is important to maintain high levels of app reliability to avoid losing users. Yet despite its importance, app reliability is underexplored in the research literature. To address this need, we identify, analyse, and classify the state-of-the-art in the field of mobile apps' reliability through...
Preprint
Full-text available
Six months ago an important call was made for researchers globally to provide insights into the way Software Engineering is done in their region. Heeding this call we hereby outline the position Software Engineering in Australasia (New Zealand and Australia). This article first considers the software development methods practices and tools that are...
Article
Full-text available
App reviews often reflect end-users’ requests, issues or suggestions for supporting app maintenance and evolution. Hence, researchers have evaluated several classification approaches for identifying and classifying such app reviews. However, these classification approaches are driven by manually derived taxonomies. This is a limitation given the bu...
Article
Literature is scarce on culture and its impact on the behavioural patterns within software development communities. However, globalization in software development has intensified the need for software development teams to navigate culture issues to ensure the successful implementation of projects. Therefore, the current study examines whether the e...
Preprint
Full-text available
In traditional machine learning environments, the use of non-parametric error estimation to set the discriminative threshold of a classifier to achieve the best accuracy is very effective. This method is not effective in a transfer learning environment because it is only reliable when both the training and testing data have similar distributions wh...
Preprint
Full-text available
In traditional machine learning environments, the use of non-parametric error estimation to set the discriminative threshold of a classifier to achieve the best accuracy is very effective. This method is not effective in a transfer learning environment because it is only reliable when both the training and testing data have similar distributions wh...
Preprint
Full-text available
—Cross-project defect prediction (CPDP) makes use of cross-project (CP) data to overcome the lack of data necessary to train well-performing software defect prediction (SDP) classifiers in the early stage of new software projects. Since the CP data (known as the source) may be different from the new project’s data (known as the target), this makes...
Preprint
Full-text available
Software developers are increasingly dependent on question and answer portals and blogs for coding solutions. While such interfaces provide useful information, there are concerns that code hosted here is often incorrect, insecure or incomplete. Previous work indeed detected a range of faults in code provided on Stack Overflow through the use of sta...
Preprint
Full-text available
Information technology and software services are pervasive, occupying the centre of most aspects of contemporary societies. This has given rise to commonly expected norms and expectations around how such systems should work, appropriate penalties for violating these expectations, and more importantly, indicators of how to reduce the consequences of...
Article
Software developers make use of on crowdsourcing during development. Beyond learning from others, developers use online portals such as Stack Overflow as a vehicle for collaboration. However, little is known about developers' experiences on such platforms, particularly around problems that are encountered online. Such insights could benefit softwar...
Article
Context : App developers spend exhaustive manual efforts towards the identification and prioritization of informative end-user reviews. Informative reviews are those that express end-users’ requests for new features, bug fixes and possible enhancements. Problem Statement: While prior studies have proposed approaches to convert app reviews into acti...
Article
Intense competition in the mobile apps market means it is important to maintain high levels of app reliability to avoid losing users. Yet despite its importance, app reliability is underexplored in the research literature. To address this need, we identify, analyse, and classify the state-of-the-art in the field of mobile apps’ reliability through...
Article
Given the inclusion of (often team-based) course projects in tertiary software engineering education, it is necessary to investigate software engineering curricula and students’ experiences while undergoing their software engineering training. Previous research efforts have not sufficiently explored students perceptions around the commitment and ad...
Preprint
Together with many success stories, promises such as the increase in production speed and the improvement in stakeholders' collaboration have contributed to making agile a transformation in the software industry in which many companies want to take part. However, driven either by a natural and expected evolution or by contextual factors that challe...
Article
Together with many success stories, promises such as the increase in production speed and the improvement in stakeholders' collaboration have contributed to making agile a transformation in the software industry in which many companies want to take part. However, driven either by a natural and expected evolution or by contextual factors that challe...
Preprint
Context: Interest in software engineering (SE) methodologies and tools has been complemented in recent years by research efforts oriented towards understanding the human processes involved in software development. This shift has been imperative given reports of inadequately performing teams and the consequent growing emphasis on individuals and tea...
Preprint
Studying the human factors that impact on software development, and assigning individuals with specific competencies and qualities to particular software roles, have been shown to aid software project performance. For instance, prior evidence suggests that extroverted software project leaders are most successful. Role assignment based on individual...
Preprint
Agile software developers are required to self-organize, occupying various informal roles as needed in order to successfully deliver software features. However, previous research has reported conflicting evidence about the way teams actually undertake this activity. The ability to self-organize is particularly necessary for software development in...
Preprint
The ability to self-organise is posited to be a fundamental requirement for successful agile teams. In particular, self-organising teams are said to be crucial in agile globally distributed software development (AGSD) settings, where distance exacerbates team issues. We used contextual analysis to study the specific interaction behaviours and enact...
Preprint
Context: Given the acknowledged need to understand the people processes enacted during software development, software repositories and mailing lists have become a focus for many studies. However, researchers have tended to use mostly mathematical and frequency-based techniques to examine the software artifacts contained within them. Objective: Ther...
Article
Context The recent spike in the growth of online communities is a testament to the technological advancements of the 21st century. People with shared interests, problems, and solutions can now engage via online groups, including the software engineering community. There is evidence, however, to suggest females are often underrepresented in such onl...
Preprint
Reports that communication and behavioral issues contribute to inadequately performing software teams have fuelled a wealth of research aimed at understanding the human processes employed during software development. The increasing level of interest in human issues is particularly relevant for agile and global software development approaches that e...
Preprint
Context: Contemporary software development is typically conducted in dynamic, resource-scarce environments that are prone to the accumulation of technical debt. While this general phenomenon is acknowledged, what remains unknown is how technical debt specifically manifests in and affects software processes, and how the software development techniqu...
Preprint
Context: In seeking to better understand the impact of various human factors in software development, and how teams' attitudes relate to their performance, increasing attention is being given to the study of team-related artefacts. In particular, researchers have conducted numerous studies on a range of team communication channels to explore links...
Preprint
Full-text available
Evidence shows that software development methods, frameworks, and even practices are seldom applied in companies by following the book. Combinations of different methodologies into home-grown processes are being constantly uncovered. Nonetheless, an academic understanding and investigation of this phenomenon is very limited. In 2016, the HELENA ini...
Preprint
In seeking to understand the processes enacted during software development, an increasing number of studies have mined software repositories. In particular, studies have endeavored to show how teams resolve software defects. Although much of this work has been useful, we contend that large-scale examinations across the range of activities that are...
Chapter
Norms are general expectations of behavior in societies. Huge amount of computer-mediated interaction data available in the social media domain provides an opportunity to extract and study communication norms, both to understand their prevalence and to make informed decisions about adopting them. While interactions in social media platforms such as...
Preprint
One of the purported ways to increase productivity and reduce development time is to reuse existing features and modules. If reuse is adopted, logically then, it will have a direct impact on a system's evolution. However, the evidence in the literature is not clear on the extent to which reuse is practiced in real-world projects, nor how it is prac...
Article
Six months ago an important call was made for researchers globally to provide insights into the way Software Engineering is done in their region. Heeding this call, we hereby outline the position Software Engineering in Australasia (New Zealand and Australia). This article first considers the software development methods, practices and tools that a...
Preprint
Text mining approaches are being used increasingly for business analytics. In particular, such approaches are now central to understanding users' feedback regarding systems delivered via online application distribution platforms such as Google Play. In such settings, large volumes of reviews of potentially numerous apps and systems means that it is...
Preprint
Full-text available
Cross-project defect prediction (CPDP) makes use of cross-project (CP) data to overcome the lack of data necessary totrain well-performing software defect prediction (SDP) classifiers in the early stage of new software projects. Since the CP data (knownas the source) may be different from the new project’s data (known as the target), this makes it...
Preprint
In seeking to complement consultants' and tool vendors' reports, there has been an increasing academic focus on understanding the adoption and use of software development methods and practices. We surveyed practitioners working in Brazil, Finland, and New Zealand in a transnational study to contribute to these efforts. Among our findings we observe...
Preprint
End-users play an integral role in identifying requirements, validating software features' usefulness, locating defects, and in software product evolution in general. Their role in these activities is especially prominent in online application distribution platforms (OADPs), where software is developed for many potential users, and for which the tr...
Preprint
It is known that user involvement and user-centered design enhance system acceptance, particularly when end-users' views are considered early in the process. However, the increasingly common method of system deployment, through frequent releases via an online application distribution platform, relies more on post-release feedback from a virtual com...
Preprint
Context: Prior research has established that a small proportion of individuals dominate team communication during global software development. It is not known, however, how these members' contributions affect their teams' knowledge diffusion process, or whether their personality profiles are responsible for their dominant presence. Objective: We se...
Preprint
Context: Post-release user feedback plays an integral role in improving software quality and informing new features. Given its growing importance, feedback concerning security enhancements is particularly noteworthy. In considering the rapid uptake of Android we have examined the scale and severity of Android security threats as reported by its sta...
Preprint
Full-text available
There is growing interest in mining software repository data to understand, and predict, various aspects of team processes. In particular, text mining and natural-language processing (NLP) techniques have supported such efforts. Visualization may also supplement text mining to reveal unique multi-dimensional insights into software teams' behavioral...
Preprint
Context: Individuals' personality traits have been shown to influence their behavior during team work. In particular, positive group attitudes are said to be essential for distributed and global software development efforts where collaboration is critical to project success. Objective: Given this, we have sought to study the influence of global sof...
Preprint
Context: Prior research has established that a few individuals generally dominate project communication and source code changes during software development, regardless of task assignments at project initiation. Objective: While this phenomenon has been noted, prior research has not sought to understand these dominant individuals. Previous work has...
Preprint
Increasing effort is being directed to understanding the personality profiles of highly engaged information systems (IS) developers and the impact of such profiles on development outcomes. However, there has been a lesser degree of attention paid to studying attitudes at a fine-grained level, and relating such attitudes to developers' in-process ac...
Preprint
Software development methods are usually not applied by the book. Companies are under pressure to continuously deploy software products that meet market needs and stakeholders' requests. To implement efficient and effective development processes, companies utilize multiple frameworks, methods and practices, and combine these into hybrid methods. A...
Preprint
There is a growing belief that understanding and addressing the human processes employed during software development is likely to provide substantially more value to industry than yet more recommendations for the implementation of various methods and tools. To this end, considerable research effort has been dedicated to studying human issues as rep...
Preprint
Full-text available
Context: It is not uncommon for a new team member to join an existing Agile software development team, even after development has started. This new team member faces a number of challenges before they are integrated into the team and can contribute productively to team progress. Ideally, each newcomer should be supported in this transition through...
Preprint
Full-text available
Platforms such as Stack Overflow are available for software practitioners to solicit solutions to their challenges and knowledge needs. The practices therein have in recent times however triggered quality related concerns. This is a noteworthy issue when considering that the Stack Overflow platform is used by numerous software developers. Academic...
Article
Full-text available
Requirements prioritisation deals with the ranking or classification of user requirements based on their importance. This process is central to releasing a software product with features most favoured by users. While studies have explored the efforts that are dedicated to this cause, these tend to focus on a subset of the solutions that are availab...
Chapter
App reviews often reflect end-users’ requests, issues or suggestions for supporting app maintenance and evolution. Hence, researchers have evaluated several classification approaches for identifying and classifying such app reviews. However, these classification approaches are driven by manually derived taxonomies. This is a limitation given the bu...
Article
Full-text available
Community Question and Answer (CQA) platforms use the power of online groups to solve problems, or gain information. While these websites host useful information, it is critical that the details provided on these platforms are of high quality, and that users can trust the information. This is particularly necessary for software development, given t...
Article
Context:In this paper, we investigate how developers discuss code smells and anti-patterns across three technical Stack Exchange sites. Understanding developers perceptions of these issues is important to inform and align future research efforts and direct tools vendors to design tailored tools that best suit developers. Method: we mined three Stac...
Article
Full-text available
Aim/Purpose: We aimed to investigate the circumstances under which Kahoot! (a Game-based Student Response System (GSRS)) increases junior and senior Information Science university students’ learning and knowledge retention beyond that of traditional teaching methods. We also explored whether the positive learning impacts of Kahoot! vary as a functi...
Chapter
Full-text available
Hadoop and Spark are popular open-source Apache projects in the Big Data ecosystem. Due to shortcomings associated with Hadoop MapReduce (Hadoop) Apache Spark had gained prominence in the Big Data environment. However, there is little work aimed at evaluating these two Big Data frameworks to provide understanding for when they could be of most util...
Preprint
Full-text available
This research aims to design and develop a new requirements prioritization approach for analyzing and prioritizing stakeholders requirements which are mentioned in the feedback for software products. This paper presents a PhD research agenda and preliminary outcomes from the early analysis. A roadmap to the proposed research methodology that is to...
Preprint
Full-text available
Enterprises are always on the lookout for tools that analyze end-users perspectives on their products. In particular, app reviews have been assessed as useful for guiding improvement efforts and software evolution, however, developers find reading app reviews to be a labor intensive exercise. If such a barrier is eliminated, however, evidence shows...
Conference Paper
Full-text available
Software development methods are usually not applied by the book. Companies are under pressure to continuously deploy software products that meet market needs and stakeholders’ requests. To implement efficient and effective development processes, companies utilize multiple frameworks, methods and practices, and combine these into hybrid methods. A...
Conference Paper
Full-text available
Context: Stack Overflow is a popular community question and answer portal used by practitioners to solve problems during software development. Developers can focus their attention on answers that have been accepted or where members have recorded high votes in judging good answers when searching for help. However, the latter mechanism (votes) can be...
Article
Full-text available
Technology is being increasingly integrated into teaching environments in view of enhancing students’ engagement and motivation. In particular, game-based student response systems have been found to foster students’ engagement, enhance classroom dynamics and improve overall students’ learning experience. This article presents outcomes of research t...
Technical Report
Full-text available
HELENA is a large-scale international survey that aims at collecting data regarding the general use of software and system development approaches in practice. In a 2-year endeavor, a team of up to 75 researchers developed the HELENA instrument and collected data from almost 1,500 project/product teams worldwide. This report presents selected key fi...
Conference Paper
Full-text available
App reviews are important as they contain valuable information for improving the quality of such software systems. To this end, most users providing app reviews expect a response; to the extent that prior research has shown that when developers respond to app reviews these responses improve app ratings and users' satisfaction. However, unfortunatel...
Conference Paper
Full-text available
Context: Contributors to Open Source Software (OSS) development projects use social media to discuss personal and work-related issues. While there has been some interest in studying social media posts of developers, the investigation of the use of this medium by core contributors has not received much attention. Such an investigation could be usefu...
Chapter
Full-text available
Evidence shows that software development methods, frameworks, and even practices are seldom applied in companies by following the book. Combinations of different methodologies into home-grown processes are being constantly uncovered. Nonetheless, an academic understanding and investigation of this phenomenon is very limited. In 2016, the HELENA ini...
Research Proposal
This research aims to design and develop a new requirements prioritization approach for analyzing and prioritizing stakeholders' requirements which are mentioned in the feedback for software products. This paper presents a PhD research agenda and preliminary outcomes from early analysis. A roadmap to the proposed research methodology that is to be...
Conference Paper
Full-text available
This paper investigates how developers discuss code smells and anti-patterns over Stack Overflow to understand better their perceptions and understanding of these two concepts. Understanding developers' perceptions of these issues are important in order to inform and align future research efforts and direct tools vendors in the area of code smells...
Conference Paper
Full-text available
Since software systems are designed to satisfy customers' needs, developers have an obligation to address users' requirements and demands logged via issue trackers and other forums. Having to respond to a large number of requests while developing and perfecting systems presents prioritization challenges, however. Android Operating System (OS) devel...
Conference Paper
Full-text available
One of the purported ways to increase productivity and reduce development time is to reuse existing features and modules. If reuse is adopted, logically then, it will have a direct impact on a system's evolution. However, the evidence in the literature is not clear on the extent to which reuse is practiced in real-world projects, nor how it is prac...
Article
Full-text available
Context: Contemporary software development is typically conducted in dynamic, resource-scarce environments that are prone to the accumulation of technical debt. While this general phenomenon is acknowledged, what remains unknown is how technical debt specifically manifests in and affects software processes, and how the software development techniqu...

Network

Cited By