brunch

모듈의 크기와 규모

세탁기와 컴퓨터 중 무엇이 복잡한 시스템일까?

by 심야서점


예전에 모듈의 적정한 크기에 대한 글을 쓴 적이 있습니다.


그 시점에서는 모듈의 크기보다 모듈이 속한, 즉, 모듈화 대상이 되는 시스템에 몇 개의 모듈이 존재하는가를

기준으로 역으로 모듈의 크기를 산출해야 한다고 말한 적이 있습니다.


일반적으로 관리할 수 있는 범위인 3~7개 내의 모듈이 시스템에 존재하도록 모듈의 크기를 조정해야 한다고

했었죠.


이번 글에서는 모듈의 크기에 대해서 좀 더 자세히 다뤄보겠습니다.

편하게 모듈의 크기를 다루고 있지만, 엄밀히 따지면 모듈의 크기 (Size)와 모듈의 규모 (Scale)를

구분해야 합니다. (물론, 용어가 중요하진 않습니다. 무엇을 쓰든지 개념만 명확히 구분하면 됩니다.)

모듈의 크기 (Size)는 말 그대로 모듈의 물리적인 크기를 의미합니다.


우리가 측정 도구로 측정할 수 있는 모듈의 속성이 모듈의 크기가 됩니다.


반면에, 모듈의 규모 (Scale)는 모듈이 포함하고 있는 기능의 종류, 범위를 의미합니다.

이건 측정 도구로 측정할 수 없습니다. 담당하고 있는 역할을 세는 것이니까요.


모듈의 크기가 몇 미터가 되더라도 하나의 모듈로 선정될 수 있는 반면에,

모듈의 크기가 몇 센티미터가 안되더라도 여러 개의 모듈로 나눠질 수 있는 겁니다.


우리가 적정 모듈의 개수, 모듈의 크기를 다룰 때는

모듈의 크기 (Size)가 아니라, 모듈의 규모 (Scale)를 따져야 합니다.


모듈화를 할 때는 최대한 하나의 모듈이 하나의 기능만 담당하도록 조정을 합니다.


즉, 모듈 간의 규모 (Scale)를 일정하게 만드는 거죠.

사양 변화에 최소한의 모듈만 변경하도록 만든다거나,

모듈 간의 조합으로 다양한 사양을 대응할 수 있는 겁니다.


여기까지는 제품을 기획하고 개발하는 관점이고, 생산이나 구매 관점에서는 달라질 수 있습니다.

물리적인 크기가 커져버리면 조립하거나 조달에 문제가 생길 수 있겠죠.


반대로 너무 작은 크기의 모듈인 경우에는 생산, 구매 복잡성만 높일 가능성이 있습니다.

생산이나 구매 관점에서는 모듈의 크기 또한 고려를 해야 합니다.


다른 주제이긴 하지만, 그래서 개발 관점의 모듈화와 생산 또는 구매 관점의 모듈화가 일치할 수 없는

이유이기도 합니다.

keyword
매거진의 이전글이미 진 게임 vs. 이기고 시작하는 게임