본문 바로가기
이노자일

업무 화면에서 누를 수 없는 버튼, 이유를 보여 주는 법

창업자를 위한 IT 번역7분 읽기이노자일

핵심 요약

누를 수 없는 버튼은 숨기지 않고 막힌 모습 그대로 두고 이유를 답니다. 권한 때문에 볼 수 없는 값도 지우지 않고 별표로 가린 뒤 왜 가렸는지 적습니다. 통신 서비스 회사의 구매·자산 관리 시스템과 영업·텔레마케팅 시스템을 만들며, 막힌 버튼이 막힌 것처럼 보이지 않았던 일, 다른 화면의 이유가 그대로 뜬 일, 이유 칸에 내부 번호가 섞인 일을 점검에서 잡아 고친 경험을 바탕으로 시연 때 눌러 볼 행동을 정리했습니다.

버튼을 눌렀는데 아무 일도 일어나지 않습니다. 화면이 멈춘 것인지, 내 권한으로는 안 되는 것인지, 아직 순서가 아닌 것인지 알 수 없습니다. 몇 번 더 눌러 보다가 옆자리에 묻고 결국 담당자에게 연락해서야 지금 단계에서는 원래 안 되는 것이라는 답을 듣습니다. 업무 프로그램을 받아 쓰는 자리에서 한 번쯤 겪을 만한 장면입니다.

이런 버튼은 시연 자리에서 잘 걸러지지 않습니다. 시연은 되는 것을 보여 주는 자리라서 눌리는 버튼은 눌러 보고 막힌 버튼은 건너뛰기 때문입니다. 만든 쪽이 옆에서 "이건 승인 뒤에 열립니다"라고 설명해 주면 그 자리에서는 아무 문제가 없어 보입니다. 문제는 설명해 준 사람이 곁에 없는 평일 오전에 드러납니다.

이 글은 「직원이 매일 쓰는 업무 화면」 연재의 세 번째 편입니다. 1편에서는 쓰던 내용이 사라지지 않는지, 2편에서는 상태 표시를 색만으로 하지 않는지를 다뤘습니다. 이번에는 통신 서비스 회사의 구매·자산 관리 시스템과 영업·텔레마케팅 시스템을 만들며 막힌 버튼과 가린 값을 어떻게 다뤘는지 적고 시연이나 검수 자리에서 직접 확인하는 방법을 정리했습니다.

화면의 버튼 줄 가운데 하나가 흐릿하게 막혀 자물쇠가 달려 있고, 바로 아래 파란 테두리의 설명 카드가 이유를 알려 주는 그림

숨기지 않고, 막아 두고, 이유를 답니다

못 쓰는 버튼을 다루는 가장 쉬운 방법은 화면에서 지우는 것입니다. 그런데 지우면 직원은 그 기능이 있다는 것조차 모르게 됩니다. 어제는 있던 버튼이 오늘 없으면 고장인지 권한 문제인지 구분할 수 없고 다시 담당자에게 묻게 됩니다.

저희 공통 업무 규칙은 반대로 정했습니다. 권한 때문에 볼 수 없는 값은 화면에서 지우지 않고 ***로 가린 뒤, 왜 가렸는지 설명을 답니다. 값은 보이지 않지만 그 자리에 값이 있다는 것, 그리고 내가 못 보는 이유는 보입니다.

등록 화면의 선택지도 같은 원칙입니다. 지금 고를 수 없는 선택지는 숨기지 않고 막아 둔 채 이유 안내를 붙입니다. "이 유형은 다른 관리 화면에서 관리합니다" 같은 안내가 그것입니다. 이 결정을 저희는 "쓰기는 막고 읽기는 연다"라고 불렀습니다. 막는 대상은 고치는 동작이지 보는 것이 아닙니다. 그래서 데이터를 지우는 일도 하지 않았습니다.

원칙은 한 줄이지만 지키는 것은 다른 문제였습니다. 아래는 점검에서 걸린 세 가지입니다.

막힌 버튼은 막힌 것처럼 보여야 합니다

영업·텔레마케팅 시스템의 상담 화면에는 전화 걸기 버튼이 있습니다. 특정 상황에서는 이 버튼이 막혀 있어야 했고 실제로 막혀 있었습니다. 그런데 생김새가 그대로였습니다. 파란 배경에, 마우스를 올리면 손가락 모양이 되고 흐려지지도 않았습니다. 눌리는 버튼과 구분이 되지 않았습니다.

그 요구의 핵심은 "그 버튼을 다시 누르지 않게 하는 것"이었습니다. 생김새는 정반대를 말하고 있었습니다. 누르라고 생긴 버튼이 눌리지 않으면 직원은 고장이라고 생각하고 몇 번 더 누르기 쉽습니다.

