About
185
Publications
204,643
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
4,335
Citations
Introduction
Human and socio-technical aspects of software engineering/AI, agile software development, large-scale agile, self-organising teams, and more using Socio-technical Grounded Theory, case studies, survey research, and quantitative analysis.
Current projects:
- Augmented Agile
- Ethics of AI:developer perspective
- Socio-technical Grounded Theory
- Human aspects in SE (empathy, emotions, motivation, personality)
- Human values in SE
- Affective Agile RE
Publications
Publications (185)
Grounded Theory (GT), a sociological research method designed to study social phenomena, is increasingly being used to investigate the human and social aspects of software engineering (SE). However, being written by and for sociologists, GT is often challenging for a majority of SE researchers to understand and apply. Additionally, SE researchers a...
The predicted increase in demand for data-intensive solution development is driving the need for software, data, and domain experts to effectively collaborate in multi-disciplinary data-intensive software teams (MDSTs). We conducted a socio-technical grounded theory study through interviews with 24 practitioners in MDSTs to better understand the ch...
Ethics in AI has become a debated topic of public and expert discourse in recent years. But what do people who build AI - AI practitioners - have to say about their understanding of AI ethics and the challenges associated with incorporating it in the AI-based systems they develop? Understanding AI practitioners' views on AI ethics is important as t...
This book is a timely and practical guide to conducting qualitative research with a socio-technical approach. It covers the foundations of research including research design, research philosophy, and literature review; describes qualitative data collection, qualitative data preparation and filtering; explains qualitative data analysis using the tec...
Introduction
Recent developments in the field of large language models have showcased impressive achievements in their ability to perform natural language processing tasks, opening up possibilities for use in critical domains like telehealth. We conducted a pilot study on the opportunities of utilizing large language models, specifically GPT-3.5, G...
In this study, a novel approach for the environmentally conscious extraction of titanium dioxide from ilmenite ore while limiting the environmental impact and enhancing the advantage from an economic process. Leaching conditions were tested with different acids for effective separation of the TiO2 and were optimized concerning different experimenta...
John Grundy, Tanjila Kanij, Rashina Hoda, Hourieh Khalajzadeh, Anuradha Madugalla, and Jennifer McIntosh
Today, ethical issues surrounding AI systems are increasingly prevalent, highlighting the critical need to integrate AI ethics into system design to prevent societal harm. Raising awareness and fostering a deep understanding of AI ethics among software practitioners is essential for achieving this goal. However, research indicates a significant gap...
AI leaders and companies have much to offer to AI/ML practitioners to support them in addressing and mitigating biases in the AI/ML systems they develop. AI/ML practitioners need to receive the necessary resources and support from experts to develop unbiased AI/ML systems. However, our studies have revealed a discrepancy between practitioners' unde...
Like all people, software developers feel several emotions – positive and negative – when working on projects. But what are the underlying reasons for these emotions? Are their emotions linked to their work satisfaction and productivity? Can we boost developer satisfaction and productivity by remedying the causes of negative emotions? Agile is the...
This chapter provides an overview of socio-technical grounded theory (STGT) for conducting qualitative research within qualitative and mixed-methods research studies. First, we will learn about the underlying socio-technical research framework which acts as the sweet spot for applying STGT and more generally for conducting qualitative empirical res...
This chapter provides an overview of the suite of traditional grounded theory research methods. First, the ideas of research and research methods is introduced. This is followed by presenting the origin of grounded theory from sociology including its overviews and evolution into three versions: Glaserian GT, Strauss-Corbinian GT, and Constructivist...
In this chapter, we will begin by addressing the attitude and approach to theory development in software engineering. Then we will learn about theory development using socio-technical grounded theory (STGT), including how to select between the emergent and structure modes. This is followed by the common procedures of theory development, including t...
In this chapter, we will learn about what is theory? ranging from random and education guesses, research-based predictions to scientific theories and laws, including what makes hard or soft theories. Then we will learn about socio-technical grounded theories as outcomes of a full STGT study, followed by learning about the four genres of theories as...
Qualitative data analysis forms the heart of socio-technical grounded theory (STGT). In this chapter, we will start by learning about the basics of qualitative data analysis and preparing for qualitative data analysis as it applies in STGT, including the mindset, approach, and worldview applied to analysis. This is followed by a visual notes-taking...
In this chapter, we will explore possible future directions in qualitative research. First, we will consider an overview of the opportunities, risks, and limitations associated with the possible use of large language models (LLMs) in qualitative research. Next, we will explore capabilities of ChatGPT in analysing qualitative data and formulating th...
This chapter covers the fundamentals of research philosophy in general and as applied to socio-technical grounded theory (STGT) studies. First, it addresses why being aware of research philosophy and its fundamental building blocks is important. Next, it presents simple definitions and descriptions of these fundamental philosophical concepts such a...
Qualitative data collection and analysis also involves data preparation and filtering. In this chapter, we will learn about data preparation including preparing interview, observation, recording, survey, and text-based data and their storage and organisation. Then we will learn about data filtering, including the filtering key information, contextu...
In this chapter, we will learn about two groups of data collection techniques: custom-data and existing-data collection. Then we will delve into the details of popular collection techniques such as pre-interview questionnaires, semi-structured interviews, and observations. We will look into other sources and collection techniques such as focus grou...
This chapter focuses on describing how to go about designing a research project. First, we will learn about framing the research study as a project. Then, we will be introduced to the research design canvas. While the details are specific to socio-technical grounded theory (STGT) studies, the research design canvas or template can be used for resea...
In this chapter, we will learn about the different types of literature reviews possible within and alongside a socio-technical grounded theory (STGT) study. First, we will address why a literature review is needed in a research project, listing some of its unique advantages in an STGT study. Next, we will learn about the two literature reviews—the...
This chapter explains the motivations behind writing this book, who the book is for, how to use the book, and the role of the book in relation to research practice.
In this chapter, we will learn about the general evaluation approach to be applied when evaluating research applications and outcomes which involves assessing reviewer suitability, acknowledging the default review position, establishing an acceptance threshold, and cultivating a constructive review style. Then we will learn about the two sets of ev...
Qualitative data is the main currency of the trade in a socio-technical grounded theory (STGT) study and in qualitative research in general. The quality of a STGT study depends first and foremost on the quality of the data collected. In this chapter, we will learn about popular sampling techniques such as convenience, snowball, random, representati...
The COVID-19 pandemic changed the way we live, work and the way we conduct research. With the restrictions of lockdowns and social distancing, various impacts were experienced by many software engineering researchers, especially whose studies depend on human participants. We conducted a mixed methods study to understand the extent of this impact. T...
Background: Research shows that emotional intelligence (EI) should be used alongside cognitive intelligence during requirements change (RC) handling in Software Engineering (SE), especially in agile settings. Objective: We wanted to study the role of EI in-depth during RC handling. Method: We conducted a mixed-methods study (an interview study foll...
The term ethics is widely used, explored, and debated in the context of developing Artificial Intelligence (AI) based software systems. In recent years, numerous incidents have raised the profile of ethical issues in AI development and led to public concerns about the proliferation of AI technology in our everyday lives. But what do we know about t...
Trust and trustworthiness are central concepts in contemporary discussions about the ethics of and qualities associated with artificial intelligence (AI) and the relationships between people, organisations and AI. In this article we develop an interdisciplinary approach, using socio-technical software engineering and design anthropological approach...
The term ethics is widely used, explored, and debated in the context of developing Artificial Intelligence (AI) based software systems. In recent years, numerous incidents have raised the profile of ethical issues in AI development and led to public concerns about the proliferation of AI technology in our everyday lives. But what do we know about t...
Software engineering (SE) requires developers to collaborate with stakeholders, and understanding their emotions and perspectives is often vital. Empathy is a concept characterising a person’s ability to understand and share the feelings of another. However, empathy continues to be an under-researched human aspect in SE. We studied how empathy is p...
Context
Requirements engineering (RE) is an important part of Software Engineering (SE), consisting of various human-centric activities that require the frequent collaboration of a variety of roles. Prior research has shown that personality is one such human aspect that has a huge impact on the success of a software project. However, a limited numb...
The recent surge in the integration of Large Language Models (LLMs) like ChatGPT into qualitative research in software engineering, much like in other professional domains, demands a closer inspection. This vision paper seeks to explore the opportunities of using LLMs in qualitative research to address many of its legacy challenges as well as poten...
Ethics in AI has become a debated topic of public and expert discourse in recent years. But what do people who build AI – AI practitioners – have to say about their understanding of AI ethics and the challenges associated with incorporating it into the AI-based systems they develop? Understanding AI practitioners’ views on AI ethics is important as...
The recent surge in the integration of Large Language Models (LLMs) like ChatGPT into qualitative research in software engineering, much like in other professional domains, demands a closer inspection. This vision paper seeks to explore the opportunities of using LLMs in qualitative research to address many of its legacy challenges as well as poten...
BACKGROUND
It is widely accepted that the COVID-19 pandemic has accelerated the era of virtual healthcare delivery, but there has been limited exploration of patient and clinician experiences of telehealth.
OBJECTIVE
To understand the telehealth experiences of patients and healthcare practitioners (HCP) in palliative care.
METHODS
Participants we...
Context
Responding to change and continuously improving processes, practices, and products are core to agile software development. It is no different in large-scale agile, where multiple software development teams need to respond both to changes in their external environments and to changes within the organization.
Objective
With this study, we ai...
Sedimentary rocks of the Upper Cretaceous, Middle Miocene, Plio-Pleistocene, and Quaternary periods are present in the Red Sea coastal plain from south of El Quseir to Marsa Alam, and they are dispersed over Late Proterozoic basement rocks. The zinc and lead ores intercalated with celestite in Wadi Essel are dispersed throughout the adjacent rocks...
Agile methods have served software engineering well for over two decades, improving responsiveness to change, empowering teams, and facilitating better communication among various project stakeholders. But is it enough to lead us through the next era where balancing business value with human values has become more relevant than ever, especially in...
It is assumed that digital tools with ubiquitous classroom use have affordances for student agency and a range of social skills. However, few studies have explored the generalised impact of everyday digital classrooms on self-regulation and empathy, perspective taking and prosocial skills. Ten and 11 year old students’ ( n = 115) ratings of self-re...
Ilmenite ores have been extensively studied for biological activity, especially antibacterial and antifungal activities. Herein, we report a green approach to fabricating Fe-O/Ti-O composite from ilmenite ore. The composite was synthesized by a one-step reaction of ilmenite at 900°C in 2 h, the raw composite was, then, ground by a ball-milled proce...
Empathy is widely used in many disciplines such as philosophy, sociology, psychology, health care. Ability to empathise with software end-users seems to be a vital skill software developers should possess. This is because engineering successful software systems involves not only interacting effectively with users but also understanding their true n...
bold xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Background:
Requirements Changes (RCs) – the additions/modifications/deletions of functional/non-functional requirements in software products – are challenging for software practitioners to handle. Handling some changes may significantly impact the emoti...
Motivation has been identified as one of the key human aspects for software practitioners involved in Software Engineering (SE) activities to complete their tasks successfully. While prior research on motivation in SE exists, empirical studies on its influence specifically on RE are limited. As requirements engineering (RE)-related activities are a...
Context: Requirements engineering (RE) is an important part of Software Engineering (SE), consisting of various human-centric activities that require the frequent collaboration of a variety of roles. Prior research has shown that personality is one such human aspect that has a huge impact on the success of a software project. However, a limited num...
Grounded Theory (GT), a sociological research method designed to study social phenomena, is increasingly being used to investigate the human and social aspects of software engineering (SE). However, being written by and for sociologists, GT is often challenging for a majority of SE researchers to understand and apply. Additionally, SE researchers a...
The predicted increase in demand for data-intensive solution development is driving the need for software, data, and domain experts to effectively collaborate in multi-disciplinary data-intensive software teams (MDSTs). We conducted a socio-technical grounded theory study through interviews with 24 practitioners in MDSTs to better understand the ch...
Self-assignment, where software developers choose their own tasks, is a common practice in agile teams. However, it is not known why developers select certain tasks. It is important for managers to be aware of these reasons to ensure sustainable self-assignment practices. We investigated developers’ preferences while they are choosing tasks for the...
Over the last two decades, agile software development has gained popularity among software engineering researchers and practitioners. However, the development and use of theories in agile research remain relatively low. While analyzing publications on agile software development in the Scopus database from the last decade, we found that only 7% of t...
Requirements Engineering (RE)-related activities require high collaboration between various roles in software engineering (SE), such as requirements engineers, stakeholders, developers, etc. Their demographics, views, understanding of technologies, working styles, communication and collaboration capabilities make RE highly human dependent. Identify...
Background: Requirements changes (RCs) are inevitable in Software Engineering. Research shows that emotional intelligence (EI) should be used alongside agility and cognitive intelligence during RC handling. Objective: We wanted to study the role of EI in-depth during RC handling. Method: We conducted a socio-technical grounded theory study with eig...
The term 'ethics' is widely used, explored, and debated in the context of developing Artificial Intelligence (AI) systems. In recent years, there have been numerous incidents that have raised the profile of ethical issues in AI development and led to public concerns about the proliferation of AI technology in our everyday lives. But what do we know...
Background: Requirements Changes (RCs) -- the additions/modifications/deletions of functional/non-functional requirements in software products -- are challenging for software practitioners to handle. Handling some changes may significantly impact the emotions of the practitioners. Objective: We wanted to know the key challenges that make RC handlin...
Context
Software developers work on various tasks and activities that contribute towards creating and maintaining software applications, frameworks, or other software components. These include technical (e.g., writing code and fixing bugs) and non-technical activities (e.g., communicating within or outside teams to understand, clarify, and resolve...
In large-scale agile software development, many teams work together to achieve overarching project goals. The more teams, the greater the coordination requirements. Despite the growing popularity of large-scale agile, inter-team coordination is challenging to practice and research. We conducted a case study over 1.5 years in a large-scale software...
italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Background:
A preliminary study we conducted showed that software practitioners respond to requirements changes (RCs) with different emotions, and that their emotions vary at stages of the RC handling life cycle, such as
receiving, developing,
and
d...
In recent years, Agile methods have continued to grow into a popular means of modulating team productivity, even garnering a presence in non-software development related industries. The uptake of Agile methods has been driven by their flexibility, making them more suitable for many teams when compared to traditional approaches. However, an inevitab...
Human values, or what people hold important in their life, such as freedom, fairness, and social responsibility, often remain unnoticed and unattended during software development. Ignoring values can lead to values violations in software that can result in financial losses, reputation damage, and widespread social and legal implications. However, e...
Agile methods are predominantly focused on delivering business values. But can Agile methods be adapted to effectively address and deliver human values such as social justice, privacy, and sustainability in the software they produce? Human values are what an individual or a society considers important in life. Ignoring these human values in softwar...
Background: Scrum is the most commonly used agile software development method, and the role of the Scrum Master (SM) in a Scrum environment is vital. Therefore, through an industry based university course for final year undergraduate and masters students, we aimed to give students both theoretical and practical understanding of the role of SM via h...
Requirements Engineering (RE) requires the collaboration of various roles in SE, such as requirements engineers, stakeholders and other developers, and it is thus a highly human dependent process in software engineering (SE). Identifying how human aspects such as personality, motivation, emotions, communication, gender, culture and geographic distr...
Requirements Engineering (RE) is a process that requires high collaboration between various roles in software engineering (SE), such as requirements engineers, stakeholders, developers, etc. Their demographics, views, understanding of technologies, working styles, communication and collaboration capabilities make RE highly human dependent. Identify...
Background: A preliminary study we conducted showed that software practitioners respond to requirements changes(RCs) with different emotions, and that their emotions vary at stages of the RC handling life cycle, such as receiving, developing, and delivering RCs. Objective: We wanted to study more comprehensively how practitioners emotionally respon...
Originally, developers aimed to identify most software requirements upfront in software development projects. However, agile methods explicitly encourage software requirements to be changed throughout development, i.e. many Requirements Changes (RCs) occur. Objective: The objective of this study is to better understand RCs and produce a taxonomy of...
Self-assignment, where software developers choose their own tasks, is a common practice in agile teams. However, it is not known why developers select certain tasks. It is important for managers to be aware of these reasons to ensure sustainable self-assignment practices. We investigated developers' preferences while they are choosing tasks for the...
In recent years, Agile methods have continued to grow into a popular means of modulating team productivity, even garnering a presence in non-software development related industries. The uptake of Agile methods has been driven by their flexibility, making them more suitable for many teams when compared to traditional approaches. However, an inevitab...
Grounded Theory, while becoming increasingly popular in software engineering, is also one of the most misunderstood, misused, and poorly presented and evaluated method in
software engineering. When applied well, GT results in dense
and valuable explanations of how and why phenomena occur in
practice. GT can be applied as a full research method lead...
Scrum, the most popular agile method and project management framework, is widely reported to be used, adapted, misused, and abused in practice. However, not much is known about how Scrum actually works in practice, and critically, where, when, how and why it diverges from Scrum by the book. Through a Grounded Theory study involving semi-structured...
Agile teams are not meant to have project managers. Instead, agile methods such as Scrum and XP define roles such as product owner, scrum master, and coach. Studies have uncovered the existence of the project manager in agile projects, pointing to disconnect between theory and practice. To address this gap, a Grounded Theory study with a mixed meth...