Wikimedia Conference 2015/Programme/25
25: Software Engineering: Best Practices on decentralized innovation for our movement
How to move forward
- What was this session about?
Abraham presented WMDE’s experiences and best practices on decentralised software engineering.
- What are the next steps to be taken?
- Matanya expressed his wish to implement the idea and principles of the “Technical Wishes” process for the Hebrew community
- WMDE will publish a concept paper about the topic latest by Q4 2015
- WMDE and WMF exchanges closely on this topic. The WMF Community Tech team and the WMDE Product Manager will start conversations about how to work on a global "Technical Wishlist" together. First steps have been already started.
- Who is the person to reach out to?
Abraham Taherivand (WMDE)
- Original Description
- Calling the world's largest community of free open knowledge our customer, we’re developing software in one of the biggest and best known volunteer driven environments. This environment is highly diverse in the means of culture, language, preferences and requirements and provides new challenges for agile software development & engineering. Collaboration is pushed to a new level when agile processes need to deal with feedback from such a diverse community. In this talk Abraham wants to share gained knowledge and experiences about integrating and adapting agile workflows and processes to the challenges of diversity on different levels.
- Desired Outcome
- Shared experience and ideas on managing software development
- Affiliates with experience in and/or interest in developing software
- Session Format
- Presentation and Q&A, 45 min
- Abraham Taherivand (WMDE)
- Summary of the session
This session, led by Abraham Taherivand, head of WMDE’s software engineering, contained two main aspects: First, he presented how his department is structured and works (“Agile Software Engineering”); secondly, he presented his department’s Community Centered Innovation approach.
Agile Software Engineer means basically, as Abraham told, short development cycles during which the development team is achieving a product increment. At the end of each cycle a fully functional version of the product with incremented functionality is delivered. In WMDE’s case such a development cycle, a so called “Sprint”, typically is 2 weeks and is structured into a a story time meeting, sprint planning meeting, the development phase, (at the half of the Sprint’s time) and, finally, the sprint ends with retrospective meeting. In general, the deployment schedule is tight to the sprint cycle, so that a new, improved version of the software is released continuously.
Abraham’s second point was about WMDE’s focus on community centered innovation in and with engineering. The community of the German-speaking Wikipedia initiated a poll of tech wishes (“Technische Wunschliste”, German for “technical wishlist”). WMDE estimated how much time each would take, blockers, etc. on the wiki. Abraham pointed out that is important (and really useful) to have technical ambassadors in the community. Furthermore, an open and transparent "product planning" is important, and incorporate community feedback into agile processes. “Tech on Tour” is a further aspect of this kind of community centered engineering: WMDE staff members visit and/or organise community meet-ups and workshops to discuss and update the community about the status of the technical wishlist. It is crucial, to have the real world interaction with community members to built a personal and trustful conversation. After the presentation, Abraham opened the stage for questions and feedback by audience. Most questions related to aspects of the community centered engineering. So far, Abraham explained, his WMDE works mainly with the German-speaking Wikipedia community, the Commons community will be addressed in Q3 and Q4 2015 related to the Wikidata roadmap. He pointed out that the survey (poll) of the technical wishes was done entirely on-wiki and done by the community (also the first voting). Word was spread through central community sites.
One participant asked how the team manages the expectations to the community. Abraham emphasised his team’s open community style, which helps a lot to manage expectations and helps the community to learn that certain technical wishes are really cost-intensive or not doable. Furthermore, Abraham explained, face-to-face communications (like the “Tech on Tour”) are essential.
Another participant asked whether WMDE’s software engineering team was interested in maintaining tools written by volunteers (on Tools Labs). Abraham answered that it was part of the process and suggested that if a tool is used by many users, WMDE staff could maintain the tool, as it already does for certain ones.