2012/4/14 Vincent Massol <vincent(a)massol.net>et>:
Well I'm fine with both too but I really think
you'll get more extensive result from asking on this thread:
* you'll get the sum of our knowledge. There isn't a single person who knows it
all here. We all have some knowledge of some part of XWiki and we don't always agree!
(which is very fine)
* this interaction will be archived and searchable in the future so people won't just
see the result but the whole interaction and the various answers from different people
So I'm all for doing it here :)
Well, consider me convinced. :) Let's try this the open source way
then! Everyone is very welcome to join in on the conversation.
As Vincent suggested I am going to split up my questions into three or
four posts, roughly separated by topic. This first post contains
rather general questions about the process and the stages of
development, while the follow-up posts concentrate more on the
project's management, people, structure and infrastructure.
You can assume that I am aware of the development process as far as it
is detailed on
dev.xwiki.org and
xwiki.com, and for my research I
would like deepen this knowledge, especially on how the process is
applied in practice, and how it is seen from within.
So, without further ado, my first questions:
As far as the process is concerned directly, which are the parts of
development that profit most from the fact that XWiki is open source?
It seems like XWiki has a rather large core team closely working
together, and the Hall of Fame lists rather few external contributors.
Does this reflect the actual distribution in the project? What are the
costs and benefits of using open source development methods in this
situation? Would communication patterns, knowledge management and
development cycles be approached differently if XWiki was developed
purely in-house?
Another thing I'm interested in is how the scope of the project and
the direction of development are decided on. To what degree do
different stakeholders influence the course of XWiki, what is caused
by personal itches of the developers, requests of paying customers, or
complaints and suggestions of casual users? Is there a special time in
the release cycle when new content is agreed upon? How far and in what
detail can the content of future releases be planned ahead by the
developers? Are detailed plans desirable, or is it more advantageous
to react to circumstances when they arise?
The third question concerns specialized tasks surrounding the
development. XWiki follows diverse strategies for testing. One of them
is manual, formal testing executed by a dedicated QA team. Does this
part of the approach make the many-eyeballs-method of discovering bugs
less important, or is a combination of these two strategies necessary
for overall high quality of the code? Could automated testing stand on
its with sufficient coverage? On a similar note, how do the different
methods pursued in customer support (like detailed documentation,
peers helping each other, and specialized paid support) interact and
draw upon each other?
I phrased the questions deliberately at length to roughly stake out
the areas I would be more interested in. Every comment, opinion or
experience that relates to the given topics is highly welcome. I will
eagerly keep track of the mailing list for answers and follow up with
the next round of my questions in a few days.
Kind regards,
Martin