Powered by
Conference Publishing Consulting

7th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE 2014), June 2 – June 3, 2014, Hyderabad, India

CHASE 2014 – Proceedings

Contents - Abstracts - Authors

7th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE 2014)


Title Page

Message from the Organizers
Software is created for and with a wide range of stakeholders, from customers to management, from value-added providers to customer service personnel. These stakeholders work with teams of software engineers to develop and evolve software systems that support their activities. All of these people and their interactions are central to software development. Thus, it is crucial to investigate the constantly changing human and cooperative aspects of software development, both before and after deployment, in order to understand current software practices, processes, and tools. In turn, this enables us to design tools, methods and support mechanisms for software engineering.
Researchers and practitioners have long recognized the need to investigate these aspects, however, their articles are scattered across con-ferences and communities. This workshop provides a unified forum for discussing high quality research studies, models, methods, and tools for human and cooperative aspects of software engineering. This is the 7th in the CHASE series of workshops held at ICSE, which continue to be a meeting place for the academic, industrial, and prac-titioner communities interested in this area, and provide an opportuni-ty to present and discuss works-in-progress.


Innovating in India: Designing for Constraint, Computing for Inclusion (Keynote)
Edward Cutrell
(Microsoft Research, India)
A fundamental tenet of user-centered design is that the needs, wants, limitations, and contexts of end users are central to the process of creating products and services that can be used and understood by the people who will use them. Most of the time these end users aren’t all that different from the people designing the technology. But as the differences increase between designers and the people they’re designing for, understanding and empathizing with users becomes harder and even more important. As we build software for people and communities with vastly diverse backgrounds, cultures, languages, and education, we need to stretch our ideas of what users want and need and how best to serve them.
The Technology for Emerging Markets (TEM) group at Microsoft Research India seeks to address the needs and aspirations of people in the developing world who are just beginning to use computing technologies and services as well as those for whom access to computing still remains largely out of reach. Much of this work can be described as designing for constraint: constraints in education, in infrastructure, in financial resources, in languages and in many other areas. In this talk, I will describe some work from our group that explores how we have tried to manage these constraints to create software and systems for people and communities often overlooked by technologists.

Full Papers

Modeling Work-Ethics Spread in Software Organizations
Sandeep Athavale and Meghendra Singh
(Tata Consultancy Services, India)
Most organizations – whether software or otherwise – have a statement of mission, a vision for the future, and values that help them get there. People, on the other hand, have a wide range of ideas, beliefs and objectives. How does one reconcile the two? Otherwise put: how do work practices and ethics that are important from an organizational standpoint get inculcated in employees? We propose a Human Behavior Change model and apply it to the context of ethics spread in software organizations. The model is founded upon an internal cost-reward function of individuals and transmission effect between people that contributes to the decision to change and comply with certain ethics and practices. We use Agent Based Modeling and Simulation (ABMS) technique to represent our model. We experiment with virtual teams and create various scenarios to understand ethic spread. Although our larger aim is to model behavior change, in this early stage of our work, we build models to know how ethics spread through change in compliance behavior. We base our study on existing literature, a limited survey, some assumptions and simulation. Through simulation, we also seek to ask associated questions related to team size and compliance, spread of counter-ethics, message mechanism and speed of spread and the ‘mean time to change’ for different types of individuals.

U Can Touch This: Touchifying an IDE
Benjamin Biegel, Julien Hoffmann, Artur Lipinski, and Stephan Diehl
(University of Trier, Germany)
Touch gestures are not only often very intuitive, but their direct manipulation characteristics also help to reduce the cognitive load. Since software development poses complex cognitive demands, our goal is to exploit the advantages of direct manipulation to support professional software engineering processes. In this paper, we demonstrate how touch gestures can be used within a professional integrated development environment. As for that, we have enriched the Eclipse IDE with common and invertible multi-touch gestures which can be used for both controlling the graphical user interface and triggering built-in refactoring tools. The design of our extensions was informed by an early user study revealing problems of using the Eclipse IDE with the default touch support provided by the operating system. By using the emerging prototype during its implementation, we were able to iteratively improve the prototype based on our own experience and gain first insights into the potential of using direct manipulation methods within the IDE. First results suggest that using an additional touch device within the classical desktop setup enables a precise and fast work flow.

