2009년 11월 18일 수요일
2009년 11월 17일 화요일
2009년 11월 11일 수요일
HCI-HW : 7.design rules ~ 8.Implementation Support
HCI-HW : 7.design rules ~ 8.Implementation Support
★ finding
Q1. 집단경험 VS 개인경험 or 역사경험 VS 개인경험
도킨스는 역사적 유물이 기록되는 유전자의 존재로서 meme을 제시했고, 융은 인류의 집단적, 역사적 무의식으로서 'root 무의식' 개념을 언급했다. 이처럼, 어쩌면 인류에게는 공통된 경험사가 있고, 이것이 분명 인터페이스에 영향을 끼치는 요인도 있을테다.
HCI 전문가들은 흔히 특정 인터페이스에 익숙한 정도를 언급할 때, 개인 경험만을 말한다. 인터넷 매체에 친숙하기 때문에 Mac OS를 잘 사용하고, Mac OS에 친숙하기에 Mac application에 잘 적응할 수 있고, 등등이 그것이다.
친숙도의 개념을 '집단경험 혹은 역사경험'으로 부터 증명할 수 있으리라 본다. 만약 그러면, 동시대가 아닌 역사를 관통하는 HCI의 principle, standard, guideline을 만들 수 있지 않을까?
Q2. 우선순위 부여
multi-modalities에 '우선순위'를 부여할 수 있지 않을까? 모든 인간의 업부믄 소위 '우선순위' 따라 이뤄진다. 대표적인 스켸쥴러인 프랭클린 다이어리의 구조가 이를 반증한다. 기본 형식은 '우선순위'를 사용자 스스로 설정할 수 있도록 돕고, 사용자는 이에 따라 업무의 강약을 조절 할 수 있다.
현재의 컴퓨터 기반 multi-modality는 대게 동시적 수행/알림 등의 경우만을 포괄한다. 업무의 우선순위 배치에 대한 배려는 없다.
우선순위 배치를 위한 다부진 아이디어를 듣고 싶다.
Q3. system pre-emptive VS user pre-emptive
HCI에 대해 곰곰이 생각해 보노라면, 봉착하는 질문이 있다. 과연 'right' 인터페이스는 무엇인가? 너무 광범위하고 철학적인 질문일 수도 있기에, 이를 몇 가지 경우로 축소해서 조금씩 그 정의를 구축할 수 있으리라 본다.
그래서, system pre-emptive 와 user pre-emptive 사이의 갈등관계에서만 살펴보더라도, 무엇이 right한 인터페이스인지 묻고 싶다.
☆ summary
7.1. introduction
- 주요 문제 중 하나 : 디자인 결정으로서 유저빌리티 결론 능력을 디자인에게 어떻게 제공하는가의 문제
=> 디자인 룰의 필요성
- 룰의 2개 차원
(1) 룰의 권위성 : 룰인지에 대한 파단 여부
(2) 룰의 일반성 : 룰의 적용 가능성 살펴보기
- 주변 개념
- 프린시플 : 추성적 디자인 룰, 일반성이 높고 권위성이 낮음
- 스탠다드 : 특정적 디자인 룰, 권위성이 높고 일반성이 낮음
- 가이드라인 : 권위성이 낮고, 일반성이 높음
- 디자인 룰은 관습적으로 심리학, 인지학, 어고노믹스, 사회학, 경제학, 컴퓨터공학에 적용됨
+ 프린시플
- 문제영역의 심리학적, 컴퓨터 공학적, 사회학적 양상에 대한 지식으로부터 분리
- 기술과 매우 많은 부분에서 독립적
- 인터랙션에 있어 인간요소에 보다 의존적
- 보다 넓게 적용되고, 특적 디자인 충고에는 비유용
+ 가이드라인
- 덜 추상적이고 테크놀로지 기반적
+ 스탠다드
- 권위가 매우 높은 수준에 이르기 때문에, 근본적으로 이론이 옭고(correct) 건전하게(sound) 함
7.2. principle to support usability
- 가장 추상적 디자인룰
- 인터랙티브 시스템에서는 유저빌리티를 생성시키기위해 적용가능
- 패러다임과 연관해서는, 왜 패러다임이 성공하는지, 언제 패러다임이 성공하지 못하는지,에 대한 설명가능
- 3개의 주요 카테고리
- learnability : 새로운 사용자에게 효과적인 인터랙션을 시작할 수 있고, 최고수준의 퍼퍼먼스를 수행할 수 있는 용이성
- flexibility : 사용자와 시스템이 정보를 교환하는 방식의 다중성(multiplicity)
- robustness : 사용자가 성공적인 수행(acivement)과 목표에의 접근을 결정하는데, 제공하는 서포트의 수준
7.2.1. learnability
predictability
- 정의 : 인터랙션 역사에 대한 사용자의 지식이 미래 인터랙션의 결과를 결정하는데 효과적이라는 의미
- 사용자 중심개념 : 컴퓨터 시스템 자체의 결정론적인 행동과는 구분된다. 즉, predictability는 사용자 관점으로서의 결정론적인 행동이다.
- predictability 개념은 시스템에서 오퍼레이션의 효과를 결정하는 사용자의 능력을 다룬다. 즉, 수행(perform)될 수 잇는 오퍼레이션을 아는 사용자의 능력과 연관한다.
=> opertion visibility : 다음에 수행될 수 있는 오퍼레이션의 능력이 사용자에게 보여지는 방식
=> 인간에게 잇어, recall 보다 recognition이 우월하다는 것을 증명
synthesizability
- 정의 : 현재 상태에서 과거 오퍼레이션의 효과에 엑세스하는 사용자의 능력
- 필요이유 : 시스템 행동 모델을 formulate하기 위해서 이진 인터랙션 연속체에 접근하는 것이 사용자에게 중요하기 때문
- honesty : obserbavle하고 informative한 내부상태의 변화를 사용자 인터페이스로 제공하는 것
(1) immediately : 사용자에 의한 개시없이 나이간 인터랙션하는 상황
예. visual desktop interface
(2) evetually : 변화를 observable하게 명령하는 상황
예. command language interface
- enventually honesty의 단점 : 사용자가 변화를 찾는 것(look for)을 알아야 한다.
familiarity
- 많은 수의 어플리케이션 도메인을 통해 사용자의 wealth of experience 발생
- 원인/출처 :
(1) 실제세계에서의 인터랙션
(2) 다른 컴퓨터 시스템과의 인터랙션
- 인터랙티브 시스템의 familiarity 측정 : 사용자에게 존재하는 지식과 효과적 인터랙션을 위해 요구되는 지식 사이의 상호관계 측정
+ guessability
- familiarity는 시스템과의 초기 imprescion과 연관 (예. metaphor)
+ affordance
- 시각적 대상은 사용자에게 조작될 수 있는 방법을 제시
generalizability
- 정의 : 특정 인터랙션 행동을 (우연히 만나지 않은) 비슷한 상황으로 확대적용 시도
consistency 형식으로 보여질 수도
- 단일 어플리케이션 혹은 다양한 어플리케이션 사이에서 발생
예. cut, paste, copy
consistency
- 같은 상황 혹은 같은 업무 객체로부터 발생한 행동 내에서의 likeness와 연관
- 가장 많이 언급되는 principle
+ 다른 principle과의 연계성
- fimailiarity : 과거 실재세계 경험으로부터의 consistency
- generalizability : 동일 플랫폼의 어플리캐이션 혹은 동일 시스템에 대한 경험으로 부터의 consistency
=> 논쟁점 有 : consistency를 learnability, flexibility, robustness와 동급으로 취급해야 하는 것 아닌가?
- 시스템의 개념적 모델에서 행동의 의미라는 점에서, 인풋 표현 혹은 아웃풋 반응의 형식
7.2.2. flexibility
- 정의 : end-user와 시스템 사이에 정보를 교환하는 방식의 다양성
dialog innitiative
- 정의 : 어느 파트너(사용자, 시스템)가 먼저 다이알로그를 시작하는가가 중요
- 종류
- system pre-emptive : 시스템이 모든 다이알로그를 주도, 사용자는 요청정보에 대해 대담
- user pre-emptive : 사용자가 시스템에게 어떠한 액션을 취하는데 자유로움
=> 사용자의 관점에서, 전자는 flexibility 방해, 후자는 flexibility 긍정
- 최적의 모습 : 시스템을 선전하는 사용자의 능력을 최대화하고, 사용자를 선점하는 시스템의 능력을 최소화
=> 몇몇 경우에서 무지 필요
- 협동적 편집cooperative editing
- safety
- system pre-emptive의 단점 : 사용자가 시도했지만 아직 완성되지 않은 업무의 track을 잃을 수 있다.
=> 좋은 디자인으로 해결 가능
multi-threading
- 정의 : 한 번에 하나 이상의 업무를 서포트하는 인터랙션
- 종류
- concurrent : 분리된 업무에 속하는 정보를 동시에 커뮤니케이션 하는 것
- interleaned : 분리된 업무사이의 일시적 오버랩 허용. 즉, 어떤 급작스런 다이알로그가 주어지더라도 단일 업무로 한정 가능
- 다이알로그의 멀티양식(modality)는 multi-threaing과 연관
- multi-modal system의 2가지 특징
(1) 분리된 modalies가 단일 인풋 혹은 아웃풋 표현 형식으로 결합되는 방법에 대해 고려 가능
: multi channel은 가능하지만, 하나의 표현은 하나의 채널로 제한됨
예. 윈도우창을 ㅇ려기 위해, 3가지 표현 기능(마우스 클릭, 키보드, 명령어)
(2) 단일표현은 채널의 mixing에 의해 형성됨
예. 에러경고 : text message + audio beep
- 윈도우 시스템은 자연스럽게 interleaded한 multi-thread 다이알로그 지원
- multi-modal 다이알로그는 동시적 multi-threading 허용
task migratability
- 정의 : 시스템과 상요자 사이 업무 실행 제어의 이동성(transfer) 고려
예. spell-checking, safety-critical application
substitutivity
- 동등한 value가 서로를 대리할 수 있을 때 필요
=> 사용자의 머릿 속에서 불필요한 계산을 피함으로써, substitutivity는 사용자 에러들과 인지적 노력을 최소화할 수 있다.
- representation multiplicity : flexibility를 렌더릴 상태로 묘사
예. 온도계의 다양한 presentation (시간별, 온도별)
=> 사용자는 현재 업무에 적당한 representation을 자유롭게 고려 가능
- equal opportunity : 인터페이스에서 인풋과 아웃풋 사이를 흐림
예. 스프레드시트에서 입력값과 결과값을 반대로 입력하는 경우
=> equal opportunity는 시스템이 사용자에 대해 선도적이 않다는 것을 함축
customizability
- 정의 : 사용자 혹은 시스템에 의해 사용자인터페이스의 modifiability
+ 종류
- adaptability = user-initiated modification
- adaptivity = system-initiated modification
+ adaptability
- 정의 : 인풋과 아웃풋 형식을 조정하는(adjust) 사용자의 능력
- 매우 제한적(스크린 위 소프트버튼 포지션 조정, 명령 이름을 수정)
- lexical customization
+ adaptivity
- 정의 : 시스템의 사용자 인터페이스에 대한 자동적 customization
+ adaptability 와 adaptivity 의 차이
- adaptability : 사용자가 명백한 역할에서 play
- adaptivity : 사용자가 불명확한 역할에서 play
7.2.3. robustness
인터랙션 robustness
- 역할 : 목표에의 접근과 성공적인 성취(acivement)를 서포트하는 성질들을 커버
observability
- 정의 : 사용자가 시스템의 내부 상태를 평가할 수 있도록 함
- 수단 : 인터페이스에서 인지가능한 표현(representation)
+ 5가지 다른 성질과 연관
- browsability : 사용자가 인터페이스에서 제공되는 제한적 시각(view)을 통해 현재 시스템의 내부적 상태를 탐험하도록 함
- default : passive recall을 통해 사용자를 도움 (예. 질문에 대해서 '추천된' 반응들)
인풋값의 수를 감소시켜서, cornor를 사전에 방지하는 매커니즘
- 종류
- statio : 세션 내 전개되지 않음
- dynamic : 세션 동안 전개
- reachability : observable 시스템 상태를 통하는 네비게이션의 가능성
사용자는 어떤 상태이든지로부터 어떤 상태이로든지까지 네비게이션 가능
시스템의 recoverability에 영양 끼침
rechability의 수준은 flexibility에 영향끼침
- persistence : 커뮤니케이션 해동의 효과와 그 행동 효과를 사용하려는 사용자의 능력에 대한 길이(duration)
recoverability
- 정의 : 이전 인터랙션에서의 약간의 에러에 대한 인지(recognition)이후, 욕구된(desired) 목표에 도달하려는 으력
+ 종류
- forward error recovery : 현상태의 수용과 현상태에서 욕구된 상태를 향하는 negotiation
- backward error recovery : 진행하기 이 전에 앞선 상태로 돌아가기 위해, 이전 인터랙션 효과를 언상으로 되돌리려는 시도
+ 시스템 혹은 사용자에 의해 초기화 가능
- 시스템에 의해 초기화 될 때 : 소프트웨어 엔지니어링 모든 주제와 연관, 시스템 기능성과 연관
- 사용자에 의해 초기화 될 대 : 사용자의 recovery 행동의도에 의해 결정 -> forward/backwad와 연관
+ rechability와 연관 : 바라지 않는 상태에서 바라는 상태로 이를 때, block되는 것을 사용자가 원치 않기 때문
responsiveness
- 정의 : 시스템과 사용자 사이의 커뮤니케이션 비율 측정
- 반응시간이란 ? 사용자에게 상태변화를 표현하기 위해 시스템에 의해 필요한 시간 길이(duration)
=> 일반적으로 짧은 duration과 instaneous 반응 시간을 원함
task conformance
- 정의
(1) 시스템이 관심있는 모든 종류의 task를 서포트 하는지,
(2) 시스템이 사용자가 원하는 대로 이 task를 서포트하는지,
- task completeness -> coverage issue
- task adquacy -> task에 대한 사용자의 이해도
- task conformance 논의에 대한 뿌리 : 직접조작 인터페이스의 성공에 대한 이해의 시도에 뿌리르 둠
7.3. standards
- 정의 : 큰 커뮤니티의 디자인 룰
- 스탠다드의 적용점 : 하드웨어와 소프트웨어 => 디자인 스탠다드의 이용성에 영향끼침
- 기본적 이론
- 하드웨어는 심리학 혹은 어고노믹스/인간요소의 기본에 기반 -> 하드웨어 스펙에 직접적으로 연관
- 소프트웨어는 심리학, 인지과학에 기반 -> 보다 분명치 않게 언급됨
- 변화점
- 하드웨어는 안정적
- 소프트웨어는 변화적
+ 역사
- 초기 협회는 소프트웨어보다 하드웨어에 대한 스탠다드가 多
- 점점 소프트웨어 스탠다느 증가
+ ISO 스탠다드 9241
- 유저빌리티 스펙에 부속
- 하드웨어와 소프트웨어 모두에 적용
- 유저빌리티 정의 : usability, effectiveness, effeciency, satisfaction
- 역할 : 유저빌리티에 대한 명확한 측정 묘사의 수단 제공
- 장점 : 권위성 즉, 커뮤니티에 계속 머무르도록 하는 능력 -> 권위는 관습으로 획득됨
7.4. Guidelines
- 인터랙티브 소프트웨어 디자인 이론의 불완전성으로 인한 권위적이고 특정적인 스탠다드 생산 어려움 봉착
-> 그결과, 인터랙티브 시스템 디자인 룰 대부분이 개인적이고 추천적인 일반적 가이드라인 수준
- 가이드라인이 추상적일수록, 가이드라인은 프린시플을 닮아가고 -> 스펙의 요ㅣ구에 맞는 방향으로 나아감
- 가이드라인이 특정적일수록, 가이드라인은 디테일 디자인에 적합하게 됨
7.5. golden rules and heuristics
7.5.1. Shneiderman`s eight golden rules of interface design
- consistency를 살려라
- 사용자가 숏컷을 자주 사용할 수 있도록 하라
- 정보적 피드백을 제공하라
- 실제와 가깝게 다이알로그를 디자인하라
- 에러 방지와 간단한 에러 다루는 것을 제공하라
- 행동에 대한 간단한 반전을 제한하라
- 제어하는 내적인 현장을 서포트하라
- STM 로드를 줄여라
7.5.3. Norman’s seven principles for transforming difficult tasks into simple ones
- 세계의 지식과 머릿속 지식 모두를 사용하라
- 업무의 구조를 단순화해라
- 눈에보이게 만들어라
- 파워를 늘려라
- 에러를 위한 디자인을 하라
- 실패하는 모든 것은 스탠다드화하라
7.6. HCI patterns
- 정의 : 성공적인 디자인의 근본적 디테일을 추상화하는 지식을 재사용하고 캡쳐하는 접근
특정 컨텍스트 내에서 재발하는 문제에 대한 솔루션
8.1. Introduction
+ 본 챕터의 주제 : 인터랙티브 시스템의 구현을 위해 제공되는 프롸그램 지원에 대해 논의 할 것
- programming support tool은 현재의 표현적이지 못한 수준의 executable language를 프로그래머가 보다 상위 레벨에서 직접적으로 응용의 interaction object들을 이용해 코딩할 수 있도록 해 준다.
- 여기서 강조하는 것은 어떻게 필수적인 하드웨어 소프트웨어 서비스 위해 추상화 레벨을 구축하는가 이다.
8.2. Elements of Wondowing System
Windowing system :
- 현대(modern) WIMP 인터페이스의 기본(foundation)
- 프로그래머를 위한 천연그대로(crude) 수준의 추상(abstraction)
- 프로그래머로 하여금 기기 독립성과 멀티플 어플리케이션 제어를 갖을 수 있도록 함
- 어플리케이션 아이알로그와 프리젠테이션에 대해 분리된 제어 수단을 제공하지는 않음
+ 역할 : 프로그래머를 하드웨어 디바이스 특정부분으로 부터 독립화
- 프로그램이 업무를 보다 쉽게
- 어플리케이션 프로그램의 이동성을 가능하게
+ 제공하는 것
- 프로그래밍의 특정부분을 하드웨어 디바이스로부터 분리
- 다양하고 독립적이지만 동시적으로 액티브한 어플리케이션을 관리
8.2.1. Architectures of windowing systems
+ 분리된 어플리케이션의 이동성 감소
- OS의 커널 내에서 관리 역할을 구현
- 분리된 어플리케이션으로서 관리 역할을 구현 = 클라이언트 서버 아키텍쳐
- 인터페이스를 다른 모든 OS를 관통하는 어플리케이션 프로그램에 제공
- X window system은 네트워크 프로토콜에 기반
- 윈도우 관리자 : 인풋/아웃풋 리퀘스트사이의 갈등을 해결
- ICCCM(인터-클라이언트 커뮤니케이션 컨벤션 메뉴얼) : 다양한 정책 이슈를 위한 관습 제공
8.3. Programming the Application
- Interactive application = 사용자 주도적
+ Read-evaluation loop
- 제어 흐름이 어플리케이션 프로그램 자체에 내재적
- 이벤트 프로세싱에 대한 완전한 제어
- 프로그래머는 클라이언트가 받을 예정인 가능한 모든 이벤트에 대해 제어 실행해야만 함
+ Notification based
- 어플리케이션 내에 존재하지 않은 이벤트 프로세싱을 위한 주요 제어 루핑
8.4. Using toolkits
+ WIMP 인터페이스의 주요 특징
- 디스플레이 스크린에 독립적으로 링크된 인풋/아웃풋 행동
- 가상 커서의 움직임을 통해 사용자 스스로가 실제 움직인다고 느낌
- 환영은 사용자에게 그 대상들과 하나라는 느낌을 야기
+ 툴킷(Toolkits)
- 환영을 창조하기 위해 어플리케이션 프로그램에서 많은 노력 필요
- 프로그래머에게 인풋과 아웃풋에 초점을 맞출 수 있도록 도움
- 프로그래머에게 이미 만들어진 인터랙션 오브젝트를 제공
+ 툴킷을 가진 프로그래밍의 잇점
- 인풋 형식과 아웃풋 형식 사이의 consistency를 강화
- look and feel이 좋음
8.5. User Interface Management Systems
+ UIMS
- 정의 : 툴킷 수준을 넘어선 인터랙티브 시스템을 위한 다른 수준의 서비스를 더하기위 제안된, 디자인 테크닉과 프로그램밍
- 주요 내용
- 인터랙티브 시스템의 구조를 위한 개념적 아키텍쳐
- 어플리케이션과 프리젠테이션의 분리를 구현하기 위한 테크닉
- 실시간 인터랙티브 환경을 평가하고 구현하고 관리하기 위한 테크닉 보조
8.5.1. UIMS as a conceptual architecture
+ 어플리케이션과 인터페이스 사이의 분리
=> 어플리케이션과 인터페이스를 제어하는 다이알로그로서 커뮤니케이션의 역할
- 인터랙티브 시스템의 3개 주요 구성요소
- 어플리케이션
- 프리젠테이션
- 다이알로그 제어
★ finding
Q1. 집단경험 VS 개인경험 or 역사경험 VS 개인경험
도킨스는 역사적 유물이 기록되는 유전자의 존재로서 meme을 제시했고, 융은 인류의 집단적, 역사적 무의식으로서 'root 무의식' 개념을 언급했다. 이처럼, 어쩌면 인류에게는 공통된 경험사가 있고, 이것이 분명 인터페이스에 영향을 끼치는 요인도 있을테다.
HCI 전문가들은 흔히 특정 인터페이스에 익숙한 정도를 언급할 때, 개인 경험만을 말한다. 인터넷 매체에 친숙하기 때문에 Mac OS를 잘 사용하고, Mac OS에 친숙하기에 Mac application에 잘 적응할 수 있고, 등등이 그것이다.
친숙도의 개념을 '집단경험 혹은 역사경험'으로 부터 증명할 수 있으리라 본다. 만약 그러면, 동시대가 아닌 역사를 관통하는 HCI의 principle, standard, guideline을 만들 수 있지 않을까?
Q2. 우선순위 부여
multi-modalities에 '우선순위'를 부여할 수 있지 않을까? 모든 인간의 업부믄 소위 '우선순위' 따라 이뤄진다. 대표적인 스켸쥴러인 프랭클린 다이어리의 구조가 이를 반증한다. 기본 형식은 '우선순위'를 사용자 스스로 설정할 수 있도록 돕고, 사용자는 이에 따라 업무의 강약을 조절 할 수 있다.
현재의 컴퓨터 기반 multi-modality는 대게 동시적 수행/알림 등의 경우만을 포괄한다. 업무의 우선순위 배치에 대한 배려는 없다.
우선순위 배치를 위한 다부진 아이디어를 듣고 싶다.
Q3. system pre-emptive VS user pre-emptive
HCI에 대해 곰곰이 생각해 보노라면, 봉착하는 질문이 있다. 과연 'right' 인터페이스는 무엇인가? 너무 광범위하고 철학적인 질문일 수도 있기에, 이를 몇 가지 경우로 축소해서 조금씩 그 정의를 구축할 수 있으리라 본다.
그래서, system pre-emptive 와 user pre-emptive 사이의 갈등관계에서만 살펴보더라도, 무엇이 right한 인터페이스인지 묻고 싶다.
☆ summary
7.1. introduction
- 주요 문제 중 하나 : 디자인 결정으로서 유저빌리티 결론 능력을 디자인에게 어떻게 제공하는가의 문제
=> 디자인 룰의 필요성
- 룰의 2개 차원
(1) 룰의 권위성 : 룰인지에 대한 파단 여부
(2) 룰의 일반성 : 룰의 적용 가능성 살펴보기
- 주변 개념
- 프린시플 : 추성적 디자인 룰, 일반성이 높고 권위성이 낮음
- 스탠다드 : 특정적 디자인 룰, 권위성이 높고 일반성이 낮음
- 가이드라인 : 권위성이 낮고, 일반성이 높음
- 디자인 룰은 관습적으로 심리학, 인지학, 어고노믹스, 사회학, 경제학, 컴퓨터공학에 적용됨
+ 프린시플
- 문제영역의 심리학적, 컴퓨터 공학적, 사회학적 양상에 대한 지식으로부터 분리
- 기술과 매우 많은 부분에서 독립적
- 인터랙션에 있어 인간요소에 보다 의존적
- 보다 넓게 적용되고, 특적 디자인 충고에는 비유용
+ 가이드라인
- 덜 추상적이고 테크놀로지 기반적
+ 스탠다드
- 권위가 매우 높은 수준에 이르기 때문에, 근본적으로 이론이 옭고(correct) 건전하게(sound) 함
7.2. principle to support usability
- 가장 추상적 디자인룰
- 인터랙티브 시스템에서는 유저빌리티를 생성시키기위해 적용가능
- 패러다임과 연관해서는, 왜 패러다임이 성공하는지, 언제 패러다임이 성공하지 못하는지,에 대한 설명가능
- 3개의 주요 카테고리
- learnability : 새로운 사용자에게 효과적인 인터랙션을 시작할 수 있고, 최고수준의 퍼퍼먼스를 수행할 수 있는 용이성
- flexibility : 사용자와 시스템이 정보를 교환하는 방식의 다중성(multiplicity)
- robustness : 사용자가 성공적인 수행(acivement)과 목표에의 접근을 결정하는데, 제공하는 서포트의 수준
7.2.1. learnability
predictability
- 정의 : 인터랙션 역사에 대한 사용자의 지식이 미래 인터랙션의 결과를 결정하는데 효과적이라는 의미
- 사용자 중심개념 : 컴퓨터 시스템 자체의 결정론적인 행동과는 구분된다. 즉, predictability는 사용자 관점으로서의 결정론적인 행동이다.
- predictability 개념은 시스템에서 오퍼레이션의 효과를 결정하는 사용자의 능력을 다룬다. 즉, 수행(perform)될 수 잇는 오퍼레이션을 아는 사용자의 능력과 연관한다.
=> opertion visibility : 다음에 수행될 수 있는 오퍼레이션의 능력이 사용자에게 보여지는 방식
=> 인간에게 잇어, recall 보다 recognition이 우월하다는 것을 증명
synthesizability
- 정의 : 현재 상태에서 과거 오퍼레이션의 효과에 엑세스하는 사용자의 능력
- 필요이유 : 시스템 행동 모델을 formulate하기 위해서 이진 인터랙션 연속체에 접근하는 것이 사용자에게 중요하기 때문
- honesty : obserbavle하고 informative한 내부상태의 변화를 사용자 인터페이스로 제공하는 것
(1) immediately : 사용자에 의한 개시없이 나이간 인터랙션하는 상황
예. visual desktop interface
(2) evetually : 변화를 observable하게 명령하는 상황
예. command language interface
- enventually honesty의 단점 : 사용자가 변화를 찾는 것(look for)을 알아야 한다.
familiarity
- 많은 수의 어플리케이션 도메인을 통해 사용자의 wealth of experience 발생
- 원인/출처 :
(1) 실제세계에서의 인터랙션
(2) 다른 컴퓨터 시스템과의 인터랙션
- 인터랙티브 시스템의 familiarity 측정 : 사용자에게 존재하는 지식과 효과적 인터랙션을 위해 요구되는 지식 사이의 상호관계 측정
+ guessability
- familiarity는 시스템과의 초기 imprescion과 연관 (예. metaphor)
+ affordance
- 시각적 대상은 사용자에게 조작될 수 있는 방법을 제시
generalizability
- 정의 : 특정 인터랙션 행동을 (우연히 만나지 않은) 비슷한 상황으로 확대적용 시도
consistency 형식으로 보여질 수도
- 단일 어플리케이션 혹은 다양한 어플리케이션 사이에서 발생
예. cut, paste, copy
consistency
- 같은 상황 혹은 같은 업무 객체로부터 발생한 행동 내에서의 likeness와 연관
- 가장 많이 언급되는 principle
+ 다른 principle과의 연계성
- fimailiarity : 과거 실재세계 경험으로부터의 consistency
- generalizability : 동일 플랫폼의 어플리캐이션 혹은 동일 시스템에 대한 경험으로 부터의 consistency
=> 논쟁점 有 : consistency를 learnability, flexibility, robustness와 동급으로 취급해야 하는 것 아닌가?
- 시스템의 개념적 모델에서 행동의 의미라는 점에서, 인풋 표현 혹은 아웃풋 반응의 형식
7.2.2. flexibility
- 정의 : end-user와 시스템 사이에 정보를 교환하는 방식의 다양성
dialog innitiative
- 정의 : 어느 파트너(사용자, 시스템)가 먼저 다이알로그를 시작하는가가 중요
- 종류
- system pre-emptive : 시스템이 모든 다이알로그를 주도, 사용자는 요청정보에 대해 대담
- user pre-emptive : 사용자가 시스템에게 어떠한 액션을 취하는데 자유로움
=> 사용자의 관점에서, 전자는 flexibility 방해, 후자는 flexibility 긍정
- 최적의 모습 : 시스템을 선전하는 사용자의 능력을 최대화하고, 사용자를 선점하는 시스템의 능력을 최소화
=> 몇몇 경우에서 무지 필요
- 협동적 편집cooperative editing
- safety
- system pre-emptive의 단점 : 사용자가 시도했지만 아직 완성되지 않은 업무의 track을 잃을 수 있다.
=> 좋은 디자인으로 해결 가능
multi-threading
- 정의 : 한 번에 하나 이상의 업무를 서포트하는 인터랙션
- 종류
- concurrent : 분리된 업무에 속하는 정보를 동시에 커뮤니케이션 하는 것
- interleaned : 분리된 업무사이의 일시적 오버랩 허용. 즉, 어떤 급작스런 다이알로그가 주어지더라도 단일 업무로 한정 가능
- 다이알로그의 멀티양식(modality)는 multi-threaing과 연관
- multi-modal system의 2가지 특징
(1) 분리된 modalies가 단일 인풋 혹은 아웃풋 표현 형식으로 결합되는 방법에 대해 고려 가능
: multi channel은 가능하지만, 하나의 표현은 하나의 채널로 제한됨
예. 윈도우창을 ㅇ려기 위해, 3가지 표현 기능(마우스 클릭, 키보드, 명령어)
(2) 단일표현은 채널의 mixing에 의해 형성됨
예. 에러경고 : text message + audio beep
- 윈도우 시스템은 자연스럽게 interleaded한 multi-thread 다이알로그 지원
- multi-modal 다이알로그는 동시적 multi-threading 허용
task migratability
- 정의 : 시스템과 상요자 사이 업무 실행 제어의 이동성(transfer) 고려
예. spell-checking, safety-critical application
substitutivity
- 동등한 value가 서로를 대리할 수 있을 때 필요
=> 사용자의 머릿 속에서 불필요한 계산을 피함으로써, substitutivity는 사용자 에러들과 인지적 노력을 최소화할 수 있다.
- representation multiplicity : flexibility를 렌더릴 상태로 묘사
예. 온도계의 다양한 presentation (시간별, 온도별)
=> 사용자는 현재 업무에 적당한 representation을 자유롭게 고려 가능
- equal opportunity : 인터페이스에서 인풋과 아웃풋 사이를 흐림
예. 스프레드시트에서 입력값과 결과값을 반대로 입력하는 경우
=> equal opportunity는 시스템이 사용자에 대해 선도적이 않다는 것을 함축
customizability
- 정의 : 사용자 혹은 시스템에 의해 사용자인터페이스의 modifiability
+ 종류
- adaptability = user-initiated modification
- adaptivity = system-initiated modification
+ adaptability
- 정의 : 인풋과 아웃풋 형식을 조정하는(adjust) 사용자의 능력
- 매우 제한적(스크린 위 소프트버튼 포지션 조정, 명령 이름을 수정)
- lexical customization
+ adaptivity
- 정의 : 시스템의 사용자 인터페이스에 대한 자동적 customization
+ adaptability 와 adaptivity 의 차이
- adaptability : 사용자가 명백한 역할에서 play
- adaptivity : 사용자가 불명확한 역할에서 play
7.2.3. robustness
인터랙션 robustness
- 역할 : 목표에의 접근과 성공적인 성취(acivement)를 서포트하는 성질들을 커버
observability
- 정의 : 사용자가 시스템의 내부 상태를 평가할 수 있도록 함
- 수단 : 인터페이스에서 인지가능한 표현(representation)
+ 5가지 다른 성질과 연관
- browsability : 사용자가 인터페이스에서 제공되는 제한적 시각(view)을 통해 현재 시스템의 내부적 상태를 탐험하도록 함
- default : passive recall을 통해 사용자를 도움 (예. 질문에 대해서 '추천된' 반응들)
인풋값의 수를 감소시켜서, cornor를 사전에 방지하는 매커니즘
- 종류
- statio : 세션 내 전개되지 않음
- dynamic : 세션 동안 전개
- reachability : observable 시스템 상태를 통하는 네비게이션의 가능성
사용자는 어떤 상태이든지로부터 어떤 상태이로든지까지 네비게이션 가능
시스템의 recoverability에 영양 끼침
rechability의 수준은 flexibility에 영향끼침
- persistence : 커뮤니케이션 해동의 효과와 그 행동 효과를 사용하려는 사용자의 능력에 대한 길이(duration)
recoverability
- 정의 : 이전 인터랙션에서의 약간의 에러에 대한 인지(recognition)이후, 욕구된(desired) 목표에 도달하려는 으력
+ 종류
- forward error recovery : 현상태의 수용과 현상태에서 욕구된 상태를 향하는 negotiation
- backward error recovery : 진행하기 이 전에 앞선 상태로 돌아가기 위해, 이전 인터랙션 효과를 언상으로 되돌리려는 시도
+ 시스템 혹은 사용자에 의해 초기화 가능
- 시스템에 의해 초기화 될 때 : 소프트웨어 엔지니어링 모든 주제와 연관, 시스템 기능성과 연관
- 사용자에 의해 초기화 될 대 : 사용자의 recovery 행동의도에 의해 결정 -> forward/backwad와 연관
+ rechability와 연관 : 바라지 않는 상태에서 바라는 상태로 이를 때, block되는 것을 사용자가 원치 않기 때문
responsiveness
- 정의 : 시스템과 사용자 사이의 커뮤니케이션 비율 측정
- 반응시간이란 ? 사용자에게 상태변화를 표현하기 위해 시스템에 의해 필요한 시간 길이(duration)
=> 일반적으로 짧은 duration과 instaneous 반응 시간을 원함
task conformance
- 정의
(1) 시스템이 관심있는 모든 종류의 task를 서포트 하는지,
(2) 시스템이 사용자가 원하는 대로 이 task를 서포트하는지,
- task completeness -> coverage issue
- task adquacy -> task에 대한 사용자의 이해도
- task conformance 논의에 대한 뿌리 : 직접조작 인터페이스의 성공에 대한 이해의 시도에 뿌리르 둠
7.3. standards
- 정의 : 큰 커뮤니티의 디자인 룰
- 스탠다드의 적용점 : 하드웨어와 소프트웨어 => 디자인 스탠다드의 이용성에 영향끼침
- 기본적 이론
- 하드웨어는 심리학 혹은 어고노믹스/인간요소의 기본에 기반 -> 하드웨어 스펙에 직접적으로 연관
- 소프트웨어는 심리학, 인지과학에 기반 -> 보다 분명치 않게 언급됨
- 변화점
- 하드웨어는 안정적
- 소프트웨어는 변화적
+ 역사
- 초기 협회는 소프트웨어보다 하드웨어에 대한 스탠다드가 多
- 점점 소프트웨어 스탠다느 증가
+ ISO 스탠다드 9241
- 유저빌리티 스펙에 부속
- 하드웨어와 소프트웨어 모두에 적용
- 유저빌리티 정의 : usability, effectiveness, effeciency, satisfaction
- 역할 : 유저빌리티에 대한 명확한 측정 묘사의 수단 제공
- 장점 : 권위성 즉, 커뮤니티에 계속 머무르도록 하는 능력 -> 권위는 관습으로 획득됨
7.4. Guidelines
- 인터랙티브 소프트웨어 디자인 이론의 불완전성으로 인한 권위적이고 특정적인 스탠다드 생산 어려움 봉착
-> 그결과, 인터랙티브 시스템 디자인 룰 대부분이 개인적이고 추천적인 일반적 가이드라인 수준
- 가이드라인이 추상적일수록, 가이드라인은 프린시플을 닮아가고 -> 스펙의 요ㅣ구에 맞는 방향으로 나아감
- 가이드라인이 특정적일수록, 가이드라인은 디테일 디자인에 적합하게 됨
7.5. golden rules and heuristics
7.5.1. Shneiderman`s eight golden rules of interface design
- consistency를 살려라
- 사용자가 숏컷을 자주 사용할 수 있도록 하라
- 정보적 피드백을 제공하라
- 실제와 가깝게 다이알로그를 디자인하라
- 에러 방지와 간단한 에러 다루는 것을 제공하라
- 행동에 대한 간단한 반전을 제한하라
- 제어하는 내적인 현장을 서포트하라
- STM 로드를 줄여라
7.5.3. Norman’s seven principles for transforming difficult tasks into simple ones
- 세계의 지식과 머릿속 지식 모두를 사용하라
- 업무의 구조를 단순화해라
- 눈에보이게 만들어라
- 파워를 늘려라
- 에러를 위한 디자인을 하라
- 실패하는 모든 것은 스탠다드화하라
7.6. HCI patterns
- 정의 : 성공적인 디자인의 근본적 디테일을 추상화하는 지식을 재사용하고 캡쳐하는 접근
특정 컨텍스트 내에서 재발하는 문제에 대한 솔루션
8.1. Introduction
+ 본 챕터의 주제 : 인터랙티브 시스템의 구현을 위해 제공되는 프롸그램 지원에 대해 논의 할 것
- programming support tool은 현재의 표현적이지 못한 수준의 executable language를 프로그래머가 보다 상위 레벨에서 직접적으로 응용의 interaction object들을 이용해 코딩할 수 있도록 해 준다.
- 여기서 강조하는 것은 어떻게 필수적인 하드웨어 소프트웨어 서비스 위해 추상화 레벨을 구축하는가 이다.
8.2. Elements of Wondowing System
Windowing system :
- 현대(modern) WIMP 인터페이스의 기본(foundation)
- 프로그래머를 위한 천연그대로(crude) 수준의 추상(abstraction)
- 프로그래머로 하여금 기기 독립성과 멀티플 어플리케이션 제어를 갖을 수 있도록 함
- 어플리케이션 아이알로그와 프리젠테이션에 대해 분리된 제어 수단을 제공하지는 않음
+ 역할 : 프로그래머를 하드웨어 디바이스 특정부분으로 부터 독립화
- 프로그램이 업무를 보다 쉽게
- 어플리케이션 프로그램의 이동성을 가능하게
+ 제공하는 것
- 프로그래밍의 특정부분을 하드웨어 디바이스로부터 분리
- 다양하고 독립적이지만 동시적으로 액티브한 어플리케이션을 관리
8.2.1. Architectures of windowing systems
+ 분리된 어플리케이션의 이동성 감소
- OS의 커널 내에서 관리 역할을 구현
- 분리된 어플리케이션으로서 관리 역할을 구현 = 클라이언트 서버 아키텍쳐
- 인터페이스를 다른 모든 OS를 관통하는 어플리케이션 프로그램에 제공
- X window system은 네트워크 프로토콜에 기반
- 윈도우 관리자 : 인풋/아웃풋 리퀘스트사이의 갈등을 해결
- ICCCM(인터-클라이언트 커뮤니케이션 컨벤션 메뉴얼) : 다양한 정책 이슈를 위한 관습 제공
8.3. Programming the Application
- Interactive application = 사용자 주도적
+ Read-evaluation loop
- 제어 흐름이 어플리케이션 프로그램 자체에 내재적
- 이벤트 프로세싱에 대한 완전한 제어
- 프로그래머는 클라이언트가 받을 예정인 가능한 모든 이벤트에 대해 제어 실행해야만 함
+ Notification based
- 어플리케이션 내에 존재하지 않은 이벤트 프로세싱을 위한 주요 제어 루핑
8.4. Using toolkits
+ WIMP 인터페이스의 주요 특징
- 디스플레이 스크린에 독립적으로 링크된 인풋/아웃풋 행동
- 가상 커서의 움직임을 통해 사용자 스스로가 실제 움직인다고 느낌
- 환영은 사용자에게 그 대상들과 하나라는 느낌을 야기
+ 툴킷(Toolkits)
- 환영을 창조하기 위해 어플리케이션 프로그램에서 많은 노력 필요
- 프로그래머에게 인풋과 아웃풋에 초점을 맞출 수 있도록 도움
- 프로그래머에게 이미 만들어진 인터랙션 오브젝트를 제공
+ 툴킷을 가진 프로그래밍의 잇점
- 인풋 형식과 아웃풋 형식 사이의 consistency를 강화
- look and feel이 좋음
8.5. User Interface Management Systems
+ UIMS
- 정의 : 툴킷 수준을 넘어선 인터랙티브 시스템을 위한 다른 수준의 서비스를 더하기위 제안된, 디자인 테크닉과 프로그램밍
- 주요 내용
- 인터랙티브 시스템의 구조를 위한 개념적 아키텍쳐
- 어플리케이션과 프리젠테이션의 분리를 구현하기 위한 테크닉
- 실시간 인터랙티브 환경을 평가하고 구현하고 관리하기 위한 테크닉 보조
8.5.1. UIMS as a conceptual architecture
+ 어플리케이션과 인터페이스 사이의 분리
=> 어플리케이션과 인터페이스를 제어하는 다이알로그로서 커뮤니케이션의 역할
- 인터랙티브 시스템의 3개 주요 구성요소
- 어플리케이션
- 프리젠테이션
- 다이알로그 제어
HCI-HW : 5. Interaction design basic
HCI-HW : 5. Interaction design basic
★ finding
Q1. 참여 디자인의 경우, 엔드유저를 다자인 팀에 포함시킨다. 반면 보통 디자인 작업의 경우, 디자이너가 참여자의 입장이 되는 것을 회피한다. 방법론 탐색에 있어 디자이너와 엔드유저를 구분지을 수 있는 보다 명확한 기준점은 무엇일까?
Q2-1. 생산성과 미학성 사이의 관계가 충돌할 때, 생산성을 우선시 해야하는 제품 혹은 기능은 무엇일까? 반대로 미학성을 먼저 고려해야 하는 제품 혹은 기능은 무엇일까?
Q2-2. 모더디즘 미학에서는 '기능이 미'라고 단언했다. 그리고 포스트모더니즘 시대에 이르러 '미의 과잉'이 이뤄지고 있다. 오늘날 HCI적 관점에서는 '기능주의'가 '미중심주의'보다 massive한 듯 하다. (MS의 OS가 Mac의 OS보다 널리 통용되는 사실, 기능의 최정점인 google의 첫 페이지 디자인 등) 그러면, 만약 HCI의 흐름도 예술 일반이 걸어온 길을 따라 간다면, 실제로도 기능 자체 보다는 최근 감성적, 예술적 디자인에 대한 욕구가 HCI에서도 눈에 띄는 듯 하는데, 만약 그러면, '미 중심적' HCI 디자인의 모습은 무엇일까? 어떤 사이트를 미중심적 사이트라고 할 수 있을까?
Q3. 중국 / 프랑스와 같은 나라는 자신의 언어를 중요시하여, 영어를 자국의 언어로 변환하여 사용한다. 이처럼, 각 나라 마다 대표적인 인터페이스라 할 수 있는 언어에 대해서도 다른 관점을 갖는다. 이는 결국, 인터페이스의 '직관성 VS 교육성'의 문제이다.
Q4. 아키텍쳐가 다지인의 골격을 짠다면, 에스테틱스는 디자인에 살을 붙이는 과정이다. HCI의 에스테틱스적 측면은 무엇인가?
Q5. 게임도 하나의 소프트웨어라고 한다면, (소프트웨어의 광의적 의미를 적용한다면), NEXON 민용재 이사의 다음과 같은 말은 의미심장하다. 앞으로 게임 시장에서 비지니스를 하려면, 과거 PC방 유료화에서 아이템의 유료화로 비지니스 패러다임이 넘어갔듯이, 이제는 아이템을 무료로 풀어주고, 메인트넌스의 유료화로 이행해야하지 않을까 생각합니다. 이는 앞으로 소프트웨어를 직접 파는 것이 아니라, 메인트넌스를 관리하면서 '비지니스적 가치'를 창출한다는 의미이다. 그러면, 그 그 구체적인 방법은 무엇일까? 아니면, 아직 알려지지는 않았으나 이미 시도되고 있는 방버은 무엇인가?
★ summary
5.1. Introductiion
+ HCI의 많은 부분은 (1) doing things (2) making things이다. 이는 design이다.
+ 이 챕터의 주제 : 인터랙션 디자인
(1) 인터랙티브 시스템의 디자인
(2) 인터랙션 그 자체
+ 인터랙션 디자인은
물리적 디바이스와 컴퓨터 프로그램이 사람들의 일에 영향을 끼치는 방식에 대해 선택하고 이해하는 것
=> 때문에, 시스템 인공물을 디자인하는 것이 아니라, 조정/중재(intervention)을 디자인하는 것
5.2. What tis design?
+ 디자인에 대한 간단 정의 : 강제/구속(constraint) 내에서 목표(goal)을 성취하는 것
+ 목표
- 디자인의 목적은 무엇? 누구를 위한 디자인? 그들이 그것을 원하는 이유는?
+ 강제/구속(constraint)
- 어떤 material을 사용해야하는가? 비요은? 소요시간은?
+ 교환/거래/균형(trade-off)
5.2.1. the golden rule of design
- 특정 디자인 문제의 환경(circumstance)와 콘텍스트 이해하기 요구
- 생산한 디자인은 달라도, raw material은 동일 => golden rule of design
예. 나무 재질 의자와 철재 의자의 차이
+ HCI에서 materials : computer & human
- computer : 한계, 능력, 도구, 플랫폿에 대해 이해하기
- human : 심리학, 사회적인 면, 인간에러에 대해 이해하기
5.2.2. To err is human
+ human error = operator error
: 이는 human interface의 installation과 디자인에 내재적이다.
-> 나쁜 인터페이스는 사용하는데 에러를 일으키기 쉽거나, 속도가 느리다.
-> 그 결과 높은 사용비를 요구한다.
+ mistake는 인간의 본성
+ 시스템은 (1) mistake를 줄이도록 디자인되고, (2) mistake가 발생했을 때, 이를 최소화하도록 디자인해야 한다.
+ 스트레스 상황에서는 arcane하고 inconsistence한 인터페이스가 errors를 발생시킨다.
5.2.3. the central massage - the user
- 방법(method), 모델(model), 특정 테크놀로지, 기본적 심리학에 대한 정보보다 중요한 한 가지는,
태도(attitude)이다.
: 사용자의 입장에 있는 디자이너의 마음 = 인터랙션 다자인의 핵심
5.3. the process of design
+ requirement - what is wanted
- 정의 : 요구되어지는 것(needed)이 무엇인가
- 방법 : 인터뷰, 비디오테입기록, 일할 때 사용되는 문서/물건 관찰, 사람들을 직접적으로 관찰
=> ethnography 대표적 관찰의 형식
+ analysis
- 정의 : 관찰과 인터뷰의 결과는 몇몇 방법으로 정리
- 목적 : key issue 드러내기 / design할 때 커뮤니케이트를 위한 사전 작업
- 대표방법 : 시나리오 (상황 그 자체를 묘사 / 욕구된desired 상황을 묘사)
+ design
: 수 많은 규칙(rules), 가이드라인, 법칙(principles) 존재
+ iteration and prototyping
- 인간은 복잡한 존재이기 때문에 디자인 평가가 필요
- 종이를 이용한 평가방식은 불편하기에 프로토타입 형식 요구
- 프로토타입 : 실제 사용자에게 시도해보는 초기 버전의 시스템
+ implementation and deployment
- 좋은 디자인에 안착하면, 구체화(implementation)와 표명화(deployment)가 필요
5.4. user foces
+ 첫 번째 원칙 : know your user
- 과거 : 단일 사용자에게 포커스
- 현재 : 단일 사용자 너머로 관심을 두기 시작
+ stakeholder : 시스템에 의해 직간접적으로 영향 받는 사람들
+ know your user를 위한 방법
+ 그들은 누구인가 who are they : 시스템과 컨텍스트에 대한 계속적인 이해를 바탕으로 누가 사용자인지 끊임없지 질문
+ 아마도 당신은 아니다 probably not like you : 디자이너 자신의 관점에서의 디자인을 경계할 필요성 有
+ 그들에게 얘기하라 talk to them
- 직접적으로 사용자에게 질문 던지기 (구조화된 인터뷰, 열린 마음의 토론 등)
- 대표적 예 : 참여 디자인(participatory design)
+ 그들을 봐라 watch them : 사람들이 말하는 것을 듣는 것처럼, 사람들이 하는 것을 보는 것이 중요
+ 당신의 상상력을 사용해라 use your imagination
- 병원 컨설턴트와 같이 시간이 걸리는 작업이나 비용이 드는 작업 또는 웹과 같이 너무 많은 대상을 상대로 하는 방법
- 사용자의 입장에서 "당신이" 할 것이 아니라, 사용자의 입에서 "그들이" 할 것을 상상
- 대표적 방법 = 페르소나 : 핵심 사용자 그룹을 대표하는 사람에 대한 상상을 풍부하게 그려보는 작업
5.5. scenarios
+ 정의 : 디자인을 위한 스토리 즉, 인터랙션 스토리
+ 특징 :
- 가장 단순한 디자인 프리젠테이션(presentation) , 가장 flexibla하고 powerful한 방법 중 하나
- 물리적인 인공물을 포함하는 디자인의 경우, 시나리오는 사용자의 잠재적 패턴에서의 행동을 기록
- 실제로 발생하기 이전에의 잠재적 문제점과 디테일을 알기 용이
+ 사용처
- 다른 사람들(디자이너, 클라이언트, 사용자 등) 과의 커뮤니케이션을 위해
- 다른 모델을 입증하기 위해
- 역동성을 표현하기 위해
+ 시나리오 방법의 선형성
- 장점 : 시간의 선형성, 우리는 스토리텔로로서 스토리리스너로서 선형적 이야기에 익숙
- 단점 : 대안의 부재, 인터랙션은 선택인데, 시나리오는 대안적 길을 배제
5.6. navigation design
+ 컴퓨터 시스템과 인터랙팅하는 몇 가지 단계
- widget
- screen or windows
- navigation within the application
- enviroment
+ 구조(structure)에 대해 생각하기 : 각각의 단계는 고유의 구조(structure)를 가진다.
- local structure ; 하나의 스트림 혹은 페이지 살펴보기
- global structure : 사이트의 구조, 스크린들 사이의 움직임
5.6.1. local structure
- 대부분의 인터랙션은 목표-성취 행동(goal-seeking behavior)을 포함
- local structure의 정의 : 단일 페이지, 사이트에 일어나는 일들을 의미
+ 단일 페이지/사이트에서 목표-성취 행동을 취하기 위해 필요한 몇가지
- 당신이 어디있는지 알아라
- 당신이 할 수 있는 것을 알아라
- 당신이 어디로 가는지 혹은 무슨일이 벌어질지 알아라
- 당신이 어디에 있었는지 혹은 무엇을 했는지 알아라
5.6.2. global structure - hierarchical organization
+ global structure : 다양한 스크린들, 페이지들 혹은 서로 연결된 디바이스들에 대한 방법론
+ 위계 구조적 형식의 시스템 : 논리적 그루핑에 기반, 정보 분류(sort)의 어려움, 네비게인션의 난이성 有
5.6.3. global structure - dialog
+ 원칙적 상태 혹은 화살표로 서로 링크된 스크린을 보여주는 네트워크 다이어그램의 특징
- 무엇에서 무엇으로 유도(lead)되는지 보여준다.
- 언제 발생한 것인지 보여준다.
- 가지들(branches)와 반복(loop)를 포함한다.
- 위계서열보다 보다 업무지향적이다.
5.6.4. wider still
+ style issues : 어플리케이션 사이틔 지속성(consistency)에의 강화, PC 어플리케이션 메뉴를 위한 표지션과 같은 플렛폼 기준을 형성
+ funtional issues : PC 어플리케이션에서, 파일과의 인터랙션, 기준 포맷 읽기, 자르고 붙이기 다루기에 대한 이슈
+ navigation issues : 어플리케이션 사이의 링크에 대한 서포트 필요
5.7. Screen design and layout
5.7.1. tools for layout
crouping and structure : 서로 논리적으로 연계된 것은 물리적으로 서로 그룹짓는다.
order of group and items : 자연스러운 순서 혹은 특징적인 순서에 대해 고려해야 한다.
decoration : 보기에 좋은 요소를 포함시켜야 한다. (폰트 스타일 등)
alignment : 텍스트, 숫자, 멀티플 정렬 등에서 순서에 대한 고려가 필요하다.
white space : 흰 여백은 의미 전달에서 다양한 기능을 취하기에 중요하다.
5.7.2. User action and control
entering information : 형식 기반 인터페이스와 다이알로그 박스틑 가장 복잡하고 어려운 스크린 레이아웃이다.
knowing what to do : 몇몇 요소는 수동적, 다른 요소는 능동적인데, 이는 디자인 자체가 사용자에게 행동을 요구하는 것이다. (예. bold처리)
affordance : 사용자가 행동으로 표현할 수 있는 모양(shape)과 다른 속성에 의해 제안되어지는 것이 affordance로서, 이는 보다 훌륭한 다자인을 위해 중요하다.
5.7.3. appropriate appearance
pressing information
- 정보 표현 방법은 정보의 종류(텍스트, 숫자, 지도, 테이블 등) 에 기인한다.
- 인터랙션 디자인에서는 사용자가 몇몇 resentations에서 선택가능하기에 다양한 목표(goal)을 성취시킬 수 있다는 잇점을 갖는다.
aesthetics and utility
- 사용자의 만족을 증가시키는 디자인은 곧 생산성을 증진시키는 디자인이다.
- (하지만,) aesthetics과 utility는 계속적으로 갈등관계를 일으키고 있다.
making a mess of it : color and 3D :
- 컬러의 중요성 강조
- 3D 컬러의 증가는 텍스트와 숫자 정보에서 문제 발생
localization / internationalization
- 다른 언어사용과 문화지배에 의한 지역차 발생 = localization
- internationalization을 부추기는 HCI 디자인의 발생
5.8. iteration and prototyping
- 인간 상황의 복잡성과 디자이너의 불확실성 대문에 최초의 디자인은 ferfect하지 못하다.
-> 때문에, 모든 인터랙션 디자인은 아이디어의 iteration을 포함한다.
- 구체적 방법 : paper design, storyboard
- formative evaluation : 제품의 완성 되기 이전의 평가방법
- summative evaluation : 제품이 완성된 이후의 평가방법
6. HCI in the software process
6.1. introduction
- 성공적인 페러다임의 구체적 예를 통해 유저블한 인터랙티브 시스템의 야상을 알아 보려한ㄷ.
- 소프트웨어 엔지니어링
- 정의 : 소프트웨어 시스템 발전에서 경영적/테크닉적 이슈을 불러일으키는 컴퓨터공학의 큰 하위학제
- HCI와의 관계 : 소프트웨어 라이프 사이클의 모든 행동들과 관련한 인터랙티브 시스템의 사용성에 영향을 미친다.
6.2. the software life cycle
+ 소프트웨어 제품의 발전에거 2개의 주요 영역
- 소비자 : 제품의 사용을 필요로 한다.
- 클라이언트 소비자
- 최종 시스템 사용 소비자
- 디자이너 : 제품을 사용자에게 제공한다.
6.2.1. activities in the life cycle
requirements specification
- 정의 : 생산하기 위해 기대되는 최종 시스템은 무엇인지, 기대되는 서비스를 시스템은 어떻게 제공하는지에 대한 활동
- 시기 : 제품 발전의 초기 단계에서 시작
archtectural design
- 정의 : 시스템을 구성요소로 높은 수준으로 분해(decomposition) 하는 과정
detailed design
- 정의 : 후일 하나로 통합되기 이전에 , 각각의 구성요소는 세세한 디자인 작업이 필요
coding and unit testing
- 과정 : 실행가능한 프로그래밍 언어로의 구체화implementation
itergration and testing
- 과정 : 각각의 구성요소를 테스트 한 후, archtectural design에서 제시한 것 처럼 통합화 작업 요
maintenance
- 정의 : 제품 릴리즈 이후, ㅁ시스템의 모든 작업이 유지보수를 위해 카테고리화
6.2.2. validation and verification
- Validation : designing the right thing.
- Verification: designing the thing right.
6.2.3. Management and contractual issues
- lifecycle의 2가지 관점
- 테크닉적 관점 : 클라이언트와 디자이너 사이의 합의를 통한 계약 도출 -> 문제의 불씨 가능성
- 경영적 관점 : 시스템의 시장, 교육적 시장, 전문가의 활둉 등의 문제가 중요
6.2.4. interactive systems and the software life cycle
- 시대 변화에 따른 디자인의 관심 변화 有
6.3. usability engineering
+ 유저빌리티의 최종적 근거 = 사용자 경험
+ 측정 기준 : 제품의 물리적 요소, 시스템 전체의 기능적 구조, 사용자의 인지력 등
- 측정 방법 : now level, worst case, planned level, best case
6.3.1. problem with usability engineering
- 정의 : 특정 상황에서 특정 사용자의 행동 측정
- 특징 : 유저빌리티 자체보다는 유저빌리티 구체성을 만족시키는 수단
6.4. iterative design and prototyping
- 정의 : 디자인 프로세스에서 유저빌리티의 최적화라는 목적을 성취하기 위해 계속적인 피드백 과정을 거치는 과정
- 프로토파입의 3가지 : Throw-away, incremental, evolutionary
6.4.1. techniques for prototyping
+ storyboard : 가장 간단한 프로토타입으로서, 컴퓨터에 프로그래밍 언어나 그래픽으로 직접 구현하지 않아도 되는 장점을 갖는다.
+ limited functionlity simulation : 스토리보드보다는 보다 많은 기능을 추가하려 만든 시뮬레이션 프로토타임으로서, 보다 빠른 iteration이 가능하다는 장점을 갖는다.
+ High-level programming support : 대표적인 예로 hypertalk가 있는데, 디자이너가 인터랙티브 시스템의 확실한 특징을 프로그램 하기에 쉽다는 장점을 갖는다.
6.4.2. warning about iterative design
+ iterative 디자인의 문제점
- 디자인의 초기개념은 프로세스 전체 과정 중 초기에 진행하기 때문에, 이미 결정되면 복구의 어려움 발생
6.5. design rationale
+ 정의 : 컴퓨터의 원리에 대한 정보
★ finding
Q1. 참여 디자인의 경우, 엔드유저를 다자인 팀에 포함시킨다. 반면 보통 디자인 작업의 경우, 디자이너가 참여자의 입장이 되는 것을 회피한다. 방법론 탐색에 있어 디자이너와 엔드유저를 구분지을 수 있는 보다 명확한 기준점은 무엇일까?
Q2-1. 생산성과 미학성 사이의 관계가 충돌할 때, 생산성을 우선시 해야하는 제품 혹은 기능은 무엇일까? 반대로 미학성을 먼저 고려해야 하는 제품 혹은 기능은 무엇일까?
Q2-2. 모더디즘 미학에서는 '기능이 미'라고 단언했다. 그리고 포스트모더니즘 시대에 이르러 '미의 과잉'이 이뤄지고 있다. 오늘날 HCI적 관점에서는 '기능주의'가 '미중심주의'보다 massive한 듯 하다. (MS의 OS가 Mac의 OS보다 널리 통용되는 사실, 기능의 최정점인 google의 첫 페이지 디자인 등) 그러면, 만약 HCI의 흐름도 예술 일반이 걸어온 길을 따라 간다면, 실제로도 기능 자체 보다는 최근 감성적, 예술적 디자인에 대한 욕구가 HCI에서도 눈에 띄는 듯 하는데, 만약 그러면, '미 중심적' HCI 디자인의 모습은 무엇일까? 어떤 사이트를 미중심적 사이트라고 할 수 있을까?
Q3. 중국 / 프랑스와 같은 나라는 자신의 언어를 중요시하여, 영어를 자국의 언어로 변환하여 사용한다. 이처럼, 각 나라 마다 대표적인 인터페이스라 할 수 있는 언어에 대해서도 다른 관점을 갖는다. 이는 결국, 인터페이스의 '직관성 VS 교육성'의 문제이다.
Q4. 아키텍쳐가 다지인의 골격을 짠다면, 에스테틱스는 디자인에 살을 붙이는 과정이다. HCI의 에스테틱스적 측면은 무엇인가?
Q5. 게임도 하나의 소프트웨어라고 한다면, (소프트웨어의 광의적 의미를 적용한다면), NEXON 민용재 이사의 다음과 같은 말은 의미심장하다. 앞으로 게임 시장에서 비지니스를 하려면, 과거 PC방 유료화에서 아이템의 유료화로 비지니스 패러다임이 넘어갔듯이, 이제는 아이템을 무료로 풀어주고, 메인트넌스의 유료화로 이행해야하지 않을까 생각합니다. 이는 앞으로 소프트웨어를 직접 파는 것이 아니라, 메인트넌스를 관리하면서 '비지니스적 가치'를 창출한다는 의미이다. 그러면, 그 그 구체적인 방법은 무엇일까? 아니면, 아직 알려지지는 않았으나 이미 시도되고 있는 방버은 무엇인가?
★ summary
5.1. Introductiion
+ HCI의 많은 부분은 (1) doing things (2) making things이다. 이는 design이다.
+ 이 챕터의 주제 : 인터랙션 디자인
(1) 인터랙티브 시스템의 디자인
(2) 인터랙션 그 자체
+ 인터랙션 디자인은
물리적 디바이스와 컴퓨터 프로그램이 사람들의 일에 영향을 끼치는 방식에 대해 선택하고 이해하는 것
=> 때문에, 시스템 인공물을 디자인하는 것이 아니라, 조정/중재(intervention)을 디자인하는 것
5.2. What tis design?
+ 디자인에 대한 간단 정의 : 강제/구속(constraint) 내에서 목표(goal)을 성취하는 것
+ 목표
- 디자인의 목적은 무엇? 누구를 위한 디자인? 그들이 그것을 원하는 이유는?
+ 강제/구속(constraint)
- 어떤 material을 사용해야하는가? 비요은? 소요시간은?
+ 교환/거래/균형(trade-off)
5.2.1. the golden rule of design
- 특정 디자인 문제의 환경(circumstance)와 콘텍스트 이해하기 요구
- 생산한 디자인은 달라도, raw material은 동일 => golden rule of design
예. 나무 재질 의자와 철재 의자의 차이
+ HCI에서 materials : computer & human
- computer : 한계, 능력, 도구, 플랫폿에 대해 이해하기
- human : 심리학, 사회적인 면, 인간에러에 대해 이해하기
5.2.2. To err is human
+ human error = operator error
: 이는 human interface의 installation과 디자인에 내재적이다.
-> 나쁜 인터페이스는 사용하는데 에러를 일으키기 쉽거나, 속도가 느리다.
-> 그 결과 높은 사용비를 요구한다.
+ mistake는 인간의 본성
+ 시스템은 (1) mistake를 줄이도록 디자인되고, (2) mistake가 발생했을 때, 이를 최소화하도록 디자인해야 한다.
+ 스트레스 상황에서는 arcane하고 inconsistence한 인터페이스가 errors를 발생시킨다.
5.2.3. the central massage - the user
- 방법(method), 모델(model), 특정 테크놀로지, 기본적 심리학에 대한 정보보다 중요한 한 가지는,
태도(attitude)이다.
: 사용자의 입장에 있는 디자이너의 마음 = 인터랙션 다자인의 핵심
5.3. the process of design
+ requirement - what is wanted
- 정의 : 요구되어지는 것(needed)이 무엇인가
- 방법 : 인터뷰, 비디오테입기록, 일할 때 사용되는 문서/물건 관찰, 사람들을 직접적으로 관찰
=> ethnography 대표적 관찰의 형식
+ analysis
- 정의 : 관찰과 인터뷰의 결과는 몇몇 방법으로 정리
- 목적 : key issue 드러내기 / design할 때 커뮤니케이트를 위한 사전 작업
- 대표방법 : 시나리오 (상황 그 자체를 묘사 / 욕구된desired 상황을 묘사)
+ design
: 수 많은 규칙(rules), 가이드라인, 법칙(principles) 존재
+ iteration and prototyping
- 인간은 복잡한 존재이기 때문에 디자인 평가가 필요
- 종이를 이용한 평가방식은 불편하기에 프로토타입 형식 요구
- 프로토타입 : 실제 사용자에게 시도해보는 초기 버전의 시스템
+ implementation and deployment
- 좋은 디자인에 안착하면, 구체화(implementation)와 표명화(deployment)가 필요
5.4. user foces
+ 첫 번째 원칙 : know your user
- 과거 : 단일 사용자에게 포커스
- 현재 : 단일 사용자 너머로 관심을 두기 시작
+ stakeholder : 시스템에 의해 직간접적으로 영향 받는 사람들
+ know your user를 위한 방법
+ 그들은 누구인가 who are they : 시스템과 컨텍스트에 대한 계속적인 이해를 바탕으로 누가 사용자인지 끊임없지 질문
+ 아마도 당신은 아니다 probably not like you : 디자이너 자신의 관점에서의 디자인을 경계할 필요성 有
+ 그들에게 얘기하라 talk to them
- 직접적으로 사용자에게 질문 던지기 (구조화된 인터뷰, 열린 마음의 토론 등)
- 대표적 예 : 참여 디자인(participatory design)
+ 그들을 봐라 watch them : 사람들이 말하는 것을 듣는 것처럼, 사람들이 하는 것을 보는 것이 중요
+ 당신의 상상력을 사용해라 use your imagination
- 병원 컨설턴트와 같이 시간이 걸리는 작업이나 비용이 드는 작업 또는 웹과 같이 너무 많은 대상을 상대로 하는 방법
- 사용자의 입장에서 "당신이" 할 것이 아니라, 사용자의 입에서 "그들이" 할 것을 상상
- 대표적 방법 = 페르소나 : 핵심 사용자 그룹을 대표하는 사람에 대한 상상을 풍부하게 그려보는 작업
5.5. scenarios
+ 정의 : 디자인을 위한 스토리 즉, 인터랙션 스토리
+ 특징 :
- 가장 단순한 디자인 프리젠테이션(presentation) , 가장 flexibla하고 powerful한 방법 중 하나
- 물리적인 인공물을 포함하는 디자인의 경우, 시나리오는 사용자의 잠재적 패턴에서의 행동을 기록
- 실제로 발생하기 이전에의 잠재적 문제점과 디테일을 알기 용이
+ 사용처
- 다른 사람들(디자이너, 클라이언트, 사용자 등) 과의 커뮤니케이션을 위해
- 다른 모델을 입증하기 위해
- 역동성을 표현하기 위해
+ 시나리오 방법의 선형성
- 장점 : 시간의 선형성, 우리는 스토리텔로로서 스토리리스너로서 선형적 이야기에 익숙
- 단점 : 대안의 부재, 인터랙션은 선택인데, 시나리오는 대안적 길을 배제
5.6. navigation design
+ 컴퓨터 시스템과 인터랙팅하는 몇 가지 단계
- widget
- screen or windows
- navigation within the application
- enviroment
+ 구조(structure)에 대해 생각하기 : 각각의 단계는 고유의 구조(structure)를 가진다.
- local structure ; 하나의 스트림 혹은 페이지 살펴보기
- global structure : 사이트의 구조, 스크린들 사이의 움직임
5.6.1. local structure
- 대부분의 인터랙션은 목표-성취 행동(goal-seeking behavior)을 포함
- local structure의 정의 : 단일 페이지, 사이트에 일어나는 일들을 의미
+ 단일 페이지/사이트에서 목표-성취 행동을 취하기 위해 필요한 몇가지
- 당신이 어디있는지 알아라
- 당신이 할 수 있는 것을 알아라
- 당신이 어디로 가는지 혹은 무슨일이 벌어질지 알아라
- 당신이 어디에 있었는지 혹은 무엇을 했는지 알아라
5.6.2. global structure - hierarchical organization
+ global structure : 다양한 스크린들, 페이지들 혹은 서로 연결된 디바이스들에 대한 방법론
+ 위계 구조적 형식의 시스템 : 논리적 그루핑에 기반, 정보 분류(sort)의 어려움, 네비게인션의 난이성 有
5.6.3. global structure - dialog
+ 원칙적 상태 혹은 화살표로 서로 링크된 스크린을 보여주는 네트워크 다이어그램의 특징
- 무엇에서 무엇으로 유도(lead)되는지 보여준다.
- 언제 발생한 것인지 보여준다.
- 가지들(branches)와 반복(loop)를 포함한다.
- 위계서열보다 보다 업무지향적이다.
5.6.4. wider still
+ style issues : 어플리케이션 사이틔 지속성(consistency)에의 강화, PC 어플리케이션 메뉴를 위한 표지션과 같은 플렛폼 기준을 형성
+ funtional issues : PC 어플리케이션에서, 파일과의 인터랙션, 기준 포맷 읽기, 자르고 붙이기 다루기에 대한 이슈
+ navigation issues : 어플리케이션 사이의 링크에 대한 서포트 필요
5.7. Screen design and layout
5.7.1. tools for layout
crouping and structure : 서로 논리적으로 연계된 것은 물리적으로 서로 그룹짓는다.
order of group and items : 자연스러운 순서 혹은 특징적인 순서에 대해 고려해야 한다.
decoration : 보기에 좋은 요소를 포함시켜야 한다. (폰트 스타일 등)
alignment : 텍스트, 숫자, 멀티플 정렬 등에서 순서에 대한 고려가 필요하다.
white space : 흰 여백은 의미 전달에서 다양한 기능을 취하기에 중요하다.
5.7.2. User action and control
entering information : 형식 기반 인터페이스와 다이알로그 박스틑 가장 복잡하고 어려운 스크린 레이아웃이다.
knowing what to do : 몇몇 요소는 수동적, 다른 요소는 능동적인데, 이는 디자인 자체가 사용자에게 행동을 요구하는 것이다. (예. bold처리)
affordance : 사용자가 행동으로 표현할 수 있는 모양(shape)과 다른 속성에 의해 제안되어지는 것이 affordance로서, 이는 보다 훌륭한 다자인을 위해 중요하다.
5.7.3. appropriate appearance
pressing information
- 정보 표현 방법은 정보의 종류(텍스트, 숫자, 지도, 테이블 등) 에 기인한다.
- 인터랙션 디자인에서는 사용자가 몇몇 resentations에서 선택가능하기에 다양한 목표(goal)을 성취시킬 수 있다는 잇점을 갖는다.
aesthetics and utility
- 사용자의 만족을 증가시키는 디자인은 곧 생산성을 증진시키는 디자인이다.
- (하지만,) aesthetics과 utility는 계속적으로 갈등관계를 일으키고 있다.
making a mess of it : color and 3D :
- 컬러의 중요성 강조
- 3D 컬러의 증가는 텍스트와 숫자 정보에서 문제 발생
localization / internationalization
- 다른 언어사용과 문화지배에 의한 지역차 발생 = localization
- internationalization을 부추기는 HCI 디자인의 발생
5.8. iteration and prototyping
- 인간 상황의 복잡성과 디자이너의 불확실성 대문에 최초의 디자인은 ferfect하지 못하다.
-> 때문에, 모든 인터랙션 디자인은 아이디어의 iteration을 포함한다.
- 구체적 방법 : paper design, storyboard
- formative evaluation : 제품의 완성 되기 이전의 평가방법
- summative evaluation : 제품이 완성된 이후의 평가방법
6. HCI in the software process
6.1. introduction
- 성공적인 페러다임의 구체적 예를 통해 유저블한 인터랙티브 시스템의 야상을 알아 보려한ㄷ.
- 소프트웨어 엔지니어링
- 정의 : 소프트웨어 시스템 발전에서 경영적/테크닉적 이슈을 불러일으키는 컴퓨터공학의 큰 하위학제
- HCI와의 관계 : 소프트웨어 라이프 사이클의 모든 행동들과 관련한 인터랙티브 시스템의 사용성에 영향을 미친다.
6.2. the software life cycle
+ 소프트웨어 제품의 발전에거 2개의 주요 영역
- 소비자 : 제품의 사용을 필요로 한다.
- 클라이언트 소비자
- 최종 시스템 사용 소비자
- 디자이너 : 제품을 사용자에게 제공한다.
6.2.1. activities in the life cycle
requirements specification
- 정의 : 생산하기 위해 기대되는 최종 시스템은 무엇인지, 기대되는 서비스를 시스템은 어떻게 제공하는지에 대한 활동
- 시기 : 제품 발전의 초기 단계에서 시작
archtectural design
- 정의 : 시스템을 구성요소로 높은 수준으로 분해(decomposition) 하는 과정
detailed design
- 정의 : 후일 하나로 통합되기 이전에 , 각각의 구성요소는 세세한 디자인 작업이 필요
coding and unit testing
- 과정 : 실행가능한 프로그래밍 언어로의 구체화implementation
itergration and testing
- 과정 : 각각의 구성요소를 테스트 한 후, archtectural design에서 제시한 것 처럼 통합화 작업 요
maintenance
- 정의 : 제품 릴리즈 이후, ㅁ시스템의 모든 작업이 유지보수를 위해 카테고리화
6.2.2. validation and verification
- Validation : designing the right thing.
- Verification: designing the thing right.
6.2.3. Management and contractual issues
- lifecycle의 2가지 관점
- 테크닉적 관점 : 클라이언트와 디자이너 사이의 합의를 통한 계약 도출 -> 문제의 불씨 가능성
- 경영적 관점 : 시스템의 시장, 교육적 시장, 전문가의 활둉 등의 문제가 중요
6.2.4. interactive systems and the software life cycle
- 시대 변화에 따른 디자인의 관심 변화 有
6.3. usability engineering
+ 유저빌리티의 최종적 근거 = 사용자 경험
+ 측정 기준 : 제품의 물리적 요소, 시스템 전체의 기능적 구조, 사용자의 인지력 등
- 측정 방법 : now level, worst case, planned level, best case
6.3.1. problem with usability engineering
- 정의 : 특정 상황에서 특정 사용자의 행동 측정
- 특징 : 유저빌리티 자체보다는 유저빌리티 구체성을 만족시키는 수단
6.4. iterative design and prototyping
- 정의 : 디자인 프로세스에서 유저빌리티의 최적화라는 목적을 성취하기 위해 계속적인 피드백 과정을 거치는 과정
- 프로토파입의 3가지 : Throw-away, incremental, evolutionary
6.4.1. techniques for prototyping
+ storyboard : 가장 간단한 프로토타입으로서, 컴퓨터에 프로그래밍 언어나 그래픽으로 직접 구현하지 않아도 되는 장점을 갖는다.
+ limited functionlity simulation : 스토리보드보다는 보다 많은 기능을 추가하려 만든 시뮬레이션 프로토타임으로서, 보다 빠른 iteration이 가능하다는 장점을 갖는다.
+ High-level programming support : 대표적인 예로 hypertalk가 있는데, 디자이너가 인터랙티브 시스템의 확실한 특징을 프로그램 하기에 쉽다는 장점을 갖는다.
6.4.2. warning about iterative design
+ iterative 디자인의 문제점
- 디자인의 초기개념은 프로세스 전체 과정 중 초기에 진행하기 때문에, 이미 결정되면 복구의 어려움 발생
6.5. design rationale
+ 정의 : 컴퓨터의 원리에 대한 정보
2009년 8월 20일 목요일
세미나 : Eye Tracking 06 (090804)
최근 사용자 행동을 연구하기 위한 방법으로 Eye Tracking에 대한 관심이 점차 증가하고 있습니다. 이에 디지털정보융합과에서는 국내 최고의 User Research 컨설팅 업체인 Thinkuser를 초청하여 Eye Tracking에 관한 세미나를 진행했습니다.
이번 세미나는 Eye Tracking 연구 방법의 이해 및 User Research에서의 활용 방안의 소개로 이루어지며, 직접 시연을 통한 Eye Tracking을 경험할 수 있는 자리가 될 것입니다. User Research나 Eye Tracking에 관심 있는 분들에게는 유용한 자료가 될 수 있으리라 봅니다.
피드 구독하기:
글 (Atom)