Agile for the Solo Developer
- Limit operate in progression (along with time - boxing). Also if you make use of a repetitive method (in contrast to Kanban), allow is claim your rate is 8 factors per model. Do not start working with all 8 simultaneously. Restricting WIP by either the variety of tales or tale factors is great.
- Have actually automated approval examinations for every one of your customer tales. Automate as high as you can as a whole.
- Err on the side of making customer tales also tiny. Generally of thumb, make the proportion of largest to tiniest tale 3:1 . If you take too lightly a tale in Scrum and also it ends up also large, numerous programmers can abound it to get it back on course. Yet you do not have adequate individuals.
- If, in a normal - sized - group context, you would certainly wait whether to divide a spike off a customer tale - in the solo or tiny - group context, do the spike readily. This aids to maintain tales smaller sized and also extra foreseeable.
- Retrospectives are necessary in agile as a whole, so Kanban (that would certainly be Personal Kanban) ratings added factors below, due to the fact that its retrospective procedure is extra data - driven. It is tough to play Triple Nickels when you do not have adequate individuals.
These points use possibly to both solo and also tiny - group (2 or 3 programmers) scenarios.
INCLUDED: at some time after I created this solution, I located this meeting talk and also was really satisfied: Personal Kanban: Optimizing the Individual Coder
Wow. I would certainly attempt to maintain a close friend responsible that I can call when I remained in problem - and also talk via the coding trouble. You recognize what I suggest ... simply the act of clarifying a trouble aloud brings a remedy to my mind 90% of the moment.
- Either job to well specified sprints, or purposely pick a Kanban strategy. Do not mistakenly wind up in Kanban
- Bugs first, attributes 2nd.
- Still maintain a concentrate on Value vs. attribute bloat. (YAGNI over Gold Plating)
- Retrospectives are equally as beneficial. And also equally as notably, make procedure adjustments in tiny portions. Do not determine that today you are going start to go TDD, Mock and also IoC in round unless you actually have no exterior attributes to supply ATM. Bring one in at once.
Inevitably, I specify Agile actually as "doing what makes good sense for your group and also consumer and also not sticking to old techniques due to the fact that they took place to resemble they operated in the past."
Further to the solution from klez (all excellent pointers), I would certainly recommend the following:
- Keeping an item stockpile
An item stockpile is primarily a checklist of all things you plan to finish at some phase for this item.
- Keeping a sprint burndown and also an item burndown
A sprint burndown begins with a checklist of all jobs you've determined to finish in this sprint (a part of your item stockpile to be finished over a set amount of time - as an example 2 weeks) in addition to the price quote of the job called for. As you note points off, you note them as done ; therefore lowering (or refuting) the continuing to be benefit that sprint.
In a similar way, an item burndown tracks the continuing to be benefit the entire item stockpile
- Adopting the principles of loved one estimate and also rate
Relative estimate is an estimate strategy that makes use of the various other jobs (or tales) as an overview. As an example, if you recognize job A is less complicated than job B and also concerning as two times as facility as job C, you would certainly see to it the "factors" for job A were proper about those assumptions.
The focus is out appropriately presuming the quantity of job called for, yet maintaining price quotes regular with each various other.
Rate is an action of the amount of "factors" you get carried out in a sprint. If your loved one estimate is making certain uniformity, this rate can be made use of to approximate which jobs you're most likely to get carried out in the upcoming sprints. Keep in mind though that rate needs to be frequently changed.
- By doing examination - driven growth
- By creating in tiny sprints
- By having a great deal of call with the consumer
I bear in mind reviewing a thesis concerning Cowboy Development, that is essentialy Agile for solo programmers, yet I can not bear in mind where I located it.