프로젝트 (Java)/예약마켓

[프로젝트] 4. ERD(Entity Relationship Diagram)와 API 문서 작성

hihyuk 2024. 1. 25. 09:47

Github

 

GitHub - jaehyuuk/myshop

Contribute to jaehyuuk/myshop development by creating an account on GitHub.

github.com

 

프로젝트의 ERD(Entity Relationship Diagram)와 API 문서 작성은 데이터베이스 구조와 애플리케이션의 인터페이스를 정의하는 중요한 단계입니다. 이 과정을 통해 개발자는 프로젝트의 전체 구조를 명확하게 이해할 수 있으며, 팀원 간의 의사소통을 원활하게 할 수 있습니다.

 

ERD 설명

Users Table

  • 필드: 이름, 이메일, 패스워드, 프로필 이미지, 자기소개, 생성날짜
  • 기능: 사용자 정보를 저장하며, 각 사용자는 고유한 이메일을 가집니다.

Follows Table

  • 필드: 팔로워 ID, 팔로우하는 사용자 ID, 생성날짜
  • 기능: 사용자 간의 팔로우 관계를 나타냅니다.

Posts Table

  • 필드: 내용, 생성날짜, 사용자 ID
  • 기능: 사용자가 작성한 게시물을 저장합니다. 좋아요와 댓글은 연관관계 매핑을 통해 관리됩니다.

Comments Table

  • 필드: 게시물 ID, 작성자 사용자 ID, 내용
  • 기능: 게시물에 달린 댓글을 저장합니다.

Likes Table

  • 필드: 게시물 ID, 사용자 ID
  • 기능: 사용자가 게시물에 좋아요를 표시했는지 여부를 저장합니다. 한 사용자가 하나의 게시물에는 한 번만 좋아요를 할 수 있습니다.

Items Table

  • 필드: 상품 이름, 가격, 재고 수량
  • 기능: 판매되는 상품 정보를 저장합니다.

Orders Table

  • 필드: 주문한 사용자 ID, 주문 날짜, 배송 상태
  • 기능: 사용자의 주문 정보를 저장합니다.

OrderItems Table

  • 필드: 주문한 아이템 ID, 주문 ID, 총 주문 가격, 수량
  • 기능: 주문 상세 정보를 저장합니다. 한 주문에 여러 상품이 포함될 수 있습니다.

 

API 스펙 문서

 

API 문서 | Notion

Built with Notion, the all-in-one connected workspace with publishing capabilities.

easy-paprika-193.notion.site

API 문서는 애플리케이션의 인터페이스를 정의하며, 개발자가 클라이언트와 서버 간의 통신을 어떻게 구현해야 하는지 알 수 있게 해줍니다. Notion과 같은 도구를 사용하여 API 스펙 문서를 작성하고 공유하면, 팀원들이 필요한 정보를 쉽게 찾고 이해할 수 있습니다.

  • 내용: 각 API의 요청 방식(GET, POST, PUT, DELETE 등), 엔드포인트, 요청 파라미터, 응답 예시 등을 포함합니다.
  • 목적: API를 통해 어떤 작업을 할 수 있는지, 어떤 데이터를 주고받을 수 있는지 명확히 설명합니다.

 

결론

ERD와 API 문서는 프로젝트의 설계와 구현 단계에서 중요한 역할을 합니다. 이러한 문서를 잘 작성하고 관리함으로써, 개발 과정의 효율성을 높이고, 유지보수를 용이하게 할 수 있습니다. 프로젝트의 성공적인 완성을 위해 이러한 기초 작업에 충분한 시간과 노력을 투자하는 것이 중요합니다.