You are on page 1of 37

Introduction

- deep seated problems

Background Researches
- What is Lean about? - Why Lean? - Previous studies of developing Lean software - Agile?

Research Methodology
- Ultimate goal - Agile tool, Scrum - Analyzing a case study from an global Internet portal company - Results of a case study

Conclusion
- Summary of research - Values - Limitations

With (1995) pointed, Todays software is getting fat (results in complexity) Poppendieck said, complexity is cholesterol which tacitly killing growth and profit in software development

, decrease quality and manageability

Quality

Immaturity
Managea bility

There have been movements and efforts to learn from Best Practices in manufacturing domain. What has attracted the most attention was Lean which was retranslated from Lean Manufacturing.

Lean is a mindset, a way of thinking about how to quickly deliver maximum value to the customer. (Hibbs et al., 2009) Lean offers 7 major principles such as waste elimination, learning amplification, seeing the whole, empowering team and so on. Waste elimination is the heart of Lean (Tierney, 1993)

Lean concept is applicable in any environment to improve software development. (Poppendieck, 2002) Lean principles provide a good framework for improving software development. (Poppendieck, 2002) Software industry would gain same result of what Lean benefited in production as it helped productivity more than double compared to industry norms while dropped errors and anomalies. (Poppendieck, 2002) Clearly implemented Lean software causes dramatic improvements. (Morgan, 1998) Application of Lean to software development reduces cycle time, but improve overall quality. (Hamiltion, 1999)

Effort 1 - Sowmyan (1998) tried to verify the feasibility of Lean Software Development with the idea of Reusability. - According to Sowmyan, Software reusability is core in implementing lean software.

- Expected Benefits: improving quality, but reducing time and costs.


- Limitation: it dealt with the topic in a theoretical way. That is, it did not specifically show how to implement the Lean principles into software development.

Effort 2 - Parnell-Klabo (2006) proposed a more practical way of developing software as combining Lean with Agile. - Used tool: Scrum (one of representatives of Agile)

- To empirically verify, it executed a pilot project targeting acquisition division at a large financial company.
- Results: Firstly used Lean optimized the software developing environment with 50% reduction in tasks. Secondly adopted Agile tool, Scrum reduced duration of software development and testing by 40% and also dropped costs by 15%.

- Value: pilot based experimental approach. - Limitation : did not present detailed Scrum role in achieving such outcomes. : Hard to understand the pilot success in the way of reflecting the lean idea. (the improvements achieved in cost, duration, and quality is not aligned with the core value of Lean, waste elimination.)

Based on the concept Agility Apply time-boxed iterative and evolutionary development, adaptive planning, promote evolutionary delivery. (Larman, 2004) Objective : to embrace Changes through rapid and flexible response to them. (Larman, 2004) Value : enhances value of products and ultimately users satisfaction.

Scrum is a tool managing a project with brief daily progress updates and iterative sprints development cycle.

Scrum is the most applicable to any business environment with high variability and complexity. (Parnell-Klabo, 2006)

High applicability
Scrum is simple; its process, practices, artifacts and rules are few, straightforward, and easy to learn. (Schwaber, 2003) High simplicity

Comparative Analysis of Real Case Studies

A
(Developed under Scrum)

VS

B
(Developed without Scrum)

Key decisions 1)What to manage to reduce wastes: Defects & Project lead time - Defects are one of the most harmful wastes in terms of quality, costs, and speed. (Tierney, 1993) Reasons
Undiscovered and not corrected defects will ruin project quality. It becomes far more expensive to fix defects as a project moves on.

- Long lead time creates high level of variation, increases costs, and hinders quality improvements.

2) How to visualize the effects of Scrum in the way of reflecting Lean

: CFD (Visualization Tool)


- It depicts total works to do, remaining works (=queue), completed works of a whole project. Thus, it enables users to easily recognize any stagnant bottlenecks and perform better for overall process improvement.

Case 1 (Global Finance Site Development Project)

Case 2 (Global World Cup Project)

Same things

- Both used same programming language under same development environment. - Size and development period of projects and their complexities were similar. - Each project team conformed to their development methodology. Agile approach (Scrum) - Sprint was released every 2 weeks

Traditional approach (Waterfall)

3 sub teams (15 members) Differences After first code freeze (22 February), WIP sharply increased Average Lead Time for defect detection and correction: 28 days

12 members

WIP kept at consistent level

Average Lead Time: 12 days (decreased up to 10 days as the project went on)

Case 1. Cumulative Flow Diagram of Global Finance Project

Lead Time

WIP

Case 1. Average lead time flow diagram of global finance project

Case 2. Cumulative flow diagram of global world cup project

Case 2. Average lead time flow diagram of global world cup project

What made them different? What caused the different results?


Under Scrum approach, the global world cup project were monitored every 2 weeks in order to see what happened during the previous 2 weeks . WIP (number of defects issued) was not much piled up, but resolved as soon as they occurred. Thus, Lead time (time to spend on fixing defects found) was steadily decreased.

On the other hand, under waterfall based project, huge amounts of errors were detected and stacked up since the team was not good enough to immediately correct them with limited team capability. WIP was stacked and it directly affected to increase lead time, eventually project costs escalated.

the objective was to visibly prove the effects of Scrum on implementing core lean idea, waste elimination in the whole course of software development. the result of case study showed there was two-and-half times differences between the highest level of WIP at each project. (maximum WIP in global finance; 500 whereas around 200 in global world cup) Plus, lead time in global world cup came down 50% compared to the one in global finance. (WIP + Lead time) = Wastes

Shows Agile could be a good tool for realizing Lean software development which only contains theoretical principles.

Empirically approached to the topic of agile-lean software development. Presented possibility that Agile practices and tools can be levers on implementation of core lean principle via Scrum adoption. All the findings in the research methodology and the way of performing the research seem to be a good guideline for future studies. The reduction of WIP and Lead time in the research seems to have positive impact on project cost, quality, and productivity improvements which are all proven goal of Agile.

the case study showed mainly quantified outcomes with the use of CFD.
the case study itself may lack of objectiveness for selecting projects in terms of control variables. could not explain the validity of using Agile in terms of actualization of other Lean principles.

You might also like