LEAN 방법론

I. TPS(Toyota Production System)를 재정립한 경영방법 LEAN 개요

가. LEAN 개발방법론의 정의

TPS(Toyota Production System)를 벤치마킹하여 재정립한 경영방법론인 LEAN 시스템의 품질 기법을 소프트웨어 개발에 적용한 개발방법론

나. LEAN 개발방법론의 특징

  • LEAN은 낭비를 발견하고 제거함으로 고객에 가치를 빠르게 제공
  • 생산성 향상을 위해 사용하는 LEAN 원칙을 SW 개발에 적용
  • SW 개발의 가장 큰 낭비는 결함이고 결함 제거 개념이 Agile과 유사

다. LEAN에서의 대표적인 낭비 요소

Transportation, Inventory, Motion, Waiting, Over Production, Over Processing, Defects/Rework
 

II. LEAN 개발의 7가지 원칙

원칙설명
Eliminate waste
낭비의 제거
불필요한 코드나 기능, 불분명한 요구사항 등 상품의 가치에 영향을 미치지 않는 모든 것을 제고
Amplify Learning
배움 증폭
프로젝트가 진행 간 학습할 필요가 있음, 고객의 학습도 필요
Defer Commitment
늦은 결정
중요한 문제에 대한 의사 결정을 최대한 미룸
요구사항 변경에 적응적으로 대응 할 수 있게 함
Empower the Team
팀에 권한 위임
직원들의 동기부여 및 자기의사결정권으로 잠재력 극대화
Deliver Fast
빠른 납품
빨리 결과물을 제공할 것, 고객이 요구사항을 변경할 시간을 주지 않음, 결점을 발견할 수 있는 시간 제공
Build Integrity in
통합성 구축
개발 초기부터 품질을 향상 시키도록 하는 것, 작은 개발 단계마다 오류를 발견하고 수정하는 작업
Optimize the whole
전체를 볼 것
요구사항 수집부터 제품을 릴리즈 하는 시점까지 모든 프로세스를 최적화 해야 함

 

III. LEAN 개발의 7대 낭비와 Kanban 활용

가. LEAN SW 개발의 7대 낭비

7대 낭비설명
미완성 작업
(Partial Done Work)
코드로 옮기지 않은 문서, 동기화되지 않은 코드 등 빠지지않게 흐름을 진행해야 재고 줄일 수 있음
가외기능
(Extra Feature)
필요하지 않는 기능을 추가하는 것으로 업무에 집중하고 되도록 기능을 추가하지 않는 방향으로 생각
재학습
(Relearning)
사람들을 개발 과정에 끌어들이지 못해 작업 공간에 제공할 수 있는 지식을 놓여 재학습하는 활동
이관
(Handoff)
업무의 이관은 상당량의 암묵지가 전수되지 못하고 암묵지를 문서로 전달하기 어려움
작업전환
(Task Switching)
작업 중 다른 작업으로 전환하는 것은 집중이 분산되고 시간을 소모 시키므로 전환 시간 낭비 최소화
지연
(Delay)
필요한 인원이 정기적인 피드백이 있는 Iteration은 지연을 극적으로 줄일 수 있음
결함테스트에 결함 유입을 걸러주는 실수 방지 테스트가 반드시 포함하고 자주 테스트

나. LEAN SW 개발에서 Kanban 활용

단계설명
워크플로우 가시화일을 작게 나누어 분류하고 각 항목이 어느 단계인지 알 수 있도록 제목을 붙임
공정중관리(WIP)워크플로우 공정 상 얼마나 많은 항목이 진행되는지 파악 가능하고 개발 단계에 남아있는 작업을 최소화
작업 소요시간 측정항 항목을 완료하는 데 걸리는 평균시간을 측정하고 소요시간 최적화를 위해 프로세스 최적화

 

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^