Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2단계 - 요구 사항 정리 #821

Merged
merged 18 commits into from
Feb 9, 2025
Merged

Conversation

jerry-imo
Copy link

안녕하세요~
2단계 과제 완료하여 리뷰 요청 드립니다!

크게 메뉴/상품/주문(매장 이용, 포장, 배달)을 기준으로 요구사항을 정리하였으며, 용어 정리 및 모델링 하였습니다.
혹시 추가 혹은 수정이 필요한 부분이 있으면 가감없이 리뷰 부탁 드립니다!
(+) 도메인 모델링은 어떠한 형식으로 작성해야 할지 고민이 되었는데, 더 좋은 방법이 있다면 말씀 부탁 드립니다!

감사합니다 😊

Copy link

@mj950425 mj950425 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

안녕하세요 선하님. 이번 단계는 2단계로 요구 사항 정리 단계입니다.
모델링은 2주차 미션에 존재하는데요. 아래 내용을 기반으로 요구사항을 정리해보는것이 어떨까요?
한번 확인 부탁드릴게요.
https://edu.nextstep.camp/s/6ADuNPQG/ls/T41n05ZJ

Copy link

@mj950425 mj950425 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

안녕하세요 선하님~ 작성해주시느라 고생했습니다 👍
모델링 관련 작업을 미리 진행해주셨고, 관련해서 문의 남겨주셨는데요.
요구사항 정리에 대한 몇가지 피드백과 질문에 대한 답변 남겨두었습니다. 확인 부탁드릴게요!

README.md Outdated
### 상품
- [ ] 상품 가격은 0원 이상이어야 함
- [ ] 상품명은 필수이며, 비속어가 포함될 수 없음
- [ ] 상품 가격은 상품이 포함된 메뉴 가격의 총합보다 작은 경우에만 변경 가능함
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

상품 가격은 변경 가능하지만, 상품 가격 변경시에 메뉴의 가격이 메뉴에 속한 상품 금액의 합보다 크다면 메뉴를 숨긴다.
이 정확할 것 같아요!

- [ ] 주문 타입은 배달(DELIVERY), 포장(TAKEOUT), 매장 이용(EAT_IN) 3가지로 구분됨
- [ ] 주문 상태는 대기(WAITING), 승인(ACCEPTED), 서빙(SERVED), 배달 중(DELIVERING), 배달 완료(DELIVERED), 주문 완료(COMPLETED)가 있음

#### 매장 이용 주문
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

주문 타입에 따라 나눠주신것 좋네요 👍

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

배달 주문 및 포장 주문과 다르게 매장 주문의 경우, 주문 수량이 0개 이상일 수 있을 것 같은데요.

이러한 부분들도 명시해주면 좋을 것 같습니다.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

빈 테이블에는 매장 주문을 등록할 수 없다는 요구사항도 있을 것 같아요.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

노출되지 않는 메뉴는 주문할 수 없다 는 모든 타입의 주문에 대해서 필요한 요구사항으로 보입니다.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

매장 이용 주문의 경우 수량이 0개 미만일 수 있다 도 추가하면 좋을 것 같아요.

README.md Outdated
- [ ] 주문 승인이 완료되면 주문 승인 상태로 변경함
- [ ] 음식이 완료되면 음식을 서빙함 (단, 주문 승인 상태인 경우에만)
- [ ] 음식 서빙이 완료되면 서빙 완료 상태로 변경함
- [ ] 서빙이 완료되면 주문 완료 처리함
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고민되는 부분인데요.

정리해주신 문구만 확인했을때, 서빙이 완료됨과 동시에 주문을 완료 처리하는것처럼 보이는데요.

주문을 완료한다. (단, 서빙이 된 상태에서만) 으로 수정하는게 좀 더 자연스러울 것 같은데 어떠신가요?

포장 주문이나 배달 주문도 마찬가지입니다!

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

말씀해주신대로 상태 조건을 명시해주는게 직관적일 것 같습니다!
상태 조건 추가해서 수정하도록 하겠습니다~

README.md Outdated
- [ ] 주문이 들어오면 주문 대기 상태가 되며 고객 수, 테이블 사용 여부에 맞춰 주문 테이블이 셋팅됨
- [ ] 주문 대기 건을 승인함 (단, 주문 대기 상태인 경우에만)
- [ ] 주문 승인이 완료되면 주문 승인 상태로 변경함
- [ ] 음식이 완료되면 음식을 서빙함 (단, 주문 승인 상태인 경우에만)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

개인적으로는 음식이 완료된다는게, 현재 시스템에는 없으므로 헷갈릴 수 있는 용어같아요.

음식을 서빙할 수 있다. 또는 음식을 서빙한다.가 어떨까요?

포장 주문이나 배달 주문도 마찬가지입니다!

- [ ] 서빙이 완료되면 주문 완료 처리함
- [ ] 해당 테이블의 모든 주문이 완료되면 해당 테이블을 비움

#### 포장 주문
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

