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