ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2주차 목요일 데일리 스프린트 작업 회고
    Today I Learned 2022. 10. 27. 23:33


    오늘 진행한 Task를 정리하면서 작업 과정을 돌아보았다.

    작업 예상
    스토리 포인트
    실제
    스토리 포인트
    회고
    백엔드 개발 환경 세팅 2 1 기본 Security 화면을 제거하고 WelcomeController를 생성하는 작업까지 진행했다.

    추후 실시간 채팅 구현 시 Spring Web이 Spring Reactive Web으로 변경될 가능성이 있을까?
    헤더 생성 및 디자인 잡기 1 2.5 단순히 헤더 컴포넌트를 추가하고 요소 배치, 링크로 끝날 것이라고 생각해 스토리 포인트를 매우 작게 부여했다. 그러나 작업에 들어갔을 때 라이브러리 설치, URI 네이밍, 인수 테스트, 단위 테스트 작성 등 구현을 위해 같이 해줘야 하는 작업들을 생각하지 못했다. 설치한 라이브러리를 어떻게 사용하는지도 꽤나 자주 돌아보면서 작업을 진행했다.

    프로젝트에서 특정 라이브러리나 구조를 처음 짜는 작업은 생각한 스토리 포인트보다 1~2포인트를 더 부여하거나, 라이브러리 사용법 복습을 위한 1~2 스토리 포인트 정도의 Task를 추가해도 좋을 것 같다.
    데이터베이스 테이블의 속성이 배열을 가질 수 있는지 조사 2 1 동료가 쇼핑몰 상품 상세정보에서 볼 수 있는 댓글들을 데이터베이스로 어떻게 설계할 수 있을지 물어왔다. 내 프로젝트에도 운동 모집글에 작성자가 추가하는 포지션이라는 속성이 하나의 글에 여럿 추가될 수 있었기 때문에 모델 정의를 미리 내린다고 생각하고 Todo에 새로 작업을 추가하고 조사를 시작했다.

    상세정보가 댓글들 리스트를 갖는 식으로 Entity 객체가 컬렉션 형태의 데이터를 포함할 수 있는지 지난 레벨 테스트 프로그램으로 실험을 시도했지만 가능하지 않았다. 의외로 방법이 생각보다 일찍 떠올랐는데, 마카오뱅크 강의에서 거래 내역을 조회할 때 거래 내역을 모아놓은 테이블에서 송금인의 id 값을 갖는 거래 내역을 갖고 오는 것처럼 댓글 테이블에서 해당 상품 상세정보 id 값을 갖는 댓글들만을 가져온 뒤, 상품 상세정보와 DTO로 묶어서 전달하는 방식을 취하도록 할 수 있었다.

    해당 방식의 설계가 실제로 가능한지 확인하기 위해 모델과 데이터베이스 정의를 지금 내려보도록 하자.
    메인 화면에서 각 기능으로 링크하기 위한 메뉴 생성, 링크 연결 2 2 메인 화면에서 각 기능으로 이동할 수 있는 링크 컴포넌트들을 배치했다. react-router-dom을 설치하고 컴포넌트들을 배치하고 링크를 연결시켰다.

    기본적인 CSS 배치 정도를 해 주는 것도 시도했다. 그동안 잘 쓰지 않았던 grid 레이아웃으로 배치를 시도했는데 생각만큼 복잡하지는 않았다. 하지만 전체 화면 크기 설정, 헤더 화면 고정을 위한 CSS 기법 적용이 잘 되지 않아 일단은 소스코드 상에 TODO로 남겨두었다.



    전반적으로 들었던 생각은 바로바로 소스코드를 치기 생각보다 쉽지 않았다. 주어진 스토리 포인트 내에서 작업 설계를 하면서 구현을 하는 것으로 생각하고 있었는데, 빠르게 설계를 하다 보니 실제로 소스코드를 칠 때 '여기는 어떻게 해야 하지' 고민하면서 소스코드를 치지 못하고 손을 놓고 있는 구간이 상당 부분 나왔다.

    특정 작업을 시작하기 전 최소 1 스토리 포인트 이상은 작업을 설계하거나, 과정이 생각나지 않는다면 강의를 돌려보면서 다시 한 번 인출하는 Task를 기꺼이 추가할 수도 있어야 할 것이라는 생각이 들었다. 애매하게 생각나는 것들을 처음에 잘 잡고 가야 다음에 비슷한 작업을 진행하면서 속도를 낼 수 있을 것이다.






    댓글

Designed by Tistory.