Skip to content

4주차 스프린트

hodun edited this page Nov 29, 2022 · 1 revision

⛳ 스프린트 목표

  • 지난주 작업 배포 서버에서 잘 돌아가게 하기
  • 화상회의 내 영상/음성 on/off
  • 투표 기능
  • 질문 리스트 기능
  • 동시 편집 에디터 개선

화상 회의

  1. 회의 시작과 종료 ⭐
    • 개발 편의를 위해서 클라이언트 쪽에서만 끌 수 있게 해두기
    • 다른 사람들과의 연동은 이번주에는 낮은 우선순위
  2. WebRTC 캠/마이크 컨트롤 ⭐⭐
    • 상대방 쪽에서 뭔가 해줘야 할수도 있음

기능 블럭

  • 투표랑 질문은 crdt 없이 할 수도 있음 → 일단 회의록 들어가면 디폴트로 있도록 ⭐⭐⭐
    • 종료 버튼 있다면? 결과를 중간에 안보여줄수도 있음 (실시간 아니어도 괜찮음)
    • 종료는 아무나 다 하나요?
      • 플래닝 포커도 아무나 종료할 수 있어요

CRDT

  • 선택지1: crdt 지금 이렇게 두고 모른척 하고 딴거부터 한다

  • 선택지2: crdt 빨리 개선하고 그다음 딴거 한다 → 모른척하면 다음 작업이 어려운 부분만

  • CRDT 링크드리스트 flatten (db 저장을 위해) ⭐⭐⭐

    • 오늘 한명이 맡아서 무조건 하기

      mom {
        blocks: Block[{}, {}, {}];
      }
      Block {
      	type: 'vote';
      	options: ['짜장면', '짬뽕'];
      	counts: [3, 4];
      }
      
      Block {
      	type: 'text';
      	head: Identifier;
      	map: { Identifier: Node };
      }
      
      
  • 블럭 → 블럭 → 블럭 → 블럭 으로 확장시키기 ⭐⭐

  • CRDT 개선하기 ⭐

    • 100글자 문제 → flatten으로 해결
    • 같은 인덱스에서 일어난 작업에만 발생하는 문제
      • 주말에 할까요? ^^
    • 3명 입력이나 삭제 tombstone
      • 완벽할 필요는 없는 것 같아요 조금의 충돌은 모르는척해요
      • 저희가 짧은 기간에 만든 CRDT가 완벽할 수 없을 것 같으니 싱크 맞춰줄 수 있는 방법을 고민해봐요

회의록 단위로 관리하기

→ 지금 시점에서 우선순위 낮음. 주말에 할 수 있어요..


🗓️ 요일 별 계획

11/28 (월):

  • dev → main 컨플릭트 해결
  • 배포 502 에러 이슈 해결

11/29(화):

11/30(수):

  • 투표 블록 기능 구현

12/1(목):

  • 리팩토링 데이

12/2(금):

  • 데모 데이

약속의 27시간

약속의 27시간


🎬 데모 시나리오

테스트 목적과 상황 시나리오 진행에 필요한 값 시나리오 진행에 필요한 조건 시나리오 완료 시 보장하는 결과
화상회의를 시작하고 종료할 수 있다. workspaceId 사이드바의 회의 시작/종료 버튼을 클릭한다. 회의 중에는 ConfMediaBar가 디스플레이되고 화상회의에 참여할 수 있다.
회상회의 중에 내 음성을 (1) 끌 수 있다. (2) 켤 수 있다. 화상회의 참여 중인 상태 다른 참여자들이 내 음성을 (1) 들을 수 없어야 한다. (2) 들을 수 있어야 한다.
투표 생성 폼에서 블록을 생성할 수 있다. workspaceId 투표 제목과 항목을 입력한 뒤 등록(POST)한다. 투표 블럭에서 제목과 항목을 확인할 수 있다.
투표를 진행할 수 있다. accessToken 생성된 투표의 항목을 클릭해서 선택한다. 자기가 투표한 항목을 확인할 수 있다.
투표를 종료하면 결과를 확인할 수 있다. 투표 종료 버튼을 클릭한다. 각 항목 별로 (투표 참여자/멤버) 결과를 보여준다.
질문 블록에 질문을 할 수 있다. (1) 질문 블록에 질문을 등록한다. (2) 완료됐다면 체크한다. (1) 질문이 등록되면 다른 사람 화면에 등록된 질문이 보인다. (2) 질문을 완료했다면 다른 사람 화면에서 체크 박스가 채워진다.

🥍 개인 목표

@Seyoung Kim CRDT랑 손절할 수 있을만큼 완성도 높이기

@주영 신 회의시작, 종료 이벤트 구현

@백도훈 기술 왭로그에 글 한편 작성하기. CRDT. 너 백도훈이랑 만나볼래?

@Won-hee Cho 질문 블록 구현하기, 잘 퇴근하기