E D R , A S I H C RSS

Fifteen Seconds Rule

어떤 시스템/프로그램 있을 때, 모든 개념적 단위(예컨대 패키지, 모듈, 클래스, 메쏘드 등)를 개발자 자신 15초 내에 설명할 수 있어야 한다는 "15초 룰"의 확장판 꽤 유용할 때가 많습니다. 런 식으로 설명을 모두 마쳤을 때는 소스 코드 전부를 설명한 셈어야 합니다.

여기서 청자가 그 설명을 해할 수 있냐 없냐는 것은 크게 중요하지 않습니다. 15초 내에 개발자 자신 스스로 설명할 수 있어야 합니다.

예를 들어, 경매 시스템 있을 때, " 시스템은 무얼 하는 것냐?"라는 질문에 15초 내에 깔끔하지만 완전한(complete) 대답을 할 수 있어야 하며, "그럼, 시스템에서 ~cpp Authentify 서브 시스템은 뭘 하는 것냐?"라는 질문에 역시 15초 내에 완전한 대답 가능해야 하고, " ~cpp FooBar 객체는 무엇을 하는가?"라는 질문에 또 15초 내의 대답 나와야 합니다. 런 식의 설명 모두 끝났을 때, 소스 코드 전체를 훑은 셈여야 합니다 -- 게 용하려면 프로그램의 구조가 런 설명의 구조와 유사해야 합니다.

만약 불가능하다면 왜 그렇고, 어떻게 해야 그것 가능할지(예컨대, 특정 개념을 표상하는 새로운 어휘를 고안한다든지, 추상 수준 다른 것을 한 곳에 섞지 않는 것 등) 고민해 보면 많은 것을 배우게 됩니다.

--JuNe
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:15
Processing time 0.0092 sec