Collaborative product development in F/OSS projects

  • 663 views
Uploaded on

Successful F/OSS projects rely on effective collaborative product development processes. In this presentation we will briefly discuss about the key success factors of software projects - namely …

Successful F/OSS projects rely on effective collaborative product development processes. In this presentation we will briefly discuss about the key success factors of software projects - namely product management, programme and project management, User Experience (e.g. usability research, interaction and visual design), stakeholder management and launch management etc., and how they can relate to F/OSS projects as well.

In this presentation, we will also talk about the cultural differences and challenges across virtual teams, factors affecting knowledge sharing, gender-bias in F/OSS communities and other human behavioural challenges that make F/OSS projects particular more difficult to manage than other non-F/OSS projects.

This presentation was presented in the Hong Kong Open Source Conference held on Oct 19, 2013.

Video: http://www.youtube.com/watch?v=qW5UlYmYcaI

More in: Business , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
663
On Slideshare
0
From Embeds
0
Number of Embeds
12

Actions

Shares
Downloads
9
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Collaborative Product Development in Free and Open Source projects Amanda Lam 2013.10.19
  • 2. Who is Amanda Lam? ● ● BEng Computer Systems Engineering, University of Warwick, UK MSc Programme and Project Management, University of Warwick, UK (expected 2014) ● Assistant Product Manager, Mobile & New Devices, jobsDB.com ● Founding Member of the Hong Kong MeeGo Network ● ● ● ● Executive Committee Member and Podcaster of the Hong Kong PDA User Group (HKPUG) Blogger and gadget product reviewer Volunteered in unofficial Traditional Chinese localisation projects of the Maemo 4 & 5 platforms back in 2009 ● Developed Maemo 5 apps for Nokia N900 with Python language and Hildon/Gtk+ frameworks, such as eSpeak GUI Client and Stroke Order Chinese Input Method Recipient of the Nokia N950 developer device via MeeGo Community Device Program and developed various MeeGo 1.2 Harmattan apps for Nokia N9
  • 3. What makes a great (F/OSS) product? Thorough Research & Analysis Proper UX Research & User Testing Quality coding Intuitive UI Design Great (F/OSS) Product Comprehensive Testing & QA Easy-to-read Documentation Great localisation, Effective Marketing & Targeted Promotion Vision, Spirit, Belief Releasing product on time with good quality
  • 4. Who makes a great (F/OSS) product? Product Manager, Business Analyst & Data Analyst UX Researcher & Interaction Designer System Analyst & Software Developers Art Director & Visual Designer Great (F/OSS) Product Quality Assurance Manager & Testers Launch Manager & Product Marketing Manager Knowledge Manager, Technical Writer, Training Manager Top Management, Human Resources Portfolio Manager / Programme Manager / Project Manager
  • 5. How to make a great (F/OSS) product? Product Management Programme & Project Management Technical Capability & Skills Development Creative Management Great (F/OSS) Product Knowledge Management Quality Management Stakeholder Management & Launch Management Organisational Culture Alignment Portfolio / Programme / Project Management
  • 6. Product Management Michael Porter’s five forces Image courtesy: Wikipedia, www.abilitysuccessgrowth.com, business-docs.co.uk ● Key roles: Product Manager, Business Analyst, Data Analyst ● Identify problems to solve, market gap to fill, or even the Blue Ocean to create! ● ● Perform thorough research and analysis on status quo in the market: lots of market data would be required! Work out Benefits / Effort Matrix and prioritise product initiatives to a Product Roadmap ● Create and prepare product requirements for individual products ● Close monitoring the launched products and perform the above cycle again PESTLE Analysis
  • 7. Proper UX Research & User Testing Image courtesy: Drupal UX team (www.drupal.org), uxmag.com, Tobii ● ● ● Key roles: UX Researcher, Interaction Designer Research and analyse user behaviour, with the aid of tracking data, observation, or even specialised hardware (e.g. eye-tracking devices) Identify usability issues of existing products, or core user needs of future products ● Design wireframes or interactive prototypes ● Conduct unbiased user testing with the wireframes or prototypes ● Review user testing findings and fine-tune interaction design
  • 8. Creative Management Image courtesy: design.ubuntu.com, design.canonical.com ● ● ● ● ● Key roles: Art Director, Visual Designer Define brand guidelines, visual language and art direction that govern the look and feel of all products Manage the digital asset repository Create visual design and artworks for products, based on the Interaction Design received Manage creative people for manageable deliverable while not limiting their creativity.
  • 9. Knowledge Management Image courtesy: GNOME Documentation Hackfest 2012 – Brno, Czech Republic (lleksah.wordpress.com), doc.opensuse.org ● Key roles: Knowledge Manager, Technical Writer, Training Manager ● Prepare documentation of product requirements and technical details ● Create and maintain the knowledge repositories ● Work out the strategies for better knowledge sharing ● Provide training to key stakeholders
  • 10. Technical Capability & Skills Development Image courtesy: hacks.mozilla.org, AngelHack (www.startupshk.com) ● ● Key roles: System Analyst, Software Developers Perform feasibility studies, negotiate with Product Manager and convert business requirements into technical requirements ● Develop solutions in neat and scalable ways ● Transfer and develop skill sets of individuals – Explicit knowledge (e.g. coding guidelines and techniques) – Tacit knowledge (e.g. working style, communication skills etc.)
  • 11. Quality Management Image courtesy: www.softwaretestpro.com, Mozilla ● Key roles: Quality Assurance Manager, Testers ● Define acceptance standards, testing scope and comprehensive test plans ● Maintain the testing environment and automated test tools ● Manage and evolve the issue reporting systems ● Arrange necessary resources for testing, such as time, manpower and devices ● Provide advices on resolving the issues
  • 12. Stakeholder Management & Launch Management Image courtesy: WMG, University of Warwick; ww.real-user-monitoring.com ● Key roles: Product Marketing Manager, Launch Manager ● Identify key stakeholders (RACI matrix) and perform stakeholder analysis ● Effectively communicate key product messages to key stakeholders prior to launch ● Change management: look after stakeholders who will be negatively impacted ● Prepare product marketing guidelines for marketing teams to highlight key features and benefits ● Consult key stakeholders, plan and advise the best timing for product launches ● Work with Training Manager to arrange product training
  • 13. Organisation Culture Alignment “The vision for Ubuntu is part social and part economic: free software, available to everybody on the same terms, and funded through a portfolio of services provided by Canonical.” Image courtesy: Ubuntu.com ● Key roles: Top Management, Human Resources ● Establish core values such as vision, spirit and beliefs ● Understand the cultural background and differences of the project team members ● ● With the established core values, cultivate a unique organisation culture that sits on top of everyone's national culture, and get team members' buy-in Organise team building activities to make sure such organisation culture is ingrained in team members' mind
  • 14. Portfolio / Programme / Project Management Image courtesy: Jerry Bucknoff, PM Best Practices, sourceforge.net/projects/openproj ● Key roles: Portfolio Manager, Programme Manager, Project Manager ● Collect product initiatives from Product Managers, and categorise them into programme or portfolios. ● Identify and mitigate cost, time and resource risks at portfolio, programme and project levels; and find out the critical paths ● Work out interdependency of projects or programme. ● Allocate necessary resources and resolve resource conflicts for programme and project teams. ● Create roadmaps and milestones at portfolio and programme level, and project plan at project level
  • 15. What make F/OSS projects more difficult to manage? ● Often involve global virtual teams – ● Uneven distribution of skill sets (especially in smaller projects) – ● Cultural differences Too developer-dominated, too technical-focused Gender bias and stereotypes – – ● Male-dominated Female-unfriendly environment Knowledge-sharing challenges – Lack of informal socialisation – weak team climate – lack of trust and respect – uneven absorptive capacity – lack of knowledge customisation – … etc. Image courtesy: www.excellenceinleadership.co.uk, www.culpwrit.com
  • 16. Cultural differences: Geert Hofstede's Cultural Dimensions ● Eastern cultures is vastly different than Western cultures. ● Even in Asia, different countries would have different cultural characteristics. References: www.geerthofstede.nl, geert-hofstede.com
  • 17. Organisational culture and National culture Image courtesy: WMG, University of Warwick ● No matter what national culture and professional culture the team members belong to, if a common organisational culture is cultivated, team members would share common values, assumptions, artifacts and norms.
  • 18. Developer-dominated technical-focused geeky cultures ● ● Developers also need to understand what REAL USERS want! Be OPEN MINDED! Always welcome non-developers and newcomers to contribute! ● RESPECT the unique skill sets of each other. ● Speak HUMAN, EARTH language! ● Image courtesy: www.opendocs.org Allow newcomers to ask silly questions and guide them through wholeheartedly.
  • 19. Gender bias in F/OSS projects Huh, what happened? ~_~ – Are F/OSS ideas too philosophical? – Gender stereotypes: Women must be innocent? Women must be non-technical users? – Women's contributions not being recognised and they feel being excluded? Guys, RETHINK! Image courtesy: Women in Free/Open Source Software Development, Hanna M. Wallach, University of Massachusetts Amherst, 2011. http://people.cs.umass.edu/~wallach/talks/2011-04-05_JHU.pdf
  • 20. Knowledge sharing and conversion challenges in virtual teams Image courtesy: HICKS, R.C., DATTERO, R. and GALUP, S.D., 2007. A metaphor for knowledge management: explicit islands in a tacit sea. Journal of Knowledge Management, vol. 11, no. 1, pp. 5 ABI/INFORM Global. ISSN 13673270. DOI http://dx.doi.org.eproxy.vtclib9.vtc.edu.hk:2048/10.1108/13673270710728204. NONAKA, I., TOYAMA, R. and KONNO, N., 2000. SECI, ba and leadership: A unified model of dynamic knowledge creation. Long Range Planning, Feb 2000, vol. 33, no. 1, pp. 5-34 ABI/INFORM Global. ISSN 00246301. ● For virtual teams, – explicit knowledge are easier to acquire and share than tacit knowledge – hence knowledge conversion processes (“digestions”) are hindered
  • 21. Thank you! Follow me at...