Arif Nurwidyantoro

dblp:117/9217 · DBLP profile ↗
← Back
15ranked-venue papers
4as first author
10since 2021 · last 2025
0000-0001-8683-3078ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 13 · 4 first-author · 8 since 2021Human-computer interaction and ubiquitous computing · 2 · 1 since 2021Databases, data management, data science and information retrieval · 1 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1 · 1 since 2021
YearPublicationVenuePosition
2025 Privacy Patterns and Objectives for Legally Compliant Software Based on the Indonesia's PDP Law
Guntur Budi Herwanto, Arif Nurwidyantoro, Annisa Maulida Ningtyas, Muhammad Oriza Nurfajri, Gerald Quirchmayr, A Min Tjoa
iiWAS2
2025 Venturing ChatGPT's lens to explore human values in software artifacts: a case study of mobile APIs
abstract
Software is designed for humans and must account for their values. However, current research and practice focus on a narrow range of well-explored values, e.g. security, overlooking a more comprehensive perspective. Those exploring a broader array of values rely on manual identification, which is labour-intensive and prone to human bias. Moreover, existing methods offer limited reliability as they fail to explain their findings. In this paper, we propose leveraging the reasoning capabilities of Large Language Models (LLMs) for automated inference about values. This allows for not only detecting values but also explaining how they are expressed in the software. We aim to examine the effectiveness of LLMs, specifically ChatGPT (Chat Generative Pre-Trained Transformer), in automated detection and explanation of values in software artifacts. Using ChatGPT, we investigate how mobile APIs align with human values based on their documentation. Human evaluation of ChatGPT's findings shows a reciprocal shift in understanding values, with both ChatGPT and experts adjusting their assessments through dialogue. While experts recognise ChatGPT's potential for revealing values, emphasis is placed on human involvement to enhance the accuracy of the findings by detecting and eliminating convincing but inaccurate explanations provided by the language model due to potential hallucinations or confabulations.
Davoud Mougouei, Saima Rafi, Mahdi Fahmideh, Elahe Mougouei, Javed Ali Khan, Khanh Hoa Dam, Arif Nurwidyantoro, Michel R. V. Chaudron
Behav. Inf. Technol.7
2023 Integrating human values in software development using a human values dashboard
abstract
Abstract There is a growing awareness of the importance of human values in software systems. However, limited tools are available to support the integration of human values during software development. Most of these tools are focused on concepts related to specific, well-known human values (e.g., privacy, security) in software engineering. This paper aims to (partially) address this gap by developing a human values dashboard. We conducted a multi-stage study to design, implement and evaluate a human values dashboard. First, an exploratory study was conducted by interviewing 15 software practitioners to investigate the possibility of using a human values dashboard to help address human values in software development, its potential benefits, and required features. Second, we experimented with four Machine Learning approaches to detect the presence of human values in issue discussions. We used the best approach to develop a human values dashboard for software development. The dashboard displays whether any human values are present in each issue discussion. Finally, we interviewed ten different practitioners to investigate the usefulness of the dashboard in practice. This study found that the human values dashboard could help raise awareness, focus attention, and prioritise issues based on the presence of values. This study also identified two potential challenges to the adoption of the dashboard. First, the possible incorrect issues description that can mislead the automated values identification in the dashboard. Second, the lack of willingness of a company to adopt the dashboard.
Arif Nurwidyantoro, Mojtaba Shahin, Michel R. V. Chaudron, Harsha Perera, Rifat Ara Shams, Jon Whittle 0001
Empir. Softw. Eng.1
2023 Investigating end-users' values in agriculture mobile applications development: An empirical study on Bangladeshi female farmers
Rifat Ara Shams, Mojtaba Shahin, Gillian C. Oliver, Harsha Perera, Jon Whittle 0001, Arif Nurwidyantoro
J. Syst. Softw.6
2022 Human values in software development artefacts: A case study on issue discussions in three Android applications
Arif Nurwidyantoro, Mojtaba Shahin, Michel R. V. Chaudron, Rifat Ara Shams, Harsha Perera, Gillian C. Oliver, Jon Whittle 0001
Inf. Softw. Technol.1
2022 Evaluating the layout quality of UML class diagrams using machine learning
abstract
UML is the de facto standard notation for graphically representing software. UML diagrams are used in the analysis, construction, and maintenance of software systems. Mostly, UML diagrams capture an abstract view of a (piece of a) software system. A key purpose of UML diagrams is to share knowledge about the system among developers. The quality of the layout of UML diagrams plays a crucial role in their comprehension. In this paper, we present an automated method for evaluating the layout quality of UML class diagrams. We use machine learning based on features extracted from the class diagram images using image processing. Such an automated evaluator has several uses: (1) From an industrial perspective, this tool could be used for automated quality assurance for class diagrams (e.g., as part of a quality monitor integrated into a DevOps toolchain). For example, automated feedback can be generated once a UML diagram is checked in the project repository. (2) In an educational setting, the evaluator can grade the layout aspect of student assignments in courses on software modeling, analysis, and design. (3) In the field of algorithm design for graph layouts, our evaluator can assess the layouts generated by such algorithms. In this way, this evaluator opens up the road for using machine learning to learn good layouting algorithms. We use machine learning techniques to build (linear) regression models based on features extracted from the class diagram images using image processing. As ground truth, we use a dataset of 600+ UML Class Diagrams for which experts manually label the quality of the layout. This paper makes the following contributions: (1) We show the feasibility of the automatic evaluation of the layout quality of UML class diagrams. (2) We analyze which features of UML class diagrams are most strongly related to the quality of their layout. (3) We evaluate the performance of our layout evaluator. (4) We offer a dataset of labeled UML class diagrams. In this dataset, we supply for every diagram the following information: (a) a manually established ground truth of the quality of the layout, (b) an automatically established value for the layout-quality of the diagram (produced by our classifier), and (c) the values of key features of the layout of the diagram (obtained by image processing). This dataset can be used for replication of our study and others to build on and improve on this work. Editor’s note: Open Science material was validated by the Journal of Systems and Software Open Science Board..
Gustav Bergström, Fadhl Hujainah, Truong Ho-Quang, Rodi Jolak, Satrio Adi Rukmono, Arif Nurwidyantoro, Michel R. V. Chaudron
J. Syst. Softw.6
2022 Role stereotypes in software designs and their evolution
Truong Ho-Quang, Arif Nurwidyantoro, Satrio Adi Rukmono, Michel R. V. Chaudron, Fabian Fröding, Duy Nguyen Ngoc
J. Syst. Softw.2
2022 Human Values in Software Engineering: Contrasting Case Studies of Practice
abstract
The growing diffusion of software in society and its influence on people demands from its creators that their work carefully considers human values such as transparency, social responsibility, and equality. But how do software practitioners address human values in software engineering practice? We interviewed 31 software practitioners from two organizations, each having a strong values framework, with the aim to understand: (a) practitioners’ perceptions of human values and their role in software engineering; (b) practices that practitioners use to address human values in software; and (c) challenges they face during this process. We report our findings from two contrasting case organizations on how practitioners “engineer” values in their unique organizational settings. We found evidence that organizational culture significantly contributes to how values are addressed in software. We summarize recommendations from the practitioners to support proactive engineering of values-conscious software.
Harsha Perera, Jon Whittle 0001, Arif Nurwidyantoro, Rashina Hoda, Rifat Ara Shams, Gillian C. Oliver
IEEE Trans. Software Eng.4
2022 How Can Human Values be Addressed in Agile Methods? A Case Study on SAFe
abstract
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 software can pose difficulties or risks for all stakeholders (e.g., user dissatisfaction, reputation damage, financial loss). To answer this question, we selected the Scaled AgileFramework (SAFe), one of the most commonly used Agile methods in the industry, and conducted a qualitative case study to identify possible intervention points within SAFe that are the most natural to address and integrate human values in software. We present five high-level empirically-justified sets of interventions in SAFe: artefacts, roles, ceremonies, practices, and culture. We elaborate how some currentAgile artefacts (e.g., user story), roles (e.g., product owner), ceremonies (e.g., stand-up meeting), and practices (e.g., business-facing testing) in SAFe can be modified to support the inclusion of human values in software. Further, our study suggests new and exclusive values-based artefacts (e.g., legislative requirement), ceremonies (e.g., values conversation), roles (e.g., values champion), and cultural practices (e.g., induction and hiring) to be introduced in SAFe for this purpose. Guided by our findings, we argue that existingAgile methods can account for human values in software delivery with some evolutionary adaptations.
Mojtaba Shahin, Rashina Hoda, Jon Whittle 0001, Harsha Perera, Arif Nurwidyantoro, Rifat Ara Shams, Gillian C. Oliver
IEEE Trans. Software Eng.6
2021 Towards a Human Values Dashboard for Software Development: An Exploratory Study
abstract
Background: There is a growing awareness of the importance of human values (e.g., inclusiveness, privacy) in software systems. However, there are no practical tools to support the integration of human values during software development. We argue that a tool that can identify human values from software development artefacts and present them to varying software development roles can (partially) address this gap. We refer to such a tool as human values dashboard. Further to this, our understanding of such a tool is limited. Aims: This study aims to (1) investigate the possibility of using a human values dashboard to help address human values during software development, (2) identify possible benefits of using a human values dashboard, and (3) elicit practitioners' needs from a human values dashboard. Method: We conducted an exploratory study by interviewing 15 software practitioners. A dashboard prototype was developed to support the interview process. We applied thematic analysis to analyse the collected data. Results: Our study finds that a human values dashboard would be useful for the development team (e.g., project manager, developer, tester). Our participants acknowledge that development artefacts, especially requirements documents and issue discussions, are the most suitable source for identifying values for the dashboard. Our study also yields a set of high-level user requirements for a human values dashboard (e.g., it shall allow determining values priority of a project). Conclusions: Our study suggests that a values dashboard is potentially used to raise awareness of values and support values-based decision-making in software development. Future work will focus on addressing the requirements and using issue discussions as potential artefacts for the dashboard.
Arif Nurwidyantoro, Mojtaba Shahin, Michel R. V. Chaudron, Harsha Perera, Rifat Ara Shams, Jon Whittle 0001
ESEM1
2020 A study on the prevalence of human values in software engineering publications, 2015 - 2018
abstract
Failure to account for human values in software (e.g., equality and fairness) can result in user dissatisfaction and negative socio-economic impact. Engineering these values in software, however, requires technical and methodological support throughout the development life cycle. This paper investigates to what extent top Software Engineering (SE) conferences and journals have included research on human values in SE. We investigate the prevalence of human values in recent (2015 -- 2018) publications in these top venues. We classify these publications, based on their relevance to different values, against a widely used value structure adopted from the social sciences. Our results show that: (a) only a small proportion of the publications directly consider values, classified as directly relevant publications; (b) for the majority of the values, very few or no directly relevant publications were found; and (c) the prevalence of directly relevant publications was higher in SE conferences compared to SE journals. This paper shares these and other insights that may motivate future research on human values in software engineering.
Harsha Perera, Jon Whittle 0001, Arif Nurwidyantoro, Davoud Mougouei, Rifat Ara Shams, Gillian C. Oliver
ICSE4
2020 Continual Human Value Analysis in Software Development: A Goal Model Based Approach
abstract
Software failures that demonstrate violations of human values can result in financial losses, reputation damages and social implications. Therefore, integrating human values into software is vital to satisfy stakeholder needs. However, developing methodological approaches that allow systematic integration of human values throughout the software development life cycle is an open challenge. This paper proposes the Continual Value(s) Assessment (CVA) framework that uses extended goal and feature modeling techniques to support systematic integration, tracing and evaluation of human values in software systems. The CVA framework prescribes (i) brainstorming of value implications of system features based on conventional system artefacts and (ii) the expansion of the existing set of system features to better serve stakeholder values expectations. In a pilot study, we use an emergency alarm system for the elderly to demonstrate the feasibility of the framework. We further discuss the challenges we faced while applying the framework and present the lessons learned from the pilot study.
Harsha Perera, Gunter Mussbacher, Rifat Ara Shams, Arif Nurwidyantoro, Jon Whittle 0001
RE5
2020 Interactive Role Stereotype-Based Visualization To Comprehend Software Architecture
abstract
Motivation: Software visualization can be helpful in comprehending the architecture of large software systems. Traditionally, software visualisation focuses on representing the structural perspectives of systems. In this paper we enrich this perspective by adding the notion of role-stereotype. This rolestereotype carries information about the type of functionality that a class has in the system as well as the types of collaborations with other classes that it typically has.Objective: We propose an interactive visualization called RoleViz, that visualizes system architectures in which architectural elements are annotated with their role-stereotypes.Method: We conducted a user-study in which developers use RoleViz and Softagram (a commercial tool for software architecture comprehension) to solve two separate comprehension tasks on a large open source system. We compared RoleViz against Softagram in terms of participant's: (i) perceived cognitive load, (ii) perceived usability, and (iii) understanding of the system. Result: In total, 16 developers participated in our study. Six of the participants explicitly indicated that visualizing roles helped them complete the assigned tasks. Our observations indicate significant differences in terms of participant's perceived usability and understanding scores.Conclusion: The participants achieved better scores on completing software understanding tasks with RoleViz without any cognitive-load penalty.
Truong Ho-Quang, Alexandre Bergel, Arif Nurwidyantoro, Rodi Jolak, Michel R. V. Chaudron
VISSOFT3
2019 Automated Classification of Class Role-Stereotypes via Machine Learning
abstract
Role stereotypes indicate generic roles that classes play in the design of software systems (e.g. controller, information holder, or interfacer). Knowledge about the role-stereotypes can help in various tasks in software development and maintenance, such as program understanding, program summarization, and quality assurance. This paper presents an automated machine learning-based approach for classifying the role-stereotype of classes in Java. We analyse the performance of this approach against a manually labelled ground truth for a sizable open source project (of 770+ Java classes) for the Android platform. Moreover, we compare our approach to an existing rule-based classification approach. The contributions of this paper include an analysis of which machine learning algorithms and which features provide the best classification performance. This analysis shows that the Random Forest algorithm yields the best classification performance. We find however, that the performance of the ML-classifier varies a lot for classifying different role-stereotypes. In particular its performs degrades for rare role-types. Our ML-classifier improves over the existing rule-based classification method in that the ML-approach classifies all classes, while rule-based approaches leave a significant number of classes unclassified.
Arif Nurwidyantoro, Truong Ho-Quang, Michel R. V. Chaudron
EASE1
2019 Towards Integrating Human Values into Software: Mapping Principles and Rights of GDPR to Values
abstract
Software has become an integral part of human life. This gives rise to the need of developing software that respects human values such as transparency, fairness and privacy. Software that compromises on human values (e.g. privacy) can affect people's reputation and impinges on their ability to function in society with the usual freedom and autonomy. Integrating human values into software is, however, a challenging task due to its imprecise and subjective nature. Enforcing regulations is one way to make software development considerate of the desired standards and values. The European Union's General Data Protection Regulation (GDPR) on software is one such effort to protect EU citizens' data and personal information. GDPR prescribes data protection principles and data subject rights mainly to protect user privacy. Looking beyond privacy, we studied GDPR to identify the extent to which it covers human values. We mapped GDPR's data protection principles and data subject rights to a widely accepted human values structure adopted from social sciences. Our results show that GDPR addresses not only privacy but also several other human values including power, security and universalism. Moreover, fairness and transparency stand out as the most value-conscious principles prescribed in GDPR.
Harsha Perera, Davoud Mougouei, Rifat Ara Shams, Arif Nurwidyantoro, Jon Whittle 0001
RE5