이번 팀 프로젝트로 프로젝트 협업 도구를 만들기로 했다.
trello같은 칸반 보드 서비스를 만들어보는 것.
그래서 간단하게 erd와 와이어프레임을 작성해보았다.
erd는 위와 같다.
초안이라 수정될 여지가 충분히 있긴 하지만
보드 안에 List가 있고 그 안에 Card가 있는 형식으로 만들었다.
카드에는 댓글 또한 작성 가능하다.
특징으로는 보드에 초대된 유저만 나머지 모든 것에 접근할 수 있다는 것이다.
Shared에 존재하는 board에 userId가 없다면 접근 불가능하다.
API명세서를 작성하면서 제일 까다로워 보이는건
카드나 리스트 순서를 바꾸는 것이다.
trello를 보면 리스트 순서도 자유롭게 바꾸고 카드 순서도 자유롭게 바뀐다.
백엔드에서 이를 구현하려면 단순하게 하자니 DB에 접근하는 횟수가 너무 많아질 것 같아서
다른 방법을 천천히 생각해봐야 할 것 같다..
와이어프레임은 단순하며, 사실 프론트를 구현할 수 있을지는 모르겠다. 우선 기능적인 부분에 집중하려 한다.