Skip to content

요구사항 분석

kkole3897 edited this page Oct 27, 2020 · 2 revisions

BE

로그인

  • OAuth
  • Passport
  • GIT OAuth를 이용한 로그인 구현
  • 우선 순위 낮음

이슈 목록 화면

  • 로그인 유저의 전체 이슈 조회를 위한 API 기능
  • 해당 이슈 내용 조회
  • 새로운 이슈 생성을 위한 GET
  • 보유 라벨 조회
  • 마일스톤 조회

이슈 목록 필터 기능

  • 필터와 검색어까지 동시에 처리하려면 DB로 쿼리를 보내서 처리
  • 필터에서 추가로 작성자, 레이블, 마일스톤, 담당자에 대한 처리
    • 처음 로드시 목록 가져옴

새로운 이슈 생성 화면

  • 이슈 생성 기능 POST를 이용한 API 필요
  • 이미지 저장 BLOB를 이용해 DB에 저장

이슈 상세 화면

  • 이슈 수정
  • 게시물에 해당하는 댓글 생성
  • 게시물에 해당하는 댓글 조회
  • 레포는 ....단 하나
  • 이슈 오픈 클로즈 수정

레이블 목록 화면

  • 레이블 CREATE POST API
  • 레이블 READ API
  • 레이블 DELETE API
  • 레이블 UPDATE API
  • 레이블은 색깔,설명도 포함해서 DB를 짜야함

마일스톤

  • 마일스톤 CRUD API
  • 마일스톤을 READ 할때는 포함하는 ISSUE의 완료율과 갯수를 포함해서 가져와야함
  • 마일스톤 DELETE 할 시 참조하는 테이블을 캐스케이드

FE

공통

로그인

  • OAUTH 로그인
  • 로그인 회원가입 (선택)
  • 아이디,비밀번호 자리 수 검사

이슈 목록 화면

  • 이슈 목록 조회 쿼리 및 출력
    • 이슈 시간, 라벨, 마일스톤, 제목, 댓글 갯수?
  • 필터 적용시 검색창에 반영됨
  • 선택 체크박스
    • 선택 개수 표시
    • 선택시 Marked as 노출, 다른 필터 사라짐
    • Open/Close 일괄처리
    • 전체 선택 기능
  • 라벨, 마일스톤 갯수 표시
  • 이슈 생성 버튼
  • 드롭다운

이슈 목록 필터 기능

  • Filter
    • 열린 이슈
    • 본인이 작성한 이슈
    • 자신에게 할당된 이슈
    • 자신이 댓글을 작성한 이슈
    • 닫힌 이슈
  • Search
  • Author
  • Label
  • Milestone
  • Assignee
  • 필터 적용시 필터 조건 초기화 하는 버튼 생성
  • 필터 적용/해제 시마다 검색창 내 텍스트 변경

새로운 이슈 생성 화면

  • 이슈 CREATE 쿼리 (Submit new issue)
  • Assignees, Labels, Milestone 설정
    • 드롭다운 내용은 처음 눌렀을 때 가져옴
    • 다음에 눌렀을 땐 캐시된 내용으로 표시
    • 각 항목을 선택시 선택한 것으로 변경해서 표시
    • Assignee는 선택 안 했으면 본인, 나머지는 미설정 상태
  • 이미지 업로드 창, 이미지 주소 마크다운 형식으로 추가
  • 제목 입력시 submit 버튼 활성화
  • 작성자 프로필 표시
  • 타이핑 하지 않고 2초가 지나면 우측 하단에 글자 수가 출력

이슈 상세 화면

  • 이슈 제목, 내용, 이슈 번호, 오픈 여부, 작성자(프로필), 해당 이슈가 오픈된 시간, 코멘트 개수, 코멘트 내용 표시
  • Assignees, Labels, Milestone 설정 동일하게 작동
  • 이미지 첨부, 첨부 이미지 표시
  • 이슈 생성과 마찬가지로 2초간 미입력시 글자 수 출력
  • 이슈 작성자와 댓글을 동일한 디자인으로 표시. 단, 다른 사람이 단 댓글은 edit 버튼이 없음.
  • 최하단에는 코멘트를 작성할 수 있는 영역 표시, 코멘트 편집화면과 동일한 구조이나 update commit 대신 close issue와 comment 버튼 표시
  • 코멘트 내용을 작성하여야 comment 버튼 활성화 됨, 내용이 없을 경우 비활성화
  • close/reopen issue 버튼 변경

레이블 목록 화면

  • 레이블 READ 쿼리
  • 레이블 UPDATE 쿼리
  • labels <-> milestones 화면 이동 기능
  • 할당된 색깔에 맞게 배경색을 입힌 레이블을 보여주어야 함
  • delete 시 확인 팝업(alert) 후 삭제 진행/취소
  • 한줄에 label, 설명, edit, delete 표시
  • edit 시 이름, 색상 랜덤버튼에 따라 미리보기 표시(타이핑 멈추면)
    • 캔슬하면 원상 복귀
  • New label 누르면 입력 창 나타남
    • label name, description(옵션), color 입력
    • label preview 부분에 입력한 결과 즉시 반영해서 확인 가능(타이핑 1초간 멈추면)
    • color 색상 코드 입력으로 변경 가능
    • color는 refresh 버튼을 누르면 랜덤하게 변경

마일스톤

  • 마일스톤 CREATE 쿼리
    • 타이틀을 제외하고 입력하지 않아도 생성 가능
    • 타이틀
    • DUE DATE(유효성 검사)
    • 내용
  • 마일스톤 READ 쿼리, 표시
    • 마일스톤 이름, 완료일, 마일스톤 설명
    • 완료일이 없으면 no due date
    • 마일스톤 설명은 한줄로 표시, 없으면 안 함
  • 마일스톤 UPDATE 쿼리
    • 제목, 날짜, 설명 수정 가능
    • CREATE와 같은 형식
    • 캔슬 세이브 버튼 클릭시 목록 화면으로 리다이렉트
  • 마일스톤 DELETE 쿼리
    • 삭제 전에 경고창 띄우기
    • 마일스톤만 삭제
  • labels<->milestones 화면 이동 기능
  • 마일스톤에 해당한 이슈 완료율 시각화 표시

Clone this wiki locally