신발 주문 시스템 분석 도메인 - KEEMSY/shoes-ordering-system GitHub Wiki

신발 주문 시스템 분석 - 도메인

완료

Context

나의 신발 주문 시스템의 목표는 장애가 없는 사용자 경험을 개선하고, 다양한 요구사항에 대한 기능의 효율성 증진이다. 이를 위해 시스템을 분석하며, 분석은 도메인 분석과 시스템 아키텍처 분석으로 나뉜다.

  • 도메인 분석을 통해 프로젝트에서 필요한 도메인들을 식별하고, 해당 도메인을 모델링 한다.
  • 기능적 요구사항, 비기능적 요구사항을 정의하여, 필요한 기술 스택과 아키텍처를 구성한다.

신발 주문 도메인은 다음과 같이 식별하였다.

  • User(사용자)
  • Product(제품)
  • Order(주문)
  • Payment(결제)
  • Shipment(배송)



Decision

분석한 도메인 별 기능적 요구사항과 비기능적 요구사항을 정의한다.

  • User

    • 기능 요구 사항

      • 사용자 등록: 사용자가 필요한 정보를 제공하여 새 계정을 만들 수 있도록 한다.
      • 사용자 인증: 보안 로그인 메커니즘을 구현하여 사용자를 인증한다.
      • 개인정보 설정 : 사용자가 주소, 전화번호 등 프로필 정보를 관리할 수 있도록 한다.
    • 비기능적 요구 사항

      • 보안: 사용자 데이터 및 결제 정보는 암호화를 사용하여 안전하게 저장 및 전송되어야 한다.(성늘저하 없이 많은 수의 사용자를 처리해야 한다.)
      • 성능: 사용자 등록 및 인증 프로세스에 대한 빠른 응답시간을 제공해야 한다.
      • 사용성: 명확한 지침과 오류 처리가 존재해야 한다.

  • Product

    • 기능 요구 사항

      • 제품 관리: 관리자가 제품을 추가, 업데이트 및 삭제 할 수 있다.
      • 상품 검색 및 필터링: 사용자가 특정 상품을 찾을 수 있도록 검색 및 필터링 기능을 제공한다.
      • 상품 상세정보: 삼품명, 설명, 가격, 카테고리 등 각 상품에 대한 상세 정보를 확인 할 수 있어야 한다.
    • 비기능적 요구 사항

      • 확장성: 증가하는 제품 수 혹은 사용자 트래픽을 처리해야한다.
      • 가용성: 사용자가 제품 정보에 항상 엑세스 할 수 있어야 한다.
      • 성능: 지연 또는 성능 저하를 방지하기 위한 동시 사용자 요청을 효율적으로 처리해야한다.
      • 보안: 인증된 관리자만이 제품관리 작업을 수행할 수 있어야 한다.

  • Order

    • 기능 요구 사항

      • 주문 배치: 사용자가 장바구니에 제품을 추가하고 주문 할 수 있다.
      • 주문 추적: 사용자는 주문 상태를 추적할 수 있다.
      • 주문내역 : 사용자별 주문 내역을 저장 및 표시한다.
    • 비기능적 요구 사항

      • 신뢰성: 신뢰할 수 있는 주문 처리, 추적 및 이력 관리를 보장하여 데이터 손실 또는불일치의 위험을 최소화 한다.
      • 성능: 많은 수의 동시 사용자가 주문을 하고, 주문을 추적하고, 주문 내역을 볼 수 있어야 한다.
      • 가용성: 시스템은 중단 없이 주문을 하고 주문 상태를 추적할 수 있어야 한다.

  • Payment

    • 기능 요구 사항:

      • 결제 처리: 다양한 결제 방법을 사용하여 주문에 대한 결제를 실시간 결제 시작할 수 있다.
      • 결제 확인: 결제 거래의 성공 또는 실패를 나타내는 결제 확인 알림을 사용자에게 제공한다.
      • 결제 추적: 사용자는 보류, 승인 또는 완료와 같은 주문에 대한 결제 상태를 볼 수 있어야 한다.
    • 비기능적 요구 사항:

      • 보안: 민감한 결제 정보를 보호하기 위해 업계표준 보안 관행을 준수하고, 암호화, 보안 통신 프로토콜을 구현한다.
      • 신뢰성: 결제 시스템은 안정적이고 일관된 처리르 보장하여 실패 또는 오류의 위험을 최소화 해야한다.
      • 성능: 성능 저하 없이 많은 양의 결제 요청을 동시에 처리할 수 있어야 한다.
      • 규정 준수: 다양한 결제 서비스의 서비스 제공자가 정한 지침 및 규칙을 준수해야 한다.



Consequence

분석한 기능 요구사항 및 비기능 요구사항을 통해 모델링(전술적 도메인 설계) 및 아키텍처 설계를 진행한다.

  • 기능적, 비기능적 요구사항을 만족시킬 수 있는 아키텍처 특성을 고려해여 기술 스택을 선정하고 시스템을 설계한다.
⚠️ **GitHub.com Fallback** ⚠️