An Approach to Discovering Processes in OSS Projects Chris Jensen Institute for Software Research...

15
Discovering Processes in OSS Projects Chris Jensen Institute for Software Research University of California, Irvine Irvine, CA 92697-3425 [email protected] http://www.ics.uci.edu/~cjensen/papers/Jensen-Scacchi- SPIP03.pdf
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    215
  • download

    1

Transcript of An Approach to Discovering Processes in OSS Projects Chris Jensen Institute for Software Research...

An Approach to Discovering

Processes in OSS Projects

Chris JensenInstitute for Software ResearchUniversity of California, Irvine

Irvine, CA [email protected]

http://www.ics.uci.edu/~cjensen/papers/Jensen-Scacchi-SPIP03.pdf

Introduction Goal:

Demonstrate the feasibility to automate the discovery of process workflows via manual search and analysis tools in open source software development communities

Motivation Manual simulation provides insight into:

The feasibility of an automated approach Techniques for implementation

Without: Costly, high-risk investment

A Directed Approach Domain: large scale online open source

software development (OSSD) projects Short duration, frequent enactment, and a

propensity for available evidence Contextual clues guide process discovery

Project Web information structure Site contents Update patterns

Our Study Phase1: reference model Phase2: project history: development in

context Phase3: process-fragment mining

relevancy issues Phase4: process modeling, prototyping Phase5: analysis

Sun Microsystems

The Board Release Manager

Maintainer Developers/ Contributors

Website

Mailing Lists

Users

Contribute to community

, Meet time constraints for the release

Maintain a project/ module, manage a group of developers

ensure that the netbeans community is being run in a fair and open manner

Start new release phase, propose schedule/plan

Download and use free software

CVS

Funds, support, Promote Java/Open source

IssueZilla

QA team

Produce Q builds and ensure quality of the software

Release proposal, Release updates,

branch for current release, release post mortem,

review Release Candidates & decide final release

download development builds and test

, Release Q-builds

Download new release

report bugs

Select feature to develop

, bug to fix, download netbeans,

commit code

decide features for the project and merge patches/bug fixes

, create module web page

make decisions for the community, on high level

grant CVS commit privilege to developers

Link to all Use cases Links to all Agents

CVS Manager

Configure and Maintain CVS

Grant Access

Site Administrator

Manage website

Deploy Builds SourceCas

t

Tools

Link to Tools

Release candidate 2

Release candidate 1

Development build

Q build

Release Manager

source code

Module maintainer

QA Team

Test(Netbeans)

User

Use (Netbeans, Issuezilla)

List of bugs to

fix

Final release

Developer

Write bug fix

(Netbeans)

Check(Netbeans, Mailing list)

Module plan

Roadmap

Decide future release dates

Determine project features

(Mailing list)

Schedule Releaseproposal

Start a new release phase (Mailing list)

Determine main features

(Mailing list)

Build(CVS scripts)

Board member Release Manager

Netbeans Web Site

Create module web page(Web site)

List of bugs

Release information update

(SourceCast)

Check(Netbeans, Mailing list)

Check(Netbeans, Mailing list)

Decide which bugs to fix (Issuezilla)

Site administrator

Download links(SourceCast)

Module Web Page

Towards a Formal Model

Lessons Learned Information availability

Web pages, asynchronous communication via threaded communication lists, software product source code, development tools, development resources, OSS extension mechanisms

Granularity Control Process Validation

Inconsistency between prescriptions and implementation

Accountability for Evolution Need for temporal locality indication for process

footprints

Prognosis What makes us believe such an approach

could actually work? Frequent iteration of a small number of tasks Tasks performed lend themselves to

automation Keyword search of domain-related terms

Existence of technological enablers Web Data Mining, Probabilistic Relational Modeling

The End Questions? For more information, see:

Jensen, Scacchi. Simulating an Automated Approach to Discovery and Modeling of Open Source Software Development Processes.

http://www.ics.uci.edu/~cjensen/papers/Jensen-Scacchi-SPIP03.pdf