쓸모 있는 모듈러 디자인
제품을 모듈화하면서 그 결과가 제대로 된 것인지 확인하기 위해서
모듈화 체크리스트를 활용합니다.
제가 가지고 있는 체크리스트에는 모듈화가 제대로 되었을 때 얻는 바람직한 결과,
좋은 모듈이란 무엇인가에 대한 대답이 적혀 있습니다.
이번 글에서도 계속해서 모듈화 체크리스트 일부를 옮겨 보도록 하죠.
1. 좋은 모듈의 생명 주기는 제품과 타 모듈과 분리되어 있다.
2. 좋은 모듈은 타 모듈과의 경계가 명확히 나눠져 있다.
3. 좋은 모듈은 타 모듈과의 상호 관계, 상호 작용이 정해진 틀에서 이루어진다.
4. 좋은 모듈은 단독으로 설계, 생산, 구매, 품질 검증이 가능하다.
5. 좋은 모듈은 자신의 목적이 명확하며, 자신의 기능성을 완벽히 발휘한다.
특히 재사용 하고, 공용화하는 모듈이면 타 모듈 대비하여 경쟁력이 있어야 합니다. 재사용을 목적으로 하는 모듈은, 다세대 경쟁력을 갖출 수 있어야 합니다. 이유는 당연합니다. 공용화를 많이 한다는 건 다른 모듈보다 많은 모델에 적용한다는 것을 의미하고, 재사용을 많이 한다는 건 다른 모듈보다 오랫동안 여러 모델에 적용한다는 것을 의미합니다.
이러한 상황에서 모듈의 경쟁력이 떨어지면 모델의 경쟁력이 떨어지고, 한두 모델이 아니라 광범위한 모델의 경쟁력에 영향을 미치게 되는 겁니다.
혹, 제품의 성능에 큰 영향을 미치지 않는 모듈이 있습니다. 주로 재사용을 목적으로 하는 모듈들 중에 그런 성격 갖는 모듈이 있는데, 이러한 종류의 모듈은 성능의 차이가 크게 중요하지 않을 수 있습니다.
그 외의 모듈에는 모듈 자체의 경쟁력을 고려해야 합니다.
좋은 모듈은 자신의 역할을 충실하게 수행하는 모듈입니다. 모듈마다 고유의 기능성이 있기 때문에 각각 자신의 기능을 성공적으로 발현할 때 제품이 제대로 작동할 겁니다. 물론, 모듈별로 각각 독립적으로 기능을 수행하는 경우는 거의 없습니다. 서로 연결되어 작동합니다. 그렇기 때문에 제품의 목적에 맞춰서 모듈들이 조화롭게 작동해야 합니다.
제품을 모듈로 나눌 때 다양한 기준들이 있지만, 그중 하나가 모듈을 구성하는 요소들이 모듈 간에는 차이가 크게 하고, 모듈 내에서 차이가 작게 만드는 겁니다. 고정/변동 속성, 비기능적 요구사항, 기능적 요구사항의 유사도/차이도가 그런 종류의 기준입니다.
"모듈 내에 모이는 구성요소들은 끼리끼리 논다"만 기억하세요.
다음 편에 이어서 쓰겠습니다.
9. 좋은 모듈은 공용화와 재사용이 용이하다.
10. 좋은 모듈은 특정한 목적에 따라서 제품에서 분리하기가 쉽다.
11. 좋은 모듈은 내부의 정보는 감추고, 정해진 규칙에 따라서 내부 정보를 감춘다.
12. 좋은 모듈은 공개된 정보만 가지고 재사용이나 공용화가 가능하다.
13. 전체 모듈들이 제품의 목적 달성에 완벽히 기여해야 한다.
Image by Matthias Wewering from Pixabay