인간은 컴퓨터 및 기타 인터랙티브 제품을 사람처럼 취급해 반응한다는 연구 결과 특정 물체가 인터랙션 가능성을 드러내면 사용자의 본능도 눈을 뜬다 —> 취하는 행동은 무의식적이고 불가항력인 본능 제품을 사용하는 인간과 컴퓨터의 관계를 고려하고, 관계에 따라 디자인하자
디자인 원칙 : 사람은 생각을 하고, 컴퓨터는 일을 한다
소프트웨어가 공손하기보다 사려싶어야 한다 —> 상대방의 니즈 파악/이해 공손하고, 귀엽고, 아름다워도 정보를 제대로 보여주지 않고, 프로세스가 불투명하고, 기본 기능을 찾기 힘들다면 불쾌한 경험
디자인 원칙 : 소프트웨어는 사려깊은 인간처럼 행동해야 한다
대부분의 소프트웨어는 누가 사용하는지 모르거나 신경쓰지 않는다 -> 조금 기억해도 감동을 받기 어려움 소프트웨어는 사용자의 버릇과 했던 말 등 모든 것을 기억하기 위해 노력해야함 사용자는 DB가 아니다 -> 언제든지 물어보지 않아야 한다 사용자의 행동과 선호사항을 기억하자
좋은 서비스는 고객을 존중한다 웨이터가 손님을 대하듯이 인간의 행동을 감독하고 평가하지 않기 -> 의견을 표출할 수는 있음
대부분의 소프트웨어는 관련 정보를 잘 공개하지 않는다 유용한 정보를 적절하게 전달하는 것은 정교한 터치가 필요 —> 잘못하면 클리피가 된다 요청할 때나 방해하지 않고 도움이 필요할 때 나타나기
많은 제품이 자주 사용하는 기능을 거의 사용하지 않는 기능과 같이 배치 인간의 상식으로 제품을 디자인 하기
기억하는 것은 좋으나, 민감한 정보같은건 허락을 받고 기억하기 개인정보 보호를 돕기
사용자의 니즈를 예상하고 미리 준비하기 -> 링크 로딩 같은것들 사용자가 다른 일 하느라 노는 시간을 효과적으로 사용하기
하나의 일을 한다면 더 큰 목적과 결부시키기 -> 생각보다 다양하게 할 수 있다 만약 중복된 파일을 저장한다면 삭제/저장이 아닌 예전 파일 이름 변경이나 존재를 알려주는 것과 같이
제품내의 문제를 보여주지 않아야 한다 -> 너무 많은 오류메시지, 확인 대화창, 불필요한 알림
작은 일의 정보 제공은 성가시지만, 상관 있는 일이면 계속 제공하기 가치있는 정보의 제공은 사용자가 좋아한다
사용자가 무엇을 하고 있는지 관찰하고, 관련있는 정보 제공 사용자의 세팅등을 기억하기
신념을 가져야한다 조작을 하면 조작을 이행하기 -> 먼저 이행하고, 번복을 대비한 플랜 준비
귀찮은 질문을 하지 않는다 -> 너무 많은 옵션은 혜택이 아닌 시련이다 질문을 하는 것과 선택 기회는 엄연히 다르다 권력 역학으로 질문자가 더 상위에 있음 사용자는 질문을 좋아하지 않음 -> 단방향으로 끝내지 않기 같은 질문 반복하지 않기
오류가 생길 경우 메시지만 보여주고 끝내지 않기 -> 갑자기 꺼진다거나.. 사용자의 실수를 대비해 취소 캐시를 가지고 있기 -> 돌아오는 것을 대비해 변경사항 저장 등 특히 웹에서 많이 실수가 발생 폼 채우다가 중간에 실수하면 폼 전체가 날라가는 경우가 많음
자동화 시스템은 유동적으로 기능 조정이 거의 불가능 시스템에서 유동성 기대가 힘듦 대부분 자동 시스템은 모든 정보가 존재하거나 아무 정도가 존재하지 않는 두가지 상태만 가짐 수동 시스템은 미결상태가 존재 -> 완전히 끝나지 않았지만 받아들여짐
순서에 상관없이, 전제조건 없이도 일을 진행하게 해주는 유동적인 성향 : 폭신폭신한 인터페이스 컴퓨터 시스템도 미결 상태가 필요
실수를 줄일 수 있음 일시적으로 생기는 시스템의 작은 실수를 인정 사용자에게 고칠 수 있는 기회 제공 영구적 실수 미연 방지
현실세계에는 언제나 애매모호함이 존재 -> 이러한 사실을 반영할 것
소프트웨어가 하드웨어 기기로 업무를 넘기는 과정에서 책임감이 사라지기도 함 하드웨어와 효율적인 협동을 하지 않음
당황스러운 실수가 발생하지 않도록 경고하는 시스템이 필요함 행동을 막고, 일반적인 에러메시지 형식이 아닌 세심한 시각적, 텍스트 피드백 사용자 의도를 오해했을 수도 있음 -> 행동을 하게 하거나 고칠 수 있는 2가지 옵션
유용한 제품과 사람은 사려깊으면서도 똑똑해야함 똑똑한 소프트웨어 : 어려운 환경에서도 항상 열심히 일하는 소프트웨어
모든 명령어는 cpu를 통해 실행 프로그래머는 최적화하려는 경향 -> 일을 처리하면 명령전까지 계속 대기 상태 컴퓨터가 바쁘지 않을 때 어떻게 소프트웨어는 능동적으로 움직여야 하는가?
소프트웨어는 사용자가 일하고 있는 시간에 더 도움을 제공해야함 잘못된 추측으로 리소스를 낭비할 수도 있음 -> 가능성있는 옵션을 먼저 추측 현대 컴퓨팅의 파워를 적절히 사용할 것 전체 디스크 스캔 등 -> 맥의 스팟라이트가 이러한 특징을 활용, 지속해서 인덱싱하기 때문
대화창을 띄운 경우 사용자에게 지난 선택을 보여줄 수도 있음
능동적인 방법으로 사용자를 지원하자
제품과 인터랙션하는 사용자에 대한 주요한 사실을 기억해야만 함
많은 경우 사용자의 행동을 예측할 수 없다고 생각 -> 작업을 위해 애플리케이션에 일일이 물어볼 것 사용자는 목적없이 바보같은 질문을 성가시게 생각
많은 프로그램이 사용자 정보를 기억하지 않음 보통은 기억하더라도 사용자가 아닌 개발자를 위한 정보임 사용자에게 도움이 되는 정보를 기억하자 다음 행동 예측한다면 더 나은 인터랙션 제공 가능
기억 : 수차례에 걸쳐 패턴화된 사용자 행동을 기억하고, 이에 따라 행동 유용한 정보와 개인적 선호도를 항상 기억 사용자의 만족도 상승
업무 일관성 원칙 : 주기적으로 이용하는 사용자의 목적과 이를 성취하는 방법은 일반적으로 항상 비슷 제품을 사용할 때 이전에 사용한 동일한 방법으로 다시 사용 물론 매번 정확히 동일하지 않음 작업은 몇가지 비슷한 패턴의 조합 간단한 사용자의 행동을 기억 -> 사용자의 행동을 예측 물어야 하는 질문의 양을 현저히 줄일 수 있음
디폴트 설정과는 다름 디폴트 설정은 파워유저 제외하면 귀찮은 프로세스 스마트하지 않음
어떤 정보를 기억할 것인가? -> 간단한 기준 사용자가 입력해야하는 정보라면 기억할 가치가 있음 생각보다 사용자를 기억하는 것은 데이터를 크게 쌓지 않음
사용자가 직접 입력해야하는 정보라면 애플리케이션도 이 정보를 기억할 만하다