새로운 질서 위키

결정 기록

결정 기록(Decision Record)은 무엇을 선택했는지와 그때의 조건, 선택의 결과를 함께 남기는 짧은 문서다. 소프트웨어에서는 중요한 설계 결정을 개별 문서로 기록하는 아키텍처 결정 기록(Architecture Decision Record, ADR)이 널리 참고된다. 마이클 나이가드는 한 결정마다 맥락, 결정, 상태, 결과를 적는 형식을 제안했다. (마이클 나이가드의 ADR 설명)

  • 맥락에는 선택지를 제약한 조건을 적는다. 예를 들어 작은 전시 웹사이트에서 CMS를 쓰지 않기로 했다면 담당 인원, 수정 빈도, 서버 운영 여건을 함께 적어야 나중에 판단을 다시 살필 수 있다.
  • 결과에는 얻은 것과 감수한 것을 모두 적는다. ‘파일로 관리해 이전하기 쉽다’와 ‘비개발자의 수정에는 별도 절차가 필요하다’는 같은 결정의 서로 다른 결과일 수 있다. 기각한 대안도 이유가 남아 있으면 같은 논의를 처음부터 반복할 필요가 줄어든다.
  • 제안된 결정과 채택된 결정은 상태로 구분한다. 나중에 판단을 바꿀 때는 이전 기록을 지우기보다 새 기록과 연결해 무엇이 달라졌는지 드러낸다.
  • 버전 관리가 파일의 변화 자체를 보관한다면 결정 기록은 그 변화의 이유를 설명한다. 작은 마크다운 파일로 코드나 디자인 원본 곁에 둘 수 있으며, 인수인계 때는 당시 조건이 지금도 유효한지 확인하는 자료가 된다.

기타 등등

  • 나이가드가 2011년에 쓴 소개 글도 자신이 설명하는 결정 기록 형식을 따른다. 결정 기록을 쓰자는 결정의 상태는 ‘채택됨’이다. 출처
  • 그가 제안한 파일 번호는 순서대로 늘어나며 재사용하지 않는다. 번복된 결정도 남겨두어 번호와 판단의 경로를 함께 보존한다. 출처

#개념 #기록 #작업방법

검색