Difference between revisions of "Development Process"
CarlosRuiz (talk | contribs) (proposal) |
CarlosRuiz (talk | contribs) (→Backlog: more) |
||
Line 34: | Line 34: | ||
Items in the backlog are prioritized and passed to the next stage (Prioritized) by a prioritization composed by PMC Head, Architecture and Functional leader. | Items in the backlog are prioritized and passed to the next stage (Prioritized) by a prioritization composed by PMC Head, Architecture and Functional leader. | ||
− | This committee can define and change also the number of requirements allowed on each stage (kanban technique to limit work in progress) according to the resources on each stage | + | This committee can define and change also the number of requirements allowed on each stage (kanban technique to limit work in progress) according to the resources on each stage (and even they can add/drop/modify stages on the methodology if needed) |
=== Prioritized === | === Prioritized === |
Revision as of 13:23, 27 August 2010
Contents
PMC Development Process
Resources
Developers
Implementors companies can (and we encourage them to) to provide development and QA resources to be managed by PMC within a developer team.
The number of developers will define the capacity of the PMC at each stage.
Funds
Any company can (and we encourage them to) provide money the the ADeV (ADempiere Germany Foundation) to fund work on PMC.
The company can suggest ADeV the specific usage for the money (i.e. specific development in the backlog, PMC Head sponsorship, PMC development sponsorship)
When received funds for a specific development ADeV will inform to PMC - and PMC will decide if it's developed internally or searching to hire external developers.
It's encouraged also that ADeV (or other foundations) keep an amount of funds to sponsor different developments in the backlog.
Methodology
PMC development will follow Kanban agile methodology, visibility will be provided implementing a Kanban dashboard (sponsorship for server and application is required)
Stages
Backlog
The backlog is composed by:
- Prominent open bug fixes
- Specification Requests voted positively already developed
- Specification Requests voted positively pending to develop
Items in the backlog are prioritized and passed to the next stage (Prioritized) by a prioritization composed by PMC Head, Architecture and Functional leader.
This committee can define and change also the number of requirements allowed on each stage (kanban technique to limit work in progress) according to the resources on each stage (and even they can add/drop/modify stages on the methodology if needed)
Prioritized
Once the prioritization committee assign priority to a requirement and put it on this stage it can be taken by a developer from the next stage to be worked on.
A sourceforge tracker must be opened for prioritized items.
Development
A developer from the pool of resources can take a prioritized requirement and work on it - assigning an estimated time to complete, and an estimated time of arrival.
Development must be committed on a pre-release branch (proposed to be trunk) for community and other developers peer review. Peer reviewers can inform findings or suggest fixings on the sourceforge tracker.
QA
QA can be driven:
- by a different PMC developer
- or requesting community feedback (in this case at least two community members must inform the success of installation, configuration and testings)
Release
Things that passed QA will be integrated to release by PMC Head or a developer delegated by PMC Head.
Delivered
After integrated the required will be moved to delivered state