Discovering, Modeling, and Re-enacting Work Processes and Practices in Free/Open Source Software Development Projects - PowerPoint PPT Presentation

About This Presentation
Title:

Discovering, Modeling, and Re-enacting Work Processes and Practices in Free/Open Source Software Development Projects

Description:

JCP. Open. Office. W3C. Conflict. Coordination. Coordination. Conflict. Coordination. Conflict ... Java.net, Java Tools Community, and Java Community Process ... – PowerPoint PPT presentation

Number of Views:103
Avg rating:3.0/5.0
Slides: 38
Provided by: wsca
Learn more at: https://www.ics.uci.edu
Category:

less

Transcript and Presenter's Notes

Title: Discovering, Modeling, and Re-enacting Work Processes and Practices in Free/Open Source Software Development Projects


1
Discovering, Modeling, and Re-enacting Work
Processes and Practices in Free/Open Source
Software Development Projects
  • Walt Scacchi, Chris Jensen, John Noll and
    Margaret Elliott
  • Institute for Software Research
  • University of California, Irvine

2
Context
  • Discovering hidden processes within a
    large-scale, global, loosely-coordinated open
    source software development (OSSD) project.
  • Thousands of project participants
  • Developing, managing, and evolving over one
    million knowledge-intensive artifacts
  • Weakly coordinated by centralized authorities
  • All data are open source

3
Context
  • Discover, model, (re-)enact, and repair processes
  • Discover process context, participant roles,
    tools, resources, interdependencies within and
    across projects over the Web
  • Why?
  • Enterprises dont know their processes
  • Process improvement, optimization, redesign
  • Process interdiction w/ competitive advantage

4
Overview
  • Process discovery
  • Process modeling
  • Process re-enactment
  • Discussion
  • Conclusions

5
Process discovery
  • Participant observation (online, Web-based)
  • Collection and annotation of participant
    created/modified artifacts
  • Objects of interaction
  • How objects are situated in facilitating
    collaboration, conflict, or conflict mitigation
  • Tracking artifacts added or modified in response
    to intra-community or inter-community dynamics
  • Automated process data mining, categorization,
    and composition

6
Annotated chat transcript
  • ltCyrilBgt Hello (Outsider Critique-1
  • ltCyrilBgt Several images on the website seem to be
    made with non-free Adobe software, I hope I'm
    wrong it is quite shocking. Does anybody know
    more on the subject ?
  • ltCyrilBgt We should avoid using non-free software
    at all cost, am I wrong ? (Extreme belief in free
    software (BIFS)-1)
  • ltCyrilBgt Anyone awake in here ? Outsider
    Critique-1)

7
Current challenges
  • Examining multiple OSSD processes across multiple
    interrelated OSSD projects.
  • NetBeans.org, Mozilla.org, Apache.org,
    BioBeans.org, Tigris.org, Java Tool Community,
    etc.
  • Leadership and control sharing within and across
    individuals, work groups, and projects as sources
    of coordination and conflict.

8
NetBeans.org Community Ecosystem
9
Boundary Objects of Interaction
  • Development artifacts (software informalisms)
  • Protocols
  • HTTP, RPCs
  • Shared data formats
  • HTML, XML, CGI
  • Community infrastructure tools
  • Defect repositories (e.g. Bugzilla),
    Collaborative development and communication tools
    (e.g. CVS, online chat, discussion forums)
  • Product infrastructure
  • Plug-ins, Modules, Helper applications
  • OSSD processes

10
Direct Interaction
Tomcat
11
Intra-community issues
  • Collaboration
  • Guidelines and policies
  • Development tasks style guidelines public
    floggings
  • Separation of concerns
  • architectural strategy (plug-ins) for
    collaborative success
  • freedom of extension/expression through
    contributed source code--reduces involvement with
    socio-political project issues
  • Volunteer versus salaried developers--collaboratio
    n breakdowns lead to product failures

12
Intra-community issues
  • Leadership and Control
  • Accountability and expectations based on
    precedent and volunteerism
  • Transparency in decision-making
  • Project management limited to coordinating
    roles
  • Consent in decision-making
  • Many contributors assume consensus
    decision-making, and breakdowns arise when Sun
    asserts prerogative
  • Conflict Resolution
  • Not face-to-face
  • Generally done in public via discourse
    transactions on discussion forums, else turned
    over to community governance board for resolution.

