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.
XWiki's Development Process
Eduard Moraru
2016
About XWiki
●
Web platform on top of
the wiki paradigm
●
Structured data, scripting,
applications
●
Java platform, polyglo...
XWiki Features
● Modular and highly extensible
●
Version control, attachments, user and rights
management, subwiki and sub...
XWiki Enterprise
Community
● Users, Contributors and Core committers
●
Core and Contrib
●
Meritocracy
●
Governed by committers
● New commit...
Roadmap and Releases
● Timeboxing vs Feature-driven
●
Open roadmap for each minor release
●
1 major release per year
●
Min...
Process: Community
Process: Mails
Process: Chat
Process: Issues
Process: Code
Process: Continuous Integration
Process: Quality
Process: Builds
Process: Product
Process: Websites
Process – Recap
●
Communication: Mailing Lists + IRC
● Issue Tracking: Jira
● Source Code Management: GitHub
● Continuous ...
Dev Tools
● Source Control: Git
●
IDE: Eclipse, IntelliJ
●
Build Management: Maven 3
● Quality Control:
● Code style: Chec...
Dev Principles
● High focus on quality
● dev.xwiki.org dedicated to dev documentation and
best practices
●
Enforcing codin...
Statistics (1/2)
● 19 active committers
● 194 code contributors
●
60K commits
●
950K lines of code (Java)
●
67K mails
● 1K...
Statistics (2/2)
● 305 product releases
● (1 release every 15 days)
●
2.3M downloads
●
2200+ active instances
●
870+ exten...
Ways to Contribute
●
Pull Requests
●
github.com/xwiki
●
github.com/xwiki-contrib
● Translations
●
l10n.xwiki.org
● Documen...
Earning a living
● Multiple companies build their businesses on
top of XWiki
● XWiki.com is the main company sponsoring th...
Questions?
Thank you!
Eduard Moraru
Enygma2002
Upcoming SlideShare
Loading in …5
×

XWiki's Development Process

555 views

Published on

An overview of the XWiki open source project and its development process.

Presented at OSCamp, 08 May, 2016 (https://oscamp.eu/)

Published in: Software
  • Be the first to comment

  • Be the first to like this

XWiki's Development Process

  1. 1. XWiki's Development Process Eduard Moraru 2016
  2. 2. About XWiki ● Web platform on top of the wiki paradigm ● Structured data, scripting, applications ● Java platform, polyglot applications (JSR223) ● XWiki Enterprise – the product ● LGPL license, since 2004 ● www.xwiki.org
  3. 3. XWiki Features ● Modular and highly extensible ● Version control, attachments, user and rights management, subwiki and subpages, comments, wiki syntax and WYSIWYG editor, macros, notifications, skins, search, import/export, apps, etc. ● Use cases: ● Knowledge sharing and collaboration ● Intranets, knowledge base, public websites, groupware, education, etc.
  4. 4. XWiki Enterprise
  5. 5. Community ● Users, Contributors and Core committers ● Core and Contrib ● Meritocracy ● Governed by committers ● New committers voted based on contribution ● Lazy consensus ● Important changes go through voting ● +1, +/-0, -1 ● Core committers have veto (-1) rights
  6. 6. Roadmap and Releases ● Timeboxing vs Feature-driven ● Open roadmap for each minor release ● 1 major release per year ● Minor releases (2.5 months) ● Dev releases (1-3 weeks) ● Bugfix releases ● Support 3 versions (Dev, Stable & LTS) ● Release Manager Roster (taking turns) ● Release Process on xwiki.org
  7. 7. Process: Community
  8. 8. Process: Mails
  9. 9. Process: Chat
  10. 10. Process: Issues
  11. 11. Process: Code
  12. 12. Process: Continuous Integration
  13. 13. Process: Quality
  14. 14. Process: Builds
  15. 15. Process: Product
  16. 16. Process: Websites
  17. 17. Process – Recap ● Communication: Mailing Lists + IRC ● Issue Tracking: Jira ● Source Code Management: GitHub ● Continuous Integration: Jenkins ● Build Repository: Nexus ● Documentation: (*.)xwiki.org ● Localization: l10n.xwiki.org ● Extensions Repo: extensions.xwiki.org ● Code Quality: SonarQube
  18. 18. Dev Tools ● Source Control: Git ● IDE: Eclipse, IntelliJ ● Build Management: Maven 3 ● Quality Control: ● Code style: Checkstyle ● Testing: JUnit/Mockito, Jacoco, Selenium 2 ● Backwards compatibility: Revapi
  19. 19. Dev Principles ● High focus on quality ● dev.xwiki.org dedicated to dev documentation and best practices ● Enforcing coding style and min. test coverage ● XWiki special days (Bug Fixing Days, etc.) ● High focus on backwards compatibility ● Deprecation strategy ● Legacy modules
  20. 20. Statistics (1/2) ● 19 active committers ● 194 code contributors ● 60K commits ● 950K lines of code (Java) ● 67K mails ● 1K current subscribers ● 27.5K issues ● (13% open; 53% bugs)
  21. 21. Statistics (2/2) ● 305 product releases ● (1 release every 15 days) ● 2.3M downloads ● 2200+ active instances ● 870+ extensions ● (200+ applications) ● 37 supported languages ● 9/12 years @ Google Summer of Code
  22. 22. Ways to Contribute ● Pull Requests ● github.com/xwiki ● github.com/xwiki-contrib ● Translations ● l10n.xwiki.org ● Documentation ● xwiki.org ● New extensions ● extensions.xwiki.org
  23. 23. Earning a living ● Multiple companies build their businesses on top of XWiki ● XWiki.com is the main company sponsoring the development of the project (since 2004) ● Professional Support ● Consulting & Training ● Custom Development & Solutions ● Hosting ● Sustainable alternative to proprietary
  24. 24. Questions?
  25. 25. Thank you! Eduard Moraru Enygma2002

×