소프트웨어 개발 · SW-05

문자 발송 때문에 주문 저장까지 바뀌었다

가상 이야기 · 핵심노트 기반

핵심노트 개념: 응집도와 결합도 — 모듈의 역할을 모으고 서로의 의존을 줄인다

이 글에서 배우는 교훈

함께 바뀌어야 하는 역할은 모으고 독립적으로 바뀌는 역할은 나누면 수정 영향을 줄일 수 있습니다.

핵심노트를 바탕으로 만든 가상 이야기입니다. 실제 사건이나 검증된 성과가 아닙니다.
근거: 응집도와 결합도 — 모듈의 역할을 모으고 서로의 의존을 줄인다 · 핵심노트 5

구체적으로는 문자 업체를 바꿀 때 주문 계산까지 고치지 않도록 계산·저장·알림을 나눴습니다. 문자 발송 실패 시에는 주문을 유지하고 발송만 다시 시도했습니다.

관련 교재 내용

소프트웨어 개발 · IV. 설계 원리 · 응집도와 결합도

모듈 내부의 관련성을 높이고 다른 모듈과의 결합을 줄여 유지보수를 쉽게 합니다.

이 사례에 적용한 내용: 주문 함수의 계산·저장·문자 발송 책임을 나누어 업체 변경 영향을 줄입니다.

교재 55쪽 확인 →

교재 원리의 실무 적용 · 교재 원문 인용이 아닌 자체 설명입니다.

본문

주문을 저장하는 함수에 할인 계산과 문자 발송 코드가 함께 들어 있었습니다. 문자 업체를 바꾸는 작업에서도 주문 금액과 저장 동작을 다시 살펴봐야 했습니다.

팀은 금액 계산, 주문 저장, 알림 전달의 역할을 나눴습니다. 문자 발송이 실패했을 때 주문은 유지하고 발송만 재시도하는 규칙도 명시했습니다.

결론

문자 업체 교체를 주문 계산과 분리해 검증할 수 있었습니다. 문자 업체를 바꿀 때 주문 계산을 고치지 않아도 되고, 발송 실패 때 주문 저장을 취소하지 않아도 되도록 역할을 나눈 것입니다.