뛰어난 제품을 만들기 위해 서비스 기획자 및 PM/PO가 알아야할 가이드
회원가입과 로그인 프로세스를 통해 서비스 구현을 위한 프로세스를 학습해 보자.
아이디 및 비밀번호 입력 조건
아이디는 기호를 제외하고 6~12자 이내의 영문, 숫자 조합으로만 입력 형식을 제한해도 될 것 같다.
입력 가능한 형식을 인풋 박스 아래에 설명 문구나 인풋 박스 내 힌트 메시지 또는 인포메이션 아이콘(i)을 활용해 툴팁 처리하여 안내해야 한다.
입력 시에는 자동으로 대문자 또는 소문자 입력 처리를 하고, 12자 초과 입력을 막는다면 사용자가 불필요한 혼동이나 입력을 줄이며 쉽게 아이디를 생성할 수 있을 것이다.
입력 박스 초과 입력 제한
모든 인풋 박스는 입력 가능한 최소와 최대 글자 수에 대한 기준을 둬야 한다.
아이디는 6~12자 이내, 비밀번호는 9~20자 이내, 이름은 1~10자 이내, 휴대폰 번호는 11자로 입력 가능한 글자 수 기준을 뒀다.
이메일 주소는 SMTP(Simple Mail Transfer Protocol) RFC 2821에 따라 주소 앞자리 64자 + @ + 도메인 255자로 최대 320자를 초과할 수 없다. 따라서 적어도 최대 320자를 초과하는 입력은 막아야 한다.
휴대폰 번호나 카드번호, 연월일시 등과 같이 일정 형식이 있는 인풋 박스에서는 인풋 마스킹 처리(ex 달력 나타내기, 도메인 주소 드롭다운)를 통해 사용자가 형식에 맞게 입력하고, 그 입력값을 삭제 버튼을 통해 초기화할 수 있도록 지원해 주면 좋다.
+ 인증 메일이나 문자를 발송할 때는 반드시 발송 후 타이머를 표시하거나 발송 횟수 등의 제한을 두어야 한다.
데이터 유효성 체크
이메일도 데이터 유효성을 체크해서 중복 시 중복 여부를 안내하고, 다른 이메일 주소를 입력받아야 한다.
서버에서 이메일 주소는 고유한 값이고 휴대폰 번호는 중복될 가능성이 있기 때문에 재인증 프로세스가 필요하다.
회원가입 페이지는 사용자가 빈번하게 접근하는 페이지가 아니다.
따라서 서버 트래픽이 엄청나게 발생하지 않는다.
필자는 [가입하기] 버튼을 클릭했을 때 다이얼로그 팝업이나 인풋 박스 아래에 유효성 메시지로 데이터 유효성을 안내하기보다는, 이메일 인풋 박스에서 포커스 아웃을 트리거 삼아 즉시 데이터 유효성 여부를 체크하고, 안내하는 방식을 선호한다.
서버 트래픽이나 개발 편의를 생각하면 아이디, 이메일 주소, 휴대폰 번호를 모두 입력한 다음 [가입하기] 버튼을 클릭했을 때 API를 한 번만 호출하면 좋다.
하지만 사용자 입장에서 이메일 주소를 입력한 즉시 사용 가능 여부를 안내하는 것이 편하다.
약관 및 그 동의 처리
사용자들이 서비스 정책의 내용을 명확하고 쉽게 확인하고 이해할 수 있도록 제공하고, 선택 약관에 대해서는 그 동의 여부를 선택할 수 있도록 지원해야 한다.
필수 입력값 표시
모든 입력값이 필수 입력값이라면 굳이 인풋 박스마다 필수 입력값이라는 표시할 필요가 있을까?
필수 및 선택 입력값이 혼재돼 있다면 오른쪽 위에 '* 필수 입력 항목'을 안내하고 필수 입력 항목 라벨 오른쪽에 별 모양(*)을 표시하거나, 인풋 박스가 많아 스크롤이 생성되어 한눈에 확인하기 어려울 때는 선택 입력값에만 (선택 입력) 또는 (옵션)으로 표시해 주는 것이 좋다.
페이지 이동 버튼의 제공
이미 회원가입을 했는데 실수로 회원가입 페이지에 들어온 사용자를 위해 로그인 페이지로 이동할 수 있는 버튼을 제공해야 한다.
필자는 보통 아이디를 기준으로 기기나 IP와 관계없이 10회 이상 로그인에 실패하면 해당 계정을 잠금 처리하고, 해당 계정의 통지 수단으로 계정 잠금 안내를 한다.
그리고 계정주가 재인증을 통해서 계정 잠금을 풀 수 있도록 지원한다.
이를 위해서는 서버에 로그인 실패 횟수를 기록하며, 로그인 성공 시에는 해당 횟수를 초기화하고 10회 실패 시에는 계정 잠금 프로세스를 진행할 수 있도록 기획해야 한다.
ex) 넷플릭스: 접속 기기 제한 방식은 밀어내기 방식이 아닌, 최근 접속한 기기의 시청을 막기
대다수 교육 솔루션이 채택하고 있는 방식으로 접속 가능한 기기의 슬롯 개수나 유형을 제한하고 최근 접속한 기기에서 이전에 접속했던 기기를 선택해 접속을 끊는 것이다.
이는 교육 솔루션의 경우에 학습 통계 때문에 한 계정으로 여러 사용자가 사용하는 것은 제한하면서 한 사용자가 휴대폰에서 태블릿으로, 태블릿에서 PC로 단말기를 이동하며 학습 환경을 변경하는 것을 지원하기 위해서다.
반면 넷플릭스와 같은 OTT 서비스는 현재 시청 중인 사용자의 연속된 시청 경험이 보다 중요하기 때문에 신규 접속자의 시청을 막는다.