Size: 1829
Comment:
|
Size: 2591
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 33: | Line 33: |
경제적 협력 게임 모델은, 소프트웨어 개발은 일련의 '게임'이라고 말한다. 어떤 게임이냐면, 발명하기와 의사소통하기 외에는 아무 것도 없는, 전형적인 자원 제한 상태인 게임이다. 일련의 게임 안에 있는 각 게임은 리소스를 두고 경쟁하는 두 가지 목표가 있는데: 이 게임에서 소프트웨어를 완성하기와, 다음 게임을 위해 준비하는 것이다. 각 게임은 반복되지 않으므로, 매 프로젝트에서는 이전의 모든 게임들과 약간 다른 전략을 필요로 한다. 경제 협력 게임 모델은, 사람들이 자신의 작업에 대해 매우 구체적이고 집중적이며 효과적인 방식으로 생각하도록 유도한다. |
Alistair Cockburn이 지은 책.
이 책은 이 질문에 대해 답한다.
- 다른 작고 성공적인 프로젝트 팀들은 뭘 했길래 성공했을까?
- 그들은 어떤 프랙티스를 사용할까?
십여년 동안 성공적인 작은 팀들을 디브리핑하면, 대부분 같은 메세지를 답했다:
- 사람들이 함께 가깝게 앉게 하라. 자주 좋은 의지(goodwill)를 가지고 소통하게 하라.
- 조직(bureaucracy)을 최대한 활용하고 설계하게 하라.
- 실제 유저가 직접 개입하게 하라.
- 좋은 자동화 회귀 테스트 집합을 마련하라.
- 배포(shipping) 가능한 기능을 일찍, 그리고 자주 생산하라.
이 모든 것을 하고, 대부분의 상세한 프로세스는 will take care of themselves.
Crystal Clear는 간단하게 이렇게 묘사할 수 있다.
- 리드 디자이너, 그리고 2~7명의 다른 개발자들이 큰 방 혹은 인접한 방에 있고, 정보 방열기 - 화이트보드나 플립 차트 같은 것이 벽에 걸려 있고, 핵심 사용자에게 접근하며, 방해(distractions)를 멀리 하고, 동작하고 테스트 되었고 유용한 코드를 매 한두달 (뭐, 최대한 세달까지)마다 한번씩 전달하고, 그들의 일하는 스타일을 주기적으로 회고(reflect)하고 조정한다.
이 간단한 제안은 경험과 이론 모두에서 뒷받침한다. 소프트웨어 개발의 특징은 경제적으로 제약된 개발과 커뮤니케이션의 협력 게임(CooperativeGame)이라는 점이다.
Crystal의 유전 코드는 아래와 같은 것들로 만들어진다:
- 경제적 협력 게임 모델
- 선별된 우선순위들
- 선별된 속성들
- 선별된 원칙들
- 선별된 예시 테크닉들
- 프로젝트 예시들
경제적 협력 게임 모델은, 소프트웨어 개발은 일련의 '게임'이라고 말한다. 어떤 게임이냐면, 발명하기와 의사소통하기 외에는 아무 것도 없는, 전형적인 자원 제한 상태인 게임이다. 일련의 게임 안에 있는 각 게임은 리소스를 두고 경쟁하는 두 가지 목표가 있는데: 이 게임에서 소프트웨어를 완성하기와, 다음 게임을 위해 준비하는 것이다. 각 게임은 반복되지 않으므로, 매 프로젝트에서는 이전의 모든 게임들과 약간 다른 전략을 필요로 한다. 경제 협력 게임 모델은, 사람들이 자신의 작업에 대해 매우 구체적이고 집중적이며 효과적인 방식으로 생각하도록 유도한다.