Group Awareness in Distributed Software Development Authors: Carl Gutwin, Reagan Penner, Kevin Schneider Presented by- Shikha singhal mt2011146.

Slides:



Advertisements
Similar presentations
Intisar O. Hussien Faculty of Computer Studies Arab Open University
Advertisements

Newsgroups, Mailing Lists, Chat. Interacting with the Net Community Newsgroups Mailing Lists, Listservs Chat (Internet Relay Chat, Web-based Chat, Instant.
Andrew McNab - Manchester HEP - 24 May 2001 WorkGroup H: Software Support Both middleware and application support Installation tools and expertise Communication.
Site Visits Interviews and observations. Site visits What we see and do for ourselves is more memorable, more real, more true than what someone else tells.
“The Honeywell Web-based Corrective Action Solution”
Collaborating By: Mandi Schumacher.
Social Media.
McGraw-Hill/Irwin © 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 15 Creating Collaborative Partnerships.
I-Room : Integrating Intelligent Agents and Virtual Worlds.
Software Configuration Management Donna Albino LIS489, December 3, 2014.
Designing Online Communities: If We Build it, Will They Come? Yvonne Clark Instructional Designer Penn State University.
Starter for 10 Unit 11: Facebook Transform IT SFT11_Facebook.
Concepts of Version Control A Technology-Independent View.
Awareness and Distributed Collaboration David Ledo.
Transient Life: Collecting and sharing personal information Stephanie Smale and Saul Greenberg University of Calgary, Canada.
CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Lecture 3: Shared Workspace and Design Coordination Dr. Xiangyu WANG.
Lecture 3: Shared Workspace Awareness Dr. Xiangyu WANG 11 th August 2008.
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
Postgraduate Essentials University of Edinburgh Postgraduate Essentials Online induction to the course.
Presented by Eroika Jeniffer.  What are we going to learn? - the use of chat in classroom - the most likely application on chat. And many more….. So,
G51FSE Version Control Naisan Benatar. Lecture 5 - Version Control 2 On today’s menu... The problems with lots of code and lots of people Version control.
Document Processing Ways to centralize and streamline your Endangered Species Act document processing procedures.
Company LOGO Writing winning ‘Thank You’ letters Interview Follow Up.
1 Software Maintenance and Evolution CSSE 575: Session 8, Part 2 Analyzing Software Repositories Steve Chenoweth Office Phone: (812) Cell: (937)
MANAGEMENT OF MARKETING
Sudheesh Singanamalla. Editable and Free Every open source software is free to download and use for a lifetime. At the same time it gives the transparency.
Preparing for Data Collection Need to recognize that data collection is a high level activity that cannot be just passed off to graduate assistant Need.
Open Source Workshop1 IBM Software Group Working with Apache Tuscany A Hands-On Workshop Luciano Resende Haleh.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Troubleshooting Your Network Networking for Home and Small Businesses.
Benefits of ICT Communicating As an Internet user, the tools you are most likely to use to communicate with other Internet users are: Electronic mail the.
Module CC3002 Post Implementation Issues Lecture for Week 4 AY 2013 Spring.
Thinking Actively in a Social Context T A S C.
Lecture 18 Page 1 CS 111 Online Design Principles for Secure Systems Economy Complete mediation Open design Separation of privileges Least privilege Least.
What are microsites ?. So, what are microsites? sub-sections of ts interlink that you can populate with your own material they are part of ts interlink,
Systems Used for Collaboration When to achieve a common goal, result or work product.
Presented by Abirami Poonkundran.  Introduction  Current Work  Current Tools  Solution  Tesseract  Tesseract Usage Scenarios  Information Flow.
Moodle (Course Management Systems). Forums, Chats, and Messaging.
© 2008 IBM Corporation ® Atlas for Lotus Connections Unlock the power of your social network! Customer Overview Presentation An IBM Software Services for.
What Is Wiki ? Wiki is a piece of server software that allows users to freely create and edit Web page content using any Web browser. Wiki supports hyperlinks.
IT Technical Support 1. Introduction Technical support personnel offer support for individual and organizations in a variety of ways. This module focuses.
Heidi Atha Diane Look Buena Vista School District.
Hipikat: A Project Memory for Software Development The CISC 864 Analysis By Lionel Marks.
Version Control.
Copyright © 2015 – Curt Hill Version Control Systems Why use? What systems? What functions?
Moodle (Course Management Systems). Forums, Chats, and Messaging.
Intermediate 2 Software Development Process. Software You should already know that any computer system is made up of hardware and software. The term hardware.
A subject line is the topic of the so the recipient of the has a preview of what the is about. It will be no longer than a couple.
Social Aspects of Human- Computer Interaction Designing for collaboration and communication Chris Kelly.
Team working in distributed environments M253 Communicating, Cooperating & Collaborating on Line Faculty of Computer Studies Arab Open University Kuwait.
Overview All Partners Access Network Pacific Warfighting Center US Pacific Command Alex Conway.
CPSC 871 John D. McGregor Change management Module 2 Session 3.
UNIT 8 SEMINAR COLLABORATION IN THE WORKPLACE SUSAN HARRELL KAPLAN UNIVERSITY CM 415 Effective and Appropriate Communication in the Workplace.
Attending Meetings at School Louise Mottershead Aspire North West 2015.
Tshilidzi Tshiredo. Introduction Long time ago even before technologies, social networking platforms and mobile devices, Dewey, J.( ) stated that.
McGraw-Hill/Irwin © 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 15 Creating Collaborative Partnerships.
(1) Introduction to Subversion (SVN) and Google Project Hosting Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences.
Remote / Conferencing Tools – ILP Training. CONFIDENTIAL Virtual Meeting Audio Conferencing Web Conferencing Video Conferencing Virtual meetings use advanced.
1 The FreeBSD Project: a Replication Case Study of Open Source Development.
Groupware What are the goals of a groupware system? - Facilitation - Coordination - Cooperation - Augmented, supported production Is efficiency the goal?
GroupRocket.net. Years back checking s in the morning was the first ever thing most of the professionals would start their day with. And with the.
Mind Mapping Software: Uses and Benefits for Education.
Supporting Distributed Communities through Groupware Carl Gutwin University of Saskatchewan hc i.
1 April 14, Starting New Open Source Software Projects William Cohen NCSU CSC 591W April 14, 2008.
Open source development model and methodologies.
Online marketing is undoubtedly a great way to grow your business and generate more profits. The latest statistics confirm that a huge number of people.
Design and Programming
TWO CASE STUDIES OF OPEN SOURCE SOFTWARE DEVELOPMENT: APACHE AND MOZILLA HAKAN TERZIOGLU 2/24/2019 EEL 5881.
Presentation transcript:

Group Awareness in Distributed Software Development Authors: Carl Gutwin, Reagan Penner, Kevin Schneider Presented by- Shikha singhal mt

 In OSS people hardly meet face to face.  Successful OSS are Linux, Apache, OpenOffice application suite.  Copies of OSS are not made or distributed for profit or commercial advantage.  Uncordinated changes to the same file or module.

 Paper address the issue that how distributed developers maintain group awareness.  A study was carried out of open source teams to determine whether-  developers need to stay aware of one another,  what awareness information developers keep track of  how they gather and maintain their knowledge.

 Developers can contribute to any part of the code – an organizational approach that increases awareness requirements.  Main mechanisms for maintaining group awareness were simple text communication tools – developer mailing lists and text chat.  ‘Making it public’- developers are willing to answer questions, discuss their plans, report on their actions, and argue design details, all on the mailing list.

 Group awareness is useful for coordinating actions, managing coupling, discussing tasks, anticipating others’ actions, and finding help.  Three mechanisms help people to maintain awareness in colocated situations:  Explicit communication.  Consequential communication.  Feedthrough.

 lack of ad-hoc communication between software developers cause an increase in coordination problems and a decrease in collaboration between remote sites.  Awareness through explicit communication is the most flexible.  Newsgroups, MUDs, , text chat, and instant messaging are ways of communication.

 NetBSD- The goal of the NetBSD project is to produce a free and redistributable UNIX-like operating system.  Apache httpd- The Apache httpd project builds and maintains the Apache HTTP Server.  Subversion- Subversion is a free opensource version control system, intended as replacement for the current de facto standard, CVS.

 Three main sources of information to investigate group awareness issues:  Interviews, archives, and project artifacts.  14 developers were interviewed on 4 topics: 1. The project’s organization and the developer’s role and history with the project. 2. How work is divided on the project. 3. Group awareness requirements. 4. Awareness mechanisms.

 The main benefits of group awareness would be in simplifying communication and improving coordination of activity.  Software systems involve dependencies and linkages.  2 ways to reduce dependencies: 1. By reducing the number of developers. 2. By strongly partitioning the code.

 When asked them whether they primarily work in a ‘home’ area in the code, most of them said that they had worked in a variety of areas, and were able to “hop around” following their interests.  ownership can cause as many coordination problems as it solves.

 All NetBSD developers said that Via text based communication like mailing lists and text chats they came to know who did what  They skipped CVS commits but had a clear picture of the project up to date.  Following is used for general awarness- 1. Mailing list 2. Text chat 3. Commit logs

1.This provides information about the activity that has been done or is about to happen. 2.Readers can see that the author is active, is working in a certain area of the project, and is (or has been) engaged in a particular task.

A developer posts a bug report, a design question, a proposal for a new feature, or a critique of current code, and a conversation ensues with other interested parties.

 ‘Overhearing’ these conversations provides valuable awareness information.  The discussion is about the bug, or the design, or the best way to implement a new feature.  Overhearing can only work as an effective awareness mechanism if a high proportion of project activity gets discussed on the list.  Awareness happens best when teams are co- present.

 On Subversion, an IRC (Internet Relay Chat) channel is used(#svn)  On NetBSD, the project runs its own private chat server using the ICB system (Internet CB radio).  Apache doesn’t use text chat.

 Chat conversations are much more informal than other project communication.  The real-time and informal nature of the channel also appears to provide an opportunity for the “unplanned contacts that are important in keeping projects coordinated”.

 Text chat is not archived, any developers who are not reading a particular conversation will lose access to that information.  It could split the public conversation between two forums.  It is considered bad style to have technical discussions there, since it is no public service and not documented later.

 Commit logs are the records of changes made to the source code.  These records are kept in the project’s version control system (CVS for NetBSD and httpd, or SVN for Subversion).  The record for each change includes information such as 1. the person committing the change, 2. the files affected, 3. the number of changes, 4. the difference between the old and new versions.  Changes are automatically sent to a mailing list that developers can subscribe to.

 It depicts that people are active.  What modules people are currently working on.  The main drawback that developers mentioned for this method of maintaining awareness is that commits can be numerous, making it tedious to read.

 Two main approaches were reported by the developers-  People use a variety of information sources available on the project to find out who are the experts in an area.  People post to the mailing list and just assume that the appropriate people will join the discussion.

1. Last person to commit the file. 2. Looking over the file(s) [in CVS] seeing who's most active. 3. Sending mail to the various tech-* mailing lists. 4. Asking on icb. 5. Getting a hold of some specific folks depending on area of expertise based on either pre-existing knowledge or possibly checking and seeing if someone is listed on the area you're looking for.

 ‘Maintainer’ field.  Repository logs.  Issue and bug trackers  Asking other developers.  Project documentation.

 people post questions or proposals to the list without knowing exactly who the correct audience should be.  The structure of the mailing list and the way that it is used on OSS projects combine to form a valuable characteristic in finding this audience.  The list provides a robust and simple way for people to find out with whom they should discuss an issue: they just ask their question or start their discussion.

The idea of list-as-proxy makes the process of finding people extremely robust, and provides an ‘awareness default.’

 people are not socially required to respond and so the top experts do not become flooded with questions.  If the senior developers are too busy to answer all questions themselves, they watch who does respond and check the answers.  There is social pressure to be correct.  Developers are committed to reading the list

 From the perspectives of the developers:  Someone commiting something which essentially duplicated what someone else was doing. If it's small it doesn't really matter, just move on. For larger items the common method is to branch the tree, do the work and then merge back when done.  People have to always manage to work together on related things, sometimes in tightly coupled teams.

 A better project lists(of who works in what area) that could be automatically kept up to date.  Two people wanted a better way to decide (based on areas of work) which developer should be asked to handle particular bugs as they are reported.  Few major complaints about being able to stay aware, find people when needed, communicate effectively, and coordinate plans and actions.

Developers have:  High technical skills  Voluntary participation  Reputation that matters.

 The importance of verbal communication, and the value of different forms and venues for discussion.  The significance of overhearing as an awareness tool.  The value of broadcast communication.

 Mailing lists are time-consuming;  CVS commits are sometimes ignored due to time constraints;  The splitting of communication between mail, chat, and issue tracker suggests potential for tools that link related conversational streams.  The idea of making things public could be extended to other types of interactions.  Search tools could be designed with awareness queries in mind.

 We looked at the requirements and mechanisms for group awareness on three open source projects.  Awareness is both complex and subtle.  There are many leads in our data that we were unable to address here- 1. How occasional face-to-face gatherings assist group awareness, 2. How reputation really affects mailing-list practices, 3. What kinds of miscommunications arise in list-based discussion, or 4. The ways that project size affect awareness mechanisms.