이때 자동 점검 셋이 모두 통과한 상태였습니다. 셋은 각각 다른 것을 봤습니다. 하나는 화면 정의에 적힌 것과 실제 구현이 맞는지, 하나는 버튼의 기본 모양 규칙이 있는지, 하나는 규칙이 담긴 파일이 있는지였습니다. "막혔을 때의 모양"은 아무도 보지 않았습니다. 점검이 셋이나 있다는 것과 이 질문을 보는 점검이 있다는 것은 다른 일이었습니다.

왼쪽의 눌리는 버튼은 선명하고 손가락 커서가 올라가 있고, 오른쪽의 막힌 버튼은 흐릿한 회색에 자물쇠가 달려 있으며 아래에 설명 카드가 붙은 그림

그래서 막힐 수 있는 버튼마다 막혔을 때의 모양 규칙이 있는지 보는 자동 점검을 새로 만들었습니다. 시연 때는 막힌 버튼 위에 마우스를 올려 보면 됩니다. 흐려져 있고 손가락 모양이 되지 않아야 정상입니다.

이유는 이 화면에 맞는 사실이어야 합니다

구매·자산 관리 시스템의 회수 장비 표에서, 잠긴 줄에 이런 안내가 떴습니다. "발행/수신된 회차는 삭제할 수 없습니다". 그 화면에는 회차라는 것이 없습니다. 다른 화면에서 쓰던 안내 문구가 이 화면에도 그대로 떠 있었던 것입니다. 사실이 아닌 이유였고 만들지 않은 쪽의 검수가 찾았습니다.

틀린 이유는 이유가 없는 것보다 나쁩니다. 직원은 안내를 믿고 없는 회차를 찾아다니게 될 수 있습니다. 이유를 다는 목적이 묻지 않게 하는 것인데, 틀린 이유는 더 어려운 질문을 만듭니다.

막히는 조건마다 다른 이유를 대도록 고쳤습니다. 권한이 없어서 막힌 것인지, 이 줄이 해당 계열이 아니어서 막힌 것인지, 조회 모드라서 막힌 것인지에 따라 안내가 다릅니다. 그리고 그 조건과 이유가 짝을 이루는지를 자동 점검이 봅니다. 조건은 셋인데 이유가 하나뿐이면 두 조건에는 맞지 않는 말이 뜨기 때문입니다.

시연 때는 이유를 읽고 나서 그 말에 나오는 것이 이 화면에 실제로 있는지 봅니다. 할 수 있으면 조건을 바꿔 봅니다. 권한이 다른 계정으로 보거나 조회 모드로 열었을 때 이유가 그에 맞게 달라져야 합니다.

이유 칸에 내부 번호가 섞이지 않아야 합니다

저희 화면 정의에는 버튼마다 "막힌 이유" 칸이 있습니다. 이 칸은 사용자에게 그대로 보이는 설명입니다. 그런데 이 칸 39곳에 화면 번호가 들어가 있었습니다. 만드는 쪽이 화면을 부르는 내부 관리 번호입니다. 그대로 두면 막힌 버튼에 직원이 모르는 번호가 뜨게 됩니다.

만든 쪽에서는 화면 번호가 자연스러운 말입니다. 어느 화면에서 하는 일인지 번호로 적는 것이 짧고 정확하기 때문입니다. 직원에게는 그 번호가 암호입니다. 같은 칸을 두 사람이 다르게 읽는 것이 문제였습니다.

검수에서 찾았고 39곳을 고친 뒤 그 칸에 화면 번호가 들어가면 막는 자동 점검을 새로 만들었습니다. 시연 때는 이유 문구에 화면 번호처럼 직원이 모르는 번호나 약어가 섞여 있는지 보면 됩니다. 직원이 읽어서 어느 메뉴를 열어야 하는지 알 수 있는 말이어야 합니다.

막았다고 적혀 있어도 직접 눌러 봐야 합니다

등록 화면의 창고 선택을 막아 두었던 적이 있습니다. 결정 기록에도 막는다고 적혀 있었고 코드의 형식 검사도 통과했습니다. 그런데 선택 칸을 그리는 부품이 '막힘' 설정을 조용히 무시하고 있었습니다. 막았다고 적혀 있는데 실제로는 골라졌습니다. 화면을 직접 눌러 보는 확인에서 잡았습니다.

자동 점검은 "적혀 있는가"를 봅니다. 눌러 보는 확인은 "실제로 그러한가"를 봅니다. 앞의 세 가지는 자동 점검을 새로 만들어 막았지만 이 하나는 적힌 것과 동작이 어긋난 경우라 눌러 보지 않으면 알 수 없었습니다. 둘 중 하나만으로는 부족합니다.

