2-1. 1단계: MVP 기능 다시 정의하기

먼저, "지금 당장 살아남기 위해 필요한 최소 기능"만 추려서 1차 오픈 스펙(MVP) 을 정의한다.

논의 결과, 다음과 같은 결론에 도달한다고 가정한다.

이렇게 과감한 선택과 집중 끝에, 다음과 같은 MVP 기능 명세서로 압축한다.

[쇼핑몰 MVP 기능 명세서]
1. 회원: 고객이 가입하고 자신의 정보를 관리할 수 있어야 한다.
2. 상품: 우리가 판매할 상품을 등록하고 관리할 수 있어야 한다.
3. 주문: 회원이 상품을 구매할 수 있어야 한다.
4. 결제: 주문에 대한 결제 정보를 기록하고 관리할 수 있어야 한다.
5. 배송: 결제가 완료된 주문의 배송 상태를 관리할 수 있어야 한다.

이 정도만 해도 온라인 쇼핑몰의 최소 기능은 충족할 수 있다. 이제 이 기능 명세를 기반으로 개념적 모델링을 시작한다.

2-2. 2단계: 핵심 엔티티 도출

MVP 요구 사항에서 데이터의 뼈대가 되는 엔티티를 뽑는다. 자연스럽게 다음과 같은 엔티티들이 떠오른다.

정리하면, 핵심 엔티티는 다음 다섯 개가 된다.

회원(Member)
상품(Product)
주문(Order)
결제(Payment)
배송(Delivery)

여기서 특히 중요한 점은 주문과 배송을 분리했다는 것이다.