Alexey Zagalsky

2papers

2 Papers

SEMay 15, 2017
Beyond Agile: Studying The Participatory Process in Software Development

Alexey Zagalsky

We see that the collaborative and participatory nature of software development continues to evolve, shape and be shaped by communication channels that are used by developer communities of practice--both by traditional communication channels (e.g., telephone, in-person interactions), as well as social features that may be standalone or integrated with other development tools (e.g., email, chat, and forums). Within a community of practice, software is a combination of the externalized knowledge (e.g., code, documentation, history of activities) as well as the tacit knowledge that resides in the community members' heads (e.g., experience of when to use an API, or design constraints that are not written down). Communication channels and development tools support developers in forming and sharing both externalized and tacit knowledge in a highly collaborative manner. However, not much is known about the impact this participatory culture is having on software development practices nor on the knowledge-building processes. The research community has been studying the tools and communication channels used by developers in an effort to broaden our understanding. But, studying only the tools and channels can only provide a narrow perspective. We believe that software development has evolved beyond the agile process, into a Participatory Process--A knowledge building process which is characterized by the (1) knowledge activities and actions, (2) stakeholder roles, and (3) is enabled by socially enhanced tools and communication channels. Thus, it is important to gain an understanding of each one of the components, and the way these components interact and shape each other.

HCFeb 22, 2017
How Software Developers Mitigate Collaboration Friction with Chatbots

Carlene Lebeuf, Margaret-Anne Storey, Alexey Zagalsky

Modern software developers rely on an extensive set of social media tools and communication channels. The adoption of team communication platforms has led to the emergence of conversation-based tools and integrations, many of which are chatbots. Understanding how software developers manage their complex constellation of collaborators in conjunction with the practices and tools they use can bring valuable insights into socio-technical collaborative work in software development and other knowledge work domains. In this paper, we explore how chatbots can help reduce the friction points software developers face when working collaboratively. Using a socio-technical model for collaborative work, we identify three main areas for conflict: friction stemming from team interactions with each other, an individual's interactions with technology, and team interactions with technology. Finally, we provide a set of open questions for discussion within the research community.