13
Indirect process interactions across projects
Tomcat integration into NetBeans, compliance with
W3C standards, Apache Ant integration into
NetBeans
NetBeans and Mozilla developers collaborate on
spell-checking module, NetBeans adopts Mozilla
super review process
Apache releases new version of Tomcat
NetBeans workarounds for Mozilla shortcuts
Changes in HTTP, CCS, DOM, URI/URL, XML, XHTML
standards
Bugzilla, compliance with W3C standard
protocols/data formats, compressed HTTP module
support, Javascript support
Browser-specific actions, browser-error
workarounds,
14
Inter-community issues
  • Communication and collaboration
  • Bug reports and feature requests
  • Patches submitted
  • Java.net, Java Tools Community, and Java
    Community Process
  • Leadership and control across projects
  • Sun NetBeans vs. IBM Eclipse
  • Conflict resolution
  • Mailing lists Slashdot Developer blogs

15
Process modeling
  • Rich pictures with hyperlinked Use Case scenarios
  • Directed and attributed resource flow graph
  • Process domain ontology

16
Rich Picture
Funds, support, Promote Java/Open source
Sun Microsystems
Download and use free software
Share knowledge and ensure all community issues
are addressed
Ensure that the netbeans community is being run
in a fair and open manner
Configure and maintain CVS
Community Manager
Start new release phase, propose schedule/plan
respond to tech issues, unanswered questions
Release Manager
make decisions for the community, on high level
download new release
The Board
Users
release proposal, release updates, branch for
current release, release post mortem, review
release candidates (2) decide final release
report bugs
grant access
CVS Manager
Mailing Lists
Manage website
Website
Tools
deploy builds
download development builds and test, release
Q-builds
SourceCast
CVS
IssueZilla
decide features for the project and merge
patches/bug fixes, create module web page
Site Administrator
select feature to develop, bug to fix, download
netbeans, commit code
QA Team
Produce Q- builds and ensure quality of the
software
Maintain a project/ module, manage a group of
developers
Contribute to community, meet time constraints
for the release
grant CVS commit privilege to developers
Maintainer
Developers/ Contributors
Link to all Use Cases
Links to all Agents
Link to Tools
17
(No Transcript)
18
(No Transcript)
19
NetBeans
20
Process re-enactment
  • Generating executable or re-enactable process
    specifications from ontology
  • Low-fidelity process re-enactment support
  • We dont try to model everything
  • Focus on resource flow patterns
  • Accommodate gaps and detect inconsistencies in
    process enactment models
  • Re-enactments are interactive, navigational, and
    grounded in artifacts, tools, roles, and resource
    dependencies resulting from discovery and modeling

21
Formal model of a Netbeans.org process coded in
PML (excerpt)
  • ...
  • sequence Test
  • action Execute automatic test scripts
  • requires Test scripts, release binaries
  • provides Test results
  • tool Automated test suite (xtest, others)
  • agent Sun ONE Studio QA team
  • script / Executed off-site /
  • action Execute manual test scripts
  • requires Release binaries
  • provides Test results
  • tool NetBeans IDE
  • agent users, developers, Sun ONE Studio QA
    team, Sun ONE Studio developers
  • script / Executed off-site /
  • iteration Update Issuezilla
  • action Report issues to Issuezilla
  • requires Test results
  • provides Issuezilla entry
  • tool Web browser

22
PML validation analysis

23
PML analysis detail (excerpt)

24
(No Transcript)
25
(No Transcript)
26
Discussion
  • Patterns of interaction about objects or
    artifacts
  • Discovering and modeling socio-technical and
    cultural evolution processes
  • Validation strategies and tactics
  • Process discovery, modeling, and re-enactment
    implications
  • MKIDS Integration

27
Patterns of interaction about boundary
objects/artifacts
  • Patterns can be detected and include
  • Integration of a tool or support for a technology
    created by another community that create, update,
    or manage shared objects
  • Defect detection and reduction
  • Organizations contribute defect reports/patches
    detected in another organization's tool or
    technology implementation
  • Infrastructure evolution planning
  • Research contributing to discussions of
    future/changes in tools and technologies
  • Discovery, assessment of effects on ones own
    community
  • These interactions give rise to additional
    opportunities for coordination and conflict

