Proposal: Roadmaps Overview Plan
Marty Vance <[email protected]>
| Newsgroups | gmane.comp.cms.xaraya.devel |
|---|---|
| Organization | Xaraya |
| Message-ID | <[email protected]> |
Xaraya progress in recent years has been slow, partly due to the lack of strong project management capable of planning for the future. Recent releases have been driven mainly by the number of bugs fixed and small enhancements made over time, rather than any concrete planning. The PMC realizes that reaching goals is only possible if you know what they are. It's time for Xaraya to stop wandering and begin walking a path: it is time for some roadmaps. First, some definitions for the community to consider: Roadmap: A schedule and/or guide describing steps to be taken, comprised of Milestones. Milestone: A collection of tasks, features, or enhancements, grouped for completion at the same time. Feature: A distinct portion of funtionality. Enhancement: An improvement or expansion of an existing feature. Bug: A defect that prevents a feature from working properly. Bugs can take the form an error in existing code, or missing code. Task: A piece of work to be done. Task is a broad term which is more applicable outside of development activities, and can be equivalent to feature, enhancement, or bug, depending on scope. Release: A packaged collection of code, labelled with a version number, which includes changes described by one or more milestones. Development Cycle: The progression from one release to the next, which includes planning, development, testing, quality checking, packaging, release. The Roadmaps The PMC currently envisions three roadmaps, one for the project overall, and one each for Core 1x and Core 2x. Right now, all the roadmaps are in a planning stage. We are seeking input from the community on what milestones should be created, what each milestone includes, and in what order they should be completed. The project roadmap will consist of project management tasks, such as policy enactment, team formation, promotion, outreach, infrastructure/services maintenance, community events, day-to-day operations, and others. The PMC will maintain the project roadmap based on their ideas, and submissions from the community. The core roadmaps will consist of development tasks, including feature design and planning, enhancement scheduling, bug resolution, and release cycles. The Xaraya cores are in different stages of life. 1x is mature and stable, whereas 2x is not near a final release state. Complicating the overall situation is how and when the project will migrate development focus from 1x to 2x, and who will work on which core. Many in the community enjoy 1x and are familiar with it, but it does have its flaws, many of which have already been addressed in 2x. 1x still supports PHP4 (which has been discontinued) while 2x is PHP5 only. The main questions we face are: - How much longer is the community willing to put effort into 1x? - What needs to happen with 2x before the community can shift to it? - When will the community begin shifting toward 2x? - Can we sustain development on both cores, and for how long? The answers to questions will dictate much of what the core roadmaps contain going forward, especially 1x. Ideally the project should focus on one core at a time, but we have ended up in a transition period. Many projects are adopting fixed release schedules, where releases happen at a predetermined time interval rather than according to development progress. The community needs to decide if it is comfortable with this. While it does promote steady progress, it also puts pressure on developers, and can result in features being pushed to later milestones in order to maintain the schedule. At this point, we are planning the plans, or "meta-planning". Once the community knows how it wants to proceed, we can begin assembling milestones and tasks for all the roadmaps. See also: http://www.xaraya.com/index.php/xarbb/topic/3341