팀 프로젝트(12)
-
[니꺼, 내꺼] 알림 기능 구현을 위한 학습
현재 프로젝트에서 '알림 기능' 을 구현할 필요가 생겼다. Spring 에서 '알림 기능' 을 구현하는 방법에 대해 찾아보았는데 그 내용이 적지가 않아 찾아본 정보와 어떠한 방식을 선택하게 되었는지 정리해보려 한다. 0. 대략적인 목표 우선 구현하고자 하는 '알림 기능' 은 사용자에게 '실시간으로 서버의 변경 사항' 을 웹 브라우저에 갱신해주는 서비스이다. 가령 해당 프로젝트의 주 목적인 '물물 교환' 에 대한 상태가 변경되었다면 사용자에게 교환 상태 변경에 대한 알림을 실시간으로 알려주는 것이다. 물론 대략적인 목표로 실제 팀 프로젝트에 적용전에는 좀 더 명확한 목표나 기준을 설정할 필요가 있다. 1. 실시간 통신 방법 파악 해당 프로젝트는 '웹 애플리케이션' 을 구현하는 것이므로 'HTTP 통신' ..
2024.12.09 -
[니꺼, 내꺼] 5분 기록 테이블
최종 프로젝트간 사용할 '5분 기록 테이블(보드)' 을 기록하는 게시글입니다. 프로젝트를 진행하면서 어떠한 부분을 책임지고 구현/작성했는지, 어떤한 문제를 마주해서 어떻게 해결했는지 간략하게 기록하기 위해 작성하게 되었습니다. 최종 팀 프로젝트의 5분 기록 테이블은 아래와 같은 정보로 작성됬습니다.분류 : 기획, 기능 구현, 트러블 슈팅, 오류 해결, 리팩토링, 테스트 작성 등 작업의 분류를 작성기능 : 기획을 제외한 분류일 경우 어떤 기능(API)에 대한 작업인지, 작업 대상 기능을 작성기록 : 작업 내용을 간략하게 작성날짜 : 작업 날짜(또는 기간) 작성링크 : 작업한 내용에 대한 블로그 게시물 또는 Github 커밋 내역을 링크분류기능기록날짜링크프로젝트 기획-프로젝트 기획(요구사항 정의서, 와이어프..
2024.12.04 -
[Able - shopping mall] DB vs Cache 성능 테스트
프로젝트간 구현한 '상품 검색 조회' 요청을 검색어를 DB 에 저장하는 것 하나, Cache 에 저장하는 것 하나 총 2개를 작성하였다. 두 요청의 부하 테스트를 진행해 과연 성능 개선이라는 것이 어느정도 차이가 있는지 확인해 보았다. 부하 테스트는 Jmeter 를 사용했으며 1초에 50번의 부하를 100번 반복하는 것으로 부하를 설정하였다. 1. GET /api/products/search-v1 2. GET /api/products/search-v2 3. 결과 DB에 검색어를 저장하는 경우 1초에 100개의 요청을 처리할까 말까였지만 Cache 에 검색어를 저장하는 경우에는 1초에 수백건의 요청을 처리하는 것을 볼수 있었다. 이 때까지 말로만 혹은 글로만 "Cache 를 활용하면 성능 개선을 꾀할 ..
2024.11.29 -
[Outsourcing] 5분 기록 테이블
프로젝트가 시작되고 Github 의 'issue' 를 활용해 기능 구현에 대한 기록을 하기로 했지만 해당 게시물에 좀 더 간략하게 어떤 기능을 구현해야 하는지 기록하기 위해 '5분 기록 테이블' 을 작성해보려 한다. 테이블은 어떤 기능을 추가해야 하는지(했는지)와 관련 이슈를 확인할 수 있는 링크 정보를 담고 있다.기능 : 작업한 '기능' 에 대한 정보를 작성기록 : 어떤한 작업을 했는지 간단한 내용을 작성분류 : 구현, 트러블 슈팅 등 작업의 목적을 작성날짜 : 작업 날짜 작성이슈 : 팀 프로젝트(in Github Organization)에 작성한 'issue' 링크를 작성기능기록분류날짜이슈주문 생성사용자가 선택한 가게의 메뉴 정보를 통해 주문을 생성하는 기능 구현기능 구현2024.11.04#30주문내..
2024.11.04 -
[뉴스피드] 팀 프로젝트 회고
이미 한 번 발표전 개인적으로 회고를 진행했지만 캠프쪽에서 제시한 'KPT 회고 방법론' 을 적용해 이번 프로젝트(NewsFeed)의 개인 회고 기록을 남겨보려 한다. 1. Keep '팀원과의 소통' 을 유지해보려 한다. 이전에도 '기획' 의 중요성을 기록할 때 '기획' 이 없을 때 생기는 문제가 있어 '기획' 의 필요성을 느꼈다 했는데, '기획' 만으로 해결되지 않을 수 있다는 것을 알게 되니 더욱더 '팀원과의 소통' 이 중요하다는 것을 알게 되었다. '기획' 이 있음에도 이걸 이해는 방식은 사람마다 모두 다르기에 이를 맞추려면 '소통' 이 필요하다. 그렇기에 두려워하지 말고 팀원과의 지속적인 소통을 하려는 자세를 유지해보려 한다. 2. Problem2-1. 프로젝트 간 느낀 문제점 아무리 협업이 처..
2024.10.24 -
[뉴스피드] 와이어 프레임의 중요성
프로젝트 발제 이후 팀원들과 회의를 통해 팀 노션을 작성하고 프로젝트에 사용할 API 명세서 및 ERD 를 작성했다. 하지만 '와이어 프레임' 의 경우 모두 "작업을 하다보면 나오겠지" 라는 말을 하며 작성을 하지않고 주말에 각자 맡은 파트를 구현했다. 하지만 나의 경우 막상 구현을 하려니 고민되는 사항이 너무 많았는데, 그 원인은 바로 '기획' 의 부재였다. 그렇다 과제로 요구사항이 주어졌으나 이를 따로 정리하지 않았고 또한 와이어 프레임을 작성하지 않았기에 팀원간 공통적으로 정해진 것이 없어 구현에 애를 먹은 것이었다. 곧장 손으로 와이어 프레임을 그려보고 이를 토대로 오늘 아침회의에 팀원들에게 의견을 제시했다. 급하게 작성한 터라 조잡하긴 했지만 팀원들에게 필요성을 느낀 이유를 담아 이야기했더니 고..
2024.10.21