Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects

  • 1,013 views
Uploaded on

"Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects" (Sulayman K. Sowe, Rishab A. Ghosh and Luc Soete) …

"Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects" (Sulayman K. Sowe, Rishab A. Ghosh and Luc Soete)

Empirical research aimed at understanding how individuals interact and
share their knowledge in a distributed software development environment has
traditionally been very difficult because the source of knowledge, the code, has
been a guarded secret and software developers and users were seldom in contact,
thus making it difficult to study, in situ, all the individuals involved in the software
development process. Free/Open Source Software (F/OSS) projects presents
renewed opportunities, as well as challenges, in understanding collaboration and
knowledge sharing amongst software developers and users in distributed software
development environments. In this paper, we discuss how developers and users
share their knowledge and collaborate in the software development process.
Knowledge sharing metrics, software repositories, and suitable methodologies for
studying knowledge sharing are presented. The paper aims to stimulate discussion,
present our current understanding, and empirical research opportunities and
challenges in knowledge sharing in distributed collective practices - F/OSS
projects.

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,013
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
16
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects Collaboration and Knowledge Sharing in Software Development Teams (SofTEAM ‘09) International Workshop on Software ENgineering within Social software Environments (SENSE09) Fraunhofer Institute Experimental Software Engineering, Kaiserslautern, Germany, March 3, 2009 . ______________________________________________________________________________________ Sulayman K. Sowe, Rishab A. Ghosh, Luc Soete Collaborative Creativity Group, UNU-MERIT, Maastricht, The Netherlands Contact: sowe@merit.unu.edu Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 2. Menu..... Knowledge sharing in distributed software development environments ● Knowledge sharing: Repositories ● Knowledge sharing: Metrics ● Knowledge sharing: Methodologies ● Nature of knowledge sharing in F/OSS projects ● Knowledge sharing in F/OSS projects: Some challenges ● /2/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 3. Knowledge sharing in distributed software development environments Knowledge sharing: ● A synergistic process where project participants establish knowledge links (k) by – “talking to each other”, and in the process get more than they put in: kAB= 1 if there is knowledge sharing between actors A and B, and 0 if otherwise. Benefits: ● Produce goods (software) and services (support). – Develop and refine project strategies. – Enable individual and project learning. – Helps build trust and confidence among participants. – Problems: ● How to leverage tacit knowledge of – community members? How to coordinate disperse individuals? – Providing easy to use tools for light- – weight knowledge sharing? Ways and means of studying team – members? /3/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 4. Knowledge sharing enablers ● 1 2 But we must ask ● Is there knowledge sharing? – Knowledge sharing Who are the people involved? – in the Bazaar How much knowledge sharing are team members? – /4/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 5. Knowledge sharing repositories Source code management (SCM) systems-CVS/SVN ● Who committed, changed, commented, modified what aspect of the code. Easy to revert to – earlier knowledge construct. Small number of people sharing knowledge regarding development process – Knowledge sharing is intense, trust and confidence is high and ● technology is not a barrier. Bug databases/tracking systems (BTS) ● Large number of people sharing knowledge on software quality assurance issues. – Who submitted, fixed, closed, commented on, assigned to which bug – Discussion on project milestone, software release cycle, etc. – Mailing lists ● Largest number of people sharing knowledge/experience/expertise. – Specialized 'rooms'; developers, users, localization, ports, documentation, etc. – Other knowledge sharing repositories ● IRC, IM, Wikis, Trac, documented off-line developers sprints – /5/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 6. Knowledge sharing metrics Experience from the sqo-oss and Flossmetrics projects Shows, in addition to product and process metrics, ● Composite community metrics are needed to understand the dynamics of – F/OSS development teams. Source code - CVS/SVN ● Count developers who made commits to the same module/branch of the code; Count – developers who commented on the code; Count cross-repository participation, etc. Bug tracking systems: ● Count open critical bugs at time_x; Count critical bugs fixed at time_x; Average time – to fix N bugs; Knowledge link between bug reporters and fixers, etc. Mailing lists: ● Count unique subscribers; Count messages per list per time_x; Average thread depth; – x_members in more than 1 list (knowledge brokerage) Total number of emails posted to a list (nposts) – Total number of replies made to questions posted to the lists (nreplies) – /6/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 7. Methodologies for studying Knowledge sharing Characteristics of the data: Debian developer and users mailing lists. 3735 developers with 29685 posts and 128933 replies. 5970 users with 193276 posts and 165380 replies. Mailing lists + SVN from Flossmetrics database on 14 projects. Flossmetrice data, 830 projects with BTS and 284 SVN dumps /7/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 8. Nature of knowledge sharing in F/OSS projects 1): Knowledge sharing is skewed: Small number of people (core) form knowledge cliques. 2): Knowledge brokerage. 3): The power-law nature of knowledge sharing. 4): Correlation between knowledge sharing activities. Developer List User List Test Variable nposts nreplies nposts nreplies 1000 ,475* 1000 ,550* Kandella’s taub nposts Corr. Coef. ,475* 1000 ,550* 1000 nreplies Corr. Coef. Spearmans rho nposts Corr. Coef. 1000 ,608* 1000 ,699* nreplies Corr. Coef. ,608* 1000 ,699* 1000 /8/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 9. Nature of knowledge sharing in F/OSS projects..cont. 5): Knowledge sharing in more than 1 repository: Developers tend to commit more to svn than post to mailing lists. But results are – inconclusive! Source: Flossmetrics database( ref. WOPDaSD08); 468 developers made 96749 commits, 61258 posts. /9/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe
  • 10. Knowledge sharing in F/OSS projects...some research challenges How to deal with large quantity of data? ● Howe to study software development teams from more than 1 view point – using data ● from different repositories? How to link data points from different repositories? ● How to ensure anonymity in the data (eg. Emails)? ● Are team members really interested to 'see' and know what their colleagues are ● doing? Is ontology based folksonomics the right way to go to provide collaborative platforms? ● Experience from http://www.osor.eu/ Thanks a lot for your attention Questions & Comments /10/ Annals of Knowledge Sharing in Distributed Software Development Environments: Experience from Open Source Software Projects By SKSowe