Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Open development management practices

2,440 views

Published on

An overview of open development with a quick look at the essential processes and tools.

Published in: Business, Technology
  • Be the first to like this

Open development management practices

  1. 1. Open development management and practices in a distributed team Ross Gardler OSS Watch Service Manager [email_address] http://www.oss-watch.ac.uk Topic Tag: OSSWatch-OpenDevelopment <ul><li>Unless otherwise indicated, all materials in this presentation are © 2008 University of Oxford </li></ul><ul><li>and are licensed under the Creative Commons Attribution-ShareAlike 2.0 England & Wales licence . </li></ul>
  2. 2. Overview <ul><li>Who Are OSS Watch? </li></ul><ul><li>Who is Ross Gardler? </li></ul><ul><li>What is Open Development? </li></ul><ul><li>Essential Processes </li></ul><ul><li>Essential Tools </li></ul><ul><li>Advanced Processes and Tools </li></ul>
  3. 3. Who Are OSS Watch? <ul><li>JISC funded open source software advisory service (non-advocacy)‏ </li></ul><ul><li>Online and Face to Face support </li></ul><ul><ul><li>Licencing and IPR management </li></ul></ul><ul><ul><li>Open source project support </li></ul></ul><ul><ul><li>Evaluating and using open source </li></ul></ul><ul><li>Briefing notes and consultations </li></ul>
  4. 4. Who is Ross Gardler? <ul><li>Open source developer </li></ul><ul><ul><li>Member of The Apache Software Foundation </li></ul></ul><ul><li>Joined OSS Watch in Jan 2007 </li></ul><ul><li>Service Manager in July 2007 </li></ul><ul><li>My focus is on open source for sustainability </li></ul>
  5. 5. Overview <ul><li>Who Are OSS Watch? </li></ul><ul><li>Who is Ross Gardler? </li></ul><ul><li>What is Open Development? </li></ul><ul><li>Essential Processes </li></ul><ul><li>Essential Tools </li></ul><ul><li>Advanced Processes and Tools </li></ul>
  6. 6. Open development is... A way for distributed team members to collaboratively develop a shared resource
  7. 7. Open Development... <ul><li>Particularly useful in distributed self selecting teams </li></ul><ul><ul><li>Very common in open source projects </li></ul></ul><ul><li>Key attributes include: </li></ul><ul><ul><li>User engagement </li></ul></ul><ul><ul><li>Transparency </li></ul></ul><ul><ul><li>Collaboration </li></ul></ul><ul><ul><li>Agility </li></ul></ul>
  8. 8. Is it Agile Development? Yes, but No, but Yes, but No, but...
  9. 9. No <ul><li>Some Agile methods are not appropriate </li></ul><ul><ul><li>e.g. Does not require co-location </li></ul></ul><ul><li>Does allow anyone to participate </li></ul><ul><ul><li>NOTE: this does not mean that anyone has the right to modify open source code in the core repository </li></ul></ul>
  10. 10. Yes <ul><li>Many agile practices evolved from or alongside open development, e.g. </li></ul><ul><ul><li>Collective code ownership </li></ul></ul><ul><ul><li>Incremental design and architecture </li></ul></ul><ul><ul><li>Real customer involvement </li></ul></ul><ul><ul><li>Revision Control </li></ul></ul>
  11. 11. Overview <ul><li>Who Are OSS Watch? </li></ul><ul><li>Who is Ross Gardler? </li></ul><ul><li>What is Open Development? </li></ul><ul><li>Essential Processes </li></ul><ul><li>Essential Tools </li></ul><ul><li>Advanced Processes and Tools </li></ul>
  12. 12. Communication <ul><li>If it didn't happen on the list, it didn't happen </li></ul><ul><li>Face to face meetings produce proposals </li></ul><ul><ul><li>Decisions are made on mailing lists </li></ul></ul><ul><li>Transparency </li></ul><ul><ul><li>No hidden agenda </li></ul></ul>
  13. 13. Management <ul><li>Progression through project roles </li></ul><ul><ul><li>User -> Contributor -> Committer -> Maintainer </li></ul></ul><ul><li>Governance </li></ul><ul><ul><li>How are decisions made? </li></ul></ul><ul><ul><li>How are conflicts resolved? </li></ul></ul><ul><ul><li>How do you gain influence? </li></ul></ul><ul><li>IPR management </li></ul>
  14. 14. Quality Control <ul><li>Small reversible steps </li></ul><ul><li>Managing contributions </li></ul><ul><ul><li>Commit then review </li></ul></ul><ul><ul><li>Review then commit </li></ul></ul><ul><li>Test Driven Development </li></ul><ul><li>No tests or documentation, no commit </li></ul>
  15. 15. User Engagement <ul><li>Today's users may be Tomorrows contributor </li></ul><ul><li>Release early, release often </li></ul><ul><li>Managing user expectations </li></ul><ul><li>Capturing user testing (bug reports) </li></ul><ul><li>Capturing user needs (feature requests) </li></ul>
  16. 16. Recognition & Reward <ul><li>“ Those who contribute to us are as selfish as anybody else. There's rarely any charitable aspect of this.” - Marten Mickos, (Sold MySQL for $1B) </li></ul><ul><li>Recognise why people contribute </li></ul><ul><ul><li>A better solution for themselves </li></ul></ul><ul><li>Reward all forms of contribution </li></ul><ul><ul><li>Peer recognition is valuable </li></ul></ul>
  17. 17. Overview <ul><li>Who Are OSS Watch? </li></ul><ul><li>Who is Ross Gardler? </li></ul><ul><li>What is Open Development? </li></ul><ul><li>Essential Processes </li></ul><ul><li>Essential Tools </li></ul><ul><li>Advanced Processes and Tools </li></ul>
  18. 18. Web Site <ul><li>Mission statement </li></ul><ul><li>Non technical overview </li></ul><ul><ul><li>Status </li></ul></ul><ul><ul><li>Licence </li></ul></ul><ul><ul><li>Communication channels </li></ul></ul><ul><li>Downloads </li></ul><ul><li>Screenshots and Screencasts </li></ul>
  19. 19. Documentation <ul><li>Users </li></ul><ul><ul><li>Getting started </li></ul></ul><ul><ul><li>FAQ </li></ul></ul><ul><li>Developers </li></ul><ul><ul><li>Technical overview </li></ul></ul><ul><ul><li>Version Control </li></ul></ul><ul><ul><li>How to get involved </li></ul></ul>
  20. 20. Mailing Lists or Forums <ul><li>All lists/forums archived </li></ul><ul><ul><li>Project memory </li></ul></ul><ul><ul><li>Documentation </li></ul></ul><ul><li>Developers List </li></ul><ul><ul><li>technical discussion </li></ul></ul><ul><ul><li>developer support </li></ul></ul><ul><ul><li>Project management </li></ul></ul>
  21. 21. Other lists/forums? <ul><li>Do you really need others? </li></ul><ul><li>Don't split your small audience </li></ul><ul><li>You may need </li></ul><ul><ul><li>Users list for user support </li></ul></ul><ul><ul><li>Commit notifications </li></ul></ul><ul><ul><li>Management list for sensitive issues </li></ul></ul><ul><ul><ul><li>Be careful – transparency is everything </li></ul></ul></ul>
  22. 22. Issue Tracker <ul><li>Project management </li></ul><ul><li>Project road map </li></ul><ul><li>User feature requests </li></ul><ul><li>Activity tracking </li></ul><ul><li>All changes mailed to developer list </li></ul><ul><li>Patch management </li></ul>
  23. 23. Revision Control System <ul><li>Coordinate multiple developers </li></ul><ul><li>Project time machine </li></ul><ul><li>Reverse mistakes </li></ul><ul><li>IPR Management </li></ul><ul><li>Enables experimental development </li></ul><ul><li>All changes mailed to developer list </li></ul>
  24. 24. Overview <ul><li>Who Are OSS Watch? </li></ul><ul><li>Who is Ross Gardler? </li></ul><ul><li>What is Open Development? </li></ul><ul><li>Essential Processes </li></ul><ul><li>Essential Tools </li></ul><ul><li>Advanced Processes and Tools </li></ul>
  25. 25. Do you really need it? <ul><li>Tools are not the answer to a failing process </li></ul><ul><li>Process is not the answer to a failing project </li></ul><ul><li>Before adding new tools or processes think “Do you really need it?” </li></ul>
  26. 26. Adding value <ul><li>Remove don't add barriers </li></ul><ul><ul><li>Aim for participation </li></ul></ul><ul><li>Tools that reduce effort = good </li></ul><ul><ul><li>Continuous Integration </li></ul></ul><ul><ul><li>Patch management </li></ul></ul><ul><li>Tools that increase effort = bad(?) </li></ul>
  27. 27. Be Realistic, Be Sensible <ul><li>Building an open development project takes time </li></ul><ul><ul><li>“they” won't come flocking </li></ul></ul><ul><ul><li>You will talk to yourself in the early days </li></ul></ul><ul><li>Start as you mean to go on </li></ul><ul><ul><li>Lead by example, others will follow </li></ul></ul><ul><li>Encourage everyone to help new users </li></ul>
  28. 28. <ul><li>Thank you for listening </li></ul><ul><li>[email_address] </li></ul><ul><li>www.oss-watch.ac.uk </li></ul><ul><li>Ross Gardler </li></ul><ul><li>Image: Some Rights Reserved http://www.flickr.com/photos/ksaad/152579107/ </li></ul>

×