You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lenya.apache.org by "Gregor J. Rothfuss" <gr...@wyona.com> on 2005/03/15 03:42:58 UTC

Re: [Fwd: CRS4 - Research Center - Questionnaire about the Lenya developmentprocess]

> 1.     Do you know Agile Methodologies, and in particular Extreme
>          Programming and its practices?
>          [X] A. Yes    [ ] B. No
>          If so, which of XP practices does your OS project make use of
>          or benefit from?    [Continous Integration]
>
> 2.     How many people are using your project?    [unknown]
>
> 3.     How many developers contribute to your project and how many
>          of them are allowed to commit?    [about a dozen]
>
>   COMMUNICATION
>   1. How do developers communicate?
>    [X] A. mailing list
>    [X] B. Wiki
>    [X] C. chat
>    [ ] D. private mails
>    [X] E. bug tracking system
>    [ ] F. others:
>
>
>   2. If you use a mailing list and private mail, do you use conventions
> for
> the subject and/or for the content of emails?
>       [X ] A. Yes    [ ] B. No
>
>   3. If you use istant messaging, do you save the session of chat?
>       [ ] A. Yes    [X] B. No
Chat is not used for development, but rather to strengthen cohesion
between developers.
>          ANALYSIS AND PLANNING
>          1.    In your OS project, how often project requirements are
>                 analyzed?    [continously through bugzilla]
>
>          2.    Do you apply the Simple Design XP practice, "do the
> simplest
>                 thing that could possibly work"?
>                 [X] A. Yes    [ ] B. No
the volunteer nature of it favours this approach anyway.
>          3.    How often do you release a new version?    [every 2 months ]

>          CODING
>          1.    Does your OS project adhere to coding standards?
>                 [X] A.    yes, we have an explicit set of standards
>                 [X] B.    standards are often enforced by the key
> developer
>                             who messages contributions in his own style
>                 [ ] C.    no
>
>          2.    In XP, the "collective code ownership" practice means that
>                 anyone can modify any part of the project.  In your
> project:
>                 [X] A.    everyone is allowed to make and commit changes
>                             directly (e.g. via CVS)
>                 [ ] B.    only a few people are allowed to make changes
>                             directly and developers changes are required
>                             to be submitted for review.
>                 In the latter case, what process is required for
> developers
>                 to submit changes?    [ ]
>
>          3.    Do developers practice continuous integration?
>                 [ ] A. Yes    [X] B. No
>                 If so, which tool or framework do they use and how often
> do
>                 they integrate their developed code?    [Apache Gump]
>
>          4.    How many time (average hours per week, month or year) do
>                 contributors spend working at the project?     [maybe 5h
per week?]
>
>          REFACTORING
>          1.    If contributors of your OS project practice refactoring,
>                 they do this:
>                 [X] A.    all the time
>                 [ ] B.    after a new functionality is added
>                 [ ] C.    sometimes, when is being too difficult add new
>                             functionalities
>                 [ ] D.    only when the system is going to break
>                 [ ] E.    others:
We found the amount of refactoring to be very much a variable of personal
style (and skill).

>          2.    Which tool or framework do developers use for refactoring?
>                 [Eclipse, FindBugs]
>
>          3.    In which way does refactoring improve (or could improve)
>                 the OSS development process?
>                 [X] A.    simplifies the code design level
>                 [X] B.    keep your code clean and concise, it is easier
>                             to understand, modify, and extend
>                 [ ] C.    throughout the entire project life cycle saves
> time
>                             and increases quality
>                 [ ] D.    others:
>
>          TESTING
>          1.    If your developers community practices testing,
>                 who writes tests?
>                 [ ] A.    a specific team or a core member
>                 [ ] B.    each contributor must test the code he develops
>                 [X] C.    there are no set rules for testing: if the
>                             developer wants he can test his code
>                 [ ] D.    others:
>
>          2.    Which tool or framework do developers use for testing?   
[Junit, Canoo Webtest]
>
>          3.    They have used this practice:
>                 [X] A.    since the project started
>                 [ ] B.    from a certain point of the development process
>                             (in the middle, towards the end...).
>
>          4.    Testing is carried out:
>                 [ ] A.    in a systematic way: tests are provided as class
>                             methods but written after the code itself
>                 [X] B.    only to certain class methods, when needed
there are very few test cases, unfortunately.

>                 [ ] C.    tests are written  before the code itself, as
> XP.
>                             The community adopts the "Test Driven
>                             Development" practice (TDD).
>
>          5.    In which way does testing improve (or could improve) the OS
>                 development process?
>                 [ ] A.    the code is more robust, it's simpler for
>                             developers to add a new code
>                 [X ] B.    It's simpler to find and fix bugs and defects
>                 [X ] C.    the project requires less oversight and review,
>                             because you know what worked
>                 [ ] D.    testing encourages more people to contribute
>                             because they have immediate feedback on
> whether
>                             their changes worked or not
>                 [X] E.    testing allows you to release early and often
>                 [ ] F.    contributors can be more confident developing
>                             because they know that the tests will catch
>                             accidental breakage
>                 [X] G.    testing improves code quality
>                 [ ] H.    others:

the main hurdles are:

* lazyness
* lack of easy to use testing frameworks for containers


-- 
Gregor J. Rothfuss
COO, Wyona       Content Management Solutions    http://wyona.com
Apache Lenya                              http://lenya.apache.org
gregor.rothfuss@wyona.com                       gregor@apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org