하지만 복잡했던 문제가 있음…

개발자들은 서로 의사소통이 원할했고 여전히 뭘 해야할지 파악할 수 있었지만 프로젝트 리더는 이해할 수 있는 것만으로는 만족하지 않음. 프로젝트 리더에겐 설계가 다음 수준의 복잡서으로 옮겨갈 때 해당 설계를 이해하고 조작할 수 있게 구성할 방법이 필요했음

여러 방법이 있었지만 도멩니의 본질적인 개념이 일부 누락…

→ 이번에는 객체 모델에서 빠뜨린 것이 클래스 한 둘이 아니라 모델의 전체적인 구조…

그렇게 개발자들은 고민해서 새로운 구조에 따라 코드를 리팩터링하기 시작함

이러한 계층은 모듈도 아니고 다른 어떤 코드의 산출물도 아니었음. 계층은 설계의 도처에 존재하는 특정 모듈이나 객체, 심지어 다른 시스템과의 인터페이스에 대한 경계와 관계를 제약하는 중요한 규칙의 집합이 됨.

→ 이러자 설계에 명료함이 되살아남

MODULAR(모듈성)을 중심으로 분해하더라도 큰 모델은 파악하기에 너무 복잡할 수 있음