Notes
Outline
Perspective on the Future of Software Engineering:
Co-Opting Open Source
Jim Whitehead
University of California, Santa Cruz
Slide 2
Some Challenges of Software Development
Expensive people
Thin spread of domain knowledge
Developers isolated from user community
Defects costly to identify and fix
Long release cycles (~6months and up)
Learning from Open Source
Many Open Source success stories
Apache, sendmail, GIMP, CVS, Emacs, etc.
Some mixed results as well
Mozilla, OpenOffice
Best projects are category leaders
Clearly these projects are doing some things right…
What are the generalizable lessons that can be applied to more conventional projects?
Rapid Product Delivery
Releases on 2-4 week timeframes are possible
Major Web applications release features on a weekly basis
Research challenges
Software architectures that accommodate new features without major rework
Automated regression testing increases in importance
SCM tools and best practices
Integration of End Users
Open Source fosters immediate and direct interaction between end users and development team
Open mailing lists
Bug report forms & searchable databases
Open code and interfaces facilitate contributions by sophisticated end users
Research challenge:
Reduce gap with end users without loss of productivity or focus
Global development
Open source projects draw on global talent pool
Leverage the Internet:
CVS, Web, email, bugzilla
SourceForge offers pushbutton creation of a remote software development environment
Research challenges
What kinds of software development tools can be Web-based?
Text editors? Probably not.
Regression tests and code analysis? Sure.
Enhance the Web infrastructure for software development
DeltaV project: SCM facilities for HTTP
Slide 8
So, Essence or Fad?
Rapid releases
Reduces complexity of each release
Incremental, not big-bang releases
Integration of end users
Geographically dispersed projects
Increase applied brainpower without violating Brooks’ Law
Draw on global talent pool
Members are talented and motivated
Reinforced by meritocratic culture
Tool support a must to achieve these goals
Open Source @ ICSE 2001
Workshop on Open-Source Software Engineering
Organized by Feller, Fitzgerald, van der Hoek
Strongly related:
“An Empirical Study of Global Software Development: Distance and Speed”, Herbsleb, Mockus, Finholt, Grinter (p. 81)
“Using the Web for Document Versioning: An Implementation Report for DeltaV”
Hunt & Reuter (p. 507)
The true future of Software Engineering…