대부분의 PDF 양식이 실패하는 이유 (그리고 실패하지 않는 양식을 만드는 방법)
대부분의 작성 가능한 PDF의 근본적인 문제는 사람들이 "양식처럼 보이는 것"을 "양식처럼 기능하는 것"과 혼동한다는 것이다. 그들은 Word나 Canva에서 아름다운 레이아웃을 만들고, 몇 개의 선과 상자를 추가하고, PDF로 내보낸 다음 완료되었다고 가정한다. 그런 다음 사용자가 실제로 양식을 작성할 수 없거나 데이터가 제대로 저장되지 않거나 모바일 장치에서 양식이 작동하지 않을 때 충격을 받는다. 실제 작성 가능한 PDF 양식은 실제 양식 필드를 요구한다—특정 속성, 검증 규칙 및 동작을 가진 인터랙티브 요소들. 이 필드는 이름(데이터 추출용), 유형(텍스트, 체크박스, 드롭다운 등), 속성(필수, 읽기 전용, 계산용 등)을 가져야 한다. 이러한 요소가 없으면 양식이 아니다. 양식의 이미지가 있을 뿐이다. 나는 세 번째 고객인 한 법무법인과 함께 이 사실을 힘들게 배웠다. 그들은 유산 계획 설문지를 필요로 했다. 나는 인디자인에서 아름답게 디자인하고 PDF로 내보냈으며, 자랑스럽게 전달했다. 이틀 후, 관리 파트너가 전화를 걸었다. "우리 고객이 iPad에서 이 양식을 작성할 수 없어요." 그녀가 말했다. "그리고 데스크탑에서 작성할 때, 우리는 데이터를 케이스 관리 시스템으로 추출할 수 없어요." 나는 전체 양식을 처음부터 다시 만들어야 했다. 이번에는 양식 작성이 두 단계 프로세스라는 것을 이해했다: 디자인(올바르게 보이게 만들기) 및 필드 구현(올바르게 작동하게 만들기). 대부분의 사람들은 첫 번째 단계만 수행한다. 그래서 대부분의 PDF 양식은 쓰레기다. 내가 지금 사용하는 방법론은 특정 순서를 따른다: 원하는 도구로 레이아웃을 디자인하고, PDF로 내보낸 다음, 전용 양식 편집기를 사용하여 적절한 양식 필드를 추가한다. 이러한 문제의 구분은 각각의 작업에 가장 적합한 도구를 사용할 수 있게 해준다—레이아웃을 위한 당신의 좋아하는 디자인 소프트웨어와 기능성을 위한 전문 양식 소프트웨어.내게 모든 것을 가르쳐 준 치과 양식
마르티네즈 박사의 환자 접수 양식을 수정한 후, 그녀는 나를 그녀의 동료인 파텔 박사에게 추천했다. 파텔 박사는 소아 치과 진료소를 운영하고 있었다. 파텔 박사는 더 야심찬 것을 원했다: 치료 비용을 계산하고, 보험 정보를 검증하며, 환자 나이에 따라 다른 섹션으로 라우팅되는 다단 양식이었다. "부모님이 대기실에서 iPad로 작성하게 하고 싶어요." 그녀가 설명했다. "그리고 그들의 보험 보장 비율에 따라 자기 부담 비용을 자동으로 계산하고 싶어요." 이건 2019년이었고, 나는 이전에 계산이 있는 양식을 만들어 본 적이 없었다. 나는 PDF 양식을 위한 JavaScript를 연구하고, 다양한 접근 방식을 테스트하며, 여러 차례 실패하는 데 3일을 보냈다. 혁신은 PDF 양식이 단순화된 JavaScript 문법을 사용하며, 대부분의 계산이 예측 가능한 패턴을 따른다는 것을 깨달았을 때 일어났다. 내가 만든 양식은 4페이지에 걸쳐 47개의 필드가 있었다. 그것은 다음을 포함했다: - 환자 나이에 따라 나타나거나 사라지는 조건부 섹션 - 보험 조정과 함께 치료 비용의 자동 계산 - 필수 필드가 비어 있으면 제출을 방지하는 검증 - 부모의 승인을 캡처하는 서명 필드 - 현재 날짜로 자동으로 채워지는 날짜 필드 파텔 박사의 사무실은 3년 동안 이 양식을 사용하다가 업데이트를 요청했다. 그 시간 동안 2,000명 이상의 새 환자를 처리했다. 프런트 데스크 직원은 이 양식이 각 환자당 12분에서 3분으로 접수 처리 시간을 단축시켰다고 말했다. 이 양식은 자동으로 불완전한 제출을 플래그하고, 지불 금액을 계산하며, 데이터를 직접 그들의 병원 관리 소프트웨어로 내보냈다. 그러나 그것을 작동하게 만든 것은 무엇인가? 나는 모든 것을 한 번에 만들려고 하지 않았다. 나는 기본 양식을 먼저 만들고, 실제 사용자와 함께 테스트한 다음 점진적으로 기능을 추가했다. 계산 필드는 버전 2에서, 조건부 논리는 버전 3에서, 데이터 내보내기 형식은 버전 4에서 추가되었다. 이 반복적인 접근 방식이 바로 사용자에게 실제로 도움이 되는 양식을 만드는 방법이다. 당신은 핵심 기능으로 시작하고, 그것이 작동하는지 검증한 다음, 정교함을 추가한다.실제로 작동하는 도구들 (그리고 그 비용)
나는 지난 5년 동안 23개의 서로 다른 PDF 양식 생성 도구를 테스트했다. 대부분은 너무 제한적이거나(계산 또는 검증을 처리할 수 없음) 너무 비쌌다(어도비의 가격과 경쟁하기 위해 노력하는 중). 그러나 6개 도구는 전문 양식 생성을 위해 신뢰할 수 있음을 입증했다.| 도구 | 가격 | 최고의 용도 | 제한 사항 | 내 평점 |
|---|---|---|---|---|
| PDFescape | 무료 / 월 6달러 | 간단한 양식, 빠른 수정 | 계산 없음, 제한된 검증 | 7/10 |
| Sejda | 주 7.50달러 또는 연 63달러 | 계산이 포함된 전문 양식 | 학습 곡선이 가파름 | 9/10 |
| PDF-XChange Editor | 54달러 일회성 | Windows 사용자, 복잡한 양식 | Windows 전용, 복잡한 인터페이스 | 8/10 |
| Foxit PDF Editor | 연 79달러 | 팀, 기업 기능 | 간단한 프로젝트에 너무 과함 | 8/10 |
| LibreOffice Draw | 무료 | 예산 프로젝트, 기본 양식 | 어수선한 워크플로우, 제한된 기능 | 6/10 |
| JotForm PDF Editor | 무료 / 월 34달러 | 온라인 양식을 PDF로 변환 | 먼저 온라인 양식이 필요함 | 7/10 |
전문 양식 디자이너가 아는 것 (당신이 모르는 것)
"나는 작성 가능한 PDF를 만들었어"와 "사람들이 실제로 사용할 수 있는 작성 가능한 PDF를 만들었어" 사이에는 큰 격차가 있다. 그 격차는 아마추어 양식과 전문 양식을 구분하는 수많은 작지만 중요한 결정들로 채워져 있다."최고의 양식은 당신의 마음을 읽고 있는 것 같은 느낌이 듭니다. 그것은 당신이 시도하고 있는 것을 알고, 실수를 예방하고, 당신을 무시하게 만들지 않고 완료하도록 안내합니다." — 이것이 Fortune 500 회사의 UX 디자이너가 나에게 말해준 것이며, 이는 내 양식 디자인의 북극성이 되었다.전문 양식 디자이너는 필드 탭 순서에 집착한다. 사용자가 Tab 키를 눌러 필드 간 이동할 때, 필드는 논리적으로 흐를 수 있어야 한다—위에서 아래로, 왼쪽에서 오른쪽으로 자연스러운 독서 패턴을 따르는 것이다. 아마추어 양식은 필드를 생성하는 동안 편리하게 느껴지는 어떤 순서로든 추가했기 때문에 무작위 탭 순서를 가진다. 이는 양식을 작성할 때 화가 나게 만든다. 우리는 또한 모든 입력에 적절한 필드 유형을 설정한다. 날짜 필드는 텍스트 필드가 아니라 날짜 필드이어야 한다. 사용자가 "어제" 또는 "3월 32일"과 같이 입력할 수 있는 텍스트 필드는 아니다. 전화번호 필드는 전화번호 형식을 검증해야 한다. 이메일 필드는 @ 기호와 적절한 도메인 구조를 확인해야 한다. 이러한 검증은 쓰레기 데이터가 시스템에 들어오는 것을 방지한다. 필드 이름 정하기는 또 다른 보이지 않는 기술이다. 전문 양식은 "Text1" 및 "Text2" 대신 "patient_first_name" 및 "insurance_provider_name"과 같은 일관되고 설명적인 필드 이름을 사용한다. 왜? 양식 데이터를 스프레드시트나 데이터베이스로 내보내면 이러한 필드 이름이 열 머리로 변하기 때문이다. 좋은 이름은 데이터 처리를 용이하게 만든다. 나쁜 이름은 악몽을 만든다.
"나는 양식이 데이터 처리를 이해하는 사람이 만든 것인지, 단순히 보기 좋게 만들고 싶었던 것인지를 30초 만에 판단할 수 있습니다. 필드 이름이 모든 것을 말해줍니다." — 매년 수천 개의 PDF 양식을 처리하는 데이터베이스 관리자.우리는 또한 모바일 사용자를 고려한다. 현재 양식 작성의 60% 이상이 모바일 장치에서 이루어지지만, 대부분의 PDF 양식은 데스크탑 전용으로 설계되었다. 전문 양식은 더 큰 터치 대상(최소 44x44 픽셀)을 사용하고, 작은 체크박스를 피하며, 실제 전화기와 태블릿에서 테스트한 후 제공된다. 가장 간과되는 전문 기술은 점진적 공개이다—사용자에게 그들의 상황과 관련된 필드만 보여주는 것이다. 누군가 "보험이 있습니까?"에 대해 "아니오"를 선택하면, 양식은 모든 보험 관련 필드를 숨겨야 한다. 이는 인지 부하를 줄이고 양식이 덜 두렵고 짧게 느껴지게 한다.