Giter Site home page Giter Site logo

ddd-strategic-design's Introduction

키친포스

요구 사항

상품

  • 상품을 등록할 수 있다.
  • 상품의 가격이 올바르지 않으면 등록할 수 없다.
    • 상품의 가격은 0원 이상이어야 한다.
  • 상품의 이름이 올바르지 않으면 등록할 수 없다.
    • 상품의 이름에는 비속어가 포함될 수 없다.
  • 상품의 가격을 변경할 수 있다.
  • 상품의 가격이 올바르지 않으면 변경할 수 없다.
    • 상품의 가격은 0원 이상이어야 한다.
  • 상품의 가격이 변경될 때 메뉴의 가격이 메뉴에 속한 상품 금액의 합보다 크면 메뉴가 숨겨진다.
  • 상품의 목록을 조회할 수 있다.

메뉴 그룹

  • 메뉴 그룹을 등록할 수 있다.
  • 메뉴 그룹의 이름이 올바르지 않으면 등록할 수 없다.
    • 메뉴 그룹의 이름은 비워 둘 수 없다.
  • 메뉴 그룹의 목록을 조회할 수 있다.

메뉴

  • 1 개 이상의 등록된 상품으로 메뉴를 등록할 수 있다.
  • 상품이 없으면 등록할 수 없다.
  • 메뉴에 속한 상품의 수량은 0 이상이어야 한다.
  • 메뉴의 가격이 올바르지 않으면 등록할 수 없다.
    • 메뉴의 가격은 0원 이상이어야 한다.
  • 메뉴에 속한 상품 금액의 합은 메뉴의 가격보다 크거나 같아야 한다.
  • 메뉴는 특정 메뉴 그룹에 속해야 한다.
  • 메뉴의 이름이 올바르지 않으면 등록할 수 없다.
    • 메뉴의 이름에는 비속어가 포함될 수 없다.
  • 메뉴의 가격을 변경할 수 있다.
  • 메뉴의 가격이 올바르지 않으면 변경할 수 없다.
    • 메뉴의 가격은 0원 이상이어야 한다.
  • 메뉴에 속한 상품 금액의 합은 메뉴의 가격보다 크거나 같아야 한다.
  • 메뉴를 노출할 수 있다.
  • 메뉴의 가격이 메뉴에 속한 상품 금액의 합보다 높을 경우 메뉴를 노출할 수 없다.
  • 메뉴를 숨길 수 있다.
  • 메뉴의 목록을 조회할 수 있다.

주문 테이블

  • 주문 테이블을 등록할 수 있다.
  • 주문 테이블의 이름이 올바르지 않으면 등록할 수 없다.
    • 주문 테이블의 이름은 비워 둘 수 없다.
  • 빈 테이블을 해지할 수 있다.
  • 빈 테이블로 설정할 수 있다.
  • 완료되지 않은 주문이 있는 주문 테이블은 빈 테이블로 설정할 수 없다.
  • 방문한 손님 수를 변경할 수 있다.
  • 방문한 손님 수가 올바르지 않으면 변경할 수 없다.
    • 방문한 손님 수는 0 이상이어야 한다.
  • 빈 테이블은 방문한 손님 수를 변경할 수 없다.
  • 주문 테이블의 목록을 조회할 수 있다.

주문

  • 1개 이상의 등록된 메뉴로 배달 주문을 등록할 수 있다.
  • 1개 이상의 등록된 메뉴로 포장 주문을 등록할 수 있다.
  • 1개 이상의 등록된 메뉴로 매장 주문을 등록할 수 있다.
  • 주문 유형이 올바르지 않으면 등록할 수 없다.
  • 메뉴가 없으면 등록할 수 없다.
  • 매장 주문은 주문 항목의 수량이 0 미만일 수 있다.
  • 매장 주문을 제외한 주문의 경우 주문 항목의 수량은 0 이상이어야 한다.
  • 배달 주소가 올바르지 않으면 배달 주문을 등록할 수 없다.
    • 배달 주소는 비워 둘 수 없다.
  • 빈 테이블에는 매장 주문을 등록할 수 없다.
  • 숨겨진 메뉴는 주문할 수 없다.
  • 주문한 메뉴의 가격은 실제 메뉴 가격과 일치해야 한다.
  • 주문을 접수한다.
  • 접수 대기 중인 주문만 접수할 수 있다.
  • 배달 주문을 접수되면 배달 대행사를 호출한다.
  • 주문을 서빙한다.
  • 접수된 주문만 서빙할 수 있다.
  • 주문을 배달한다.
  • 배달 주문만 배달할 수 있다.
  • 서빙된 주문만 배달할 수 있다.
  • 주문을 배달 완료한다.
  • 배달 중인 주문만 배달 완료할 수 있다.
  • 주문을 완료한다.
  • 배달 주문의 경우 배달 완료된 주문만 완료할 수 있다.
  • 포장 및 매장 주문의 경우 서빙된 주문만 완료할 수 있다.
  • 주문 테이블의 모든 매장 주문이 완료되면 빈 테이블로 설정한다.
  • 완료되지 않은 매장 주문이 있는 주문 테이블은 빈 테이블로 설정하지 않는다.
  • 주문 목록을 조회할 수 있다.

용어 사전

한글명 영문명 설명

모델링

ddd-strategic-design's People

Contributors

wotjd243 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.