How do we arrive at our code?
- Our feature roadmap is a product backlog, owned by a Product Owner.
- Each item is described in terms of:
- Items in the backlog are sorted by priority.
- U/S are estimated by the team, before the development proceeds.
Example Feature Description
As a stake pool operator
I want the pool ordering to be fair and not favor any particular pools especially during the bootstrapping era
So that every pool has the same chance to be selected by users in the early stages.
Given that stake pools can be listed via https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/listStakePools
And they are ordered by “apparent performance”
When I query stake pools during the first epoch (when little information about them is available)
Then pools are ordered arbitrarily
And the order is not necessarily the same between different wallets
And the order is consistent between successive calls within the same wallet.
The project runs in triweekly “sprint” iterations.
One release per sprint would be ideal.
User stories are assigned to and owned by a single member of the team (a.k.a the Pilot). Pilots are seconded by a Co-Pilot Process.
Tasks and Pull Requests have a dedicated GitHub template:
Tasks move across the following board.
|*************| |*************| |*************| |*************| | To Do | | In Progress | | QA | | Done | |-------------| |-------------| |-------------| |-------------| | | | | | | | | | ... -----> ... -----> ... -----> ... | |_____________| |_____________| |_____________| |_____________|
During sprint weeks, we often accumulate technical debts (e.g.
FIXME). Example of tasks falling under the “technical debt” umbrella:
- Reviewing and extending code documentation
- Refactoring some potentially entangled parts of the code
- Re-organizing modules and folder achitecture
FIXMEs, or, turn them into U/S
- Identify areas of the source code which needs improvement
To be tackled efficiently, technical debts need to be mentioned and documented in ticket, so that it can be estimated, scoped, discussed and prioritized.
During the iteration planning meeting happening every week, the team will select the equivalent of 1-day work of technical debt to be tackled.