포장 주문의 경우, 주문 수량이 0개 이상이어야한다. 가 추가되어야할 것 같아요.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이것도 한번 확인 부탁드려요~

- [ ] 상품명은 필수이며, 비속어가 포함될 수 없음
- [ ] 상품 가격은 상품이 포함된 메뉴 가격의 총합보다 작은 경우에만 변경 가능함

### 주문
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

주문 목록을 조회할 수 있는 요구사항도 추가되었으면 좋을 것 같아요.

## 요구 사항
### 메뉴
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

모든 메뉴 조회에 대한 요구사항도 추가되면 좋을 것 같습니다.

@@ -7,12 +7,78 @@ cd docker
docker compose -p kitchenpos up -d
```

---

## 요구 사항
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

메뉴 그룹과 주문 테이블에 대한 요구사항이 없는 것 같아요.

- [ ] 가격 변경이 가능하지만, 가격이 메뉴 상품 가격의 총합보다 적은 경우에만 변경 가능함
- [ ] 메뉴의 게시/숨김 여부를 관리할 수 있음

### 상품
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

상품도 조회 요구사항이 필요할 것 같아요.

- [ ] 메뉴명은 필수이며, 비속어가 포함될 수 없음
- [ ] 가격은 0원 이상이어야 함
- [ ] 가격 변경이 가능하지만, 가격이 메뉴 상품 가격의 총합보다 적은 경우에만 변경 가능함
- [ ] 메뉴의 게시/숨김 여부를 관리할 수 있음
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

메뉴 노출시에도 가격에 대한 검증이 필요할 것 같아요.

@mj950425
Copy link

mj950425 commented Feb 3, 2025

안녕하세요 선하님~
같은 레포지토리에서 모델링 문서를 관리하는 경우는, 모델링도 코드로 관리하는 편입니다.
관련해서 mermaid라는 좋은 툴이 있는데요. 한번 확인해보시는것도 좋을 것 같습니다.
래퍼런스 : https://velog.io/@qhflrnfl4324/Mermaid%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EC%8B%9C%ED%80%80%EC%8A%A4-%EB%8B%A4%EC%9D%B4%EC%96%B4%EA%B7%B8%EB%9E%A8

@jerry-imo
Copy link
Author

안녕하세요! @mj950425
요구사항 코멘트 주신 부분 참고하여 수정하였는데, 확인 부탁드립니다~

"용어 사전"와 "모델링"은 mermaid 참고하여 2주차 과제로 제출하도록 하겠습니다!
함께 확인해주셔서 감사합니다😇

Copy link

@mj950425 mj950425 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다~ 몇가지 코멘트 남겨두었는데요. 다음 미션으로 넘어가면서 같이 확인 부탁드릴게요.
이번 미션은 여기에서 머지하도록 하겠습니다!

## 요구 사항
### 메뉴
- [ ] 메뉴는 메뉴명, 가격, 메뉴 그룹, 게시 여부, 메뉴 상품으로 구성됨
- [ ] 매뉴를 등록함
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

메뉴 등록시에 메뉴의 가격과 메뉴 상품의 갯수가 0개 이상이어야할 것 같아요.


#### 배달 주문
- [ ] 주문이 들어오면 주문 대기 상태가 되며 배달 주소가 셋팅됨
- [ ] 주문 승인을 승인할 수 있음 (단, 주문이 대기 상태인 경우에만)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

리뷰가 반영이 안되어있는 것 같아요.

- [ ] 서빙이 완료되면 주문 완료 처리함
- [ ] 해당 테이블의 모든 주문이 완료되면 해당 테이블을 비움

#### 포장 주문
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이것도 한번 확인 부탁드려요~

- [ ] 주문 타입은 배달(DELIVERY), 포장(TAKEOUT), 매장 이용(EAT_IN) 3가지로 구분됨
- [ ] 주문 상태는 대기(WAITING), 승인(ACCEPTED), 서빙(SERVED), 배달 중(DELIVERING), 배달 완료(DELIVERED), 주문 완료(COMPLETED)가 있음

#### 매장 이용 주문
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

매장 이용 주문의 경우 수량이 0개 미만일 수 있다 도 추가하면 좋을 것 같아요.

- [ ] 배달을 시작하면 배달 중 상태로 변경함
- [ ] 음식 배달이 완료되면 배달 완료 처리함 (단, 배달 중 상태인 경우에만)
- [ ] 음식 배달이 완료되면 배달 완료 상태로 변경함
- [ ] 배달이 완료되면 주문 완료 처리함 (단, 배달 완료 상태인 경우에만)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

배달 완료 상태의 주문인 경우, 주문 완료 처리할 수 있다.
가 정확할 것 같아요.

적어주신 문구를 보면 배달 완료와 동시에 주문 완료 처리가 되는것 처럼 느껴져서, 해당 요구사항으로 기능을 만들 때 헷갈릴 것 같은데요.

어떻게 생각하시나요?

@mj950425 mj950425 merged commit a389610 into next-step:jerry-imo Feb 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants