LabHub
배우기 러닝패스 코스

낯선 시스템 앞에서 · 합의한 범위와 전제 원장 · 실습

안 됩니다 대신 무엇을 빼겠습니까

LabHub 에서 이어서 보기

목표

범위 안팎을 판정하는 규칙을 차례 있는 파일로 굳히고 판정기를 만든다. 전제마다 깨졌을 때의 결과와 확인 방법과 유효 기간을 적은 원장을 두고 만료된 확인을 찾아낸다. 범위 밖 요청에는 거절문이 아니라 교환표로 답한다.

왜 중요한가

착수 첫 주에 정한 범위는 둘째 주부터 샌다. 합의문은 서랍에 있고, 읽어 봐도 이 요청이 그 문장에 해당하는지가 애매하다. 규칙을 차례 있는 파일로 적고 판정기를 돌리면 "왜 이건 안 되나요" 에 규칙 하나를 보여 주면 되고, 규칙이 잘못됐으면 규칙을 고치면 된다. 사람을 설득하는 대신 파일을 고치는 대화가 된다.
어떤 규칙에도 걸리지 않은 요청은 범위 밖이 아니라 판단 보류다. 걸리지 않은 것을 자동으로 밖으로 밀면 규칙의 빈틈이 영영 드러나지 않는다. 보류 목록이 곧 다음 회의의 안건이다.
전제도 같다. 회의에서 들은 말을 전제로 계획을 세우고 3주 뒤에 그것이 틀렸다는 것을 알게 되는데, 그때는 이미 그 위에 일정이 얹혀 있다. 전제마다 깨지면 무엇이 무너지는지와 확인 방법과 유효 기간과 주인을 적어 두면, 기간이 지난 전제가 목록으로 떠오른다.
채점기는 여러분이 적어 낸 숫자를 믿지 않는다. 매번 다른 규칙과 요청으로 여러분의 판정기를 실제로 돌려 판정과 근거 규칙을 대조하고, 전제 원장에는 경계 날짜를 넣어 만료 판정을 확인한다.

단계

1. /root/scope/gen_engagement.py 를 만들어 실행해 requests.json(25건)·baseline.json(10건, 예산 30일)·sow.md 를 만드세요.
2. 합의문을 읽고 /root/scope/scope_rules.json 에 규칙을 차례대로 적으세요. 규칙마다 id·effect·match·reason 을 넣고, 좁은 규칙을 위에 둡니다.
3. /root/scope/judge.py 를 만들어 요청마다 먼저 맞는 규칙으로 안·밖·보류를 가르고 verdicts.json 을 쓰게 하세요.
4. match 에 action 과 tag 를 더해 조건이 모두 맞을 때만 규칙이 잡게 하세요. 판정에는 어느 규칙이 결정했는지도 적습니다.
5. /root/scope/assumptions.json 에 전제 다섯 개 이상을 적으세요. 전제마다 statement·if_broken·verify_how·verified_on·valid_days·owner 를 넣습니다.
6. /root/scope/assumptions.py 를 만들어 --as-of 기준으로 만료된 전제를 찾아 expired.json 을 쓰게 하세요.
7. 새로 들어온 범위 밖 요청 RQ-021-NEW 에 대한 교환표를 /root/scope/tradeoff.json 에 적으세요.
8. /root/scope/scope_report.md 에 네 절로 보고하세요.

참고

단계 8개

  1. 착수 꾸러미 펼치기
  2. 합의문을 규칙으로 옮기기
  3. 안·밖·보류로 가르기
  4. 조건이 모두 맞을 때만 잡기
  5. 전제 원장 만들기
  6. 확인이 만료된 전제 찾기
  7. 무엇을 빼겠습니까
  8. 범위와 전제를 보고하기