[dancer-users] Dancer2 Release Cycles and Feature/Bugfix Release Planning
burnersk
dancer at failmail.de
Tue Oct 21 19:34:13 BST 2014
Hi Sawyer,
here is my draft of the introduction email...
--- DRAFT ---
Hi folks.
I was wondering recently when the feature X or the bug Y will be fixed.
So I try to look up it in the GitHub Milestones[1]. I saw that
milestones was used but starting from 0.14100 there was no progress at
all with milestones (progress with issues itself was made of course).
For me as a developer milestones are nice because I can see what is on
the schedule for the next release. From the user point I can see when my
beloved feature X or hated bug Y is going to be fixed.
I think GitHub Milestones are a great way to communicate to developers
and users at the same time.
So I asked on #dancer if there where any plans to proceed with release
planning based on GitHub Milestones.
It turns out that the intention was there but time was missing to
organize.
Sawyer asked me to attend to help with release planning.
I'm not sure that this is true but I had in mind, that the Dancer2
release cycle supposed to be 2 weeks. So that every second week there
will be a new release with new great features and fixed bugs.
I'd like to check with all of you folks, developers or users, if you
want this or not. Please discuss this idea.
I can imagine the following "process".
Basic environment:
* develop period: 12 days (freeze on day 13 and 14, release on day 14)
* develop time per developer: 1 hour / day (5 days a week, 10 hours a
period)
* developers: 8 core developer (some may not work "all the time" but we
have other contributors)
* total work hours per period: 80 hours
Milestone calculation (break on first match, it's just a guideline - not
a strict rule):
* estimate severity and popularity
* very_next_release means the very next release even if it's barely
possible (no left *planed* development time)
* next_possible_release means the next possible release according on the
development time left for the milestone
* next_but_one_possible_release means the possible release(ses) after
next_possible_release according on the development time left for the
milestone
1. for severity in (Blocker, Critical) set milestone to
very_next_release
2. for type in (Bug) and severity in (Major) and popularity in (High)
set milestone to very_next_release
3. for severity in (Medium) and popularity in (High) and complexity in
(Easy) set milestone to next_possible_release
4. for severity in (Medium) and popularity in (High) and complexity in
(Moderate) set milestone to next_possible_release
5. for severity in (Medium) and popularity in (High) and complexity in
(Hard) set milestone to next_but_one_possible_release
6. for others set milestone to next_but_one_possible_release
I'd soft estimate the severity and popularity, check back with the core
developers and finally assign the milestone. Furthermore I'll (or a
small team will) set severity, popularity and complexity initially when
they are checked by the core team.
According to the release cycle the milestone due dates will be set.
Issues which are not become final within the desired milestone will be
moved to the next milestone. Due to this circumstance there will be
reserve of 10 working hours within every milestone for those delayed
issues. The affected issues will be flagged as delayed.
What do you think about all of it?
[1] https://github.com/PerlDancer/Dancer2/milestones
--
Cheers,
burnersk
More information about the dancer-users
mailing list