HP 100LX "쿠거(Cougar)"의 개발과정 (HP 200LX)
빵굽는200LX 2013. 2. 15. 01:37 |< HP 엔지니어가 말하는 95LX의 제품 개발 과정 (200LX) >에 이어지는 글 (의역 다수)
HP 100LX "쿠거"의 개발과정 (Developing the HP 100LX "Cougar")
HP의 소프트웨어팀이 재규어(Jaguar) 프로젝트를 미처 끝마치기도 전에 하드웨어 엔지니어들은 이미 프로젝트 "쿠거(Cougar)"를 검토하느라 매우 바쁜 시간을 보내고 있었다. 하드웨어 그룹이 95LX에 비해 변화를 주고싶어했던 주요 부분은 아래와 같다.
가. PC와의 호환성 향상: 하드웨어 뿐만 아니라 소프트웨어 팀 및 관련 매니저들도 변화의 필요성을 느꼈으며, 이로 인해 CGA 디스플레이를 채택하게 되었다.
나. 배터리 지속시간 향상: 95LX가 내부적으로 5 볼트의 전원을 사용하는 반면에, 100LX의 경우, 내부적으로 3볼트를 사용하는 것을 통해 해결하였다.
다. 외장 카드 포트를 PCMCIA rev 2.0 호환 포트로 만드는 것
라. IR 포트의 데이터 전송률 향상 및 팜탑(Palmtop)의 스피드 향상
디스플레이의 향상이 최우선이었음 (Improving Display a Priority)
소프트웨어팀이 하고 싶어했던 것들 중에는 디스플레이에 뿌려지는 폰트(font)의 크기를 바꿀 수 있도록(mix)하는 것과 95LX에 비해 보다 더 향상된 그래픽 유저 인터페이스(GUI)를 채택하는 것이 있었다. 이는 어플리케이션 역시 그래픽 디스플레이 모드(graphic display mode)에서 작성한다는 것을 의미한다. 이를 가능케 하고 이와 동시에 풀 텍스트(full text)가 전체화면에 뿌려질때 디스플레이(display)에 나타내는 속도를 더 빠르게 하기 위해서, 소프트웨어는 하드웨어의 도움이 반드시 필요했다. 이러한 점 때문에, 쿠거 프로젝트의 경우 "비트-블리터(Bit-Blitter)" 라는 기능이 호넷 칩(Hornet Chip)이라는 ASIC(Application-Specific Integrated Circuit, 주문형 집적회로) 칩에 포함되었다. "비트-블리터(Bit-Blitter)"는 문자 비트들(character bits)을 폰트 테이블로부터 그래픽 비트맵 메모리(grahpics bitmapped memory)로 다이렉트(directly)하게 카피(copying)하는데 사용되었다.
우리는 쿠거(Cougar)에 채택될 CGA 디스플레이가 실제로 HP의 팜탑에 채택되어도 사용자에게 충분한 가독성(readable)을 보장해줄 수 있을지에 대해 확신이 없었다. 따라서, 우리는 여러 다양한 LCD 공급사(vendor)들로 부터 다양한 샘플을 받아서, 테스트 소프트웨어를 통해 다양한 크기의 글자들을 여러 샘플 디스플레이 화면에 나타내는 작업들을 시행하고 이를 통해 나타난 결과들에 대해 의견을 교환했다. 이러한 시험을 반복한 결과, 기존 95LX와의 호환성을 유지하면서, full CGA 디스플레이를 채택하기 위해서, 우리는 쿠거(Cougar, 100LX)에 세가지 크기의 폰트를 사용하기로 했다. 사용될 3가지 폰트들은 각각 80x25 for CGA, 최적의 디스플레이라고 생각되는 64x18, 재규어(Jaguar, 95LX)와의 호환성을 위한 40x16 크기의 폰트였다.
64x18 폰트가 가독성이 뛰어나고 기존의 40x16 폰트보다 80% 이상의 화면 면적을 더 보장해 준다는 측면에서 최적이라고 판단되었다.
[ HP Corvallis 사업부, 1976년 설립, 사진출처: HP Key Notes, May-August 1981 Vol.5 No.2 ]
※ 역자 주: 1981년 출시된 후 지금까지 지속적으로 판매가 되고 있는 베스트셀러 재무계산기 HP12c 역시 코밸리스 사업부의 작품이다.
개발작업이 본격화되다. (Work Begins in Ernest)
일단 재규어 프로젝트가 마무리되자마자, 소프트웨어팀은 쿠거 프로젝트에 본격적으로 매진했다. 새로운 유저 인터페이스(user interface)와 새로운 PIM(Personal Information Management) 응용프로그램에 대한 개발작업이 우선 이루어졌다. HP 코밸리스 사업부(Corvallis division)에서 엔지니어와 매니저들은 PIM 기능을 보다 더 향상시키고 싶어했다. 소프트웨어 개발팀은 이를 위해 6개월 정도의 시간을 쏟아부었다. 유저 인터페이스(user interface) 및 응용프로그램에 대한 다양한 제안서를 검토하고 실제 반영시키는 등 많은 작업량이 필요했기 때문이다. 사용자 테스트는 이른 여름에 시행되었는데, 사용자들이 실제로 개발팀이 만든 GUI를 어떻게 받아들이는지를 주로 관찰했다. 이런 모든 작업이 합쳐져서 1991년 12월과 1992년 1월에 몇몇 프로토타입 코드(prototyping code)가 완성될 수 있었다.
CAP(Cougar Applications Platform)라고 불리우는 프로토타입 유저인터페이스가 완성되었으며, Appointment Book, Phone Book 및 Memo 프로그램의 큰 그림이 그려졌다.
로터스社 역시 쿠거용 GUI 인터페이스 작업에 전력을 다했다. 로터스의 GUI 인터페이스는 다이얼로그박스(dialog box)내에 푸쉬버튼을 채택하는 것과 같이 여러면에서 개선된 것이라 할 수 있었다. 하지만, 로터스社의 매니저들은 이러한 GUI용 인터페이스 코드(interface code)들이 일종의 "플랫폼 리소스(platform resource)" 로서 쿠거(Cougar)의 GUI 운영체제(OS)인 시스템 매니저(System Manager)에서 제공되는 것이 바람직하다고 생각하게 되었고, 실제로 로터스社가 이러한 GUI code를 작성하는 책임을 맡았다. 로터스社는 1992년 봄에 LHAPI(Lotus Handheld Applications Programming Interface)라고 불리우는 GUI 인터페이스를 완성했다.
한편, HP의 엔지니어들은 그들이 개발한 CAP 인터페이스를 사용해서 HP 어플리케이션 작업을 계속하고 있었는데, 로터스社의 LHAPI가 완성되자 CAP 인터페이스를 사용해 만든 프로그램들을 LHAPI용으로 컨버전(conversion) 했다.
쿠거(Cougar)가 보다 큰 데이터베이스 파일들을 다룰 수 있어야함; PIM DB의 핵심
(Cougar Handles Larger Data Files; Database Program Heart of PIMS)
95LX 의 경우 40K 또는 50K 바이트 보다 큰 파일을 다룰 수 없다는 단점이 사용자들 사이에서 주요 불만사항으로 부각되었는데, HP95LX의 경우, 파일을 읽을때 메모리에 전체 파일을 한번에 통째로 읽어들인 후 작업하는 방식을 채택했기 때문이다. 이때문에 2개 이상의 프로그램을 동시에 실행하는데도 제약이 있었다. 이를 해결하기 위해 쿠거(Cougar)의 프로그램들은 전체 파일을 한번에 시스템 메모리로 올린 후 읽는 방식을 사용하지 않기로 결정되었다.
이와 동시에 우리는 데이터베이스(database) 프로그램이 큰 도움(great addition)이 될 것이라 판단되었다. 왜냐하면, 95LX의 사용자들을 관찰한 결과, 많은 사람들이 Phone Book을 데이터베이스 프로그램으로 활용하고 있었기 때문이다. 데이터베이스 프로그램이 추가됨으로써 이젠 사용자들이 그들의 개별 니즈에 맞는 데이터들을 자신이 원하는 방식으로 생성하고 휴대할 수 있게 되었다.
우리는 100LX의 PIM 응용프로그램들이 기본적으로 DB엔진(database engine)에 기반하여 작동되는 것이 타당하다고 생각했다. 우리의 소프트웨어 개발팀에 새롭게 합류한 앤디(Andy)가 이러한 데이터베이스 엔진을 작성하는 작업을 맡았다.
기본적으로 Phone Book, Database, World Time 및 NoteTaker가 사용하는 DB 파일은 구조가 기본적으로 같은 것이다. Appointment Book 프로그램도 위의 프로그램들과 DB구조의 기본적 특성은 동일했다. 하지만, Appointment Book의 경우, Appointment Book만을 위한 고유의 특성들이 많이 반영되었다. 시스템 매니저가 관리하는 응용프로그램들의 DB 파일은 모두 "인덱스 뷰/ 카드 뷰(index view/card view)" 패러다임에 기초한 것이었다.
※ 역자주: HP 200LX의 경우, 개인 재무관리 소프트웨어인 Pocket Quicken 이 추가된 점 외에는 기본적으로 HP 100LX와 동일한 특성을 가짐
'빵굽는200LX' 카테고리의 다른 글
텍스트 파일 처리를 위한 도스 배치파일 작성 삽질기 (0) | 2013.02.27 |
---|---|
굿바이 ... 200LX (Good bye... 200lx) 라고 말하기에는... (1) | 2013.02.21 |
HP 엔지니어가 말하는 95LX의 제품 개발 과정 (200LX) (0) | 2013.02.14 |
200LX vs 아이패드 - (2) 200LX의 핵심가치 (0) | 2013.02.06 |
200LX vs 아이패드 - (1) 아이패드의 핵심가치 (0) | 2013.02.04 |