Factors Affecting Team Evolution during Software Projects
Bora Çağlayan, Ayşe Başar Bener, and Andriy Miranskyy ORCID logo
(Ryerson University, Canada; IBM, Canada)
Forming teams from a large groups of developers and testers pose an important problem for software project management. There are only a few empirical studies on the topic of team evolution and the factors affecting it in software projects. In this paper, we analyzed the evolution of globally distributed testing and coding teams developing large enterprise software product. Our findings indicate that, during the software development process, testing and coding teams are naturally formed through the informal interaction of people. This informal structure is not necessarily a reflection of the formal organizational structure. Therefore, we recommend software development organizations to take into consideration this informal and, most of the time, effective natural team building structure and perhaps to consider collaborative (non-hierarchical) task assignment during SDLC.

How Social Software Supports Cooperative Practices in a Globally Distributed Software Project
Rosalba Giuffrida and Yvonne DittrichORCID logo
(IT University of Copenhagen, Denmark)
In Global Software Development (GSD), the lack of face- to-face communication is a major challenge and effective computer-mediated practices are necessary. This paper analyzes cooperative practices supported by Social Software (SoSo) in a GSD student project. The empirical results show that the role of SoSo is to support informal communication, enabling social talks and metawork, both necessary for establishing and for maintaining effective coordination mechanisms, thus successful cooperation.

Thirty Years of Software Problems in the News
Andrew J. Ko, Bryan Dosono, and Neeraja Duriseti
(University of Washington, USA; Syracuse University, USA; AT&T, USA)
How have the consequences of software problems changed over the past 30 years? To begin to answer this question, we analyzed 386,381 news articles reporting on software problems published between 1980 and 2012, spanning widely circulated newspapers to small trade magazines. Our results show that after an increase in reporting just prior to Y2K, news on software problems has declined in North America, but increased in the rest of the world. Most articles only report minor consequences such as frustration, confusion, anger, or at worst, having to delay some activity for a few hours, usually due to service outages in government, transportation, finance, and information services. However, about once per month, the news reports at least one death, injury, or threatened access to food or shelter due to software problems. Reports of these severe consequences are also increasing, due primarily to stories about transportation and government software.

Agile Methods, Organizational Culture and Agility: Some Insights
Lakshminarayana Kompella
(CA Technologies, India)
Software development depends on various factors and organizational culture is one of them. Recently agile software development, with its emphasis on agility, has received much attention. Research so far has focused on the constructs that define agility and also identified the reasons that limit teams from exhibiting all the constructs of agile software development. This lead to re-defining agility by using economic, quality, simplicity and the relationship with the environment it operates on. One of the factors that contribute to relationship with environment is organizational culture. Though relationship of organizational culture and software methods is not new, analyzing the relationship further in the new defined definition of agility can provide deep insights into software development. In this paper a qualitative research method of multiple case-studies consisting of 3 releases of one product development team was selected. Data was collected using participant-observation method. Research findings have identified some useful insights that could provide researchers and practitioners to develop software development life-cycle that incorporates existing agile methods and uses diverse set of methods to resolve issues including organizational issues. Thereby the new software development life-cycle would not distinguish between agile and plan-driven development methods and could shape itself in the changing context.

Towards a Behavioral Software Engineering
Per Lenberg, Robert Feldt, and Lars-Göran Wallgren
(Chalmers, Sweden; Blekinge Institute of Technology, Sweden; University of Gothenburg, Sweden)
Throughout the history of Software Engineering (SE) it has been repeatedly found that the humans involved, i.e. the engineers and developers in addition to other stakeholders, are a key factor in determining project outcomes and success. However, the amount of research that focuses on human aspects has been limited compared to research with technology or process focus. With increasing maturity of the field, interest in agile methods and a growing dissatisfaction with the continued challenges of developing high-quality software on time, the amount of SE research putting human aspect in primary focus has increased.
In this paper we argue that a synthesized view of the emerging human-focused SE research is needed and can add value through giving focus, direction and help identify gaps. Taking cues from the addition of Behavioral Economics as an important part of the area of Economics we propose the term Behavioral Software Engineering (BSE) as an umbrella concept for research that focus on behavioral and social aspects in the work activities of software engineers. We propose that a model based on three units of analysis can give structure and point to concepts that are important for BSE. To add detail to this model we are conducting a systematic review to map out what is currently known. To exemplify the model and the area we here present the results from a subset of the identified concepts.

