안녕하세요 큰 그림 팀에서 이번 주 발표를 맡게 된 김수현이라고 합니다. (짝짝짝)

이번 주에는 본격적인 개발에 앞서 정리하고 기초를 세우는 작업을 진행하였는데요. 기능명세서를 작성하여 무엇을 얼마나 구현할지 구체적으로 계획을 세우고, 깃과 깃허브를 보다 더 효율적으로 사용하기 위해 컨벤션 및 템플릿을 미리 작성하고, 마지막으로 프로젝트 생성 및 기초적인 개발환경을 구축하였습니다.

먼저 기능명세서입니다. 기능 별로 크게 7가지로 분류를 해봤는데요. 첫 번째로 사용자 관리, 고민 작성 관리, 답변시스템, 커뮤니티, AI/자동화, 운영/관리, 보안 및 기타로 나누어 각각 카테고리 별로 기능명, 그리고 그 기능의 역할 등을 상세하게 적어 정리했습니다. 팀플로 진행하는 만큼 회원은 어떻게 관리할 것인지, 답변 시스템에는 어떤 기능을 사용하고 또 어떤식으로 구현할 것인지 등 팀원들 간 혼동되는 일이 없도록 공유 문서에 정리하였고, 추후에 추가되는 기능이나 수정사항이 생기더라도 다같이 회의하고 공유할 수 있도록 만들었습니다.

두 번째는 깃 컨벤션 및 템플릿입니다. 이번 프로젝트 뿐만 아니라 거의 모든 프로젝트에서 깃과 깃허브를 사용하는데요. 진행 중 팀원이 어떤 작업을 지금 진행하고 있는지, 혹은 진행할 것인지, 또 어떤 것을 완료하였는지 서로가 알아보기 쉽도록 커밋메세지, 이슈, 풀리퀘스트를 작성할 때 이렇게 작성하자! 하는 규칙을 만들었습니다.

커밋메세지는 ‘태그 콜론 설명’의 형태로 태그에는 기능이나 UI 등을 새로 만들 때는 feat, 오류가 나거나 후에 코드 수정사항이 생겨 고칠 경우에는 fix 등 그때 그때의 작업 내용에 맞춰서 작성할 수 있도록 세부적으로 정해놓았습니다.

또 각 이슈마다 브랜치를 따로 생성해 작업하고 개발중인 동안에는 dev 브랜치에, 개발 완료 후 최종 버전은 main 브랜치에 머지해 관리하기로 정했는데요. 작업 전 각 이슈를 만들거나 작업 완료 후 dev브랜치에 PR을 작성할 때에도 알아보기 쉽고 관리하기 쉽도록 규칙을 세워 작업중이나 혹은 후에 검토할 때 보기 쉽도록 템플릿를 만들어놓았습니다.

마지막으로 프로젝트 생성 및 환경설정입니다. 저희 큰그림 팀은 프론트엔드에는 React, typescript, 그리고 tailwindcss 를 사용하고, 백엔드에는 스프링부트, assertJ, 그래들을 사용하기로 결정하였고 각각 프로젝트를 생성하고 프레임워크 및 라이브러리 등을 사용하기 위해 환경설정을 하고 있습니다.

디자인 부분에서 아직 아이콘 등의 디테일한 부분과 와이어프레임도 조금씩 다듬고 있어서 정돈이 되는대로 프론트에서 메인페이지 혹은 로그인 페이지 등의 기본적인 페이지부터 작업시작할 예정이고, 백엔드 또한 스프링 공부를 진행함과 동시에 로그인 및 회원기능을 구현해가고 있습니다.

저희 팀의 이번주까지의 진행 상황은 여기까지입니다. 마지막으로 구인구직글을 한번씩 보고 마무리하겠습니다.

수욱수욱 설명

이상으로 발표를 마치겠습니다. 혹시 궁금하신 점 있으시면 편하게 질문해주세요.