내배캠 (22.04~22.08)

SMOPS 프로젝트 (유화 제작/판매 사이트) - KPT 회고

yubi5050 2022. 7. 6. 22:35

1. 프로젝트 기간, 팀 구조

주제 :유화 제작 및 판매 사이트

기간 : 2022.06.28 (화) ~ 2022.07.06 (수)

팀 구성 : 김선민 (Github), 김민기 (Github), 박재현 (Github), 황신혜 (Github)

 

2. 프로젝트명

나만의 유화를 만들어 판매하거나 구매할 수 있는 웹 서비스

 

3. 프로젝트 Github ( + 설명)

https://github.com/SeonminKim1/SMOPS-BE

 

GitHub - SeonminKim1/SMOPS-BE: Selling My Oil Paintings Service

Selling My Oil Paintings Service. Contribute to SeonminKim1/SMOPS-BE development by creating an account on GitHub.

github.com

 

4. Keep

  • 기획(Mock Up), 와이어 프레임, 웹 개발 순서의 진행을 적절하게 진행함
  • Branch 관리 : Branch 기반 작업 + Merge(PR) 후 Branch 삭제
  • 파일을 적극 분리하여 작업 (+개발 생산성, Conflict 방지) 한 점 (base.html)
  • CSS Convention / Semantic Tag 어느정도 규칙 잘 지킨점
  • FE 개발 Version up 관리 (ex. Agile 개발론)
  • UX/UI 기반 프로젝트 최종 점검 시간을 확보해서 진행한 점 (+외부 테스터 진행)
  • 기획안과 최종 완결물 간의 차이가 거의 없는 점
  • 와이어프레임 앞(기획) 디자인 매우 좋음 (신혜짱)
  • 정기적인 상호 피드백 및 논의 시간을 가진 점 (오전 9시, 오후 2시, 저녁 6시)
  • 서로 질문하고, 격려하고, 적극적으로 피드백 하려고 한 것
  • 오류 발생 시 꾸준한 디버깅으로 문제 해결
  • FE 개발
    - 미디어 도입 잘했음 => 학습이 살짝 아쉽
    - (FE, 공부필요) JQuery Ajax => Async Function Vanila 대체

 

5. Problem

  • FE
    - 반응형 구현이 아쉬움 => 미디어 쿼리 도입
    - JS의 좋은 코드인지에 대한 작성 의구심 => 1조 꺼 + 좋은 템플릿 참고하기
    - 웹에 모든 기본적인 것 (Semantic Tag 보다 확장, Footer 미구현 아쉬움)
  • BE, DB
    - JWT사용을 했으나 서비스에 적합하게 부자연스러움 없이 적용하지 못한 것
    - BE Serializers나 다양한 기능을 좀더 알고 잘 썻으면 좋았겠다. => 기획단에서의 기능을 좀 더 다양화
  • AI
    - 오픈소스의 프로젝트 능숙한 적용을 위해 리딩이 어려워 공부가 필요함 => 많이해보셈.
    - 모델 선택 과정에서의 아쉬움 => 발제 듣고 기획단에서 고민
  • AWS (인프라) 
    - EC2, S3 Upload, IAM에 대한 이해도가 Team적으로 아쉬웠다,
  • (공통) 회의 시간 감축 (30분)

 

6. Try

  • FE
    - const FE 개발 팀장 = 황신혜;
    - JS 좋은 코드 보기 (1조, 좋은 템플릿)
    - React 도입
    - Agile 개발 방법론
  • BE
    - Django 학습 (Permission / Pagination - 게시판 / DRF Mixins, Generic API, Viewset 추상화 / )
    - Django Query ORM 최적화 (prefetch, selective, F Method, Concurrency... , Atomic())
    - Test Code 작성하기 - UnitTest, E2E
    - 디자인 패턴 도입
    - Django Modeling 다양한 옵션 활용
  • AWS
    - LoadBalancer (ELB) 로 서버 여러대
    - ElasticBeansTalk 로 EC2 통합 관리
    - Cloudwatch 로 Log 수집
    - S3 Mount
    - IAM - 권한 차별화
  • 기타
    - Response Body 최적화 스토리
    - Mysql Settings 스토리
  • (QA) 튜터 적극 활용 (특정 시점에 찾아가기), 외부 테스터(신혜님 남자친구님)
  • (GIT) 컨벤션 맞추기
  • Commit 좀더 명료하게 적기~
  • Issue 작성 : 체크박스 10개 이하로 분리해서 적기
  • PR Templates : 내용 적기 (Title - Commit 메시지 처럼 / 내용 : Commit 정리)
  • GIT 안에서 프로젝트 정리하기 (Trouble Shooting, API문서)

 

Feel (느낀점)

김선민

  • 비교적 짧은 시간 동안 새로 도입한 기술 스택이 많아 관리포인트가 많음에도 불구하고 다들 열심히 잘 참여하여 잘 프로젝트를 마무리 할 수 있었던 것 같습니다.

 

김민기

  • 지속적인 KPT회고를 통해 매 프로젝트마다 발전함을 느끼고 있습니다. 이번 프로젝트는 DRF, AWS, MySQL 등 새로운 분야를 접하면서 고민이 많았던 프로젝트이기도 했습니다. 배우는 점도 많았으며 마지막 프로젝트를 위해 준비하는 단계로 좋았습니다.

 

박재현

  • 역시 프로젝트를 통해서 얻는 점이 많았다고 생각이 들었으며 짧은 기간이었지만 기간에 비해 좋은 성과물이 나온 것 같고 이번 프로젝트에서 BE, FE 분리하여 작업해보면서 많은 걸 배웠고 인프라적인 부분도 중요하고 배워야 할 점이 많다고 생각이 들었습니다.

 

황신혜

  • 지난 프로젝트 회고 후 기록했던 Problem, Try 등이 많이 개선되었음을 느꼈다. UX 흐름 점검으로 수정해야 할 부분을 잘 챙겨갈 수 있어 좋았다. 추가로 트러블 슈팅 기록을 잘 해두면 좋을 것 같다. 기본적으로 수행할 수 있어야하는 기술 구현에 어려움을 느꼈기 때문에 따로 공부를 해 잘 정리해두어야 할 것 같다. 모르는 부분 팀원들끼리 이야기 적극적으로 나눌 수 있도록 이야기하기.