John Grundy

John Grundy
Monash University (Australia) · Faculty of Information Technology

PhD FASE FIEAust CPEng EngExec

About

701
Publications
192,463
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
10,067
Citations
Introduction
Home Page: https://sites.google.com/site/johncgrundy/ I am Australian Laureate Fellow and Professor of Software Engineering at Monash University. Previously I was the Senior Deputy Dean for the Faculty of IT. Before that I was at Deakin University and was Pro Vice-Chancellor ICT Innovation and Translation. Prior to that I was at the Swinburne University of Technology, Melbourne, Australia and was the Dean of the School of Software and Electrical Engineering.
Additional affiliations
February 2018 - February 2020
Monash University (Australia)
Position
  • Deputy Dean
February 2016 - February 2018
Deakin University
Position
  • Pro Vice-Chancellor ICT Innovation and Translation
December 2009 - February 2016
Swinburne University of Technology
Position
  • Dean of School
Education
February 1991 - June 1993
University of Auckland
Field of study
  • Computer Science

Publications

Publications (701)
Article
Full-text available
Failure to consider the characteristics, limitations, and abilities of diverse end-users during mobile app development may lead to problems for end-users, such as accessibility and usability issues. We refer to this class of problems as human-centric issues. Despite their importance, there is a limited understanding of the types of human-centric is...
Preprint
Full-text available
Software vulnerabilities (SVs) have become a common, serious and crucial concern due to the ubiquity of computer software. Many machine learning-based approaches have been proposed to solve the software vulnerability detection (SVD) problem. However, there are still two open and significant issues for SVD in terms of i) learning automatic represent...
Preprint
Full-text available
Software vulnerabilities existing in a program or function of computer systems are a serious and crucial concern. Typically, in a program or function consisting of hundreds or thousands of source code statements, there are only few statements causing the corresponding vulnerabilities. Vulnerability labeling is currently done on a function or progra...
Preprint
Despite being one of the largest and most popular projects, the official Android framework has only provided test cases for less than 30% of its APIs. Such a poor test case coverage rate has led to many compatibility issues that can cause apps to crash at runtime on specific Android devices, resulting in poor user experiences for both apps and the...
Article
Interactive visualizations play a key part in the exploration and analysis of data, and in the creation of visual data stories. This paper describes a new graph-based framework for developing interactive visualizations for creating coherent visual data stories. We have realized our framework in a prototype tool named Gravity++. Gravity++ uses a nov...
Article
Stack Overflow has been heavily used by software developers to seek programming-related information. More and more developers use Community Question and Answer forums, such as Stack Overflow, to search for code examples of how to accomplish a certain coding task. This is often considered to be more efficient than working from source documentation,...
Article
Full-text available
Artificial intelligence (AI) offers much promise for improving healthcare. However, it runs the looming risk of causing individual and societal harms; for instance, exacerbating inequalities amongst minority groups, or enabling compromises in the confidentiality of patients’ sensitive data. As such, there is an expanding, unmet need for ensuring AI...
Article
Full-text available
Human values (e.g., pleasure, privacy, and social justice) are what a person or a society considers important. The inability to address them in software-intensive systems can result in numerous undesired consequences (e.g., financial losses) for individuals and communities. Various solutions (e.g., methodologies, techniques) are developed to help “...
Article
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...
Article
In recent years, edge computing has become the ideal computing paradigm for various smart systems, such as smart logistics, smart health and smart transportation. This is due to its advantages including fast response times, energy efficiency and cost effectiveness over conventional cloud computing platforms. However, running complex computational s...
Preprint
Full-text available
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...
Preprint
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...
Conference Paper
Full-text available
The Western Flower Thrip (Frankliniella occidentalis) (WFT) is a major insect pest for Victorian strawberry growers and is typically controlled using biological control agents (e.g., predatory Orius tantillus and Neoseiulus cucumeris). The simulation of WFT populations may help farmers to quantify the spatial and temporal dynamics of WFTs and can b...
Preprint
Full-text available
To satisfy varying customer needs, device vendors and OS providers often rely on the open-source nature of the Android OS and offer customized versions of the Android OS. When a new version of the Android OS is released, device vendors and OS providers need to merge the changes from the Android OS into their customizations to account for its bug fi...
Preprint
Full-text available
With over 500,000 commits and more than 700 contributors, the Android platform is undoubtedly one of the largest industrial-scale software projects. This project provides the Android API, and developers heavily rely on this API to develop their Android apps. Unfortunately, because the Android platform and its API evolve at an extremely rapid pace,...
Preprint
Full-text available
Fragmentation is a serious problem in the Android ecosystem. This problem is mainly caused by the fast evolution of the system itself and the various customizations independently maintained by different smartphone manufacturers. Many efforts have attempted to mitigate its impact via approaches to automatically pinpoint compatibility issues in Andro...
Preprint
The ongoing COVID-19 pandemic highlights the importance of dashboards for providing critical real-time information. In order to enable people to obtain information in time and to understand complex statistical data, many developers have designed and implemented public-oriented COVID-19 "information dashboards" during the pandemic. However, developm...
Article
Being able to access software in daily life is vital for everyone, and thus accessibility is a fundamental challenge for software development. However, given the number of accessibility issues reported by many users, e.g., in app reviews, it is not clear if accessibility is widely integrated into current software projects and how software projects...
Conference Paper
Mobile health (mHealth) apps have become ubiquitous and offer several different features to provide a better health outcome for end-users. While the availability of thousands of mHealth apps offers a great many options for consumers, they also introduce several challenges if needing to use more than one app. We designed an anonymous survey based on...
Preprint
Full-text available
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...
Article
Accurate identification of insect pests is essential in crop management as they are one of the primary causes of yield losses. However, differences between insect species demand different pest control strategies. Hence, research on new technology for the fine-grained classification of insect pests is potentially important. Morphologically similar m...
Article
Many scientific and practical areas have shown increasing interest in reaping the benefits of blockchain technology to empower software systems. However, the unique characteristics and requirements associated with Blockchain Based Software (BBS) systems raise new challenges across the development lifecycle that entail an extensive improvement of co...
Article
Full-text available
Most existing (semi-)automated requirements formalisation techniques assume requirements to be specified in predefined templates. They also employ template-specific transformation rules to provide the corresponding formal representation. Hence, such techniques have limited expressiveness and more importantly require system engineers to re-write the...
Article
The selfdestruct function is provided by Ethereum smart contracts to destroy a contract on the blockchain system. However, it is a double-edged sword for developers. On the one hand, using the selfdestruct function enables developers to remove smart contracts ( SCs ) from Ethereum and transfers Ethers when emergency situations happen, e.g., being a...
Preprint
Full-text available
Failure to consider the characteristics, limitations, and abilities of diverse end-users during mobile apps development may lead to problems for end-users such as accessibility and usability issues. We refer to this class of problems as human-centric issues. Despite their importance, there is a limited understanding of the types of human-centric is...
Conference Paper
Full-text available
A growing number of software-intensive systems are being accused of violating or ignoring human values (e.g., privacy, inclusion, and social responsibility), and this poses great difficulties to individuals and society. Such violations often occur due to the solutions employed and decisions made by developers of such systems that are misaligned wit...
Preprint
Full-text available
A growing number of software-intensive systems are being accused of violating or ignoring human values (e.g., privacy, inclusion, and social responsibility), and this poses great difficulties to individuals and society. Such violations often occur due to the solutions employed and decisions made by developers of such systems that are misaligned wit...
Conference Paper
Full-text available
Human values such as integrity, privacy, curiosity, security, and honesty are guiding principles for what people consider important in life. Such human values may be violated by mobile software applications (apps), and the negative effects of such human value violations can be seen in various ways in society. In this work, we focus on the human val...
Preprint
Full-text available
Human values such as integrity, privacy, curiosity, security, and honesty are guiding principles for what people consider important in life. Such human values may be violated by mobile software applications (apps), and the negative effects of such human value violations can be seen in various ways in society. In this work, we focus on the human val...
Preprint
Mobile health (mHealth) apps have become ubiquitous and have enabled self-monitoring of health and in turn are helping provide a better health outcome for end-users. The availability of several thousands of mHealth apps provides numerous options, but also introduces several challenges when considering the use of more than one app. Although past wor...
Article
Full-text available
Background Caregiving in stroke is complex, with most carers having little to no preparation to care for individuals with a history of stroke, leading to emotional impact. Technologies such as Mobile Health can provide the carer with real-time support and prepare the carer to assume their new roles and responsibilities. Objectives To perform a heu...
Preprint
(1) Background: Existing research has demonstrated the potential of mHealth apps in improving the caregiving outcomes of stroke. Since several apps were published in commercially available app stores without explaining their design and evaluation processes, it is necessary to identify the usability and user experience issues to promote long-term ad...
Article
Context: Deep learning (DL) techniques have gained significant popularity among software engineering (SE) researchers in recent years. This is because they can often solve many SE challenges without enormous manual feature engineering effort and complex domain knowledge. Objective: Although many DL studies have reported substantial advantages over...
Article
Predictive models are one of the most important techniques that are widely applied in many areas of software engineering. There have been a large number of primary studies that apply predictive models and that present well-performed studies in various research domains, including software requirements, software design and development, testing and de...
Article
Full-text available
Background Caregivers often use the internet to access information related to stroke care to improve preparedness, thereby reducing uncertainty and enhancing the quality of care. Method Social media communities used by caregivers of people affected by stroke were identified using popular keywords searched for using Google. Communities were filtere...
Conference Paper
Full-text available
Many software systems fail to meet the needs of the diverse end-users in society and are prone to pose problems, such as accessibility and usability issues. Some of these problems (partially) stem from the failure to consider the characteristics, limitations, and abilities of diverse end-users during software development. We refer to this class of...
Article
Purpose Human-centric characteristics of the end-users of software systems, such as gender, age, emotions, personality, language, culture, and physical and mental impairments, play an essential role in the uptake and usage of the software. Current software tools suffer from the lack of in-depth elicitation and understanding of these human-centric r...
Preprint
Full-text available
While extremely valuable to achieve advanced functions, mobile phone sensors can be abused by attackers to implement malicious activities in Android apps, as experimentally demonstrated by many state-of-the-art studies. There is hence a strong need to regulate the usage of mobile sensors so as to keep them from being exploited by malicious attacker...
Preprint
Full-text available
Many software systems fail to meet the needs of the diverse end-users in society and are prone to pose problems, such as accessibility and usability issues. Some of these problems (partially) stem from the failure to consider the characteristics, limitations, and abilities of diverse end-users during software development. We refer to this class of...
Article
In 2006, Geoffrey Hinton proposed the concept of training “Deep Neural Networks (DNNs)” and an improved model training method to break the bottleneck of neural network development. More recently, the introduction of AlphaGo in 2016 demonstrated the powerful learning ability of deep learning and its enormous potential. Deep learning has been increas...
Article
During software development and maintenance, defect localization is an essential part of software quality assurance. Even though different techniques have been proposed for defect localization, i.e., information retrieval (IR)-based techniques and spectrum-based techniques, they can only work after the defect has been exposed, which can be too late...
Article
Full-text available
Context The reengineering process of large data-intensive legacy software applications (“legacy applications” for brevity) to cloud platforms involves different interrelated activities. These activities are related to planning, architecture design, re-hosting/lift-shift, code refactoring, and other related ones. In this regard, the cloud computing...
Article
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...
Article
Full-text available
Globally, there is a rise in incident cases of stroke, particularly in low-and middle-income countries, due to obesity-related and lifestyle risk factors, including health issues such as high cholesterol, diabetes and hypertension. Since the early 20th century, stroke mortality has declined due to proper management of the risk factors and improved...
Article
Full-text available
Software development is a very broad activity that captures the entire life cycle of a software, which includes designing, programming, maintenance and so on. In this study, we focus on the maintenance-related concerns of the post-deployment of smart contracts. Smart contracts are self-executed programs that run on a blockchain. They cannot be modi...
Article
Full-text available
Insects are the largest, most diverse organism class. Their key role in many ecosystems means that it is important they are identified correctly for effective management. However, insect species identification is challenging and labour-intensive. This has prompted increasing interest in image-based systems for rapid, reliable identification support...
Article
Collaborative editing questions and answers plays an important role in quality control of Mathematics StackExchange which is a math Q&A Site. Our study of post edits in Mathematics Stack Exchange shows that there is a large number of math-related edits about latexifying formulas, revising LaTeX and converting the blurred math formula screenshots to...
Preprint
Full-text available
Background: Globally, stroke is a leading cause of death and disability, with most care undertaken by caregivers who are generally family and friends without prior experience of care. The lack of experience or unpreparedness results in feelings of uncertainty, burnout, anxiety, burden, etc. Hence, it is necessary to identify the needs of caregivers...
Conference Paper
Full-text available
The elicitation of end-users' human values - such as freedom, honesty, transparency, etc. - is important in the development of software systems. We carried out two preliminary Q-studies to understand (a) the general human value opinion types of eHealth applications (apps) end-users (b) the eHealth domain human value opinion types of eHealth apps en...
Preprint
The elicitation of end-users' human values - such as freedom, honesty, transparency, etc. - is important in the development of software systems. We carried out two preliminary Q-studies to understand (a) the general human value opinion types of eHealth applications (apps) end-users (b) the eHealth domain human value opinion types of eHealth apps en...