일정 관리 앱 서버 만들기 : 요구사항 분석

이민호·2024년 5월 16일
0

Spring에 입문하면서 학습에 시간을 많이 쓰게 되어서 급하게 시작한 개인과제. 시작은 먼저 요구사항에 대해 알아보면서 흐린 그림을 그려보자.

요구사항 확인 : 필수 구현 기능

공통 조건

  1. 일정 작성, 수정, 조회 시 반환 받은 일정 정보에 비밀번호는 제외 되어있습니다.
  •    POST, PUT, GET : password를 반환하지 않음 -> responseDto에서 제외
  1. 일정 수정, 삭제 시 선택한 일정의 비밀번호와 요청할 때 함께 보낸 비밀번호가 일치할 경우에만 가능합니다.
  •    PUT, DELETE : password를 검증해야하는 과정 추가 필요

1단계

기능: 일정 작성
-> CRUD 중 Create-POST 기능 구현

조건

  1. 할일 제목, 할일 내용, 담당자, 비밀번호, 작성일을 저장할 수 있습니다.
    1. 저장된 일정 정보를 반환 받아 확인할 수 있습니다.
  •    CREATE TABLE & Entity 생성 :
       | 식별자 | 할일 제목 | 할일 내용 | 담당자 | 비밀번호 | 작성일 |

2단계

기능 : 선택한 일정 조회
-> CRUD 중 Read-Get 기능 구현

조건

  1. 선택한 일정의 정보를 조회할 수 있습니다.
  •    식별자로 일정 객체 선택 후 읽어오기. (단, 공통 조건에 따라 비밀번호는 안됨)

3단계

기능: 일정 목록 조회
-> CRUD 중 Read-Get 기능의 변형

조건

  1. 등록된 일정 전체를 조회할 수 있습니다.
  •    findAll 이용
  1. 조회된 일정 목록은 작성일 기준 내림차순으로 정렬 되어있습니다.
  •    repository-interface 에서 Query Methods 활용

4단계

기능: 선택한 일정 수정 -> CRUD 중 Update-Put 기능 구현

조건

  1. 선택한 일정의 할일 제목, 할일 내용, 담당자을 수정할 수 있습니다.
    1. 서버에 일정 수정을 요청할 때 비밀번호를 함께 전달합니다.
  •    수정가능 한것은 3가지 필드만, request에 비밀번호까지
       비밀번호가 일치하는지에 대한 메서드 필요
  1. 수정된 일정의 정보를 반환 받아 확인할 수 있습니다.
  •    반환 값은 일정정보 response로 반환

5단계

기능: 선택한 일정 삭제 -> CRUD 중 Delete-Delete 기능 구현

조건

  1. 선택한 일정을 삭제할 수 있습니다.
    1. 서버에 일정 삭제를 요청할 때 비밀번호를 함께 전달합니다.
  •    4단계와 마찬가지로 비밀번호 요청과 검증이 필요

지금 포스트를 작성하면서는 5단계까지는 구현이 완료, 다만 html 페이지가 없기 때문에 정확히 실행이 되는지는 알아봐야한다.
이틀밤을 새면서 학습 및 과제를 하다보니 정신이 없기 때문에 과제 중간중간 작성한 마크다운을 포스팅했다. 이거라도 있어서 너무나 다행이다.

profile
둘뺌

0개의 댓글

관련 채용 정보