Understanding the Role of Requirements Artifacts in Kanban
Olga Liskin, Kurt Schneider, Fabian Fagerholm, and Jürgen Münch
(Leibniz Universität Hannover, Germany; University of Helsinki, Finland)
User stories are a well-established way to record requirements in agile projects. They can be used as such to guide the daily work of developers or be split further into tasks, which usually represent more technical requirements. User stories and tasks guide communication and collaboration in software projects. However, there are several challenges with writing and using user stories in practice that are not well documented yet. Learning about these challenges could raise awareness for potential problems. Understanding how requirements artifacts are used for daily work could lead to better guidelines on writing stories that support daily work tasks. Moreover, user stories may not be appropriate to capture all kinds of requirements that are relevant for a project. We explore how to utilize requirements artifacts effectively, what their benefits and challenges are, and how their scope granularity affects their utility. For this, we studied a software project carried out in the Software Factory at the Department of Computer Science, University of Helsinki. We investigated the requirements artifacts and then interviewed the developers and the customer about their experiences. Story and task cards have helped the participants throughout the project. However, despite having a Kanban board and rich communication within the team, some requirements were still too implicit, which also led to misunderstandings. This and other challenges revealed by the study can guide future in-depth research.

An Open Innovation Approach in Support of Product Release Decisions
Maleknaz Nayebi and Guenther Ruhe
(University of Calgary, Canada)
Release decisions are of pivotal importance for product success in incremental and iterative software development. In this paper, the wickedness of these decisions is approached by a collective problem solving process. The paradigm of Open Innovations is emphasizing the range of opportunities available to get access to distributed knowledge and information. In particular, we apply (i) Analytical Open Innovation for information gathering and (ii) Morphological Analysis (MA) for problem structuring. The proposed decision support methodology is illustrated by a comprehensive case study. In the context of OTT service delivery, planning of both features and their different functionality levels is studied. From the broad involvement of stakeholders in the whole formulation, structuring and solution process, a higher validity and customer value of the developed products is demonstrated. Without performing MA, the proposed feature implementations would include inconsistencies and thus create customer and user concerns. Furthermore, from community based detection of cost and value synergies, potential resource savings and additional value creation opportunities are utilized.

The Hard Life of Open Source Software Project Newcomers
Igor Steinmacher, Igor Scaliante Wiese ORCID logo, Tayana Conte, Marco Aurélio Gerosa, and David Redmiles
(Federal Technological University of Paraná, Brazil; Federal University of Amazonas, Brazil; University of Sao Paulo, Brazil; Donald Bren School of Information and Computer Sciences, USA)
While onboarding an open source software (OSS) project, contributors face many different barriers that hinder their contribution, leading in many cases to dropouts. Many projects leverage the contribution of outsiders and the sustainability of the project relies on retaining some of these newcomers. In this paper, we discuss some barriers faced by newcomers to OSS. The barriers were identified using a qualitative analysis on data obtained from newcomers and members of OSS projects. We organize the results in a conceptual model composed of 38 barriers, grouped into seven different categories. These barriers may motivate new studies and the development of appropriate tooling to better support the onboarding of new contributors.

Do XP Customer-Developer Interactions Impact Motivation? Findings from an Industrial Case Study
D. Woit and K. Bell
(Ryerson University, Canada; Seneca College, Canada)
As part of a larger research project to understand and improve motivation in an XP-based, software development organization, we undertook a study to investigate the impact of customer-developer interactions on motivation in this organization. Among the impacts found, an individual’s perceived level of control within the interaction emerged as significant. We describe the specific behaviors which shape an individual’s perceived control, and thus motivation, in our context, and investigate the underlying causes for these behaviors by assessing them in accordance with extant social-psychological theory. We find that the very nature of XP itself imparts strong psychological pressures on participants which can positively affect their interactions, and thus, motivation. However, these pressures also contribute to de-motivation in our context, when their effects on customer-developer interactions are not appropriately monitored and mitigated.

Short Papers

A Culture of Involving the Vox Populi for Evolution of Workforce Policy
Deepa Athle, Aditi Kumar, and Vinay Katiyar
(Tata Consultancy Services, India)
In this paper, we present a pilot study of software and other industries – such as research, advertising and education – designed to understand factors influencing work ethics, policy making, employee engagement and organizational culture, and to begin uncovering the interaction effects thereof. Past research reveals that these factors are highly relevant to both productivity and attrition. So we collected and analyzed data from 56 employees via a survey on self-beliefs and reports of work ethics related to both self and team. Preliminary analyses using demographics and psychographics were undertaken. Interestingly, we found that the two industries differed very little, on the variables measured. An interactionist perspective – according to which human attitude and behavior are a function of the fit between personality and the environment – and paying close heed to the voice of the employees or the vox populi are recommended.

On the Nature of Roles in Software Engineering
Sridhar Chimalakonda and Kesav V. Nori
(IIIT Hyderabad, India)
The extensive use of software and the ever increasing complexity of software development in today’s world requires a diversity of people from different domains to closely collaborate and create quality software. Unfortunately, a lack of clarity in the different types of roles in software engineering (SE), their diversity and the competencies required by people to perform the roles is a major problem not just for software but for the people involved in the entire process. The main intent of this paper is to discuss different kinds of roles in SE with an aim to understand the challenges of people performing roles from multiple perspectives. To this end, we propose an ontology based framework for modeling roles in SE, which could be adapted for different organizations, projects, domains, environments and even cultures. We discuss several ontologies of this framework (context, role, team, organization, process, competency, persona, history, domain) and conclude this paper with a few research directions.

