Skip to content
resetmerlin edited this page Jun 18, 2023 · 1 revision

DLink란?

DLink는 유저들의 데이팅 혹은 인간관계의 범위를 향상시키기 위해 기획한 서비스다.

Latop 및 Desktop 같은 유저들을 목적으로 하는게 아닌 모바일 기기를 사용하는 유저들을 타게팅하는 서비스다.

기능적인 목표

최종적인 목표는 우리가 만든 웹서비스를 사람들이 사용함으로써 선호하는 사람을 찾아 친구 혹은 이성적 인 관계로 발전시키는 경험을 가졌으면 좋겠다.

그럴려면 어떤 기능들이 추가해야 할까?

  1. 유저가 마음에 드는 대상을 찾을 수 있게 타 유저 리스트를 주는 기능을 추가해야 한다. 마음에 들지 않는 유저를 Pass 시키고 Slide(화면 슬라이드)를 통해 다음 유저를 볼 수 있어야 한다.
  2. 마음에 드는 대상을 저장할 수 있는 기능을 추가해야 한다. 좋아요 버튼을 누를 시 그 대상을 저장할 수 있어야 한다.
  3. 마음에 드는 대상과 대화를 하고 싶을 경우 메시지를 보낼 수 있는 기능을 추가해야 한다. 또한 메시지 리스트를 통해 어떤 사람들과 대화를 하였는지 보여야 한다.
  4. 유저가 자기 사진 찍을 수 있도록 해야 한다. 하지만 강제해서는 안된다.

비기능적인 목표

  • Performance(성능): This refers to the speed and responsiveness of the system, as well as its ability to handle a large number of users or transactions.

    1. 유저가 슬라이드를 통해 다른 유저들을 불러올때 로딩 기간이 길어서는 안된다. 하지만 아직까지 최소 로딩 시간 및 최대 로딩 시간을 정하지 못하였다.
    2. 메시지를 보낼때 지연이 많이 있어서는 안된다. 이것 또한 최소 로딩 시간 및 최대 로딩 시간을 정하지 못하였다.
    3. 유저의 사진이 깨지거나 흐릿해서는 안된다. 또한 아이콘 및 font가 선명해야 한다. 이를 어떻게 해결할지는 아직까지 미지수다
    4. 유저 저장 리스트를 불러올때 로딩 시간이 길어서는 안된다. 하지만 아직까지 최소 로딩 시간 및 최대 로딩 시간을 정하지 못하였다.
  • Reliability(신뢰성): This refers to the system's ability to operate without failure or downtime, and its ability to recover quickly in the event of a failure.

    1. 만약 웹 서비스가 어떤 이유로 다운이 되었다면 이를 시스템이 복구할 수 있는지(시스템의 복구 능력) 혹은 얼마나 빨리 회복이 가능한지는 아직까지 정하지 못하였다. 즉 아직까지 시스템이 다운되었을시 준비한 프로세스나 시스템의 복구 능력을 확인하지 못하였다. 다른말로 아직 이런 FAILURE 대비 프로세스를 구축하지 못하였다.
  • Scalability(확장성):This refers to the system's ability to handle an increasing amount of traffic or users as the system grows.

    1. 만약 유저의 증가 수로 혹은 traffic을 인한 시스템에 문제가 발생할 시 Handle 능력을 구축하지 못하였으며 어떻게 할지도 아직까지는 미지수다.
  • Security(보안): This refers to the system's ability to protect user data and prevent unauthorized access or data breaches.

    1. 회원가입, 및 로그인 단게에서 잘못된 유저가 유입되는 걸 막기 위해 먼저 프론트엔드가 schema를 토대로 첫번째 validation을 한 후 백엔드에서 두번째 validation 단계를 거친다.
    2. 잘못된 유저 유입을 막기 위해 Access token 및 Refresh token의 사용(jwt)
    3. 현재 어디까지 보안을 강화해야할지는 모르겠다.
  • Maintainability(지속성): This refers to the ease with which the system can be maintained, updated, and modified over time. 1. 아직까지는 유지 보수는 어떻게 할 것인지는 모르겠다

UI 구성요소 상태

  1. 유저 슬라이드: 유저 슬라이트는 다른 states들이 존재한다. "Slide right"는 다음 상대를 보는 액션이며 "Slide left"는 이전 상대를 보기가 위한 액션이다.

  2. 유저 버튼: 홈 화면에서 처음에 다른 유저 리스트를 서버에서 부르는데 유저 대상을 관한 버튼이 존재한다. 이때 3가지 "states"가 존재하는데 "Next match"는 X자 형태의 버튼을 클릭시 발생하는 state로 다음 다른 유저를 볼 수 있다. "Save Liked User"는 하트 모양 버튼을 통해 내 화면에 보여져 있는 유저를 저장한다. "Chat initiated"는 메시지 모양 버튼을 통해 내 화면에 보여져 있는 유저와 채팅을 시작한다.

  3. 메시지 창: 메시지 창에서는 개인 톡을 주고 받았던 타 유저의 리스트를 보여준다. 메시지 화면에서는 마지막으로 보낸 상대 메시지 및 내 메시지가 보여진다. 또한 상대방이 메시지를 보냈는데도 불구하고 그 메시지를 읽지 않으면 읽지 않은 메시지 수가 보여진다. "읽지 않은 메시지", "마지막 대화 정보 => 내용 및 날짜" 가 states다.

  4. 대화 창: 대화 창들의 구분 기준은 1분내외의 시간 안에 작성한 메시지가 기준이다. "키보드 입력", "전송" states가 있다.

  5. 저장 창: 유저 버튼에서 좋아요 한 유저를 볼 수 있는 기능이다. 저장 리스트 중 한 유저의 리스트 안 이름 및 프로필을 클릭하면 큰 프로필을 볼 수 있다. 삭제 버튼을 통해 저장한 유저를 삭제할 수 있다. "자세히 보기 ", "저장한 유저 삭제" states가 있다.

  6. 설정 창, 계정 보안: "현재 비번", "새 비번", "재 입력 새 비번 , "저장" states가 있다. 현재 비번을 맞게 입력해야지 새 비번을 저장할 수 있다. 새 비번과 새 비번 재 입력 칸은 같아야 하면 형식에 맞게 작성해야 한다. 저장 버튼을 통해 새 비번으로 바뀐다.

  7. 설정 창, 프로필 설정: "사용자 정보 수정" 및 "카메라 " states가 있다. 연필 아이콘을 클릭하여 사용자의 이름을 수정할 수 있으며 학과 또한 마찬가지다. 카메라 아이콘을 클릭 시 유저의 프로필 이미지를 변경할 수 있다.

Clone this wiki locally