제9부: 제품 제작 절차

글 : Joel Spolsky

번역 : ?AhnLab

2000년 5월 9일 화요일

지금까지 좋은 설계의 원칙에 대해 이야기하였다. 그러나 이것은 모두 기존 설계를 평가하고 향상시키기 위한 방법을 제시해 주는 것들이다. 그렇다면 도대체 처음에는 어떻게 설계를 해야 하는가? 대부분의 사람들은 생각할 수 있는 모든 기능 및 특성에 대한 큰 그림을 그리는 것이 우선이라고 한다. 그리고 나서 각각 세부적인 것을 설계하고 메뉴 아이템(또는 웹 페이지)에서 제거하는 하는 단계를 거친다. 이 작업이 완성되면 프로그램 (또는 웹 사이트)은 원하는 모든 기능을 갖게 된다. 그러나 이는 옳은 절차가 아니다. 사용자들은 그러한 프로그램이 무엇을 하는지, 어떠한 방법으로 자신이 원하는 것을 성취할 수 있도록 하는지 알지 못한다.

제8부: 바쁜 사용자들에게 어필하는 설계 – 3

글 : Joel Spolsky

 

번역 : ?AhnLab

 

2000년 5월 8일

 

GUI의 초기 원칙 중 하나는 사람들에게 컴퓨터가 기억할 수 있는 것은 기억하지 않아도 되도록 하라는 것이었다. 그 대표적인 예가 바로 Open File 대화박스이다. Open File 대화박스는 사용자에게 정확하게 파일 이름을 기억해 입력하는 것을 요구하는 대신 모든 파일의 목록을 보여준다. 사람들은 단서를 줄 때 사물을 더 잘 기억하며, 기억하기 보다는 리스트를 보고 선택하는 것을 더 좋아한다.

 

또 다른 예로 메뉴를 들 수 있다. 현재, 사용 가능한 명령어의 완벽한 메뉴를 제공하는 방법이 기존의 명령어 라인(command-line) 인터페이스를 대체하였다. 기존 방법에서는 사용자가 사용하고자 하는 명령어를 기억해야만 했다. 이는 UNIX를

제7부: 바쁜 사용자들에게 어필하는 설계 – 2

글 : Joel Spolsky

 

번역 : ?AhnLab

 

2000년 4월 27일 목요일

 

Bruce “Tog” Tognazzini (이하 Tog)는 애플 개발자 잡지에 UI에 대한 칼럼을 기고했다. 그의 글에는 많은 사람들이 지적하고 있는 UI 디자인 상의 문제점이 흥미롭게 기술되어 있다. 이러한 칼럼은 Tog의 웹사이트에 현재까지 실려 있으며, 나중에 집대성되어 Tong on Software Design과 같은 위대한 책에 실리게 되었다. Tog on Software Design은 UI 디자인에 대한 위대한 개론서로 상황을 흥미롭게 기술하고 있다 (Tong on Interface란 책이 더 훌륭하지만, 이 책은 지금 절판된 상태다).

 

Tog은 mile high menu bar 개념의 창시자로, 이를 통해 화면의 상단에 항상 붙어 있는 매킨토시의 메뉴 바가

제6부: 바쁜 사용자들에게 어필하는 설계 – 1

글 : Joel Spolsky

 

번역 : ?AhnLab

 

2000년 4월 26일 수요일

 

사용자 인터페이스 설계시, 다음과 같은 두 개 원칙을 명심하는 것이 좋다.

 

사용자는 사용설명서가 없으며, 있더라도 읽지 않는다. 사실 사용자는 아무 것도 읽을 수 없으며, 읽을 수 있더라도 읽지 않을 것이다. 엄격하게 말하자면 이것들은 사실이 아니지만 이것들이 사실인 것처럼 행동해야 한다. 왜냐하면 그렇게 하면 프로그램 사용시 좀 더 용이하면 친근한 느낌을 주게 되기 때문이다. 이러한 생각을 염두에 두고 설계를 하는 경우 사용자존중이라는 말을 쓰는데 이 말은 사용자에 대해 그다지 존중하지 않는다는 것을 의미한다. 혼동된다면 지금부터 설명하겠다.

 

사용을 용이하게하다라는 말의 뜻은 무엇인가? 이 용이성을 측정할

제5부: 일관성과 불규칙성(Hobgoblins)

글 : Joel Spolsky

 

번역 : ?AhnLab

 

2000년 4월 22일 토요일

 

마이크로소프트 오피스 슈트의 주요 프로그램인 워드 및 엑셀은 마이크로소프트사 내부에서 개발됐지만 다른 제품들은 다른 회사에서 구매한 것으로, 가장 잘 알려진 예가 FrontPage(Vermeer로부터 구입)와 Visio(Visio에서 구입)이다. 이 두 프로그램 사이에 공통점이 있을까? 두 가지 모두 마이크로소프트 오피스 응용프로그램처럼 보이고 느껴지도록 설계되었다는 점이다.

 