The Concept of "Ba" Applied to Software Knowledge
Nuno Flores, Ademar Aguiar ORCID logo, and Hugo Sereno
(University of Porto, Portugal)
Software development is a knowledge-intensive activity. Software products usually start as a simple idea, or a vision, and then progress towards a final deliverable product. Along this evolution, there is a lot of knowledge that is captured, organized, and shared, leading to new knowledge, both as a whole and within specific development activities. The concept of "Ba" provides a foundation to advance individual and collective knowledge, which describes knowledge creation as a spiral involving tacit and explicit knowledge: the Socialization, Externalization, Combination, Internalization model (a.k.a. SECI model). By applying this foundation to software development, we found issues that may hinder the effective knowledge management cycle. In this paper, we present a vision and a set of requirements for tools to overcome such issues and therefore better support the whole process of software knowledge evolution.

Towards Refactoring-Aware Code Review
Xi Ge, Saurabh Sarkar, and Emerson Murphy-Hill
(North Carolina State University, USA)
Software developers review changes to a code base to prevent new bugs from being introduced. However, some parts of a change are more likely to introduce bugs than others, and thus deserve more care in reviewing. In this short paper, we discuss our ongoing work to build a reviewing tool that automatically determines which changes in a change set are refactorings, uses this information to help the developer distinguish between refactoring and non-refactoring changes, and ultimately reduces the time it takes developers to review code accurately. We also discuss the challenges and opportunities we have faced when building this refactoring-aware code review tool.

Perceptions of Answer Quality in an Online Technical Question and Answer Forum
Kerry Hart and Anita Sarma
(University of Nebraska-Lincoln, USA)
Software developers are used to seeking information from authoritative texts, such as a technical manuals, or from experts with whom they are familiar. Increasingly, developers seek information in online question and answer forums, where the quality of the information is variable. To a novice, it may be challenging to filter good information from bad. Stack Overflow is a Q&A forum that introduces a social reputation element: users rate the quality of post-ed answers, and answerers can accrue points and rewards for writing answers that are rated highly by their peers. A user that consistently authors good answers will develop a good ‘reputation’ as recorded by these points. While this system was designed with the intent to incentivize high-quality answers, it has been suggested that information seekers—and particularly technical novices—may rely on the social reputation of the answerer as a proxy for answer quality. In this paper, we investigate the role that this social factor—as well as other answer characteristics—plays in the information filtering process of technical novices in the context of Stack Over-flow. The results of our survey conducted on Amazon.com’s Mechanical Turk indicate that technical novices assess information quality based on the intrinsic qualities of the answer, such as presentation and content, suggesting that novices are wary to rely on social cues in the Q&A context.

Linking Strategy, Governance, and Performance in Software Engineering
Monde Kalumbilo and Anthony Finkelstein
(University College London, UK)
Applying IT in an appropriate and timely way, in harmony with strategies, goals and needs, is important for business performance success. However, because ensuring that IT will support the achievement of business strategies entails a sequence of key decisions in a variety of related IT areas, knowledge that is relevant for effective decision-making tends to be dispersed among multiple business and IT stakeholders, who represent an organisation's diverse and conflicting interests. Consequently, inappropriately assigning decision rights for critical IT decisions increases the risk of misalignment. We study the context in which decision rights are managed as part of governance in software development for business process support so that organisations can achieve high-level alignment between software systems and business processes during software development. In this paper we establish the key components of a system for governance design that links software development governance arrangements, business strategy and performance. We position business process executives and managers as roles responsible for software development governance. Their responsibilities include defining the software system's strategic aims, providing the leadership to put them into effect, and satisfying themselves that an appropriate governance structure is, and remains in place during software development. We also position business process and software developer stakeholders as roles responsible for implementing software systems that help realise strategic aims. We propose four key software development decisions: functional and non-functional requirements, and system architecture and deliverables.

Communication Strategies for Mentoring in Software Development Projects
Shreya Kumar and Charles Wallace
(Michigan Technological University, USA)
As with professionals in all engineering disciplines, software developers new to a project must be given the implicit and explicit knowledge they need to be productive, in an effective and appropriate way, due to fluid team dynamics, geographical distribution, and other factors. As part of a broader study of communication in software development, we focus here on communication strategies for mentoring. We explore some examples of mentoring-oriented communication, in an educational setting and in an open-source consortium of academics and professionals. Through further study, we plan to draw out recurring patterns of communication between mentors and protégés.

