Friday, May 20, 2016

Lean manufacturing vs Scrum - intro (part 1)

This is the first post in a blog series in which I intend to explore the relationship between lean manufacturing and software development, and how scrum can, or can not, help eliminate the seven wastes of lean.

We use scrum for software development at Xpedia. If you don't know what that is, check our methodology write-up on the subject or if your attention span is shorter try our slide deck.

Before starting, it is important to note that scrum has a strong aspect of continuous improvement, especially through retrospectives at the end of each sprint. While the retrospectives are an integral part of scrum, the improvement could be totally unrelated to scrum and more often have to do with the team's environment and specific challenges. These continuous improvements should therefore help eliminate waste of all flavours, so in an indirect way one could argue that scrum addresses all categories of waste. Similarly the important role of a scrum master can be argued to have a role to play in eliminating any sort of waste, but again this is rather indirect and probably depends heavily on how good the scrum master is.

For purposes of this series though, I'm going to ignore indirect benefit though these mechanisms and rather focus on the direct waste-elimination benefits of core scrum components as I see it.

You may also be familiar with the happily acronymed lean software development (LSD). There is a relation with scrum, but it's not quite the same thing. The terminology for LSD (yes, I have to call it that now), originated (according to Wikipedia at least) with a 2003 book, Lean Software Development: An Agile Toolkit, by Mary and Tom Poppendieck, who specifically took the principles of lean manufacturing and applied these to software development to come up with LSD. However, scrum predates this by several years and by 2003 was already fairly well established. Of course, the Poppendiecks knew scrum well when they wrote their book and it contains lots of nods to scrum, but it seems their background in various manufacturing environments led them to more directly apply the principles of lean manufacturing to software development in general and not just specifically through scrum. I'm going to probably lean rather heavily on the Poppendiecks' work throughout this series and will definitely also make use of various other sources, but will rather list these in the final post to make sure I include them all. I do recommend this book though, definitely a worthwhile investment of your time if this stuff interests you.

Before LSD, the overlap between scrum and lean manufacturing principles seems to be a bit more coincidental. Various authors did pick up on this, but to my knowledge the Poppendieck's seem to have been the first ones to actually take lean manufacturing principles and apply them directly to software development.

Let's get to the seven wastes now.

Lean manufacturing focuses primarily on eliminating waste and specifically identifies the following 7 types of waste:
  • Transport
  • Inventory
  • Motion
  • Waiting
  • Overproduction
  • Over processing
  • Defects
Others have attempted to add to this list over time, but mostly lean manufacturing focuses on these seven. Proponents of scrum may think this was stolen from scrum, but I assure you lean manufacturing is somewhat older than that! 

In the following posts I'm going to explore the extent to which there is an analogous waste in software development  and how this is minimised by following a good scrum process and also in what areas you'll need to think for yourself and cannot rely on scrum alone.


Wednesday, May 18, 2016

I'm back!

I've been lazy with this blog for too long. Going to start posting like crazy soon. Watch this space!

Wednesday, August 20, 2014

The great cloud accounting software search of 2014 (part 6 - the final)

This is a continuation of my search from the previous posts (part 1, part 2, part 3, part 3b, part 4, part 5).

After much effort, I finally arrived at a stand-off between Zoho books or Xero in combination with Freshbooks.

To get to a final decision, I decided to make a list of our various accounting requirements, weight each of these on a scale of 1 to 10 depending on how important the requirement is, then score each of the options on each requirement, again on a scale of 1 to 10.

The requirements I rated against included a long list that I'm not going to bore you with, but will provide a short summary of significant differences. The areas where there were significant differences are listed below.

Areas where Zoho had the upperhand (note that in some of these Xero/Freshbooks also has a solution, but for some reason or other I just found Zoho's better or easier to use):

  • Visibility over which projects have unbilled time
  • Google apps integrated login
  • Consulting rates definitions/setup

Areas where Xero/Freshbooks had the upperhand (again note that in some of these Zoho also has a solution, but for some reason or other I just found Xero/Freshbooks's better or easier to use):

  • Export features to Excel/Google docs
  • Sending customer statements in bulk
  • Automatic exchange rate
  • Fixed asset register
  • Automated depreciation
Ultimately the combination of Xero and Freshbooks advantages outweighed Zoho and the final score on my whole list of requirements was 1005 for Xero/Freshbooks and 966 for Zoho. It was therefore a pretty close contest, but the bottom line was that Xero in combination with Freshbooks provides a slightly better fit for our requirements than Zoho.

To make the decision a little more difficult Zoho will cost us $24/month whereas Xero/Freshbooks will cost about $240 per month initially, but will grow by $10 per month with every additional employee we add on Freshbooks. I eventually decided to stick with my decision on Xero/Freshbooks though, since I did decide from the outset that as long as I stay within budget, I would prefer a better solution over a cheaper one.

Thus our journey with Xero and Freshbooks begins.