28
Socio-technical and cultural evolution processes
  • New processes under study
  • Joining and contributing to a project in progress
  • Role-task migration from project periphery to
    center
  • Alliance formation and community development
  • Independent and autonomous project communities
    can interlink via social networks that manipulate
    objects of interaction
  • Enables possible exponential growth of
    interacting and interdependent community as
    socio-technical interaction network

29
(No Transcript)
30
Validation strategies and tactics
  • Multi-mode modeling
  • Collection and annotation of artifacts
  • Rich pictures with hyperlinked Use Case scenarios
  • Directed and attributed resource flow graph
  • Process domain ontology construction
  • Simulated process re-enactment
  • Process model language generated from ontology
  • PML compiled into re-enactment environment
  • Automated PML source validation
  • Simulated walkthrough of process
  • Integration via ethnographic hypermedia
  • Open to independent validation and interactive
    traceability

31
Discovery, modeling and
re-enactment implications
  • Discovering, modeling, and understanding hidden
    software processes in large OSSD projects
  • requires semi-automated process discovery
    techniques
  • must span multi-project ecosystem
  • Discovered processes (still) need to be modeled
    as narrative, hypermedia, and formal
    computational models.
  • Understanding large, aggregated Internet-based
    projects requires process discovery, modeling
    tools, re-enactment and validation techniques.

32
Where Were Going
33
MKIDS Integration
  • Integration with USC efforts examined and
    feasible
  • Text analysis, categorization, summarization
  • Process taxonomies
  • Integration with OSU, Stanford, and CMU efforts
    appear feasible
  • Task analysis
  • Process simulation and modeling
  • Social network analysis
  • Other MKIDS modeling and scheduling efforts might
    be possible to integrate

34
Conclusions
  • We are examining processes within and across
    multiple projects spanning multiple
    loosely-coupled communities
  • Multiple project/organizational interaction may
    be coordinative or conflictive
  • Interaction is driven by ongoing synchronization
    and stabilization of objects of interaction
    across project communities
  • Project interaction patterns are emerging,
    detectable, modeled, and suitable for simulated
    re-enactment
  • Discovering, modeling, validating, and
    re-enacting hidden processes within and across
    multiple inter-dependent projects is challenging
    and important.

35
References
  • D.C. Atkinson, D.C. Weeks, and J. Noll. The
    Design of Evolutionary Process Modeling
    Languages, Proc. 11th Asia-Pacific Software
    Engineering Conf., Dec. 2004.
  • D.C. Atkinson and J. Noll. Automated Validation
    and Verification of Process Models, Proc. 7th
    Intern. IASTED Conf. Software Engineering and
    Applications, November 2003.
  • C. Jensen and W. Scacchi, Discovering, Modeling,
    and Reenacting Open Source Software Development
    Processes, Institute for Software Research,
    Submitted for publication, March 2004.
  • C. Jensen and W. Scacchi, Process Modeling the
    Web Information Infrastructure, Proc. 5th.
    Software Process Simulation and Modeling
    Workshop, Edinburgh, Scotland, May 2004.

36
References
  • C. Jensen and W. Scacchi, Data Mining for
    Software Process Discovery in Open Source
    Software Development Communities, Proc. Workshop
    on Mining Software Repositories, 96-100,
    Edinburgh, Scotland, May 2004.
  • C. Jensen and W. Scacchi, Collaboration,
    Leadership, Control, and Conflict Negotiation in
    the NetBeans.org Community, Proc. 4th. Workshop
    on Open Source Software Engineering, 48-52,
    Edinburgh, Scotland, May 2004.
  • W. Scacchi, Socio-Technical Interaction Networks
    in Free/Open Source Software Development
    Processes, revised version to appear in S.T.
    Acuña and N. Juristo (eds.), Peopleware and the
    Software Process, World Scientific Press, 2004.
  • W. Scacchi, C. Jensen, J. Noll and M. Elliott,
    Multi-Modal Modeling of Open Source Software
    Requirements Processes, submitted for
    publication, September 2004.

37
Acknowledgements
  • Project collaborators
  • Darren Atkinson, Santa Clara University
  • Margaret Ellliot, Chris Jensen, UCI-ISR
  • Mark Ackerman, UMichigan, Ann Arbor
  • Les Gasser, UIUC
  • Funding support (no endorsement implied)
  • National Science Foundation 0083075, 0205679,
    0205724, and 0350754.
Write a Comment
User Comments (0)
About PowerShow.com