Powered by
Conference Publishing Consulting

2012 5th International Workshop on Co-operative and Human Aspects of Software Engineering (CHASE), June 2, 2012, Zurich, Switzerland

CHASE 2012 – Proceedings

Contents - Abstracts - Authors

5th International Workshop on Co-operative and Human Aspects of Software Engineering (CHASE)

Title Page

Foreword
Software is created by people for people working in a range of environments and under various conditions. Any aspiration towards sustainability in software engineering will need to take account of the people in the process, their behaviour and the impact of that behaviour. Understanding the cooperative and human aspects of software development is crucial in order to comprehend how methods and tools are used, and thereby improve the creation and maintenance of software. Both researchers and practitioners have recognized the need to investigate these aspects, but the results of such investigations are dispersed in different conferences and communities.
A Proposal for Enhancing User-Developer Communication in Large IT Projects
Ulrike Abelein and Barbara Paech
(University of Heidelberg, Germany)
A review of the literature showed that the probability of system success, i.e. user acceptance, system quality and system usage, can be increased by user-developer communication. So far most research on user participation focuses either on early or on late development phases. Especially large IT projects require increased participation, due to their high complexity. We believe that the step in software development when user requirements are translated (and thus interpreted) by developers into a technical specification (i.e. system requirements, architecture and models) is a critical one for user participation. In this step a lot of implicit decisions are taken, some of which should be communicated to the end users. Therefore, we want to create a method that enhances communication between users and developers during that step. We identified trigger points (i.e. changes on initial user requirements), and the granularity level on which to communicate with the end users. Also, representations of changes and adequate means of communication are discussed.
Article Search
A Redefinition of Roles and Collaboration under Model-Driven Development
Jorge Aranda and Daniela Damian
(University of Victoria, Canada)
We report on a disruption in organizational dynamics arising from the introduction of model-driven development tools in General Motors. The introduction altered the balance of collaboration deeply, and the organization is still negotiating with its aftermath. Our report illustrates one consequence of tool adoption in groups, and that these consequences should be understood to facilitate technical change.
Article Search
ProxiScientia: Toward Real-Time Visualization of Task and Developer Dependencies in Collaborating Software Development Teams
Arber Borici, Kelly Blincoe, Adrian Schröter, Giuseppe Valetto, and Daniela Damian
(University of Victoria, Canada; Drexel University, USA)
This paper introduces ProxiScientia, a visualization tool that provides awareness support to developers, as they engage in collaborative software development activities. ProxiScientia leverages streams of fine-grained events that are generated by team members as they interact with software artifacts in their development environments. The main goal of the tool is to make each developer aware of coordination needs and opportunities as they arise, by depicting ego-centered views of the developers and tasks that most closely impact their work, and showing how they change in real time. In this paper, we illustrate the conceptualization of ProxiScientia and discuss its initial evaluation.
Article Search
Augmenting Social Awareness in a Collaborative Development Environment
Fabio Calefato and Filippo Lanubile
(University of Bari, Italy)
Social awareness, that is information that a person maintains about others in a social or conversational context, can contribute to counteract the lack of teamness in global software development and strengthen trust among remote developers. We hypothesize that information shared on social media can work for distributed software teams as a surrogate of the social awareness gained during informal face to face chats. As a preliminary step we have developed a tool that extends a collaborative development environment by aggregating content from social networks and microblogs into the developer’s workspace.
Article Search
What Makes It Hard To Design Instructional Software? Towards a Collaborative Platform for Stakeholders of Instructional Software
Kesav V. Nori
(IIIT Hyderabad, India)
People and communication between them is often ignored in software engineering even though they are crucial to the success or failure of a software project. During the life cycle of software, there is communication, cooperation and collaboration (C3) between a wide range of diversified stakeholders ranging from management team to maintenance team. We believe that the lack of emphasis on improving C3 is often the major cause for software failures. In this paper, we summarize four and half years of our experience of a analyzing a decade-long instructional software for adult literacy developed by 9 different teams spread across 9 different locations following 9 varied processes. We present the different kinds of stakeholders that we came across during this analysis and present the challenges of C3 in that context. We then present the initial facets of our solution from three major dimensions (i) designing a unifying modeling language for improving stakeholder C3 (ii) modeling information for multiple stakeholders using various modes of rendering at multiple levels of granularity (iii) harnessing the power of social networking to improve C3 among all stakeholders.
Article Search
Agile Software Engineering as Creative Work
Broderick Crawford, Claudio León de La Barra, Ricardo Soto, and Eric Monfroy
(Pontificia Universidad Católica de Valparaíso, Chile; Université de Nantes, France)
A Software Engineering project depends significantly on team performance, as does any activity that involves human interaction. In the last years, the traditional perspective on software development is changing and Agile methods have received considerable attention. Among other attributes, the agilists claim that fostering Creativity is one of the keys to response to common problems and challenges of software development today. The development of new software products requires the generation of novel and useful ideas. In this paper, eXtreme Programming (XP) is analyzed and evaluated from the perspective of the creativity, in particular the creative performance and structure required at the teamwork level
Article Search
Team Effectiveness in Software Development: Human and Cooperative Aspects in Team Effectiveness Models and Priorities for Future Studies
Torgeir Dingsøyr and Tore Dybå
(SINTEF, Norway)
Software development is most often done in teams, where human and cooperative aspects are vital for team effectiveness. This has been the topic of study in several disciplines, and in this article we describe three team effectiveness models from other fields. We discuss priorities for future studies on software teams, and ask: Do we need our own effectiveness model for software teams?
Article Search
Supporting Distributed Software Engineering in a Fully Distributed Organization
Kevin Dullemond, Ben van Gameren, and Rini van Solingen
(TU Delft, Netherlands)
Software engineering is increasingly carried out in distributed settings. Software engineers are becoming more nomadic in carrying out their work, working from the customer location, the headquarters of their own company, their home, or sometimes even from their holiday locations. Technological support is needed to overcome the negative impacts of distance that are introduced by this trend. The central theme in this paper for supporting dislocated software engineers lies in increasing their awareness level to a level similar to (or even exceeding) what they experience in a co-located setting. In this paper we present the context in which we are bootstrapping a custom fit environment to support a team of fully dislocated software engineers and the incremental process we use. By working in this fashion we are discovering the requirements to support fully distributed teams while at the same time providing our setting with working solutions to help them with their day to day challenges. Finally, this continuous practical use also provides us with empirical data to validate the increase in awareness levels of dislocated software engineers and helps us in pinpointing important open research challenges.
Article Search
A Case Study of Using HCI Methods to Improve Tools for Programmers
Andrew Faulring, Brad A. Myers, Yaad Oren, and Keren Rotenberg
(CMU, USA; SAP, Israel)
For more than five years, researchers at Carnegie Mellon University have been collaborating with several SAP teams to improve the usability of SAP’s developer tools and programming APIs. Much research has shown that HCI techniques can improve the tools that developers use to write software. In a recent project, we applied HCI techniques to a SAP developer tool for the SAP NetWeaver Gateway product. The SAP team building this tool uses agile software development processes, which allowed them to quickly improve the tool’s usability based upon the evaluations.
Article Search
Wolf: Supporting Impact Analysis Activities in Distributed Software Development
Mayara C. Figueiredo and Cleidson R. B. de Souza
(UFPA, Brazil)
Software development activities face several challenges when they take place in geographically distributed settings. These challenges are often related to communication, collaboration and, especially, information diffusion among team members. This is especially important in impact analysis activities where all stakeholders need to align their work to understand the impact of a change. To properly support this, it is necessary to understand the different ways in which impact analysis activities are performed. In our previous work we identified two views of impact analysis: an organizational and an individual view. The first view is important for managers to understand the impact of the changes in the activities of the team, whereas the second refers to the developers’ strategies to deal with the impact of changes in their daily work. This paper discusses these views and based on them describes a tool, called Wolf, to support impact analysis activities. Our tool, based on semi-automatically generated traceability links, provides different visualizations to support communication, collaboration and information diffusion among stakeholders thereby facilitating impact analysis activities in geographically distributed settings.
Article Search
A Method for Prioritizing End-User Feedback for Requirements Engineering
Stefan Gärtner and Kurt Schneider
(Leibniz Universität Hannover, Germany)
Today's software-intensive systems exhibit an increasing complexity due to a broad spectrum of technical and socio-technical aspects leading to rapid changes in requirements. To monitor these changes, we developed the ConTexter feedback system that enables end-user feedback submitted as narrative text enriched with multimedia attachments. Analyzing received end-user feedback is a work-intensive task. Thus, problems and changes in end-users' needs reach responsible requirements engineers after a significant delay. Automatic techniques are required to support this tasks. In this paper, we investigate whether end-user feedback can be prioritized automatically by combining keyword-based information retrieval and descriptive statistics. Moreover, we show in an evaluation that the obtained results are reasonable.
Article Search
Agile vs. Plan-Driven Perceptions of Software Architecture
Irit Hadar and Sofia Sherman
(University of Haifa, Israel)
The use of agile methodologies in industry has increased significantly over the past decade, promoting the value of human-centric software development process. This growing use derives the need to adjust agile methodologies to bigger, more complex system development projects, where architecture plays a significant role. However, many believe that an essential conflict exists between the requirement of minimalism in agile methods and the need for well-defined and documented architecture in complex systems. This paper presents an exploratory study aimed at understanding the software architecture related activities as perceived by architects with and without experience in agile methodologies. The findings indicate that while architects practicing only plan-driven methodologies perceive architecture activities as being related only to the first phases of the development process, architects involved in agile projects perceive architecture activities to be related to most or all phases of the development lifecycle. The latter perceptions are consistent with suggestions expressed in the literature regarding architecture in general and in agile methodologies in particular. Based on these findings we suggest that agile methods not only lead architects to adjust their behavior to the agile philosophy, but also improve architects’ perceptions and practice of architecture in general.
Article Search
REIM - An Improvisation Workshop Format to Train Soft Skill Awareness
Anne Hoffmann
(Siemens, Germany)
Teaching requirements engineering (RE) often focuses on teaching factual knowledge such as how to write requirements, how to model the architecture, where and in which format to store the retrieved data? This is however only one side of the coin, working together is all about relationship between humans. In his daily work, requirements engineers face many situations where efficient communication is needed. We expect our requirements engineer to master the situations ”right”, expect him to act professionally. Looking at the situation for professional trainings for requirements engineers however, we often do not find a sound forum to train them. The training of these human factors or soft skills as we call them, is split up from the factual knowledge such as requirements engineering methods. To our knowledge, no approach exists, to combine the training of soft skills and factual RE knowledge into one training concept. This paper describes a workshop format which overcomes this situation and combines soft skills and factual RE knowledge into one training. We introduce the so-called REIM (Requirements Engineering and Improvisation) format. REIM utilizes a typical session of an improvisation theater course and extends it to the area of RE by using storytelling methods. This paper explains the main principle and elements of the workshop and provides an example for illustration. We conclude with lessons learned from already conducted workshops and outline next steps needed to validate the workshop’s efficiency in a proper case study.
Article Search
Performance Assessment Metrics for Software Testers
Tanjila Kanij, Robert Merkel, and John Grundy
(Swinburne University of Technology, Australia; Monash University, Australia)
The reliability of delivered software depends on the performance of the individuals responsible for testing it. However, there are currently no standard methods for assessing the performance of software testers, nor even agreement on important assessment criteria. A literature review reveals several different human-centric factors that have been suggested as important. However, the relative importance of these factors is unknown. This paper reports the results of a survey of professional testers indicating their views on the importance of a number of proposed factors. Their views, we believe, will be important in designing a more formal and widely acceptable performance assessment method for software testers.
Article Search
Using the IDEAL Software Process Improvement Model for the Implementation of Automotive SPICE
Ruth Klendauer, Axel Hoffmann, Jan Marco Leimeister, Marina Berkovich, and Helmut Krcmar
(SMR Automotive Mirrors Stuttgart, Germany; Kassel University, Germany; TU Munich, Germany)
Most suppliers in the automotive industry are facing the challenge of implementing Automotive SPICE, a domain-specific model of ISO/IEC 15504, which was first published in 2005. Original equipment manufacturers have increasingly requested SPICE certifications from their suppliers in order to effectively evaluate the development processes and identify reliable partners. To support organizations in their software process improvement effort, the Software Engineering Institute (SEI) developed the IDEAL model. This guide is, however, influenced by the SEI’s work on CMM and based on the experiences with very large organizations. The goal of this paper is to examine the suitability of the IDEAL model for the implementation of Automotive SPICE at a medium-sized R&D department. Preliminary results from an action research study at a global systems engineering company are discussed. The data indicate that adjustments are especially needed with regard to the factors participation and communication. Also, informal networks between companies, early decision-making and usability are shown to play an important role and might be added to the model.
Article Search
Envisioning Distributed Usability Evaluation through a Virtual World Platform
Benjamin Koehne and David F. Redmiles
(UC Irvine, USA)
Ideally, usability evaluation would be part of every software development project. However, it is often overlooked due to cost and time constraints. Usability inspection methods were developed to cut cost and time compared to traditional usability evaluation. However, they still bring with them certain requirements such as having multiple designers involved in the evaluation. Inspection techniques have also been shown to be difficult to learn and teach. With software development projects becoming increasingly distributed, it is ever more difficult to have sufficient participants in a usability inspection and to collaboratively learn the techniques. Motivated by these problems, we developed a novel, prototype environment called INspect-World for distributed usability inspection techniques. INspect-World is built on top of the virtual world platform OpenSimulator. As we investigate usability inspections performed in this environment, we also address ideas of human-centered end-user development in mediated communication contexts.
Article Search
Representations of User Feedback in an Agile, Collocated Software Team
Michael J. Lee and Andrew J. Ko
(University of Washington, USA)
Support requests are a major source of feedback in software development. However, like sentences whispered in a children’s telephone game, as an issue moves through a software development process, it may undergo many changes, making it difficult to ensure that the problem reported was actually fixed. To better understand how software teams preserve the integrity of user-reported issues, we observed a software team over a 6-month period, analyzing the trajectory of user requests through their software development processes. Our observations revealed several representations of issues, highlighting several points where information about an issue was lost or transformed. Although this information loss appeared to be unavoidable as an issue went through the resolution process, we found it was offset by a web of transactive memory distributed throughout the support and product teams. This memory was reinforced by asynchronous chat about recent and commonly reported issues, and shared notions of what issues should be considered severe or urgent.
Article Search
What Affects Team Behavior? Preliminary Linguistic Analysis of Communications in the Jazz Repository
Sherlock A. Licorish and Stephen G. MacDonell
(Auckland University of Technology, New Zealand)
There is a growing belief that understanding and addressing the human processes employed during software development is likely to provide substantially more value to industry than yet more recommendations for the implementation of various methods and tools. To this end, considerable research effort has been dedicated to studying human issues as represented in software artifacts, due to its relatively unobtrusive nature. We have followed this line of research and have conducted a preliminary study of team behaviors using data mining techniques and linguistic analysis. Our data source, the IBM Rational Jazz repository, was mined and data from three different project areas were extracted. Communications in these projects were then analyzed using the LIWC linguistic analysis tool. We found that although there are some variations in language use among teams working on project areas dedicated to different software outcomes, project type and the mix of (and number of) individuals involved did not affect team behaviors as evident in their communications. These assessments are initial conjectures, however; we plan further exploratory analysis to validate these results. We explain these findings and discuss their implications for software engineering practice.
Article Search
Getting at Ephemeral Flaws
Tamara Lopez, Marian Petre, and Bashar Nuseibeh
(Open University, UK; Lero, Ireland)
Software rarely works as intended when it is initially written. Things go wrong, and developers are commonly understood to form theories and strategies to deal with them. Much of this knowledge relates to ephemeral flaws rather than reported bugs, and is not captured in the software record. As a result, these flaws and understanding about them are neglected in software engineering research. In this paper we describe a study designed to elicit stories from software developers about problems they encounter in their daily work. We also offer preliminary thoughts about the utility of retrospective interviewing in getting at information about ephemeral flaws.
Article Search
An Approach for Collaborative Code Reviews Using Multi-touch Technology
Sebastian Müller, Michael Würsch, Thomas Fritz, and Harald C. Gall
(University of Zurich, Switzerland)
Code reviews are an effective mechanism to improve software quality, but often fall short in the development of software. To improve the desirability and ease of code reviews, we introduce an approach that explores how multi-touch interfaces can support code reviews and can make them more collaborative. Our approach provides users with features to collaboratively find and investigate code smells, annotate source code and generate review reports using gesture recognition and a Microsoft Surface Table. In a preliminary evaluation, subjects generally liked the prototypical implementation of our approach for performing code review tasks.
Article Search
Tangible Software Modeling with Multi-touch Technology
Sebastian Müller, Michael Würsch, Pascal Schöni, Giacomo Ghezzi, Emanuel Giger, and Harald C. Gall
(University of Zurich, Switzerland)
This paper describes a design study that explores how multi-touch devices can provide support for developers when carrying out modeling tasks in software development. We investigate how well a multi-touch augmented approach performs compared to a traditional approach and if this new approach can be integrated into existing software engineering processes. For that, we have implemented a fully-functional prototype, which is concerned with agreeing on a good object-oriented design through the course of a Class Responsibility Collaboration (CRC) modeling session. We describe how multi-touch technology helps with integrating CRC cards with larger design methodologies, without loosing their unique physical interaction aspect. We observed high-potential in augmenting such informal sessions in software engineering with novel user interfaces, such as those provided by multi-touch devices.
Article Search
How Can Research about Software Developers Generalize?
Emerson Murphy-Hill and Laurie Williams
(North Carolina State University, USA)
Research that studies software developers can have a larger impact when its results generalize to other contexts. However, it is often unclear if, how, and why such results generalize. In this position paper, we aim to motivate software engineering researchers to generalize their findings. To meet this aim, we firstly enumerate the dimensions in which software engineering generalizations are made, and secondly, propose several practical ways researchers can make their work more generalizable. In meeting our aim, we hope to help the software engineering research community maximize their impact outside of software engineering.
Article Search
Competition on Inter-organizational Collaboration from an Organizational-Social-Technical Perspective
Anh Nguyen Duc, Daniela S. Cruzes, and Reidar Conradi
(NTNU, Norway)
Benefiting from inter-organizational collaboration while remaining competitive are organizations’ target in software industry nowadays. However, little is known about competition awareness and collaboration processes and practices in software intensive organizations. This paper introduces the first step to understand the role and impact of competition on team collaboration in the context of inter-organizational software project. A case study was designed and initially performed. Initial findings revealed a set of propositions for future research. We found that collaboration initiates from technical coordination requirement and is influenced by technical, social and organizational factors. Meanwhile, competition comes from business strategy and competition awareness could negatively influence effectiveness of social-technical collaboration. Future works will focus on the mutual influence between competition and collaboration and role of global dispersion on this interaction.
Article Search
Documentation Practices in Scientific Software Development
Aleksandra Pawlik, Judith Segal, and Marian Petre
(Open University, UK)
This paper focuses on documentation practices in scientific software development and takes into account two perspectives: that of scientists who develop software (scientists-developers) and of those scientists who use it. We describe documentation practices of scientists-developers. We also explore the role of users' community in scientific software documentation. We compare our findings to studies about documentation practices of professional software developers and discuss how production of documentation in scientific software development can be supported.
Article Search
The Mystery of the Writing That Isn't on the Wall: Differences in Public Representations in Traditional and Agile Software Development
Marian Petre, Helen Sharp, and Sallyann Freudenberg
(Open University, UK; Adfectio, UK)
This paper considers the use of public displays, such as whiteboards and papers pinned to walls, by different software development teams, based on evidence from a number of empirical studies. This paper outlines differences in use observed between traditional and agile teams and begins to identify the implications that they may have for software development.
Article Search
Why Developers Don’t Pair More Often
Laura Plonka and Janet van der Linden
(Open University, UK)
Applying pair programming in industrial settings can be challenging. This study extends the existing knowledge on applying pair programming in industrial settings by interviewing 31 developers from 4 different companies. We investigate how often developers practice pair programming as opposed to working by themselves, whether developers would prefer to use PP more often or less often, and which aspects hinder the use of pairing. We found that the majority of developers use PP only for 10% of their development time but would like to use it more often. Moreover, our results indicate that organisational issues can hinder the use of PP.
Article Search
First Results from an Investigation into the Validity of Developer Reputation Derived from Wiki Articles and Source Code
Christian R. Prause and Markus Eisenhauer
(Fraunhofer FIT, Germany)
The internal quality of software is often neglected by developers for various reasons like time pressure or a general dislike for certain activities. Yet it is important to speed up development and to keep the software maintainable. We present a way to use reputation systems to improve the internal quality of software by putting artifacts like wiki articles and source code under their control. Specifically, we show that reputation scores derived from such artifacts reflect actual reputation in the developer community using data from a work group wiki and an open source project.
Article Search
Feedback: How Does It Impact Software Engineers?
Rien Sach and Marian Petre
(Open University, UK)
Feedback happens all the time in software development environments, but little is known about the impact it has. Motivation theory identifies feedback as an important factor, but doesn’t consider the impact of different feedback characteristics. We present the results of a scenario-based study with 16 software engineers. Our study suggests that positive feedback has an impact on job satisfaction while negative feedback impacts behaviour. Motivation and productivity were found to be linked in just 20% of positive feedback scenarios.
Article Search
Identifying the Need for a Sustainable Architecture Maintenance Process
Sofia Sherman and Irit Hadar
(University of Haifa, Israel)
Documentation plays a significant role in software development in general and in software architecture in particular. In large and complex systems, many changes affecting architecture and architectural documentation occur. This derives the need for constant changes within architecture documents in order to keep them up to date. This research in-progress aims to understand the current state of architecture maintenance towards proposing a solution for improving this practice via a well-defined process and supporting tools.
Article Search
Attitude and Usage of Collaboration Tools in GSE: A Practitioner Oriented Theory
Yi Wang, Erik Trainer, Ban Al-Ani, Sabrina Marczak, and David F. Redmiles
(UC Irvine, USA; PUCRS, Brazil)
Collaboration tools support global software engineering (GSE) by providing relevant information and work context to developers, essentially seeking to provide a local context for developers working globally. Although many collaborative tools have been developed, we have insufficient knowledge of how they are used in practice. In this paper, we review the recent empirical studies on collaboration tools for GSE. Then we theorize a conceptual framework that aims to explain how the unique contextual dimensions of GSE (e.g. culture diversity and adaptation, etc.) influence practitioners’ attitudes toward, and usage of, the tools. The conceptual framework will guide our future empirical studies, and it will be refined by the empirical evidence collected in these studies.
Article Search
An Exploratory Study of Backtracking Strategies Used by Developers
YoungSeok Yoon and Brad A. Myers
(CMU, USA)
Developers frequently backtrack while coding. They go back to an earlier state by removing inserted code or by restoring removed code for various reasons. However, little is known about when and how the developers backtrack, and modern IDEs do not provide much assistance for backtracking. As a first step towards gathering baseline knowledge about backtracking and designing more robust backtracking assistance tools in modern IDEs, we conducted an exploratory study with 12 professional developers and a follow-up online survey. Our study revealed several barriers they faced while backtracking. Subjects often manually commented and uncommented code, and often had difficulty finding relevant parts to backtrack. Backtracking was reported to be needed by 3/4 of the developers at least "sometimes".
Article Search

proc time: 0.44