피드로 돌아가기
Dev.toInfrastructure
원문 읽기
Appetite 기반 Scope 제어로 12일 내 Clarity MVP 설계 완료
Shaping Before You Build
AI 요약
Context
사용자 스토리와 실제 구현 사이의 간극으로 인한 Scope Ballooning 현상 발생. 명확한 기술적 경계 없이 개발에 진입할 경우, 단순 기능이 과도한 복잡도를 가진 시스템으로 변질되어 리소스를 낭비하는 한계 존재.
Technical Solution
- Appetite 기반의 시간 역산 설계: 예상 소요 시간을 추정하는 대신, 기능의 가치에 따라 할당할 최대 시간(Appetite)을 먼저 결정하고 그에 맞춰 Scope을 조정하는 방식 채택
- Fat Marker Sketch를 통한 추상적 설계: 픽셀 단위의 세부 사항을 배제하고 구조와 흐름 중심의 거친 스케치를 통해 개발자의 창의적 문제 해결 공간을 확보하는 설계 전략
- Explicit Boundaries 설정: 구현 대상이 아닌 'Out of Scope' 리스트를 명시하여 빌드 과정 중 발생하는 암묵적 요구사항 확장 및 Scope Creep 원천 차단
- Pitch 기반의 고밀도 문서화: Appetite, Solution, Boundary 세 가지 핵심 요소를 포함한 Pitch 문서로 구현 목적과 제약 사항을 명확히 전달
- 기능별 최소 구현 단위(Minimum Viable Unit) 정의: 예컨대 Comment 시스템에서 Threading, Reaction, Notification을 제외하고 단순 순차적 텍스트 저장 로직만 정의하여 개발 기간 단축
Key Takeaway
엔지니어링 의사결정 시 '무엇을 만들 수 있는가'가 아니라 '현재 이 문제가 얼마만큼의 시간 가치를 가지는가'를 기준으로 Scope을 결정하는 역발상적 설계 원칙의 중요성.
실천 포인트
- 기능 설계 전 해당 기능에 할당할 최대 시간(Appetite)을 먼저 정의했는가? - '구현하지 않을 기능(Out of Scope)' 목록을 명시적으로 작성하여 팀과 공유했는가? - 상세 명세서 대신 구조와 흐름 중심의 Fat Marker Sketch로 소통하고 있는가? - 일정 초과 시 개발 속도를 높이는 대신 제거 가능한 기능을 식별하여 Scope을 조정하고 있는가?