오피스 UI를 모방하기로 결정한 이유는 단순히 마이크로소프트에 “흡수”되기 위한 것이었거나 마이크로소프트사에 판매를 원했기 때문이 아니다. 실제로, FrontPage를 개발한 Charles Ferguson은 마이크로소프트사에 대한 반감을 주저하지 않고 털어놓았고 (자신의 회사를 Redmond Beasties에 팔기 전까지) 미 법무부에 Redmond Beasties에 대해 조치를 취해달라고 계속해서 항의했었다(회사를

제4부: 제공성(Affordances)과 메터퍼(metaphor)

글 : Joel Spolsky

 

번역 :

 

2000년 4월 18일 화요일

 

프로그램 모델과 사용자 모델이 일치하는 사용자 인터페이스 개발은 쉽지 않다. 때때로, 사용자들이 프로그램이 어떻게 작동하는지 무슨 작업을 하도록 되어 있는지에 대한 기대가 뚜렷하지 않을수도 있다. 이런 경우, 프로그램이 어떻게 작동하는지에 대해 사용자들에게 설명해 줄 수 있는 방법을 찾아야 한다. 그래픽 인터페이스를 사용하는 경우, 이러한 문제를 해결하는 일반적인 방법은 메터퍼(metaphors) 사용이다. 하지만 모든 메터퍼가 동일하게 생성되는 것은 아니고, 왜 메터퍼 사용으로 인해 문제가 해결되는지 이해하는 것이 중요하고 따라서 양호한 메터퍼가 있는지 아는 것이 중요하다.

 

가장 유명한 메터퍼는 윈도우 및 매킨토시에서 사용하는 “데스크톱 메터퍼”이다. 작은 폴더 내에 작은

제3부: 선택

글 : Joel Spolsky

 

번역 : ?AhnLab

 

2000년 4월 12일 수요일

 

어떤 레스토랑에 들어가다 입구에서 “애완견 출입 금지”라는 표지판을 봤다면, 여러분은 그저 이 문구가 금지의 뜻만 전하고 있다고 생각할지도 모른다. ‘아, 레스토랑 씨는 개를 별로 좋아하지 않나 보군. 그러니까 자기가 지은 레스토랑에는 개를 들이지 않겠다는 거겠지’ 라고 말이다.

 

만약 그것이 전부라면, 거기에는 “뱀 출입 금지”라는 문구도 붙어있어야 할 것이다. 뱀을 좋아하는 사람은 거의 없으니까. 또, “코끼리 출입 금지”라는 문구도 필요할 지 모른다. 코끼리들이 앉았다가는 레스토랑의 의자들이 하나도 남아 나지 않을 테니까.

 

거기에 그 표지판을 세운 진짜 이유는 과거의 경험을 바탕으로 한 것이다. 다시 말해,

제2부: 사용자는 무엇을 기대하는가?

글 : Joel Spolsky

 

번역 : ?AhnLab

 

년 4월 11일 화요일

 

어떤 사용자가 어떤 프로그램을 처음 사용한다고 할 때, 그 프로그램에 대해 완전히 백지 상태로 접근하는 것은 아니다. 그들은 그 프로그램이 어떤 방식으로 작동될 것인가에 대해 자기 나름대로의 기대를 갖는다. 만일 예전에 비슷한 소프트웨어를 사용해본 적이 있다면 그것과 비슷한 방식으로 작동되리라 예상할 것이다. 만일 그 이전에 어떤 소프트웨어도 사용해본 적이 없다면 그 프로그램이 일정한 보편적 규칙에 따라 움직이리라 예상하게 될 것이다. UI가 어떻게 움직일 것인가에 대한 사용자들의 예측이 적중할 수도 있다. 이와 같이 어떤 프로그램이 자신에게 무엇을 해줄 것인가에 대한 사용자의 심리적 이해를 가리켜 사용자모델이라 한다.

제1부: 환경을 통제할 수 있는 사용자는 행복하다

글 : Joel Spolsky

 

번역 : AhnLab

 

2000년4월10일월요일필자가 아는 대부분의 골수 C++ 프로그래머들은 사용자 인터페이스 프로그래밍을 꺼린다. 필자로서는 잘 이해가 되지 않는 일이다. UI 프로그래밍이 본질적으로 아주 쉽고 간단하며 재미있는 작업이라고 생각하기 때문이다.
UI 프로그래밍은 쉽다. 일반적으로 하나의 사각형 안에 또 다른 사각형을 집어넣는 수준 이상의 더 복잡한 알고리즘은 필요하지 않기 때문이다. UI 프로그래밍은 간단하다. 프로그래밍 과정에서 실수가 있을 경우, 금방 눈에 띄고 곧바로 수정할 수 있기 때문이다. UI 프로그래밍은 재미있다. 노동의 결과를 직접 눈으로 확인할 수 있기 때문이다. 마치 프로그램을 직접 조각하는 것 같은 기분을 느낄 수 있다.
대부분의 프로그래머들이 UI 프로그래밍을 두려워하는 이유는 아마도 UI 디자인을