6장, 애자일팀 문화
대부분의 생산성 연구에 따르면 생산성은 다른 어떤 요소보다 동기에 의존하는 정도가 더 높다. 소프트웨어 개발 업무의 경우, 여러 가지 동기 가운데 내적 동기가 가장 중요하다.
‘더 효과적인’ 애자일은 끊임없이 움직이는 목표이다. 올해 효과적으로 일했더라도, 내년에 더 나아질 수 있다. … 프로젝트의 투입과 산출을 보다 전체적인 관점에서 보려면 프로젝트 전후 팀 능력을 고려해야 한다. 리더가 팀을 성장시키는 데 집중하지 않으면 프로젝트 시작 시점보다 생산능력이 떨어진 녹초가 되어 버린 팀을 만드는 방식으로 프로젝트를 운영하기 쉽다.
7장, 분산 애자일팀
효과적인 소프트웨어 개발의 한 가지 원칙은 피드백 루프를 최대한 촘촘하게 하는 것이다. 왜 우리는 애자일팀에 프로덕트 오너를 두려고 할까? 요구사항과 관련 있는 피드백 루프를 강화하기 위해서다. 왜 요구사항을 작은 단위로 정의하고 전달할까? 요구사항을 정의하는 과정에서 실행 가능하고 동작하는 소프트웨어로 피드백 루프를 강화하기 위해서다.
콘웨이의 법칙에 따르면 간단히 말해, 어떤 시스템의 기술적 구조는 그 시스템을 구축한 인간 조직의 구조를 반영한다고 한다. 콘웨이의 법칙은 양방향이다. 기술 설계가 인간 조직 설계에도 영향을 준다. 몇 년 동안 팀이 지리적으로 분산되어 있었다면, 아마 기술 아키텍처에 팀의 구조가 이미 반영돼 있기 마련이다.
8장, 개인과 상호작용
기술 조직은 소프트웨어 전문가에게 가장 중요한 지식의 유형을 기술 지식으로 국한하는 경향이 있다. 하지만 이는 근시안적인 발상이다. 유능한 소프트웨어 전문가는 다음 세 가지 종류의 지식을 다루는 능력이 뛰어나다.
소프트웨어 팀에는 의사소통 기술이 필요하다. 대니얼 골먼은 <하버드 비즈니스 리뷰>에서 스타 플레이어와 평균치 역량을 발휘하는 임직원 간 차이의 90%는 감성지능에 기인한다고 보고했다.
기술적으로 기여하는 직원들은 자신과 타인의 감정 상태를 더 잘 인식하고, 정서적 자기 조절 능력을 향상시키며, 타인과의 관계를 관리함으로써 이익을 얻는다.
10장, 대규모 애자일 프로젝트
많은 애자일 업무가 면대면 의사소통의 효율성을 기반으로 한다. 많은 정보가 팀에서 구전으로 단지 일부만 전해진다. … 대규모 프로젝트의 경우 자연스럽게 많은 사람이 참여하고, 사람들이 지리적으로 더 널리 퍼져 있으며, 프로젝트 기간이 길고, … 대규모 애자일 프로젝트가 성공하려면, 모든 지식은 말로 전달될 수 있다는 기대를 누그러뜨려야만 한다. 더 많은 작업을 선행해야 하며, 원래 대화에 참여하지 않았던 사람들도 이해할 수 있는 방식으로 더 많은 작업을 기록해야 한다.
13장, 애자일 요구사항 만들기
요구사항 상세화 작업은 애자일과 순차 접근방식 모두에서 수행되지만, 수행되는 시점이 다르다. 순차 프로젝트는 세부 요구사항을 미리 파악하면 나머지 프로젝트에 가치를 더할 수 있고, 세부 요구사항을 미리 작업하면 불확실성이 감소하며 이러한 선행 작업으로 인한 손상 (구현 작업 시작 전에 쓸모없어지는 요구사항 작업이다) 비율은 받아들일 만하다고 확신한다.
애자일 프로젝트는 본질적으로 “엔드투엔드 구현 작업(요구사항 작업이 아니라)을 하고 피드백을 받는 방식이 불확실성을 줄일 것이라고 확신한다. 요구사항 손상으로 인해 발생하는 낭비가 요구사항을 사전에 완전히 정의하여 얻을 수 있는 부가가치보다 더 크다”라고 말한다.
16장, 애자일 리더십
미군에서는 ‘지휘관의 의도’라는 개념을 사용하는데, 이는 최종 상태와 작전의 목적, 달성해야 할 핵심 과제에 대한 공개적인 방침을 나타낸다. 지휘관의 의도는 당초 계획대로 이벤트가 전개되지 않고, 의사소통이 중단되고, 팀이 지휘 체계상 상관과 상의 상의 없이 의사결정을 내려야 할 때 특히 유용하다. 다음은 지휘관의 의도를 훌륭하게 설명한다.
사람들에게 어떻게 일하라고 말하지 말라. 무엇을 해야 하는지 일러주고 결과로 당신을 놀라게 하라. - 조지 S. 패튼