Kim-Baek 개발자 이야기

[스프링 핵심원리] 7. 비즈니스 요구사항과 설계 본문

개발/Spring

[스프링 핵심원리] 7. 비즈니스 요구사항과 설계

김백개발자 2021. 9. 28. 16:39
김영한님의 [스프링 핵심 원리] 강의를 정리하고, 내가 생각한 내용까지 정리하는 포스팅

지난번에는 스프링 프로젝트를 세팅하는 것까지 완료를 했다. 이제 어떤 프로젝트를 만들면서 객체 지향을 익혀나갈 것인지 살펴보도록 하자.

만들 프로젝트의 요구사항에 대해서 보도록 하자. 기본적으로 배달의 민족 서비스처럼 주문 배달 서비스이다. 

  • 회원
    • 회원을 가입하고 조회할 수 있다.
    • 회원은 일반과 VIP 두 가지 등급이 있다.
    • 회원 데이터는 자체 DB를 구축할 수 있고, 외부 시스템과 연동할 수 있다. (미확정)
  • 주문과 할인 정책
    • 회원은 상품을 주문할 수 있다.
    • 회원 등급에 따라 할인 정책을 적용할 수 있다.
    • 할인 정책은 모든 VIP는 1000원을 할인해주는 고정 금액 할인을 적용해달라. (나중에 변경 될 수 있다.)
    • 할인 정책은 변경 가능성이 높다. 회사의 기본 할인 정책을 아직 정하지 못했고, 오픈 직전까지 고민을 미루고 싶다. 최악의 경우 할인을 적용하지 않을 수 도 있다. (미확정)

회원 도메인은 일반적으로 있는 가입 및 조회를 하는 기능이 있다. 그리고 회원 데이터를 저장하는 것은 언제든지 교체가 될 수 있다는 것을 확인해야한다.

마찬가지로 주문과 할인 도메인이 있다. 할인 정책은 아직 정해지지 않았는데 이것도 언제든지 변경이 될 수 있다는 것이다. 도메인 자체는 단순한데, 교체가 될 수 있다는 점이 생각해볼 점인 듯 하다. 

이렇게 자주 변경이 일어날 수 있는 것을 객체 지향적으로 어떻게 처리할 지가 앞으로 기대되는 점이다


 

반응형
Comments