Tag: Software Development

The powerful benefits of value stream mapping – improving your software development process

projmgt

Value stream mapping is a powerful tool. It’s used to identify and remove bottlenecks in your organizations value stream.  Before going further about the mapping, let me first touch on what a value stream is. I’ll also describe the theory of constraints.

Your organizations value stream is the end to end process used to deliver a product to the customer. For example, it may begin as a request from a customer, and end once the customer has the finished product. The stream contains all the activities it takes to get the customer the finished product. Each activity contains a work time, and a wait time.

The theory of constraints says that the best way to optimize an organization is to focus on throughput. Throughput is the key to generating profitable revenue. The way to increase throughput is to look for the current bottleneck that is slowing things down and fix it. Once removed, find the next bottleneck and fix that. Keep this up and you will have a fast-moving value stream (Goldratt, E 1984).

Creating a value stream map – “Mapping your value stream is a good way to start discovering waste in your software development process. In industry after industry, the process of mapping the value stream has invariably led to deeper insights about how internal processes work or don’t work to meet customer needs” (Poppendieck, 2003).

An easy way to create a value stream map is to have a project team gather around the whiteboard. The process shouldn’t take long. You should be able to do this in an hour or less. Write out all key activities in your value stream. For each activity, write down how much work time it takes, and how much wait time there is.

For example, you may find it takes on average 2 weeks to code for a project, but it takes an extra 3 weeks to move the code to test. This extra 3 weeks is wait time that doesn’t provide any value to the customer. It is waste.

After creating the value stream, identify the biggest bottlenecks in your process. The goal is to increase flow and value added time in the system. Focus on the fixing the biggest bottleneck, then continue to fix the next bottleneck.

In software development, it is common to find that the biggest bottlenecks occur after development and testing are complete. This is why it’s so important for organizations to be moving towards a lean software development model.

Below is a picture of a value stream map from the book Lean Thinking, by James Womack and Daniel Jones.

 

lean-and-kanbanbased-software-development-14-638

For more content like this, subscribe to the MacIsaac Consulting Blog.

To contact us about our services, click here.

References:

Mary and Tom Poppendieck, Lean Software Devleopment

Eliyahu M. Goldratt, The Goal

Top 10 influencers of the Agile software development movement

As a practitioner and student of Agile software development, I am fascinated by those who have influenced the Agile movement.

For fun, I have decided to put together my personal top 10 list of those who I believe have influenced what we refer to as Agile software development. Not only have they influenced Agile, most of them have put out bodies of work that will continue to educate future generations.

For all you Agile gurus out there, don’t freak out about who’s not on my list. You may have your own list which looks completely different. I know every time the the NFL puts out a top ten players list,  I’m usually in disagreement 🙂

Here we go…

10 -Kent Beck

 Kent Beck

Currently working for Facebook, Beck is the creator of Extreme Programming. He was one of the original contributors to the Agile Manifesto in 2001. He is a leading advocate for test driven development (TDD). Beck has published over 8 books on software development.

9 – Mary and Tom Poppendieck

Mary and Tom P

Mary and Tom are a package deal. I was fortunate enough to attend one of their workshops several years ago. Minnesota locals, the two have written together several books on lean software delivery. They helped bring lean production techniques to software development. Together they have had a big influence on the Agile movement.

8 – Jeff Sutherland

jeff_sutherland

One of my personal favorites, Sutherland is the co-creator of Scrum. A West Point graduate and pilot,  Jeff flew over a hundred missions in Vietnam. After his military carrer, Jeff got into software development. He was a doctor at the University of Colorodo school of medicine, and he helped write the Agile manifesto in 2001.

7 – Eliyahu Goldratt

Eliyahu Goldratt

Although his name may not be synonymous with software development, Goldratt has influenced the way we think about systems. Goldratt’s book “The Goal” is a required reading in almost every business school. He’s is known for his teachings on the theory of constraints (TOC) and the critical chain method.

6 – Ken Schwaber

ken_schwaber

The co-inventor of Scrum along with Sutherland, Schwaber is a prominent leader of the Agile movement. Ken has authored many books on Agile and Scrum. Ken founded Agile Alliance and Scrum Alliance, which created the Scrum master certification programs. Ken helped write the Agile manifesto in 2001.

5 – Jim Highsmith

Jim Highsmith

Jim has authored books on software development and Agile project management. He created the adaptive software development model. Jim is respected as a leader in the Agile software development movement. Jim won the Jolt award in 2000, and the Stevens award in 2005.

4 – Frederick Brooks

Frederick Brooks

Brooks is an American computer scientists widely known for his book “The Mythical Man-Month”. In his book he describes the lessons he learned while managing the development of IBMs System/360 family of computers. Brooks law states: “adding manpower to a late software project makes it later”.

3 – Taiichi Ohno

Taiichi

The father of the Toyota production system, Taiichi Ohno was the originator what we now refer to as lean. The processes and principles he put in place at Toyota had a huge influence on lean software development and Agile. Ohno claimed that he modeled the Toyota Production system after Ford, only he removed the waste.

2 – Henry Ford

Henry Ford

Ford is a fascinating American icon. He founded the ford motor company and helped create the assembly line production process. Not only did his assembly line process change the auto industry, it changed the world. Manufacturing would never be the same. What I admire the most about Ford was that he accomplished so much, and he did it all  through sheer determination.  Ford had little formal education, he didn’t graduate from High School.

1 – Edwards Deming

deming

My favorite quality guru, W. Edwards Deming. What I like the most about Deming was that he cared for the line worker. He championed pride in workmanship. He put the responsiblity on management to focus on the system. Along with a 14 point process for quality improvement, he created the PDCA (Plan, Do, Check, Act) method. The PDCA method is exactly what takes place during Scrum sprints (iterations). His processes and statistical control methods also revolutionized the Japanese auto industry.

For more content like this, subscribe to the MacIsaac Consulting Blog.

To contact us about our services, click here.

Powered by WordPress & Theme by Anders Norén