read

  린 소프트웨어 개발 - 애자일 실천 도구 22가지  메리 포펜딕.톰 포펜딕 지음, 김정민.김창준 외 옮김
도요타 제조업에서 유래되어 제조뿐만 아니라 유통, 제품 개발까지 혁명적으로 변화시킨 린(Lean) 원칙들을 애자일 소프트웨어 개발 방법에 도입하여 어떻게 더 좋고, 더 싸고, 더 빠르게 최적화 시킬 것인가에 대해 보여준다.

세계 1 위의 자동차 제조 회사인 도요타로부터 소프트웨어 개발에 대한 지혜를 배울 수 있게 해주는 책입니다. 높은 품질을 유지하면서 파트너사들로 부터 존경받고 업계의 경쟁에서 1 위를 할 수 있었던 그 노하우를 소프트웨어 개발에 적용시켜 봅니다.

예전부터 소프트웨어 개발은 다양한 분야에서 그 모델을 가져왔었는데, 가장 대표적인 경우는 건축 입니다. 아키텍트의 설계가 끝난 다음 공사가 시작되지요. 소프트웨어 개발도 이것을 본 떠 Waterfall 방식으로 진행되던 때가 있었습니다. 하지만 문제점들이 들어났고, 많은 개량이 가해졌습니다. 건축에서도 고정된 설계는 그다지 환영받지 못하는 추세입니다. (애자일이야기 : 건축 비유)

설계는 그 자체만으로 완전할 수 있습니다. 하지만 그것이 몹시도 불완전한 인간이라는 존재를 통해 현실 세계에 구현 될 때는 변경이 불가피해 집니다. 아마도 이 세계가 가지고 있는 복잡성이란 게 그만큼이나 다루기 힘들다는 이야기이겠지요.

어쨋든 여기 그 복잡성을 멋지게 다뤄내는 1 위의 자동차 기업, 도요타가 있습니다.

도요타 생산방식의 아버지 중 한 사람인 오노 다이이치는 직원들의 지속적인 프로세스 개선을 촉구하며 이런 말을 했다고 한다. "한 달 동안 표준을 바꾸지 않으면 회사에서 돈을 훔치고 있는 것이다." 명백히 도요타의 표준은 따르라고 있는 것이 아니고 개선하라고 있는 것이다.

- 김창준, 감수의 글 중에서

그렇습니다. 현실의 복잡도를 한번에 다 이해하지 못할 바에야 끊임없이 다시 배우고 고치는 자세를 가지는 것이 바람직합니다. 도요타는 이것을 실천에 옮긴 기업이며 그로 인해 많은 수익을 얻어냈습니다.

린 소프트웨어 개발방법은 도요타의 이런 태도에서 영감을 얻은 것입니다. "모든 불필요한 낭비를 제거하라" 라는 모토에서 시작하여 크게 7 가지의 원칙을 제시합니다.

1. 낭비를 제거하라

낭비는 제품에 가치를 부가하지 못하는 모든 것을 일컫는데, 이때 가치란 고객이 인지하는 것을 말한다.

2. 배움을 증폭하라

소프트웨어 개발은 정해진 방법대로 요리를 만드는 게 아니라 조리법 그 자체를 만드는 것과 유사합니다. 그렇기에 처음부터 완벽한 조리법을 만들 수 는 없습니다. 여러가지 변형을 거쳐 맛이 더 좋고 쉬운 방법을 찾게 됩니다. 이런 변화와 시도가 조직을 통해 증폭될 수 있도록 하라는 이야기 입니다.

3. 가능한 늦게 결정하라

이것은 결정을 차일피일 미루라는 것이 아니라 될 수 있는 한 많은 정보를 얻은 후 결정을 하라는 이야기 입니다. 이렇게 함으로서 불확실하게 바뀌는 현실에 보다 빠르고 유연하게 대응할 수 있게 됩니다.

4. 최대한 빨리 납품하라

익스트림 프로그래밍에서도 강조하던 요소입니다. 고객에게 빨리 배달하고 피드백을 얻는 것이 시간을 들여 고객의 의도를 추측하는 것보다 낫다는 이야기지요.

5. 팀에 권한을 위임하라

6. 통합성을 구축하라

통합성을 지닌 완전한 소프트웨어는 구조가 일관되고, 목적에 대한 유용성과 적합성에서 높은 점수를 받으며, 유지보수가 가능하며 적응성과 확장성이 좋다.

7. 전체를 보라

업계의 1위 자리를 유지하려면 끊임없는 자기 혁신 없이는 불가능합니다. 오노 다이이치의 말처럼 현재의 도요타는 혁신을 버릇으로 만드는 좋은 문화를 가지고 있는 것 같습니다. 그것은 계속 바뀌는 현실에 보다 높은 적응력을 제공해줍니다. XP 에서 이야기하는 것과 도요타가 외치는 것들의 본질은 같다고 할 수 있습니다.

링크

Blog Logo

Ki Sung Bae


Published

Image

Gsong's Blog

Developer + Entrepreneur = Entreveloper

Back to Overview