본받을 화면도 있었습니다. 사용자 눈높이 점검 1차에서 구매·자산 관리 시스템의 배정 요청 상세와 과금 상세 화면은 막힌 버튼마다 이유를 설명으로 달아 두어 "숨기지 않고 사유를 단다"는 원칙을 잘 지키는 모범으로 꼽혔습니다. 다른 화면도 이 수준에 맞추라는 판정이었습니다. 시연 때도 같은 방식을 쓸 수 있습니다. 잘된 화면 하나를 먼저 찾아 기준으로 삼고 다른 화면이 그 수준인지 비교하면 됩니다.

시연 때 막힌 버튼과 가린 값을 확인하는 방법

볼 것은 다섯 가지입니다. 막힌 것처럼 보이는가, 이유가 뜨는가, 그 이유가 이 화면에 맞는 사실인가, 내부 번호가 섞이지 않았는가, 가린 값은 숨기지 않고 이유와 함께 보이는가. 눌러 볼 행동으로 풀면 아래 표가 됩니다.

시연 때 눌러 볼 행동 정상이면
막힌 버튼 위에 마우스를 올린다 흐려져 있고 손가락 모양이 되지 않는다 · 눌리는 버튼과 한눈에 구분된다
막힌 버튼의 이유를 읽는다 이유가 뜬다 · 이유에 나오는 것이 이 화면에 실제로 있다
권한이 다른 계정이나 조회 모드로 같은 화면을 연다 막히는 조건에 맞게 이유가 달라진다
이유 문구에 내부 번호·약어가 있는지 본다 화면 번호 같은 내부 번호가 없다 · 직원이 읽고 다음에 무엇을 해야 할지 안다
권한 없는 계정으로 값이 가려진 칸을 본다 칸이 사라지지 않고 별표로 가려져 있다 · 왜 가렸는지 설명이 붙어 있다
막아 둔 선택지를 실제로 골라 본다 골라지지 않는다 · 숨겨져 있지 않고 이유 안내가 붙어 있다

이 표도 지난 두 편처럼 프로그램을 만든 쪽에 미리 건네도 좋습니다. 막힌 버튼은 시연에서 눌러 볼 일이 없어서 만드는 쪽도 마지막까지 보지 않기 쉽습니다. 다음 편에서는 직원이 이해하는 안내 문구 이야기를 다룹니다.

자주 묻는 질문

못 쓰는 버튼은 아예 안 보이게 하는 편이 깔끔하지 않나요?
화면은 깔끔해지지만 직원은 그 기능이 있는지 모르게 됩니다. 어제는 보이던 버튼이 오늘 없으면 고장인지 권한인지 구분할 수 없고 결국 담당자에게 묻게 됩니다. 막힌 모습 그대로 두고 이유를 달면 묻지 않고도 다음에 무엇을 해야 하는지 알 수 있습니다. 저희는 "쓰기는 막고 읽기는 연다"로 정했습니다.
권한이 없는 값을 별표로라도 보여 주면 괜찮은가요?
보이는 것은 값이 아니라 그 자리에 값이 있다는 사실과 못 보는 이유입니다. 값 자체는 가려져 있습니다. 칸을 통째로 지우면 직원은 그 항목이 원래 없는 것인지 내가 못 보는 것인지 알 수 없어 엉뚱한 곳에서 찾게 됩니다. 어느 쪽이 맞는지는 업무마다 다를 수 있으니, 시연 때 가린 값에 이유가 붙어 있는지와 함께 어떤 값을 가리기로 했는지도 물어보면 됩니다.
이미 쓰고 있는 프로그램에서 막힌 버튼에 이유가 없으면 어떻게 요청하나요?
"버튼이 안 눌린다"보다 어느 화면의 어느 버튼이 어떤 상황에서 막히는지를 적어 주는 것이 빠릅니다. 그리고 그 상황마다 직원이 읽을 이유를 한 줄씩 함께 적어 주면 만드는 쪽이 바로 붙일 수 있습니다. 이유를 적다 보면 막히는 조건이 하나가 아니라는 것도 드러나는데, 그 조건 수만큼 이유가 필요하다는 것을 요청할 때 미리 말해 두면 다른 화면의 문구가 섞여 들어오는 일을 줄일 수 있습니다.

관련 글

무료 자료

MVP 외주 계약 전 체크리스트 25

계약서에 서명하기 전에 제작사와 확인할 25가지 — 범위·일정·비용·인계·운영

무료로 받기

내 프로젝트, 시작해도 될까?

요구사항·예산·리스크·AI 활용, 개발 전 준비사항을 약 3분 동안 점검해 드려요.

3분 무료 진단 시작

12문항 응답 후 이름·이메일·현재 단계를 입력하면 결과를 확인할 수 있어요.

진단보다 바로 이야기하고 싶다면 — 무료 첫 상담, 준비물 없이 화상 30분.