Open development management practices
Preview:
DESCRIPTION
An overview of open development with a quick look at the essential processes and tools.
Citation preview
- 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
- What is Open Development?
- 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?
-
- 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
- What is Open Development?
- 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
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
11. Overview
- What is Open Development?
- 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
13. Management
- Progression through project roles
-
- User -> Contributor -> Committer -> Maintainer
-
- How are conflicts resolved?
-
- How do you gain influence?
14. Quality Control
- 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
- What is Open Development?
- Advanced Processes and Tools
18. Web Site
- Screenshots and Screencasts
19. Documentation
20. Mailing Lists or Forums
- All lists/forums archived
21. Other lists/forums?
- Do you really need others?
- Don't split your small audience
-
- Users list for user support
-
- Management list for sensitive issues
-
-
- Be careful transparency is everything
22. Issue Tracker
- All changes mailed to developer list
23. Revision Control System
- Coordinate multiple developers
- Enables experimental development
- All changes mailed to developer list
24. Overview
- What is Open Development?
- 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
- Tools that reduce effort = good
- Tools that increase effort = bad(?)
27. Be Realistic, Be Sensible
- Building an open development project takes time
-
- 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.
- Image: Some Rights Reserved
http://www.flickr.com/photos/ksaad/152579107/