Delivering Software Projects using Captive University Crowd
Subramani Ramakrishnan and Vaijayanthi Srinivasaraghavan
(IBM, India)
After two decades of hyper growth, Indian IT outsourcing market has reached a saturation level and is looking for the next breakthrough. The industry also faces a unique resourcing challenge a) abundant human resource supply but lack of industry ready deployable talent pool b) the next generation workforce’s outlook on workplace seems to be very different to the current workforce. In this paper we explore if Crowdsourcing can help in addressing these challenges. We conducted controlled experiments on a captive university crowd using organization’s Crowdsourcing platform. Typical tasks from real life projects were created and floated as contests. The results lead us to believe that Crowdsourcing using a captive university crowd has the potential to create deployable talent pool and also become an alternate resource pool in outsourcing delivery model – which can herald the next wave in outsourcing.

Improving Code Review Effectiveness through Reviewer Recommendations
Patanamon Thongtanunam, Raula Gaikovina Kula, Ana Erika Camargo Cruz, Norihiro Yoshida, and Hajimu Iida
(NAIST, Japan; Osaka University, Japan)
Effectively performing code review increases the quality of software and reduces occurrence of defects. However, this requires reviewers with experiences and deep understandings of system code. Manual selection of such reviewers can be a costly and time-consuming task. To reduce this cost, we propose a reviewer recommendation algorithm determining file path similarity called FPS algorithm. Using three OSS projects as case studies, FPS algorithm was accurate up to 77.97%, which significantly outperformed the previous approach.

The Calling of the Third Dimension
Pradeep Waychal
(College of Engineering Pune, India)
Software is now an essential ingredient of everyday life. The discipline of software engineering, therefore, must keep pace with the growing demands placed on it, and needs to mature expeditiously. Towards that, this human intensive discipline has to look beyond traditional process and technology initiatives. It needs to explore leveraging of human sciences that can potentially pay great dividends. The short paper lists a set of research problems at the intersection of software engineering and human sciences and our initial forays into some of them.

Changing Dynamics of Software Engineering and Mysterious Human Passion
Sachin Kohli
(SAP Labs, India)
World of Software development is facing stormy demands and volatile markets along with change in existing and adoption of new technologies, including open source. This requires extensive changes in the way software professionals work and to survive onslaught of these changing dynamics, Human Passion becomes a determinant. In this paper I have included my observations which were gained over the period of my extensive experience in IT industry. By questioning, interviewing and noticing people behavior what I have gathered is that passion plays an indispensable and critical part in driving masses to adjust and adapt to changing environments; and then successfully achieve the objectives of creation of software systems. Passionate developers are proven to be better placed as compared to their non-passionate counter parts and this understanding is not only restricted to developers but also includes project managers, product owners, architects, quality managers, testers, support personnel and all those who are associated with the software.

Leverage Human Aspects in Test Engineering
Anoop T. L., Kiran Venkataramanappa, Manjunath Gopadi, Srividya A., and Madhumathi K. V.
(SAP Labs, India)
Since the Industrial Revolution, mankind has been striving to find simpler and easier solutions for human problems. With the evolution of computers and software, testing also came to the forefront. This whitepaper derives the context from a test organization within SAP Labs India Pvt. Ltd. Over the years, research and innovations in testing have brought in various test methodologies and tools to improve testing. Most of these innovations require development and maintenance of highly skilled test engineers. One aspect which is not probably explored enough is the utilization of diverse human intelligence is (like university students, business users, differently abled people etc.) across the ecosystem. We focus on the following 3 areas of testing where we have made positive experiences using diverse workforce
1. Regression testing 2. Automation 3. research

A Comparison of Junior and Senior Software Engineering Students' Personalities
Daniel Varona, Yadira Lizama-Mué, and Luiz Fernando Capretz
(University of Informatics Sciences, Cuba; University of Western Ontario, Canada)
There has been an increasing motivation among researchers to identify relationships between software engineering tasks and software developers' personality traits. This study investigates MBTI personality distribution of first (junior) and fifth (senior) year software engineering students at the University of Informatics Sciences, in Havana (Cuba), aiming to infer attrition rates among software engineering students. One hundred software engineering students were surveyed, 50% at junior level and 50% at senior level. Results show that ESTPs and ENTPs are over-represented in both samples, whereas INTJs and INTPs are under-represented. This study may help us to predict which types are more likely to complete a degree in software engineering.

proc time: 1.19