이번주에 한 일

이번 주 부터는 지금까지 배운 Spring 기술을 가지고 팀 프로젝트를 만든다.

 

프로젝트 주제는 트렐로 만들기! 

 

저런 게시판을 만드는 프로젝트인데, 기능 구현과 더불어 "기능 개선"을 위주로 프로젝트를 진행한다.

  • 사용자 관리 기능
    • [ ] 로그인 / 회원가입 기능
    • [ ] 사용자 정보 수정 및 삭제 기능
  • 보드 관리 기능
    • [ ] 보드 생성
    • [ ] 보드 수정
      • 보드 이름
      • 배경 색상
      • 설명
    • [ ] 보드 삭제
      • 생성한 사용자만 삭제를 할 수 있습니다.
    • [ ] 보드 초대
      • 특정 사용자들을 해당 보드에 초대시켜 협업을 할 수 있어야 합니다.
  • 컬럼 관리 기능
    • [ ] 컬럼 생성
      • 보드 내부에 컬럼을 생성할 수 있어야 합니다.
      • 컬럼이란 위 사진에서 Backlog, In Progress와 같은 것을 의미해요.
    • [ ] 컬럼 이름 수정
    • [ ] 컬럼 삭제
    • [ ] 컬럼 순서 이동
      • 컬럼 순서는 자유롭게 변경될 수 있어야 합니다.
        • e.g. Backlog, In Progress, Done → Backlog, Done, In Progress
  • 카드 관리 기능
    • [ ] 카드 생성
      • 컬럼 내부에 카드를 생성할 수 있어야 합니다.
    • [ ] 카드 수정
      • 카드 이름
      • 카드 설명
      • 카드 색상
      • 작업자 할당
      • 작업자 변경
    • [ ] 카드 삭제
    • [ ] 카드 이동
      • 같은 컬럼 내에서 카드의 위치를 변경할 수 있어야 합니다.
      • 카드를 다른 컬럼으로 이동할 수 있어야 합니다.
  • 카드 상세 기능
    • [ ] 댓글 달기
      • 협업하는 사람들끼리 카드에 대한 토론이 이루어질 수 있어야 합니다.
    • [ ] 날짜 지정
      • 카드에 마감일을 설정하고 관리할 수 있어야 합니다.

위 기능이 기본 기능이고 우리가 프로젝트가 끝나기까지 해야하는 과제가 크게 세가지 있다.

1. 배포와 CICD 각자 해보기

2. 동시성 제어하기

3. 테스트 코드 짜고 테스트해보기

 

CICD를 먼저 완성하고 프로젝트를 진행하라고 하시는 조언에 CICD를 구현했는데 문제가 있었다 .

 

깃허브 액션과 EC2를 이용해서 CICD를 구현하려고 했는데 깃허브 액션에서 EC2로 빌드된 파일은 제대로 전달 되었으나, EC2에서 스프링을 실행해서 프로젝트가 자동으로 실행되어야 하는데, 실행되지 않아서 배포는 되었지만, 실행이 안되는 문제가 있었다. 

 

팀원과 왜 안 되는지, 로그도 찍어보고 다른 방법으로도 해보고 에러로그도 찾아보고 EC2에 직접 접속해서 빌드된 파일을 실행하면 또 막상 되고 하니까 아쉬운 마음에 계속 시도를 했는데 잘 되지 않아서 EC2에 올리는 방식 말고 빈스토크 방식으로 구현해서 해결했다. 

 

사전 과제로 DB설계, 및 필요기능 설계, 화면 구성을 피그마를 이용해서 했다.

https://www.figma.com/file/0HWSChzEDHKuXUNRn2eCjY/%EB%8B%A4%EC%9E%87%EC%A1%B0?type=whiteboard&node-id=0%3A1&t=buHpBodazPzJfw2B-1

 

Figma

Created with FigJam

www.figma.com

관심있다면 한번 들어가서 보는 것도 좋을 듯 하다.

 

또 프로젝트에서 엔티티 만드는데 Column이라는 변수명을 사용했는데 COLUMN은 MYSQL 예약어라서 사용하지 못했다 .변수명을 지을 때는 예약어랑 안 겹치게 잘 지어야 할듯... 

이번 주에 느낀 것

CICD가 중요하다고 해서 구현했는데 아직은 필요성이나 중요성이 느껴지지 않았다. 이제 구현은 했으니, 프로젝트를 진행하면서 어떤 부분에서 에러가 나는지, CD를 했을 때는 안 했을 때랑 차이가 뭔지를 좀 잘 확인해보면서 프로젝트를 진행해야지.

 

이번 주에 아쉬웠던 점

블로그 작성 매일 하자... 작은 일이라도 내가 겪은 일을 차곡차곡 기록하면 언젠가 돌아봤을 때 의미있었다고 느낄 날이 올테니... 

 

매일매일 알고리즘 푸는 것도 간단하게라도 적어서 올려야겠다....

 

힘들다라는 생각 대신 성장한다라는 생각을 가지고,, 성장에는 고통이 수반 되니까 잘 하고있다는 생각을 가지고 이번 주도 열심히 해보자.

 

추가 : 낮에 WIL쓰는데 임시저장 안 눌러서 거의 다 썼는데 다 날아갔다... 임시저장을 생활화 하자..