루트킷_1

요즘은 루트킷(RootKit, 이하 루트킷)이란 단어가 널리 알려져 있다. 하지만 루트킷에 대해 정확히 이해하는 사람은 많지 않다. 한 예로, 대부분의 사람들이 마치 루트킷이 최근에 생긴 걸로 착각하곤 하는데, 루트킷은 18 년 전인, 1990년도에 등장했다. 국내에 알려진 건 2005년, 소니 BMG의 CD 보안이 루크킷을 사용했다는 것이 Mark Russinovich에 의해 알려지면서 CD를 전량 회수하는 사건이 시발점이 됐다. 그 이후로 루트킷에 대한 사람들의 경각심이 더욱 고취됐고, 백신 프로그램도 루트킷에 얼마나 효과적으로 대응하는지가 관건이 되기도 했다.

창과 방패의 이야기

루트킷, 네 정체를 밝혀라

권용휘 rodream@gmail.com|필자는 악성코드 제거 프로그램인 ‘울타리’를 제작/배포하고 있다. 그 이외에도 여러 프리웨어를 http://rodream.net을 통해 배포하고 있다. 가끔씩 코드프로젝트나 루트킷에 글을 기고한다. 악성코드로부터 시스템을 지키기 위해 오늘도 컴퓨터를 켠다.

루트킷은 이미 오래전부터 존재했다. 유명세를 탄 무렵에는 이미 기술이 대부분 공개된 상황이었다. 기술 자체는 새롭거나 특별할 것이 없지만, 언제부터인가 ‘보안의 핵심’ 으로 대두됐다. 과연 왜 갑자기 유명세를 탔을까? 루트킷이 유명해진 이유는 앞에서 언급했듯이 큰 기업의 스캔들로 인해서 루트킷에 관심이 없던 해커와 크래커 그리고 프로그래머에게 존재가 알려졌기 때문이다. 정체가 알려지자 많은 크래커가 루트킷을 사용했다. 악의적인 일을 좀 더 효과적으로 그리고 완전히 성취하기 위해 루트킷의 소스코드나 프로그램을 활용하기 시작했다. 결국 기존의 바이러스가 좀 더 고급적인 보안 기법을 써서 시스템을 파괴했고 백신 업체들은 이를 방어하기 위해 루트킷에 대한 대응책을 마련할 수밖에 없었다.

루트킷의 정확한 의미

이제 루트킷이 정확히 무엇을 의미하는지 알아보자. 말 그대로 루트킷은 루트(Root) 권한을 쉽게 얻게 해주는 킷(Kit)이다. 루트킷을 사용하면, 보안 허점을 이용해 원하는 일을 처리하도록 도와준다. 파일이나 레지스트리를 숨기는 것이 루트킷이 하는 대표적인 일이다. 이는 악성 프로그램이나 바이러스를 시스템에서 제거하려는 시도를 무력화시키기 위한 것이다.

이와 같이 루트킷이 실제로 하는 일은 자신을 은폐하거나 삭제할 수 없도록 하는 게 대부분이다. 일반적으로 자신을 은폐하기 위해서 루트킷은 운영체제나 시스템을 변화시킨다. 우리가 쓰는 운영체제는 크게 두 개의 계층(유저 모드와 커널 모드)으로 이루어져 있다. 커널 모드에는 실제로 운영체제의 핵심적인 작업을 수행하는 코드가 동작하며, 유저 모드는 커널 모드의 코드를 사용하기 위해 API를 사용한다. 예를 들면, 파일을 지우기 위해 프로그램에서 DeleteFile API를 사용하면, 유저 모드에서는 파일을 직접 지우는 기능이 없으므로 커널 모드의 파일 지우는 코드가 동작하도록 요청한다.

또한, 백신 프로그램 등이 바이러스가 동작중인지를 찾아내기 위한 방법으로 어떤 프로그램이 실행중인지 알아내는 방법도 이와 동일한 과정을 거친다. 즉 유저 모드에서는 실제로 작업을 하는 게 아니라, 단지 커널 모드로의 이관을 도와준다. 루트킷을 써서 은폐하는 프로그램은 바로 이렇게 커널 모드로 이관하는 길목에서 자신을 은폐하기 위한 일을 한다. 은폐하는 일 자체가 점점 고도화되고 복잡하기 때문에 루트킷을 이러한 기술의 일련으로 오해할 수 도 있다. 하지만, 루트킷이라고 부르는 것은 기술 자체보다는 기술을 사용해 기존 시스템의 정책(Policy)에 역행할 수 있는 것을 의미한다.

앞에서 언급하였던 유저 모드에서 커널 모드로 이관되는 과정을 변형 시키는 것을 가리켜 후킹(Hooking)이라고 한다. 하지만, 후킹을 사용했다고 해서 모두 루트킷이라고 명명하면 안 된다. 생각해보면 이는 매우 당연한 것인데, 현재 많이 사용하는 DRM 프로그램이 포함한 실시간 암·복호화도 후킹을 사용해 구현되는 경우가 대부분이지만, 아무도 이를 루트킷이라고 말하지는 않는다. 최근 소니 USB에서 새로운 루트킷이 검출됐다는 보도가 나왔다.

기사에서는 루트킷을 판별하는 데 기술적인 측면보다 파일과 프로그램을 은닉하는 것이 악용될 수 있다는 점에 집중하고 있다. 그렇다면, 모두에게 인정받은 프로그램이 정상적인 목적으로 이러한 기능을 사용하는 경우에는 어떻게 될까? 답은 이런 경우에도 루트킷이라는 칭호를 달 수 밖에 없다는 것이다.

필자가 직접 확인했던 모 언론사의 툴바 프로그램은 다른 프로그램이나 사용자에 의해 임의로 지워지지 않도록 프로그램을 숨기고 삭제하지 못하도록 해 놨다. 분명 루트킷이라고 판별할 수 있다. 이는 프로그램을 사용해 다른 프로그램도 함께 숨겨지거나 삭제할 수 없도록 할 수 있기 때문이다. 설명을 덧붙이면, 이 프로그램이 만약 C:\Program Files\??Toolbar 라는 폴더 아래에 있는 모든 파일을 숨기고 아래에 있는 프로그램을 사용자로부터 은닉시킨다면 악성코드를 만드는 사람의 입장에서는 자신의 프로그램의 실행 파일을 자동으로 C:\Program Files\??Toolbar 폴더 아래에 자동으로 복사하도록 설정할 수 있다. 이렇게 된 경우에, 사용자가 ??Toolbar를 설치하면 자기 자신을 보호하기 위한 프로그램이 악성코드를 숨겨주는 부가 효과(Side Effect)가 발생한다. 이러한 부가 효과는 시스템에 매우 치명적이며 악영향을 미친다. 지워지지 않는 악성코드가 악성코드 제작자의 의지가 아닌 상태에서 만들어진 것이다. 만약 ??Toolbar가 매우 유명하고 대부분의 사람들이 사용한다면 모든 악성코드 제작자들은 이 폴더로 자신의 프로그램이 설치되도록 유도하게 될 것이고, 결국 ??Toolbar는 악성코드를 보호하는 프로그램이 되어 악성코드의 숙주가 된다.

루트킷의 종류

루트킷은 범용적으로 쓰이기 때문에 종류도 다양하다. 여기서 언급하는 루트킷의 종류는 필자가 개인적으로 나눈 것으로 절대적인 것이 아니라는 것을 먼저 밝힌다. 우선 루트킷의 전체를 볼 수 있도록, 어떤 루트킷이 있는지 알아보자. 루트킷이 동작하는 환경에 따라서 나누면, 운영체제 별로 루트킷이 존재한다. 윈도우에서 동작하는 루트킷만 살펴보면, 유저 모드 루트킷과 커널 모드 루트킷 그리고 그에 속하지 않는 루트킷(윈도우가 구동되기 전에 동작하는 루트킷)이 있다. 유저 모드와 커널 모드가 따로 있는 것은, 유저 모드에서 할 수 없는 일을 커널 모드에서 할 수 있는 경우가 많기 때문이다.

우리가 가장 많이 사용하는 CPU 인 인텔 호환 CPU는 명령어를 실행할 수 있는 권한을 가지고 있는데, ring0 부터 시작해서 ring1, ring2, ring3 까지, 4개의 ring 권한을 가진다. 윈도우의 경우 유저 모드에서는 ring 권한 중 가장 낮은 ring3 권한을 가지므로 CPU에 시스템 큰 영향을 줄만한 명령어를 실행할 수 없다. 하지만, 커널 모드에서는 ring0를 사용하므로 이를 위해 커널 모드 루트킷이 필요한 것이다. 또한, 생소하게 생각될 수도 있지만, 커널 모드도 유저 모드도 아닌, 루트킷이 있다. 이는 운영체제가 로드되기 전, 하드 디스크의 MBR(Master Boot Record)을 참조하게 되는데, MBR을 수정해 자신이 먼저 실행되도록 시스템을 수정하는 루트킷이다. 또한, 하드디스크가 아닌 비디오카드에 기생하는 루트킷도 존재한다.

이와 같이 다른 하드웨어에 존재하는 저장장치에 기생할 경우에 얻는 이점은 일반적으로 바이러스에 감염됐다고 판단해 하드디스크를 포맷하거나 운영체제를 재설치하는 경우가 많은데, 이러한 루트킷은 포맷과 재설치에도 불구하고 살아남는다는 특징이 있다.

루트킷은 누가 만드는가?

대체 루트킷은 누가 만드는 것일까? 실질적으로 많은 루트킷이 공개되고 배포되는 루트킷 닷컴(http://rootkit.com)에 가면 루트킷을 공개하는 사람들이 자신의 신원을 밝히고 자신의 결과물(RootKit)을 공개한다.

루트킷 자체는 ‘악성’이라기보다는 시스템 보안의 허점을 공개하는 하나의 도구이기 때문에, 그 자체가 나쁜 일은 아니기 때문이다. 물론 이를 악용하면 큰 문제를 일으킬 수 있겠지만, 아직까지 국제적인 제재는 없는 상황이다. 중국의 경우 실제로 크래킹 방법을 잡지에 기고하고 판매하는 경우도 있다. 국내 사정은 아직 먼 이야기지만. 몇 년 전 『해킹, 파괴의 광학』이라는 책이 매우 성황리에 팔렸던 적이 있다. 국내에서는 아직 이 책에 공개된 수준까지만 허용된다. 그렇다면 루트킷을 만들어서 공개하는 이들은 누구일까? 대부분 보안 프로그래머이다. 이 얘기가 다소 혼란스러울 수도 있을 것 같다. 어떻게 시스템을 파괴하기 위한 도구를 보안 프로그래머가 만들 수 있을까 하는 의문에 봉착한다. 이는 방패를 만들기 위해서는 창에 대해 잘 알아야 하고, 창을 잘 아는 사람만이 효과적인 방패를 만들 수 있는 이치와 같다. 하지만, 여기서 필자가 한 가지 명확하고 싶은 것은 루트킷을 만드는 사람과 악성코드를 만드는 사람을 확실하게 구분해야 한다는 것이다. 대부분의 악성코드 제작자는 시스템 자체에 대한 이해도가 높지 않다. 그들은 단지 루트킷을 사용하는 것뿐이다. 이러한 사람들을 스크립트 키디(Script-x Kiddie)라고 부른다. 이들은 시스템에 대한 탐구 의지보다는 과시욕이나 시스템을 파괴하려는 생각만 앞선 사람들이다.

루트킷 기술들

루트킷에서 나오는 기술은 무척 다양하다. 기술의 수준도 높은 반면에, 누구나 알만한 내용도 존재한다. 하지만 “아... 이렇게 역으로 생각할 수 도 있구나”라는 식의 역발상적인 기술이 많다. 필자 개인적으로는 한가한 시간에 여러 프로그래머나 해커의 사이트를 돌아다니면서 그들이 최근에 해온 일들을 훑어보는 습관이 있다. 루트킷에 대한 내용을 읽다 보면, 좀 더 창의적이고 기발한 생각을 떠올리도록 도와주는 경우가 있다.

가장 잘 알려진 기술인 후킹도 기술 자체는 이미 오래전에 알려졌지만(리눅스 등의 운영체제에서는 이렇게 후킹을 하는 것이 운영체제의 일부가 되있기도 하다), 루트킷을 잡아내고 복구(Restore)하는 기술이 발전함에 따라서 좀 더 지능적으로 진화해 왔다. 예를 들면, 백신 프로그램이 루트킷을 탐지해내려면 루트킷 프로그램의 연속된 특정 어셈블리 코드를 찾는 경우가 많다. 특히 <리스트 1>의 코드는 커널 모드에서 Write Protection 기능을 제거하기 위해 CR0 비트를 조작하는 코드이다. 하지만, 루트킷에 많이 쓰이면서부터, 백신 프로그램은 이 코드를 기준으로 루트킷을 탐지한다.

이러한 문제를 해결하기 위해, 안티-루트킷(Anti-RootKit) 프로그램이 특정 실행 코드(op code: 기계어)가 연속적으로 나오는 경우에만 검출해낼 수 있다는 허점을 노려, INC EAX, DEC EAX와 같이 의미 없는 코드로 코드의 흐름을 섞어 놓는 간단한 방법으로 백신의 검출망을 피해간 것이 바로 <리스트 2>의 코드이다. 이러한 의미 없는 코드는 매우 많다. <리스트 2>와 같이 어떤 일을 한 후에 다시 그 일을 되돌리는 명령을 사용하는 것도 있으며 JUMP 명령어를 사용해 이리저리 코드의 흐름을 어지럽히는 방법도 있다. 또한, 어셈블리에서는 아무것도 하지 않는 명령어로 NOP라는 명령어가 있는데, 이를 사용하는 경우도 있다. 이러한 것을 ‘Code Randomization 기법’이라고 하는데, 최근 루트킷에서 흔히 발견하는 간단한 트릭이다. 하지만, 최근에는 실행 코드 자체만 고민하던 해커들이 실행 코드보다는 코드가 사용하는 데이터에 집중하면서 DKOM (Direct Kernel Object Manipulation)이라는 기법이 새롭게 생겨났다. 이 기법은 실행 코드가 사용하는 데이터(프로세스 목록을 저장하기 위한 링크드 리스트 등)를 변경하여 자신을 감추는 방법 등으로 활용되고 있다. DKOM을 사용해 프로세스를 숨기는 방법을 간단히 설명하면 다음과 같다. 먼저, 윈도우에서는 Process 목록을 링크드 리스트를 사용하여 관리하게 되는데, 이 링크드 리스트의 각 항목들을 가지고 연결 고리를 조작하는 방법이다.

<그림 2>와 <그림 3>을 보면 <그림 2>에 있던 세 개의 프로세스가 연결된 상태에서 <그림 3>처럼 하나의 연결을 끊게 되면, 두 개의 프로세스만이 존재하는 것처럼 보인다. 이것이 바로 DKOM 기법을 사용하여 Process 목록을 숨기는 원리이다. DKOM은 매우 혁신적인 아이디어라고 할 수 있다. 왜냐하면, 이전의 루트킷이 실행 코드를 바꾸는데 전념했고, 그렇기 때문에 루트킷을 탐지해내는 방법으로 실행 코드를 확인하는 방법을 많이 사용했다. 루트킷이 아무리 똑똑해도, 언젠가는 메모리 어딘가에 자신을 실행해 달라는 흔적(보통 jmp 명령어나 자신의 코드가 있는 메모리 주소가 된다)을 남긴다. 하지만, DKOM 기법을 사용하면, 데이터 조작 여부를 판단하기가 매우 애매해진다. 이렇게 숨긴 Process를 알아채기 위한 방법은 Process 목록에서 자신을 지워버려도 언젠가 악성코드가 실행되려면 윈도우가 실행 코드 스케쥴을 하는 기반인 스레드(Thread) 목록에서는 지우지 않는 다는 것에 착안하여 검출해내는 방식을 사용한다.

필자는 2007년 10월, RootKit.com에 네이티브 애플리케이션이 루트킷으로 사용될 수 있다는 내용을 기고한 적이 있다. 비스타에서 기존 윈도우와 가장 많이 바뀐 내용이 UAC에 관련된 내용이며, 이것이 네이티브 애플리케이션을 통해 무력화 될 수 있다는 내용이었다. 최근에는 이런 식으로, 새롭게 생긴 정책의 논리적인 구멍(Hole)을 공격하는 경우가 늘고 있다. UAC에 관련된 유사한 예로, 윈도우 비스타의 정식 버전이 출시되기 전인 RC 버전에서는 윈도우의 Swap 기능을 역이용해, Swap out 된 가상 메모리의 내용을 조작하여 다시 그 코드가 Swap In 되어 실행 될 때 시스템의 권한을 가로채는 기발한 방법이 나오기도 했다. 물론 이 문제는 정식 버전이 나오기 전에 이미 수정됐다.

루트킷이 시사하는 것

루트킷이 시사하는 것은 이미 대부분의 사람들이 시스템의 허점을 이용할 준비가 돼 있다는 것이며, 이는 곧 우리가 불안한 디지털 세상을 살고 있다는 말이기도 하다. 더 이상, 크래킹은 많은 지식을 가진 고급 크래커들만의 몫이 아니다. 하지만, 대부분의 사람들이 운영체제가 잘못 설계됐기 때문이라고 오해한다. 물론 운영체제 자체의 문제도 있겠지만 새롭게 보안을 강화시킨 비스타에도 여전히 루트킷은 존재하며, 많은 사람들이 안전하다고 생각하는 유닉스와 리눅스조차도 수많은 루트킷이 존재한다.

필자는 이제 기술적인 문제에서 떠나야 한다고 생각한다. 보안 위협이 사회현상으로 부각되면서 여러 가지 법안이 제정됐지만, 충분한 생각과 고려 없이 제정된 법들은 루트킷의 악용을 규제하기 보다는 안티-루트킷 프로그램에 ‘인증’을 받으면 루트킷 기능을 이용할 수 있다는 새로운 ‘권력’ 을 생산해내기에 이르렀다. 세계적으로 많은 안티-루트킷(백신) 업체들이 있지만, 이들의 방식에도 문제가 많다.

특히, 루트킷을 진단하는 방법으로 실제 코드를 분석하는 방식을 사용하는데, 이에 대한 기준도 업체마다 달라 ‘오진’이 빈번하게 발생한다. ‘오진’의 대부분은 기술적이지 못한 사용자들에게 마치 바이러스인 것처럼 겁을 줘서 ‘오진’ 당한 업체에게는 명예 실추와 영업 손실을 끼친다. 이러한 구조로 인해 백신 소프트웨어를 만드는 업체들이 마치 프로그램 인증서를 발급하는 것과 같은 양상이 됐다. 지금은 오래된 이야기 이지만, ActiveX로 인한 악성코드 및 바이러스가 기승을 부리면서부터, ActiveX에는 인증서라는 것이 필수요소로 작용하게 되었다. 하지만, 인증서를 악성코드 제작자들이 자유롭게 취득하지 못하도록 가격이 책정돼 버렸다. 이로 인해 ActiveX를 사용해 웹 페이지에서 프로그램을 서비스하려면 인증서를 꼭 구입해야 한다. 인증서 가격은 가장 저렴한 방법으로 구매해도 1년에 25만원에 육박하는 적지 않은 가격이다. 이것은 과연 누구를 위한 것인가? 인증서를 구매한다고 해서 악성코드나 바이러스가 박멸되는 것일까? 전혀 그렇지 않다. 오히려 지금에 와서는 합법적으로 인증서를 구매해서 악성코드를 만드는 것이 당연시 되어 버렸다. 이러한 방식은 마치 벼룩을 잡기위해 초가삼간을 다 태우는 격이며, 앞으로 생길 새로운 보안 위협에 대해서는 이러한 새로운 권력을 창출해 내지는 말아야 한다고 생각한다.

상사부일체? 존경받는 상사는 뭔가 특별한 게 있다!
2008년 6월 10일(화) / 삼성 / 조회(535)

지난 4월 취업포털 커리어가 직장인 1,473명을 대상으로 '직무와 대인관계 중 어느 쪽이 더 큰 스트레스 요인인가'에 대한 설문을 실시한 결과, '대인관계가 더 큰 스트레스 요인'이라고 답한 사람이 59%에 달했다. 그리고 가장 스트레스 주는 사람으로는 무려 65.9%의 지지(!)로 '상사'가 꼽혔다.

부하직원에게 의도적으로 스트레스를 주려고 하는 상사는 없을 테니, 상사의 위치에 있는 사람들은 참 당황스런 결과일 법하다. 어떻게 하면 부하직원들에게 스트레스를 덜 주면서 존경받는 상사가 될 수 있을까.


부하직원의 마음을 사로잡는 두 가지 규칙

일인십색의 다양성이 공존하는 조직 사회에서 리더십은 갈수록 어려운 주제가 되어 가고 있다. 또한 글로벌 무한경쟁 환경 속에서 하루하루 성과에 대한 압박으로 피가 마르는 상황에서 부하직원들의 존경을 받는 상사가 되는 것은 사실상 불가능에 가까운 일이 아닌가 하는 회의감마저 드는 것이 사실이다.

그러나 조직의 경쟁력은 직원들의 열정 없이는 이룰 수 없는 것이기에, 리더라면 직원들이 마음 편하게 일할 수 있는 환경을 조성하는 데 노력을 아껴서는 안 될 것이다. 부하직원들의 마음을 사로잡는 상사가 되기 위해 항상 염두에 두고 실천해야 할 두 가지의 행동 규칙을 제시한다.

부하직원이 마음 편하게 일할 수 있는 환경을 조성하는 것, 바로 상사가 해야 할 일이다.
상사의 역할에 따라 부하직원의 직장 만족도가 달라질 수 있다.


하나, 말과 행동에서 일관성을 유지하라!

얼마 전에 매우 상기된 표정으로 자신의 상사에 대한 불만을 표출하는 직원을 만난 적이 있다. 그의 불만은 그의 상사의 일관되지 못한 말과 행동 때문이었다. 오전에 지시한 사항과 오후에 지시하는 사항이 앞뒤가 맞지 않고, 어떤 경우는 마치 다른 사람이 내린 지시처럼 100% 상반된 의견을 제시하여 일을 처리하는 데 너무나도 혼란스럽다는 것이다. 이리 가라면 이리 가고 저리 가라면 저리 가는 식으로 자신을 중간에 놓고 장난을 치는 것과 같은 느낌이 들어 극도의 무력감을 느낀다고 하였다.

옛말에 구관이 명관이라는 말이 있다. 이 말은 실제로 구관이 명관이라는 말이 아니라 직원들은 신관보다 구관의 행동패턴에 익숙해져 있기 때문에 훨씬 더 편한 느낌을 갖는다는 말일 것이다. 아마도 조직 생활을 조금이라도 해본 사람이라면 이 말이 거의 진리와 가깝다는 사실을 경험적으로 알 수 있다.

부하직원들은 무엇을 어떻게 해야 할지 모르는 혼란스러운 상황을 몹시 싫어한다. 그래서 아무리 인격적으로 훌륭한 상사라도 말과 행동에서 일관성을 보이지 않으면 신뢰하지 않는다. 따라서 상사는 자신의 말과 행동에 늘 일관된 모습을 유지하여 부하직원들이 조직에서 일하고 생활하면서 가질 수 있는 혼란을 줄여 주어야 한다.

인격이 훌륭해도 말과 행동이 일치되지 않거나, 앞뒤가 맞지 않는 지시를 내리는 상사는
부하직원의 마음을 얻기 어렵다.

이를 위해 상사는 아주 사소한 것이라도 자신의 말과 행동에 좀 더 신중해질 필요가 있다. 늘 직원들에게 자신의 의견을 말해 주어야 한다는 의무감에 사로잡혀 있는 듯한 상사들을 주변에서 흔하게 찾아볼 수 있는데 이 역시 주의를 기울일 필요가 있다. 그렇게 했을 때 스스로 자신의 말을 번복하거나 줏대 없이 오락가락 행동하는 일이 줄어들 수 있기 때문이다.

자신의 생각에 확신이 없으면 의미 없고 혼란을 야기할 수 있는 의견을 개진하기보다는 부하직원들의 의견을 따르기 바란다. 굳이 자신의 의견 제시가 필요하다는 생각이 들면 조금 더 시간을 두고 생각을 정리한 후 이행하길 바란다. 상사의 성급한 말로 직원들이 느끼는 혼란을 생각하면 이것이 훨씬 더 현명한 태도일 것이다.


둘, 부하직원들의 네 가지 욕구를 이해하고 도와라!

크고 작은 조직 사회에서 일하고 생활하는 다양한 직원들을 만나 조직 생활에서 원하는 것이 무엇인지 물어보았다. 그리고 이를 크게 네 가지의 욕구로 정리해 보았다.

첫째, 신뢰 관계 형성의 욕구이다. 직원들은 함께 일하는 사람과 긍정적이고 친밀한 관계를 형성하고자 하는 욕구를 가지고 있다. 직장인들이 몸담고 있는 직장을 그만두는 가장 큰 이유는 '함께 일하는 사람이 싫어서'라는 것이 압도적인 것을 봐도, 인간관계는 직원들의 삶의 질을 결정한다.

둘째, 상사의 인정을 받고자 하는 욕구이다. 밤새워 일을 해도 상사의 칭찬 한마디면 피로가 눈 녹듯 사라지는 경험을 했을 것이다. 한 연구 결과에 따르면 상사의 인정을 받으면 직무만족도가 2.5배 증가하고, 무시를 당하면 업무성실도가 백분의 일로 하락한다고 한다.

사람은 조직에서 자신의 존재감을 늘 확인하고자 한다. 가장 어리석은 리더는 직원들을 무시하면서 열심히 일하기를 바라는 리더이다. 그리고 현명한 리더는 직원들이 더욱 열심히 일할 수 있도록 인정과 칭찬을 아끼지 않는 리더이다.

아무리 일이 힘들어도 상사가 지지해 주면 부하직원은 힘이 난다.
상사의 인정과 신뢰가 부하직원의 존재감을 높이는 것이다.

셋째, 하고 싶은 일을 하고자 하는 욕구이다. 직원들은 자신이 하고 싶은 일을 할 때 자신의 일에 몰입할 수 있다. 하기 싫거나 특히 적성에 맞지 않은 일을 하는 것만큼 괴로운 일은 없을 것이다. 몇 년 전부터 조직 사회에는 멀티태스킹(Multi-Tasking)이라는 말이 강조되고 있고 직원들을 멀티플레이어(Multi-Player)로 육성해야 한다고 하는데, 이러한 용어를 사용하는 데 주의를 기울일 필요가 있다.

사람의 에너지 수준은 제한되어 있어서 여러 가지 일을 동시에 수행하는 것은 한 가지 일도 제대로 못 하는 결과를 낳을 수 있기 때문이다. 그보다는 직원들이 자신의 적성이나 재능에 맞는 일을 수행할 수 있도록 하는 것이 훨씬 더 나은 방법이다.

부하직원의 적성과 관심을 무시한 채 여러 가지 일을 동시에 시키는 것은 일의 능률을 떨어뜨릴 수 있다.
부하직원이 하고 싶은 일이 무엇인지 파악하는 것도 상사의 몫이다.

마지막으로 부하직원들은 성장ㆍ발전의 욕구를 가지고 있다. IMF 이후 이러한 성향은 직원들에게 더욱 두드러지게 나타나고 있으며, 조직에서 자신의 역량이 정체되고 있다는 느낌을 받을 때 자신의 미래에 대해 매우 불안한 감정을 갖게 된다. 이를 위해 직원들이 자신의 강점을 지속적으로 개발하고 약점을 보완할 수 있는 학습 문화를 지속적으로 가꾸어 나가야 한다.

이 네 가지 욕구는 부하직원들이 직장생활에서 느끼는 행복과 매우 밀접한 연관성이 있다. 직원들이 뭔가 직장생활에서 뭔가 문제를 느끼고 있다면, 그것은 위의 네 가지 욕구 중에 적게는 한두 가지 영역에서 문제가 발생했다는 것을 의미한다.

따라서 진정 부하직원들의 마음을 사로잡는 리더가 되고 싶다면 각 직원과 개별적이고 잦은 소통을 하기를 권한다. 그래서 각 직원이 어떤 영역에서 어떠한 어려움을 느끼고 있는지 명확히 알고 돕기를 바란다. 여러 가지 제약으로 인해 혹시 제대로 된 도움을 줄 수 없어도 부하직원은 자신의 어려움을 상사가 알고 있다는 것만으로도 고마움을 느낄 것이다.


직원들의 동기유발에 관한 상사의 착각 그리고 진실

착각 : 하나를 알려 주면 열을 안다.
진실 : 직원들이 당신의 말을 제대로 알아들을 확률은 5%에 불과하다.
열 번 말하기 전에는 한 번도 말한 것이 아니다.

착각 : 회식을 하면 침체된 분위기가 좋아진다.
진실 : 회식! 직원들의 70%가 싫어한다. 직원들과 일대일로 만나라.

착각 : 칭찬은 고래도 춤추게 한다.
진실 : 당신의 어설픈 칭찬이 사람 잡는다. 정이 담긴 칭찬, 약이 되는 질책을 하라.

착각 : 사람을 중시하는 경영을 하고 있다.
진실 : 당신은 정작 직원들에 대해서는 몰라도 너무 모른다. 제대로 쓰려거든 깊이 있게 이해하라.

착각 : 물질적인 보상은 직원들을 열심히 일하게 한다.
진실 : 직원들이 당신에게 원하는 것은 따로 있다.
힘세고 오래가는 직원들의 네 가지 욕구에 온 정성을 기울여라.

권위에 관한 상사의 착각 그리고 진실

착각 : 리더와 직원들의 만남의 자리는 상하간의 거리감을 좁혀 준다.
진실 : 격식을 차리는 자리에서 직원들은 들러리다. 당신이 주인공인 자리는 절대 만들지 마라.

착각 : 직원들은 당신의 화려한 경력에 고개를 숙인다.
진실 : 당신의 자기 자랑은 스스로 무덤을 파는 행위다. 직원들의 가치를 높여 주면 당신의 가치는 함께 오
른다.

착각 : 당신의 사과는 권위를 실추시킨다.
진실 : 직원들은 당신이 한 일을 낱낱이 알고 있다. 실수를 했을 때는 솔직하게 인정하고 사과하라.

착각 : 직원들은 좀처럼 변하지 않는다.
진실 : 당신이 변하면 직원들도 변한다. 입이 아닌 몸으로 보여 주어라.

착각 : 당신은 가장 중요한 일을 하는 사람이다.
진실 : 당신은 아무도 관심 갖지 않은 일을 하는 사람이다.
중요한 일은 맡기고 직원들이 꺼려하는 일에 발벗고 나서라.

착각 : 자기계발은 직원들에게나 필요한 것이다.
진실 : 직원들의 눈에는 당신의 앞날이 걱정된다. 물 위에 뜬 오리처럼 숨은 공부를 게을리하지 마라.

사람을 보는 안목에 관한 상사의 착각 그리고 진실

착각 : 인정받는 직원의 사소한 잘못은 눈감아 줘도 된다.
진실 : 당신에게 인정받는 직원이 조직을 망친다. 인정받는 직원의 잘못은 일벌백계의 기회로 활용하라.

착각 : 곁에 데리고 쓸 만한 인재가 없다.
진실 : 당신에게는 인재가 없는 것이 아니라 ‘인재를 보는 눈'이 없는 것이다.
직원은 정확히 기대하는 만큼 성장한다.

착각 : 남성인력이 여성인력보다 우수하다.
진실 : 이제 여성이 세상을 지배한다. 여성과 함께 일하는 법을 배워라.

착각 : 지시를 잘 따르는 충성스러운 직원이 좋다.
진실 : 당신 앞에서 Yes라고 말하는 것이 직원에게는 가장 쉽다. 소신 있는 No가 회사를 살린다.

착각 : 인사평가는 당신의 고유권한이다.
진실 : 당신의 자의적인 인사평가는 조직의 운명을 바꾸는 범죄행위다.
객관적인 기준을 세워 직원들을 연초부터 평가하라.

부하직원의 일하는 방식에 관한 상사의 착각 그리고 진실

착각 : 직원들은 쥐잡듯 잡아야 움직인다.
진실 : 당신의 가시 돋친 소리에 직원들은 거짓말을 한다. 직원들이 일할 맛 나는 분위기를 연출하라.

착각 : 사소한 것까지 당신이 직접 챙기면 성과가 올라간다.
진실 : 당신이 개입할수록 직원들은 일하는 시늉만 한다. 직원들이 일이 아닌, 가슴 뛰는 프로젝트를 하게
하라.

착각 : 회사 일은 사무실에서 하는 것이다.
진실 : 사무실 밖에 당신이 원하는 정답이 있다. 사무실은 베이스캠프, 직원들을 현장으로 내보내라.

착각 : 직원들을 멀티플레이어로 육성해야 한다.
진실 : 멀티플레이어는 절대로 전문가가 될 수 없다. 더하기보다는 빼기가 중요하다. 직원들의 일거리를 줄
여라.

착각 : 팀워크는 직원들의 마인드 문제다.
진실 : 팀워크는 훈련된 결과다. 모호한 위치의 텍사스성 업무에 집중하라.

착각 : 창의적인 인재는 따로 있다.
진실 : 창의적인 인재는 창의적인 조직 문화에서 나온다. 브레인스토밍에 미친 조직을 만들어라.


- 상자 기사의 내용은 < 부하직원들이 당신에게 알려 주지 않는 진실 > 에서 발췌했습니다.


- 글

박태현 / <부하직원들이 당신에게 알려 주지 않는 진실> 저자

캐리커처 배워 우리 팀원들 멋지게 한 번 그려볼까? - 만화가 김경호 씨에게 배우는 캐리커처 그리는 법
2008년 6월 10일(화) / 삼성 / 조회(159)

어떤 사람이나 사물의 특징을 과장하여 우스꽝스럽게 풍자한 글이나 그림, 바로 캐리커처이다. 과장스럽게든 우스꽝스럽게든, 캐리커처는 그 사람의 얼굴 특징이 잘 나타나야 공감을 얻을 수 있다. 하지만 사람의 얼굴은 신비로운 것이어서, 그 사람의 사진 위에 투명한 종이를 올려 놓고 똑같이 베껴도, 닮지 않게 나온다.

캐리커처, 그러면 어떻게 그려야 할까. 그 사람에 대한 애정, 바로 멋진 캐리커처를 그리는 시작이다.


캐리커처 백 번 그리면 필자만큼 한다

讀書百遍義自見(독서백편의자현)이라…. 책을 백 번 읽으면 그 뜻이 저절로 드러난다. 필자가 만일 캐리커처 전문학원을 차려서 수강생들을 받는다고 하면, 첫날은 사진 한 장을 던져 주며 이렇게 말할 것이다.
"백 번 베껴라. 저절로 캐리커처가 나오리라."
이 말은 150% 진실이다. 백 번째 베끼는 순간 스스로도 예측할 수 없었던 멋들어지고 개성 있는 캐리커처가 저절로 당신의 손에서 빠져나올 것이다. 그러나 이런 식으로 수업을 진행한다면 당장 수강생들이 떨어져 나갈 것은 자명한 일. 그래서 필자는 수강생들을 잡아 두기 위해 지금부터 '속성' 캐리커처 수업을 진행하고자 한다.^^

캐리커처 그리기 '준비단계' _ 일단 계란 하나를 준비한다

그림1.

계란 위에 열십자(十)를 긋는다. 가로선에 눈을 그려 넣는다. 타원보다는 물고기 형상에 가깝게 그린다. 눈과 눈 사이는 눈 하나만큼의 간격을 준다.
수직선에서 눈의 좌우 길이만큼을 표시한 후 코를 그린다. 좌우 폭은 슬림하게 잡는다. 수평선에서 눈의 좌우 길이의 1.5배 되는 지점에 입을 그려 넣는다. 좌우 길이는 눈의 1.3배 정도이다.

이것이 무엇인가? 소위 표준형 얼굴이다.
이러한 기준을 머릿속에 입력한 상태에서 자신이 그리고자 하는 대상을 관찰한다. 관찰할 내용은, 그 사람의 얼굴이 표준에서 얼마나 벗어나 있는가 하는 것이다. 크기ㆍ비율ㆍ각도 등을 살핀다. 여기까지가 캐리커처를 그리기 위한 준비 단계이다.

그림 2. 이목구비의 이데아를 지향하는 그리스 조각상이나 연예인들의 얼굴이
대체로 이런 비율을 가지고 있다.


캐리커처 그리기 '제1원칙' _ 큰 것은 더욱 크게, 작은 것은 더욱 작게

그리고자 하는 대상의 이목구비 중 표준형에서 초과한 것과 미달된 것을 고른 후, 큰 것을 더욱 크게 작은 것은 더욱 작게 표현한다. 이목구비뿐 아니라 얼굴형과 헤어스타일도 살핀다(계란형 얼굴에서 벗어난 넓은 얼굴은 계란 후라이형 얼굴로 표현한다). 가능하면 대담하게 그려라. 외계인이 나와도 좋다. 분명히 대상과 닮은 외계인이 그려질 것이다.

그림 3을 보기 바란다(필자의 사진이다). 우선 표준형 얼굴에서 초과한 것을 고른다면 계란형에서 벗어난 네모진 얼굴형ㆍ양미간 간격ㆍ인중의 길이이며, 미달된 것은 코의 길이ㆍ입술 밑에서 턱 끝까지의 길이가 있다.

그림 3

다음으로 관찰되는 것으로 좌우의 크기가 다른 눈(이것은 각도의 문제이기도 하다)이 보인다. 큰 것을 키우고 작은 것을 축소시킴으로 해서 그림 4와 같은 캐리커처를 완성할 수 있다.

그림 4

그림 5는 기아타이거즈 이종범 선수의 캐리커처이다. 이종범 선수는 눈이 큰 편이지만, 그보다는 코와 턱이 더 크고 인상적이다. 따라서 코와 턱만으로도 간단한 캐리커처(그림 6)를 만들 수 있다.

그림 5 그림 6


캐리커처 그리기 제2원칙 _ 단점을 부각시켜라

이 두 번째 명제는 큰 것을 키우고 작은 것을 축소시키라는 첫 번째 원칙의 심화 과정이다. 우선 '단점'이라는 표현에 대해 폭넓은 양해와 이해를 바란다. 이것은 어디까지나 강의를 위한 편의상의 용어일 뿐이다.

역시 이때도 그리스 조각상을 기준으로 삼는다. 연예인의 얼굴도 좋다. 미의 기준은 시대적으로도 다르다는 견해라든지, 인종적 편견을 버리라는 주장은 잠시 키핑해 주기 바란다. 나는 지금 캐리커처를 쉽게 그리는 방법을 설명하고 있다.

다음, 그리스 조각상이나 연예인의 얼굴과 그리려는 대상을 비교해 보라. 물론 대부분의 이목구비가 기준에서 벗어나 있을 것이다. 그중 특별히 많이 벗어나 있는 것을 고른다. 그리고 과장한다. 그 밖에 주름살이라든지 보기 싫은 점 같은 부위를 속속들이 찾아낸다. 그리고 과장한다. 머리숱이 없다든지, 좌우 눈의 크기가 다르다든지, 코가 들려 있다든지, 하여튼 '못생겼다'라고 일반적으로 칭해질 수 있는 모든 부위를 끄집어낸다. 그리고 과장한다.

다시 필자의 얼굴을 보자(그림 3). 위에서 말한 것처럼 필자의 얼굴에서 가장 존재감이 강한 단점 하나를 고른다면 역시 짝눈이다. 당연히 과장한다(그림 4).

이 두 번째 단계까지만 마스터해도 웬만한 캐리커처는 소화할 수 있다. 주의할 점은 아직은 사진으로만 트레이닝하라는 것이다. 이 단계만으로 주위 친구들을 대상으로 바로 실전에 들어가게 된다면?
→친구를 잃게 된다.


표정과 행동을 캐치하라

인간은 평소에 희노애락의 다양한 사상과 감정을 표현한다. 그러나 그중에서도 가장 자주 짓는 표정이 있다. 쉽게 설명하겠다. 증명사진을 보라. 얼짱 각도로 어색하게 웃으며 찍은 사진 말고, 정말로 무표정하게 찍은 오소독스(orthodox)한 증명사진을 말한다.

무표정하게 찍은 것인데도 표정이 나온다. 야릇한 모나리자의 미소를 짓는 사람이 있는가 하면 뭔가 미묘한 불만스러움이 묻어 나오는 사람이 있다. 인간은 무표정하게 있을 때 비로소 그의 표정이 나온다. 그 사람의 살아온 인생 역정과 세계관이 표정으로 발현되는 모양인데, 어쨌든 그 주 표정을 캐치하고 캐리커처에 담는다. 이 역시 간단하다. 눈매와 입꼬리의 곡선 하나로 완성할 수 있다.

그 밖에 그 사람이 평소에 자주 취하는 행동이나 버릇이 있다. 안경을 끊임없이 치켜 올린다든지 다리를 계속 떤다든지 하는 동작을 예로 들 수 있겠다. 그러한 버릇을 그림 안에 넣어 주면 더욱 실감나는 캐리커처가 완성된다. 그림 7은 필자가 오래 전에 모 스포츠신문에 연재했던 스포츠카툰이다. 서장훈 선수의 머리를 쓸어 올리는 버릇을 가미해서 캐리커처에 생동감을 불어넣고자 했다(서장훈 선수의 그 버릇은 요즘엔 없어진 듯하다).

그림 7. 서장훈의 머리 쓸어 올리는 모습을 담은 캐리커처.

그래서 캐리커처는 개인적으로 아는 사람을 그릴 때 보다 쉽게 그릴 수 있고, 생면부지의 사람을, 그것도 사진 하나로 그린다는 것은 사실 그리 쉽지 않다.


이제 마지막 화룡점정의 단계, 주문을 외워라

사람의 얼굴이라는 것은 참 신비로운 대상이다. 투명한 종이를 사진 위에 올려놓고 똑같이 베껴도 닮지 않게 나오는 게 사람의 얼굴이다. 결국 이목구비의 형태가 아니라 그 사람의 인상을 담아야 한다는 얘기인데, 그렇다면 지금까지의 강의가 공염불이 되는 것인가?

그래서 나는 캐리커처를 지도할 때 마지막으로 말한다. 나는 이 사람을 똑같이 그려 내고야 말 거야, 아니 이 사람의 복재해서 클론을 지면에 생산해 낼거야, 라고 스스로 주문을 외우라고. 이것은 고도의 집중력과 정신력이 소모되는 두뇌작용이다. 그래서 캐리커처를 한 번 그리게 되면 맥이 풀리고 진이 빠지는 경우가 허다하다.

선생님, 전 너무 소질이 없나 봐요. 하라는 대로 했는데도 전혀 안 닮았어요, 어쩌죠?

좋은 방법이 있다. 그림에다 그 사람의 이름을 써 넣어라^^(그림 8). 어차피 캐리커처도 만화의 일종 아닌가.
만화는 유머와 익살이다. 사람들이 그 그림을 보고서 "야 하나도 안 닮았다. 이름만 같잖아" 하고 한바탕 웃어 제끼면 그만이다. 만화적인 목적은 달성한 것 아닌가.

그림 8


이게 끝이 아니다, 정말 중요한 마지막 한 가지

이제 캐리커처의 기술적인 이야기는 모두 끝났다. 그렇다고 해서 당장 이젤을 메고 몽마르트 언덕으로 향해선 안 된다. 그럼 더 뭐가 필요할까?

캐리커처에는 두 가지가 있다. 풍자로서의 캐리커처와 선물로서의 캐리커처가 그것이다. 시사만평에 등장하는 희화화된 정치인들의 모습이 바로 풍자 캐리커처로, 큰 것이 더욱 크고 작은 것은 더욱 작으며 단점이 처절하게 부각된, 위에서 설명한 캐리커처의 전형적 모습이다.

그러나 여러분들이 주변 친구들을 그려 주고 싶다면 이 방식으로는 안 된다. 그림 9를 보기 바란다. 필자의 동료 작가들이 그린 필자의 모습이다. 닮은 걸로 치면 세 번째 것이 제일 닮았고 두 번째 것이 제일 닮지 않았다. 세 번째 작가가 데생 실력이나 관찰력은 가장 뛰어나다. 첫 번째와 두 번째 작가는 데생력보다는 대상에 대한 호의를 중점적으로 그림에 담고 있다.

의도적인 것은 분명 아니다. 첫 번째와 두 번째 작가는 실제로 필자와 친밀한 관계를 유지하고 있으며, 세 번째 작가의 그림은 처음 만난 날 받은 것이다. 그래서 필자는 이 세 작품을 보고 한때 모 개그 프로그램의 코너였던 '3인 3색'에 빗대 '성형전ㆍ성형후 부작용'이라 칭했다.

그림 9

여러분에게 말하고 싶다. 좀 닮지 않아도 좋으니 잘 생긴 모습으로 그려 주어라. 캐리커처는 그림 실력을 뽐내기 위한 것이 아니라 하나의 선물이다. 대상에 대한 호의를 마음속에 담고 있으면 자연스럽게 선남선녀가 그려진다. 약간은 성형수술도 해 주면 좋다. 그러나 지나치게 성형을 하면 놀린다고 생각하여 오히려 화를 낼 수 있으니 주의하기 바란다.

필자는 한때 행사를 통해 많은 사람들에게 많은 캐리커처를 그려 주면서, '작가는 진실만을 말해야 한다'는 오만한 사명감을 갖고서 사람들의 단점을 마음껏 화폭에 담았던 기억이 있다.

그림 10

대부분의 사람들은 필자의 그림을 보고 안 좋은 표정을 짓기 일쑤였고, 캐리커처 가격인 1,000원짜리 지폐를 필자의 얼굴에 집어던지고 간 아가씨도 있었다. 진실보다 더 중요한 것은 나의 그림을 통해 누군가를 즐거워지는 것, 그것을 깨달은 것은 캐리커처를 시작한 지 10년째 되는 해였다(그림 10).


에필로그 1

캐리커처를 연습하기 위해 그리스 조각상과 연예인의 얼굴을 관찰하면서, 시대를 초월하는 미의 절대 기준이 있는가에 대해서 항상 궁금했었다. 특히나 연예인들은 거의 비슷한 얼굴들을 가지고 있었다. 같은 원장님께서 시술한 것도 아닐진대 하나같이 비슷한 형태를 하고 있다는 것은 암묵적인 공통의 표준이 있는 것이라고 할 수 있지 않을까?

그래서 필자는 순전히 그림쟁이로서의 호기심 때문에 3~4세 정도의, 기준이 없고 교육이 없고 편견이 없는 어린아이를 대상으로 실험을 한 때가 있다. 연예인 사진과 일반인 사진 두 장을 놓고 마음에 드는 사람을 고르라고 시키는 것이다. 지금까지 실험해 본 결과 100%의 어린아이들이 연예인 사진을 선택했다(모 TV 프로그램에서도 이와 같은 실험을 한 적이 있다). 그렇다면 미의 절대적 기준이라는 게 존재하는 게 아닐까?

에필로그 2

일종의 직업병이랄까? 필자는 사람을 만나게 되면 그의 단점, 아니 단점이라고 세상이 얘기하는 부위를 살피기에 바쁘다. 그러다 보니 본의 아니게 눈이 높다는 오해를 사기도 했는데, 오랜 세월 캐리커처를 그리면서 사람을 보는 새로운 관점이 생겼다.

위에서 얘기한 주 표정, 즉 웃는 인상을 가진 사람이 화려한 이목구비의 사람보다 훨씬 잘생겨 보이고 또 그와의 관계도 싫증나지 않고 오래간다는 것. 또 하나는 살아 있는 눈빛. 총기가 넘치고 의지가 뚜렷한 눈빛은 섹시할 뿐 아니라 때로는 존경심마저 불러일으킨다는 것.
이러다 보니 필자의 눈은 높아졌을 뿐 아니라 까다로워지기까지 해져서 지금까지 솔로로 살고 있다.

에필로그 3

필자는 캐리커처를 그려 주는 행사를 할 때 사람들에게 장래희망을 물어본다. 피아니스트ㆍ운동선수ㆍ과학자 등등의 장래희망을 말하면 그 모습을 그려 준다. 필자에게서 그 캐리커처를 받아 간 사람들이 과연 그 꿈을 실현했을까…?

필자의 취미가 짐작되는 캐리커처.


- 글

김경호 / 만화가, <곰선생의 고전만화 해제>의 만화 그림

웹 브라우저 밖에서 만나는 웹 애플리케이션

어도비의 새로운 CTO가 되어 최근 이슈가 되었던 매크로미디어 출신의 케빈린치(Kevin Lynch)는 어도비 AIR 1.0 버전을 공개하면서 다음과 같이 이야기 했다고 한다. ‘우리는 단지 웹으로 옮기면서 잃어버렸던 옛 데스크톱 시절의 보물들을 되찾아 가는 것뿐이다 (We’re just getting back the lost treasures of the desktop that we lost when we went to the Web)’ 실제로 많은 기업들은 웹브라우저에 갇혀있는 사이트보다는 웹의 장점을 살리면서 데스트톱에서 아이콘만 클릭하면 인터넷이 연결되어있지 않더라도 바로 실행할 수 있는 형태의 접근을 선호한다고 한다. 새로운 시장이라고 할 수는 없지만 그동안 감추어진 보물을 다시 찾은 것처럼 이것들을 차지하기 위한 보이지 않는 경쟁이 진행되고 있다. RIA 시장에서의 플래시 플레이어 사례에서도 보이듯이 먼저 플랫폼을 점령한 이점이 얼마나 강력한가를 알기 때문에 각 기업에서 이 부분에 온 힘을 다해 투자하고 있는 모습을 볼 수 있다. 개발자로써 쏟아져 나오는 새로운 도구에 감탄하기만 할 것이 아니라 이 시장에서 어떻게 기회를 잡을 수 있을지 고민해보는 것도 중요한 시기일 것이다.

이준하 koko8829@naver.com|필자는 Inspiration, Feel Good Factor for Flex Dev (http://koko8829.tistory.com) 라는 긴 이름의 블로그를 열이아빠라는 이름으로 운영하고 있으며 이제 막 세상과 이야기하는 방법을 조금씩 배워가고 있는 중이다. 명랑만화를 좋아하며 오랫동안 잠수중인 길창덕 화백 팬 카페(http://cafe.naver.com/kilchangduk)를 운영하고 있다.

지난 2년여 기간 동안 어도비에서는 AIR라는 제품을 세상에 내놓기 위해 무척이나 공을 들였다. 그러던 중 나름대로 친하게 지내던 모질라 재단에서 프리즘(Prism)이라는 이름의 프로젝트를 공개했다. 프리즘은 사용자가 쉽게 웹 응용프로그램을 자신의 데스크톱으로 가져올 수 있도록 하는 그림을 보여주었다. 일부 언론에서는 프리즘이 AIR를 겨냥해서 발표한 제품이며 파이어폭스를 기반으로 더욱 사용자들이 쉽게 이용할 수 있을 것이라는 반응을 보였다. 이에 발끈한 마이크챔버스(Mike Chambers)와 같은 일부 개발자들은 솔직하지 못한 웹(disingenuous web)이라는 도발적인 제목의 글을 올려서 자사의 AIR 제품과 프리즘은 근본적으로 다른 목적을 가지고 있다고 주장했다.

이렇게 과민하게 반응하는 이유는 웹의 변화가 어떻게 다가올지를 잘 알기 때문일지도 모르겠다. 얼마 전 올라온 통계에 의하면 사람들이 PC 앞에서 보내는 시간의 약 40%를 아웃룩이나 워드 같은 MS의 응용프로그램을 사용하는데 쓰고 있지만 Gmail이나 페이스북, 검색 같은 웹 응용프로그램에 사용하고 있는 시간이 점점 늘어나고 있다고 한다. 불과 몇 해 사이에 컴퓨터가 인스톨된 프로그램만 처리하는 도구가 아니라 웹이라는 공간과 만나 엄청난 생활의 변화를 가져오고 있는 것이다. 이러한 웹 응용프로그램들이 브라우저를 벗어나 독립된 프로그램으로 사용자들이 기존의 데스크톱 프로그램을 사용하던 습관에 따라 활용할 수 있게 된다면 그 비율이 뒤집어지는 것도 시간 문제일 것이다.

웹에서 튀어나온 새로운 경험

2008 자바원 컨퍼런스에서 소개된 이슈 중에 중요한 부분을 차지했던 ‘자바FX’는 ‘Bringing Rich Experiences To All The Screens Of Your Life’라는 말처럼 웹브라우저나 데스크톱뿐만 아니라 사용자들이 접할 수 있는 모든 화면에 새로운 경험 가치를 제공하겠다는 큰 목표를 가지고 있다.

이미 작년 로드맵에 소개되었던 것에서 크게 벗어난 부분은 아니지만 모바일과 임베디드 시장을 기반으로 플랫폼을 확장해나가겠다는 의도가 분명하게 나타났다. 이날 개발팀 라마니(Nandini Ramani)가 소개하는 데모에서는 페이스북 위젯과 관련된 데모를 통해 기존 웹에서 생각하지 못했던 새로운 경험을 만나볼 수 있었다.

웹사이트 안에서 동작하던 위젯을 마우스로 드래그해서 사용자 데스크톱의 바탕화면에 그대로 옮겨놓아 데스크톱 응용프로그램처럼 동작하게 하는 것이다. 그동안 웹과 데스크톱 사이에서는 파일을 드래그해서 업로드하거나 클립보드에 있는 자료를 옮기는 정도의 작업만 가능했는데 웹에 붙어있던 프로그램이 그대로 데스크톱에 옮겨진다는 것은 큰 충격이었다. 자바FX에 대하여는 실체를 접해보아야 알 수 있겠지만 앞서 이야기했던 기능 외에도 어도비 포토샵과 같은 디자인 툴에서 작업한 내용을 그대로 자바FX 소스코드로 변환하는 기능의 경우에는 실버라이트에서 이야기하는 협업 기능과 어도비에서 준비하고 있는 써모(Thermo)의 모습을 그대로 닮아가고 있는 것이 아닌가 생각된다.

어도비 플렉스의 경우 아이콘에 ‘Fx’라는 단어를 사용한 것이 개발초기부터 지금까지 일관되게 지켜왔는데 자바Fx는 어떠한 아이콘을 가져갈지 궁금해진다. 참고로 플렉스 응용프로그램의 확장자는 mxml(의미는 명확하지 않지만 ‘Magic eXtensible Markup Language’라는 해석이 가장 유력하다)이고 자바Fx는 fx라는 파일 확장자를 가진다.

잊고 있었던 보물찾기

앞에서 케빈린치가 이야기했던 잃어버렸던 보물들은 뭘 이야기하는 것일까? 어도비 AIR의 특징들을 살펴보면서 우리가 찾아야 하는 보물들이 어떤 것인지 알아보자.

먼저 AIR와 플렉스 사용범위의 한계에서 찾을 수 있다. 플렉스는 웹브라우저와 그 위에서 돌아가는 플래시 플레이어 기반이다. AIR는 이 한계를 넘어가고 있으며 다양한 형태의 파일과 같이 공존할 수 있다. AIR는 브라우저 대신 AIR 런타임 위에서 각각 다른 실행파일들을 지원하고 있다. 개발을 하기 위해서 전문적인 플래시 기술을 익힐 필요는 없다. 개발자 지원메뉴에서도 Ajax와 플렉스, 플래시 개발자에 대한 별도의 항목을 운영하고 있다.

AIR에서 표현할 수 있는 주요기능은 다음과 같다.

- 파일 입출력 API : 사용자 PC에 파일을 쓸 수 있다.
- SQLite 내장 데이터베이스 : SQLite 데이터베이스 기능을 내장하고 있어서 사용자 PC에 데이터를 저장하고 서버와 동기화시킬 수 있다.
- HTML 지원 : 웹킷(Webkit) 이라는 오픈소스 HTML 엔진을 내장하여 AIR 안에서도 HTML 콘텐츠를 보여줄 수 있다.
- 드래그앤드롭 지원 : 운영체제에서 시스템 드래그앤드롭을 지원한다.
- 네이티브윈도우 : 운영체제 윈도우를 제어할 수 있으며 트레이 아이콘으로 작동하게 할 수도 있다.
- 클립보드 지원 : 클립보드의 내용을 읽고 쓸 수 있다.

그리고 아직은 윈도우 API에 대한 접근에 대한 부분은 이후 버전에서 지원할 계획이라고만 되어있다. 오픈소스로 공개된 내용 중 ‘airconnector’라는 것을 통해서 내 PC에 있는 응용프로그램에 대한 접근을 테스트해볼 수 있다.

AIR의 다양한 기능을 적용한 대표적인 사례로 경매 사이트인 이베이 데스크톱(http://desktop.ebay.com/)을 들 수 있다. 사이트의 특성상 웹브라우저 내에 있는 것보다는 참여한 경매의 진행 상황을 즉시 확인할 수 있는 형태의 응용프로그램이 필요했을 것이다(경매에 참여해보신 분들은 알겠지만 사이트가 편해질수록 경매에 낙찰되기는 더욱 힘들어지는 것 같다). 하지만 웹기반으로 만들어진 사이트를 별도의 데스크톱 응용프로그램으로 재구축하기에는 부담이 되었을 것이고 기존의 장점은 살리면서 사용자에게는 좀 더 편한 사용 환경을 만들어주기 위한 선택으로 어도비 AIR는 최적의 선택이었을 것이다.

이베이 데스크톱을 사용해보려면 이베이 계정을 먼저 생성한 후에 인스톨 페이지에서 프로그램을 다운로드받아 설치하면 된다. 만약 어도비 AIR 런타임이 설치되어있지 않다면 해당 런타임을 다운로드하여 설치한 후에 프로그램이 설치된다.

air 확장자를 가지는 설치 파일을 직접 제공하는 경우도 있지만 사용자가 해당 런타임을 직접 찾아서 설치하는 번거로움을 없애기 위해 badge라는 것을 통해서 바로 설치할 수 있는 옵션도 지원한다. 응용프로그램을 웹사이트에 배포하기 위한 badge를 만드는 과정은 몇몇 파라미터 값만 전달하는 것으로 쉽게 설정할 수 있다. 여기에 약간의 디자인 감각만 추가하면 멋진 설치버튼도 직접 만들 수 있다. 이베이 데스크톱 역시 설치버튼만 클릭하면 모든 설치 과정이 자동으로 진행된다.

웹사이트에서 제공하는 기본 기능들을 제공하고 필요한 경우 해당 사이트로 사용자가 찾아갈 수 있도록 안내한다. 그리고 원하는 내용의 리스트에 대해 rss 형식으로 구독해볼 수도 있고 진행 중인 경매 상황에 대한 메시지도 보내준다. 여기서 더욱 흥미로운 것은 오프라인 상태의 기능이다. 기본적으로 service monitor 클래스를 통해 해당 사이트의 상태나 사용자 네트워크 상태를 확인하여 상황에 맞게 응용프로그램이 동작할 수 있는 기능을 제공하고 있다. 오프라인 상태에서도 프로그램을 실행할 수 있다. 검색 등의 실시간 정보를 조회할 수는 없지만 관심 목록에 저장된 물건이나 의견, 상품의 상세 내역 등은 조회할 수 있다. 퇴근길에 자신의 단말기에 관심 있는 항목을 체크해놓고 네트워크가 지원되지 않은 상황에서도 이동 중에 선택한 항목을 비교해보면서 어떤 것을 선택할지 결정할 수가 있게 된 것이다. 어도비 AIR의 기능중 하나인 SQLite와 같은 데이터베이스를 통해 온라인 상태의 정보를 저장해놓고 오프라인에서 활용할 수 있도록 하는 하나의 예시인 것이다.

오픈소스

어도비 AIR에 적용된 기술 중에서 많은 부분이 오픈소스로 공개되거나 기존의 오픈소스를 활용하여 개발되고 있는데 이러한 프로세스를 정리하기 위하여 별도의 사이트를 운영하고 있다(http://opensource.adobe.com). HTML 콘텐츠를 처리하기 위한 웹킷(Webkit)이나 모질라 재단에 의해 운영되는 Tamarin 같은 경우가 좋은 예다. 또한 SQLite 컨소시엄을 지원하기로 결정하고 스폰서가 되었다. SQLite는 AIR뿐만 아니라 포토샵 라이트룸의 이미지 데이터 처리에 사용하는 등 여러 부분에서 적용을 하고 있다.

그리고 오픈스크린프로젝트(http://www.adobe.com/open screenproject/)를 통해 데스크톱, 휴대폰, 모바일 인터넷 디바이스, 셋톱박스 등에 공통 플랫폼을 제공하기 위한 프로젝트를 어도비가 주도하여 진행하고 있는데 활동내역 중 중요한 이슈가 SWF and FLV/F4V 스펙 사용의 제한 삭제다. 이는 AMF 스펙공개에 이어 파격적인 행보다. 이러한 스펙 공개가 오픈소스는 아니지만 openAMF가 이루어내는 확장성만큼 오픈소스 플래시 플레이어가 다방면의 기기에 적용되기를 바라고 있을 것이다. 플렉스 프로젝트 같은 경우에도 상황실과 같이 24시간 운영되는 환경에서는 이에 적합한 플레이어를 적용하여 개발할 수도 있는 것이다. 이미 Gnash(http://www.gnu.org/software /gnash/)와 같은 오픈소스 플래시 플레이어가 있으며 오픈라즐로에서도 플렉스와 유사하게 swf 파일을 다룰 수 있는 기능을 제공하고 있다.

웹브라우저의 진화

앞서 이야기했던 모질라 재단의 프리즘은 새로운 파이어폭스와 함께 진화해나가고 있다. 먼저 사용자들이 쉽게 자신이 원하는 웹 응용프로그램을 데스크톱으로 가져올 수 있도록 파이어폭스에 연결되는 플러그인이 개발되었다. 이제는 별도의 프로그램 설치 없이 파이어폭스에서 원하는 사이트에 한 번만 클릭하면 자신만의 아이콘을 만들 수 있게 되었다. 파이어폭스 3 에서는 플러그인 형식으로 지원될 계획이지만 파이어폭스 4에서는 통합된 기능으로 좀 더 확장된 기능을 제공할 것이다.

프리즘의 현재 목표는 코드명이 나타내는 의미와 동일하다. 프리즘의 사전적인 의미는 ‘빛의 분산이나 굴절 등을 일으키기 위해 유리나 수정으로 만들어진 기둥 모양의 광학장치’다. 분산이라는 측면에서 웹 응용프로그램들이 다양한 스펙트럼을 가질 수 있도록 지원해주는 것이 프리즘의 목표다.

<그림 1>과 같이 사용자들이 즐겨 찾는 웹 응용프로그램을 프리즘을 통해서 데스크톱에 옮겨주는 역할을 한다. 이런 과정을 통해서 별도의 인스톨을 거쳐야 하고 업데이트할 때마다 불편함을 겪었던 데스크톱 응용프로그램들의 단점을 해결할 수 있는 대안으로 내세울 수 있게 된 것이다.

기존의 웹사이트가 그대로 데스크톱 환경으로 옮겨졌기 때문에 로컬 자원에 대한 접근이나 섬세한 그래픽 표현 등의 제한이 있을 뿐 웹의 장점을 그대로 경험할 수 있게 된다. 하지만 이러한 부분에서는 파이어폭스 3에서는 오프라인에 대한 지원계획 등의 반영으로 기존의 웹 응용프로그램들을 좀 더 강력하게 만들 수 있는 기회를 제공하고 있다.

프리즘 체험해보기

현재 프리즘을 사용할 수 있는 방법은 두 가지다.

먼저 파이어폭스 3 베타가 설치되어있다면 프리즘을 바로 체험해볼 수 있는 플러그인을 적용해보자. 해당 페이지에서 바로 설치하면 된다(https://addons.mozilla.org/en-US/firefox/ addon/6665).

플러그인을 설치했다면 도구(한국어 설치기준) 메뉴에 ‘Convert Website to Application’이라는 항목이 생겼을 것이다.

데스크톱 응용프로그램으로 만들고 싶은 사이트에 방문하여 해당 메뉴를 클릭하면 간단한 설정창을 볼 수 있다. 몇 가지 옵션만 지정하고 확인을 해주면 바탕화면에 만들어진 바로가기 아이콘을 확인할 수 있다. 아이콘은 사이트에 파비콘이 지정되어있다면 해당 파일을 자동으로 설정해준다. 실행해보면 웹브라우저가 아닌 독립된 프로그램 위에 자신이 지정한 사이트가 올라오는 것을 확인할 수 있다.

다음은 직접 프리즘 구동 프로그램을 설치해서 확인해보는 방법이다. 설치 후 실행되는 화면은 파이어폭스 플러그인과 동일하다. 다만 직접 URL 같은 항목은 입력해주어야 한다. 삭제 시에는 설치된 아이콘만 삭제하면 된다.

프리즘은 XULRunner를 바탕으로 만들어진 브라우저 형태의 Webrunner에서 시작되었다. 모질라 위키(http://wiki.mozilla. org/Prism)에서 좀 더 자세한 내용을 확인해볼 수 있다.

프리즘과 어도비 AIR는 같은 것 아닌가요

프리즘은 현재 상태로는 웹브라우저를 대체하는 기능으로만 제한되어있다. 사용자가 추가적인 정보를 저장해놓거나 콘텐츠를 제어할 수 있는 기능은 제공하지 않는다. 물론 향후의 로드맵에 따라 방향성은 변경될 수도 있지만 현재로서는 기능을 제한하고 있다. 더 상세한 기능이 추가된다면 일반적인 사용성이 떨어질 것이다. 앞서 만들었던 imaso 사이트를 보여주는 웹브라우저 형식의 기능은 어도비 AIR에서도 쉽게 만들 수 있다. 여기에서 단순하게 웹사이트를 옮겨놓는 것이 아니라 다양한 웹 기술을 접목시켜 또 다른 콘텐츠를 만들어낼 수도 있는 것이다. 웹브라우저 기능에 간단하게 해당 사이트의 이미지를 추출해내는 소스를 살펴보도록 하겠다. 코드의 내용은 AIR in Action(Manning, 2008)의 샘플을 참고했다.

실행화면에는 한 개의 텍스트 입력박스와 세 개의 창이 배치된다.

입력박스에는 원하는 url 주소를 입력하게 되고 세 개의 창에는 각각 사이트 콘텐츠, 이미지 리스트, 선택한 이미지가 표시된다. 입력상자에서 사용되어지는 API는 플렉스에서와 동일한 API를 사용하게 된다.
TextInput 콘트롤에서는 change, dataChange, enter, textInput과 같은 이벤트와 상속된 이벤트를 사용할 수 있다. 여기서 사용한 enter는 사용자가 Enter키를 눌렀을 때의 이벤트 처리다.

<mx:TextInput id=“InputBox” width=“100%” enter=“onInput(event)”/>

이벤트가 처리되면서 입력한 문자열이 currentURL이라는 변수에 들어가게 되는데 이때 ‘[Bindable]’ 이라고 선언된 변수의 경우 변수의 속성이 변경되면 자동으로 속성변경에 대한 이벤트(propertyChange)가 생성된다. 때문에 다음의 HTML 콘트롤의 location 값이 빈값에서 입력한 값으로 반영된다.

<mx:HTML id=“page” complete=“onHTMLComplete(event)” location=“{currentURL}”/>

HTML 컨트롤은 플렉스에서는 제공되지 않고 어도비 AIR만의 고유한 API다. HTML 외에도 윈도우나 파일 시스템과 같은 기능으로 활용할 수도 있다. 페이지 로딩이 완료되면 해당 이벤트를 받아 이미지를 가져오게 되는데 이때 자바스크립트의 DOM에서 document.images 속성에 접근하게 된다. 이 속성은 HTMLCollection 객체로 존재하는데 HTMLCollection이나 NodeList 같은 객체는 배열처럼 사용할 수 있다. 자바스크립트 프레임워크인 프로토타입(Prototype)에서는 $A 함수를 통해서 이러한 DOM 컬렉션 클래스들을 배열 객체로 변환시켜 사용하고 있다. 여기서는 루프를 돌면서 해당 값을 다시 배열에 담고 있다. 결과로 나온 값을 리스트에 집어넣고 해당 리스트에서 원하는 이미지를 처리하게 된다.

간단한 예제이지만 기존의 웹과 어떠한 형태로 통합되고 콘텐츠를 다룰 수 있는지 보여주는 좋은 예제다.

오프라인 웹 애플리케이션

오프라인 웹 응용프로그램을 이야기한다면 구글 기어스(Google Gears)를 빠뜨릴 수 없다. 실제 어도비 AIR 관련된 샘플이나 프로젝트 중에도 구글 기어스를 기반으로 제공하는 서비스들이 많다. 구글 독스 등이 최근 오프라인에서도 사용가능하게 되었다. 또한 모바일 부분도 지원하기 시작했다고 한다. 아직 1.0 버전이 나오기도 전에 이미 많은 곳에서 사용되면서 여러 가능성을 보여주고 있다. 구글 기어스는 정교한 데이터 저장관리와 응용프로그램 캐싱 및 멀티 스레딩 기능 자바스크립트 API를 도입하여 강력한 웹 응용프로그램 오프라인 기능을 손쉽게 추가할 수 있도록 한다. 웹 데이터 처리 부분은 최근 발표된 IE8에서도 유사한 오프라인 정보 관리 기능을 선보였다고 한다.

WPF(Windows Presentation Foundation)의 경우 뉴욕타임즈의 사례에 이어 국내 언론사 등에서 도입 하였는데 기존 언론사 사이트와는 달리 종이신문의 장점을 모니터로 옮긴 느낌을 주도록 많은 신경을 쓰고 있다. 데스크톱 응용프로그램이 가질 수 있는 가능성 중의 하나가 이러한 사용자들의 손맛을 살려주는 일이다. 웹에서는 여러 가지 제약에 어려웠던 점들이 데스크톱에서는 쉽게 해결되는 경우가 많다.

10년 후의 웹

인포메이션 디자인 업계의 전설적인 인물인 클라멘트모크(Clement Mok)는 10년 전에 이런 이야기를 했다고 한다. ‘웹을 PDA, 전화 등으로 사용할 수 있는 멀티모달(Multimodal)로 생각한다면 지금과 전혀 다른 시각에서 바라봐야 한다. 멀티모달은 한 가지 이상의 네비게이션 시스템이 가능하다. 10년 이내에 우리의 웹에 대한 시각이 멀티모달과 다차원으로 변할 것이다. TV, 컴퓨터, PDA나 전화로도 웹을 사용할 수 있을 것이다’. 10년이 지난 지금 한국에서는 휴대전화를 통해서 풀브라우징 서비스까지 가능하게 되었다. 그렇게 지나오는 기간 동안 한 가지 시각만 고집하고 있었다면 웹은 여전히 사각 모니터 안에만 존재했을 것이다. 웹의 공간이 브라우저 안에만 있는 시기는 얼마가 지나면 또 다른 추억이 되어버릴지도 모른다. 단지 웹을 데스크톱 환경으로 끌어내리려고만 기술적으로 고민했다면 지금과 같은 다양한 경험들을 만들어낼 수 없었을 것이다. 이제 플랫폼은 만들어져있고 그 위에 상상력을 펼치는 것은 여러분의 몫이다.

참고 자료
1. Adobe AIR to erase Web, desktop division | http://www.news.com/8301-10784_3-9877238-7.html
2. Mozilla Prism and the disingenuous web | http://www.mikechambers.com/blog/2007/10/25/mozilla-prism-and-the-disingenuous-web/
3. PC에서 가장 많이 사용하는 소프트웨어(서비스)는? | http://poem23.com/818
4. 자바원 개막: 썬 ‘자바FX’ 집중 조명! | http://www.zdnet.co.kr/news/enterprise/etc/0,39031164,39168588,00.htm
5. 개정판 - 예제로 배우는 어도비 플렉스(에이콘,2008)
6. airconnector | http://code.google.com/p/airconnector/
7. 파이어폭스 3 베타 다운로드 | http://www.mozilla.com/en-US/firefox/all-beta.html
8. Prism for Firefox 설치 | https://addons.mozilla.org/en-US/firefox/addon/6665
9. 파이어폭스 확장기능으로 돌아온 모질라 프리즘 | http://paperinz.com/499
10. http://en.wikipedia.org/wiki/XULRunner

ARDUINO 보드를 소개하며

현재 MDF 조각기는 작동하기는 하나 여러 가지의 현실적인 타협으로 고민하는 상태다. 차라리 중국 Sieg의 작은 밀링(mill)을 하나 사서 만드는 것이 빠를 것 같기도 하지만 실제로 바닥부터 출발하여 만드는 것만큼 빠른 학습곡선은 없다. 이런 과정을 공유하는 곳이 인터넷이다. 인터넷은 필자를 포함한 많은 사람들의 진정한 스승이다. 과거에는 몇 권의 책만 읽고 귀동냥으로 들은 다음 몸으로 때워야 했다. 완성된 기계나 망가진 기계를 가지고 진지하게 뜯어보는 일도 배움의 중요한 부분이었다. 그러나 요즘은 인터넷을 찾아다니며 글과 그림을 보는 일로 거의 몇 년에 해당되는 도약을 가능하게 만들기도 한다. 생각하면 무섭기도 하지만 본질적인 일은 변한 것이 없다. 집중된 에너지가 필요하다. 그런데 필자에게는 집중된 에너지를 방해하는 많은 일들이 있다. 할 일이 너무 많고 좋아하는 것들도 너무 많다. 이번의 글은 잠시 필자를 홀린 아이템의 하나를 적을 것이다. 필자는 정말 매혹된 적이 있다. 보드를 몇 개 수입하거나 빌릴까 망설이다가 만능기판에 만들어서 바로 테스트를 시작했다. 잠깐의 해크로 오리지널 보드의 버전들과 문제점 개선까지 알 수 있었다. 워낙 간단했다.

MDF 조각기의 최종안을 놓고 고민하는 와중에 원고를 쓸 때가 되었으니 조각기만큼 중요한 주제를 다루지 않을 수 없다. 필자는 요즘 오디오(해묵은 앰프 만들기와 스피커 유닛)에 빠져 있으나 3-4월에는 아두이노(Arduino)보드에 빠져 있었다. 8080, 8085,Z80부터 시작하여 여러 가지 제어기를 써왔고 다양한 개발환경을 사용해 보았지만 아두이노 보드와 비슷한 환경은 처음이다. 이 보드는 makezine을 포함한 여러 가지 프로젝트에 사용하고 있고 미디어 아티스트들 중에도 이 보드를 사용하는 사람이 많다. 그만큼 쉽고 가벼운 마음으로 개발을 할 수 있고 실제로 복잡한 개발교육의 입문용으로 아주 적당한 보드이기도 하다. 최근에는 우리나라에도 수입되기 시작하면서 avr 개발 보드를 파는 곳에서 아두이노 보드를 팔기 시작했다. 플러그하우스(plughouse.co.kr)라는 회사에서 취급을 시작한 것이다. 보드는 예전부터 알려져 있었는데 이 보드의 설계자가 한국에 와서 워크숍을 연적도 있다. 이 보드가 필자의 눈에 들어 온 것은 reprap 프로젝트가 그 동안 써오던 pic 콘트롤러 대신 아두이노 보드를 차기 콘트롤러로 채택하려 한 후부터다.

간단히 말하면 하드웨어 자체는 atmega 168 또는 atmega 8 마이크로 콘트롤러를 바탕으로 간단한 제어기를 만든 것이다. <화면 1>은 제일 많이 팔리는 데시밀라 보드다. 최초의 버전은 일반적인 시리얼 통신이었으나 요즘 노트북에는 rs-232 (시리얼) 포트가 사라지고 있다. 데스크톱 PC에는 당분간 남아있을 것이다. 그런 이유로 데시밀라보드는 USB를 시리얼로 변환하는 칩을 사용하고 있다.

하드웨어 자체는 전혀 새로울 것이 없다. 그리고 아두이노의 홈페이지(www.arduino.cc)에 가면 모든 회로와 PCB가 공개되어 있다. 오픈 소스 하드웨어인 것이다. 오픈 소스 소프트웨어에 이어 오픈 소스 하드웨어가 중요한 재료로 등장했다고 볼 수 있다. <그림 1>은 원래의 아두이노에 가까운 아두이노 시리얼의 회로도다. 기본적인 회로는 모든 버전의 하드웨어에 공통적이라고 볼 수 있다.

임베디드 시스템을 만들어 본 사람이면 도대체 이 회로가 무엇이 특별한 것인지 의아할 것이다. 일상적인 atmega8(또는 atmega168)의 보드다. 이 보드를 특별한 것으로 만든 것은 사람들이 이 저렴한 보드와 개발환경이 여러 가지 장난감을 만드는 일에 아주 편리하다는 것을 알게 되면서 부터다.

우선 개발 환경이 다르다. 이 점은 매우 특별한 점이다. 사람들이 AVR 프로세서의 개발을 하면서 만나는 환경은 AVR studio나 ICC AVR과 같은 전용 개발 환경이었다. AVR 칩을 개발하면서 무료로 다운로드 받을 수 있는 AVR Studio는 매우 훌륭한 프로그램인데, gcc의 avr 개발환경을 사용하기 쉬운 IDE 환경으로 만든 것이다. 지금까지의 AVR 사용자들은 이와 비슷한 프로그램 중에 하나를 선택할 수밖에 없었다. 사용이 어렵지는 않지만 초보자들이 배우기 쉽거나 편한 마음을 주는 인터페이스는 아니다. 엔지니어가 아닌 사람들이 쉽게 배우려면 더 간단하고 명료해야 한다!

필자가 홀린 부분은 아두이노의 개발환경이었다. 스케치(sketch)라는 프로그램이 있다. 이 프로그램을 사용하면 매우 간단하게 코드를 작성하고 바로 컴파일하고 보드로 다운로드 시킬 수 있다. 프로그램만 작성하면 바로 시리얼로 다운로드하여 프로그램을 즐길 수 있는 것이다.

이 개발환경은 자바와 processing 그리고 gcc를 포함한 여러 가지 오픈소스 프로그램을 이용하여 개발했다. ATMEGA 168(또는 8) 보드의 마이크로콘트롤러에는 부트로더를 설치하고 시리얼로 데이터가 전송되기를 기다린다. 그러니 특별한 개발환경은 없고 USB 케이블이 유일한 개발 장비인 셈이다. 사람들은 간단한 설명을 읽고 바로 개발에 들어갈 수 있는 환경을 좋아했다.

그리고 이 편리한 개발환경은 AVR이라는 탁월한 마이크로프로세서가 있었기 때문에 가능했다. AVR은 8비트에서는 아주 강력한 플랫폼이다. 팹(Fab)에서도 주력 마이크로프로세서다. 필자는 사람들이 쉽게 접근하는 교육과정이 힘들 것이라고 생각했는데 아두이노가 많은 부분을 해결했던 것이다. 그래서 아두이노는 오픈소스 컴퓨팅 플랫폼이다(맥이나 리눅스에서도 개발환경은 동일하다).

나중에 더 적겠지만 아두이노의 오리지널 보드 말고도 많은 호환보드가 존재한다. 필자는 처음부터 다른 보드들에 홀려서 보드를 선정하느라 며칠을 보냈다. 조합을 만들기 위해서다. 저렴한 보드를 만들 수 있다면 굳이 아두이노 보드를 살 이유가 없다. 대안을 더 좋아하는 것은 필자의 본능이다.

그러나 사람들이 접근하기 쉬운 환경을 만들었다는 것은 아두이노 팀의 대단한 위업이라고 할 수 있다. 표준적인 장난감을 만들기 위한 가장 중요한 작업이다. 오리지널 아두이노에 대한 존경심도 충분히 갖고 있다.

하지만 항상 오리지널 보드가 편한 것도 아니다. 용도에 따라서는 작은 보드나 변형된 보드가 편한 경우가 있으며 더 저렴한 보드를 사용하고 싶어 하는 사람도 있다. 그러니 나중에 대안들도 살펴보는 것이 좋겠다. 이들은 아두이노라는 이름을 사용하지 않고 보아두이노(Boarduino), 프리두이노(Freeduino)같은 이름을 사용하고 있다. 그리고 하드코어적인 RBBB(Really Bare Bones Board) 같은 제품들도 있다. 필자는 보아두이노의 회로가 마음에 들었다. 한때 회로를 제작하고 PCB를 찍을까도 생각해 보았으나 곧 다른 일들에 홀려서 묻혀버리고 말았다.

약간의 소프트웨어만 다룰 줄 알면 기존의 많은 예제들과 작품들을 가지고 많은 일들을 빠르고 쉽게 배울 수 있다. 사용자는 외부의 신호를 감지하거나 SW를 켜고 모터를 돌리기도 한다. 사용자와의 상호작용을 위한 여러 가지 신호와 액추에이터 그리고 무엇보다도 많은 사용례들이 늘어나고 있다. 많은 개발보드들이 응용의 예를 늘리기 위해 필사적인데 비해 아두이노는 저절로 늘어나고 있다. 재미와 개발의 영역이 만나는 곳에 이미 많은 예제들이 있다. 임베디드나 로보틱스를 포함해 교육과정을 준비하는 사람들 취미나 호기심을 위한 프로젝트에는 최선은 아니더라도 매우 좋은 선택이라고 할 수 있다. 앞서도 말했지만 필자에게는 Fab의 연장으로 중요한 플랫폼으로 생각하고 있다. 조만간 필자는 이 분야에 대한 책을 써야 할 것으로 생각하고 있고 그런 의미에서 아두이노는 중요한 프로젝트다.

우선 전자장치와 디지털에 대한 문턱을 낮춘다. 몇 가지를 해보고 나면 더 어려운 프로젝트가 어렵지 않은 프로젝트로 변한다. 필자는 이 문턱 낮추기를 위해 고심하다가 아두이노를 발견하고 놀랐다. 그냥 AVR 마이크로프로세서를 배우는 수준이 아니라 전자공학 만들기에 대해 많은 것을 배울 수 있다. 게다가 다른 AVR 보드들과 마찬가지로 아두이노 보드의 가격은 매우 싸다. 몇 만원으로 시작할 수 있는 프로젝트다. 이 보드로 정말 많은 것들을 할 수 있다.

아두이노 보드의 장점

<그림 2>는 ATmega 8의 블록다이어그램이다. 이 프로세서는 디지털로 외부 신호를 읽거나 아날로그 신호를 AD 컨버터로 읽거나 카운터 동작이나 PWM 신호를 보낼 수 있다. 여기에 약간의 회로를 더하면 거의 모든 일을 할 수 있다(예전에는 꿈의 콘트롤러였지만 요즘은 소매로 ATmega8은 천 원대 168은 4천 원대로 구입할 수 있다). 아두이노 데시밀라나 아두이노 환경을 구현할 간단한 보드는 이 콘트롤러의 기능을 간단하게 요약하여 복잡한 IO를 한 줄의 스케치 문장으로 바꾼다. 그러니 알고리즘만 만들 수 있으면 센서를 붙여 외부의 전압을 읽거나 외부장치를 움직이는 것은 아주 간단한 작업으로 변한다. 기왕 만드는 김에 약간의 간단한 전자 지식까지 배워 응용한다면 실상의 일들을 코딩하는 강력한 제어기로 변하는 것은 순식간이다. 초등학생이라도 제어기를 만들 수 있다. 미디어 아티스트들이 간단한 제어기를 만들어 인터랙티브 작품을 만드는 일도 아주 간단했다. 실제로 그동안 국내의 아두이노의 많은 작품들이 미디어 작품을 만드는데 사용되었다. 필자가 이 사실을 알게 된 것은 최승준 님의 이야기를 들은 후다. 웹을 검색하고 나서는 예상외로 많은 사용이 있었다는 것을 재확인 했다.

필자는 『Make Things to Talk』라는 책과 아두이노 사이트에 있는 몇 개의 예제를 읽고 실제 세계의 프로그래밍을 이토록 쉽게 가르칠(배울) 수 있다는 것을 알 수 있었다. 중요한 점은 쉽고 직관적이라는 것이다.

http://www.arduino.cc/en/Tutorial/HomePage 에 있는 예제들을 보자. 아두이노 보드와 간단한 브레드보드(사진의 구멍 뚫린 기판) 그리고 LED와 가변저항 같은 것으로 Sketch의 사용법을 익히는 일이 단시간에 끝난다. 워크숍으로 진행하면 초보자들이 AVR 보드를 손에 익히는데 몇 시간이면 충분하다는 것을 알게 된다. 그 다음에는 임베디드 프로그램을 혼자서 익힐 수 있다. 그러니 처음부터 심각하게 개발 프로그램을 익히느라 고생할 필요도 없다. AVR 내부를 너무 고민하지 않아도 된다. 웬만한 작업들은 이미 스케치에 내장되어 있기 때문이다. 이정도로도 온도나 습도를 읽어 들이기도 하고 근접센서들을 읽어 들이거나 전압을 읽을 수 있다. 나머지 응용은 그야말로 머리 쓰기에 달려있다. 최적의 코드는 아니더라도 그럭저럭 원하는 코드를 만들어 낼 수 있다. 그렇다면 만들기의 문턱은 낮아진다. 게다가 예제들도 꽤 많다. 우선 아두이노가 돌아간다고 생각하고 가장 간단한 코드를 짜보자.

int ledPin = 13; // LED connected to digital pin 13

void setup()

{

pinMode(ledPin, OUTPUT); // sets the digital pin as output

}

void loop()

{

digitalWrite(ledPin, HIGH); // sets the LED on

delay(1000); // waits for a second

digitalWrite(ledPin, LOW); // sets the LED off

delay(1000); // waits for a second

}

코드는 처음에 setup() 부분을 수행하고 그 다음 loop() 부분을 수행한다. pin 13은 약간의 delay를 갖고 불이 점멸된다.

그 다음엔 <화면 3>과 같이 가변저항을 연결한다.

이번에는 다음과 같은 코드를 sketch에서 실행한다. 이 코드는 가변저항의 값을 읽어 전압 값만큼 지연(delay)을 준다.

int potPin = 2; // select the input pin for the potentiometer

int ledPin = 13; // select the pin for the LED

int val = 0; // variable to store the value coming from the sensor

void setup() {

pinMode(ledPin, OUTPUT); // declare the ledPin as an OUTPUT

}

void loop() {

val = analogRead(potPin); // read the value from the sensor

digitalWrite(ledPin, HIGH); // turn the ledPin on

delay(val); // stop the program for some time

digitalWrite(ledPin, LOW); // turn the ledPin off

delay(val); // stop the program for some time

}

실로 간단하지만 좋은 예제가 아닌가? 가변 저항을 돌린 만큼 점멸시간이 길어지고 짧아진다. 독자들이 원하면 습도나 촉각을 이용한 간단한 제어기 같은 프로젝트도 얼마든지 만들 수 있다.

<화면 4>와 <화면 5>는 조금 엽기적인 예들을 보여주고 있다. 하나는 필자가 가장 경제적인 아두이노 클론인 보아두이노를 기판을 이해하기 위해 만들어 본 것이고 이 보드로 아두이노를 이해했다. 부트로더에서 퓨즈비트까지 다 이해해서 만들어 볼 수밖에 없었다. 반드시 아두이노를 사야하는 것만은 아니다. 보아두이노는 보드 자체가 하나의 부품처럼 브레드 보드 등에 얹을 수 있도록 만든 것이다. 물론 오리지널과 100% 호환된다. 다른 하나는 이고이(Igoe)의 보드로 아예 브레드 보드위에 조립하는 방법을 설명하고 있다. 조금 더 하드코어로 가면 크리스탈(수정 발진자)마저 생략하고 AVR 칩 하나로 아두이노처럼 동작하도록 만들 수 있다.

아두이노로 만든 프로젝트들은 아주 많으니 독자들은 많은 영감을 얻을 수 있을 것이다. 아직은 PC와의 통신에 불만이 있기는 하지만 중요한 플랫폼 하나를 득템한 것이다. 웬만한 것은 거의 다 만들어 볼 수 있다.

원본 위치 <http://imaso.co.kr/?doc=bbs/gnuboard.php&bo_table=article&wr_id=32219>

게임그래픽전문가 실기 예상문제

게임그래픽전문가 실기.zip

게임그래픽전문가 실기 배점 기준|


1. 빛의 방향

2. 인체 비례

3. 최대한 똑같이 그리기

4. 색감

네가지 정도 주의하셔서 작업 준비하세요...

※ 수작업은 그렇게 큰 비중으로 들어가지 않다고 하네요. 100점 만점이라면...20~ 30점 정도?

※ 마우스를 사용해서 시험보실경우 시간이 많이 모자라실꺼에요...

타블렛을 사용하시면 시간이 많이 단축되긴 하지만...절대적으로 필요한건 아닙니다.

2D로 실기시험 보시는분들은 난이도가 점점 높아지고 있습니다.


3디시험

로우 폴리건으로 시험 보구요

하나의 모델을 드려서 네방향으로 프린트 출력하는 문제입니다.

폴리건수는 500p

맵핑은 시험 보지 않구요..단순 모델링만 시험 채점 기준입니다.

당연히 인체비례적인 부분이 제일 중요합니다.

원래 시험 의의로 봐서는 디스켓에 저장해서 파일형태로 제출해야 맞는건데요..

(그래야 폴리건수를 채점할 수 있겠죠? .)

감독관님들의 불찰인지 디스켓에 저장하지 않고 그냥 프린트한걸 최종 결과물로 제출하고 만답니다.

3D시험의 채점 기준은 원칙적으로는 게임에 사용되는 모델의 용량을 최소화 하면서도

자연스런 모델링을 이끌어 내는데에 놓여져 있어야 하는데요

프린트로 제출하게 되면서 모델들의 기본 인체 비례정도만 시험의 채점 기준이 되고 있습니다.
--------------
캐릭터관련 원화라면..

앞모습과 뒷모습이 잘나와있어야하고,
될수있으면 쓰리디작업하기에 불편합이 없도록
여러가지 캐릭터에 대한 정보들이 적혀있으면 좋다.

배경관련 원화라면..

건물 같은경우는 건물의 전체적인 형태를 잘나타내어주고,
될수있으면 이해가 쉽도록 풀어서 그려진 그림을 올려준다.
캐릭터와 마찬가지로 3d작업에 도움이되도록 여러가지 정보들이 적혀있으면 좋다.

그림사이즈는..

클수록 좋습니다. 너무 작은 그림은 보고 만들기가 힘들기때문에...
자세히 잘나타나도록 될수있으면 큰사이즈의 그림을 올려주시기 바랍니당.

일단 위의 사항을 지켜주시면 좋겠고 굳이 아니라도 이런건 카페회원들이 꼭 봐줘야한다..
라는 그림이나 원화도 올려주셔도 좋겠습니당..


2008 게임기획전문가 자격증 사진



http://media.daum.net/society/others/view.html?cateid=1001&newsid=20080523141914094&cp=yonhap

<춘천 모 대학 교수 유학생 성추행 `파문'>

연합뉴스 | 기사입력 2008.05.23 14:19


대학, 징계절차 없이 해당 교수 사직처리
(춘천=연합뉴스) 신창용 기자 = 강원 춘천의 모 대학의 교수가 자신이 지도하는 외국인 유학생을 1년반 동안 상습적으로 성추행을 한 사실이 뒤늦게 알려졌다.

특히 대학 측은 성추행 사실이 확인됐는 데도 징계는 고사하고 정년퇴임을 6개월여 남겨둔 해당 교수의 사직을 받아들이고 퇴직금까지 지급한 것으로 드러났다.

23일 해당 대학과 상담소 등에 따르면 석사학위 지도교수인 A 씨로부터 2006년 하반기부터 상습적으로 성추행을 당해 오던 외국인 유학생 B(27.여) 씨가 교내 상담센터와 춘천 시내 상담소를 찾은 것은 지난 3월.

B 씨는 상담시 "A 교수가 연구실에서 엉덩이를 쓰다듬고 옷속으로 손을 집어넣어 신체 일부를 만지는 등 1년반 동안 상습적으로 성추행 했다"며 "다른 사람들이 있는 자리에서 성적으로 모욕을 주기도 했다"고 토로했다.

B 씨는 또 "A 교수가 전화를 받지 않으면 불러내서 한 달에 20만원씩 지급되는 연구비를 주지 않겠다고 협박했다"며 "심장병까지 생겨 지난 해 8월 가족을 만나고 치료도 받기 위해 고향을 방문했더니 자신의 허락 없이 가버렸다며 7개월 동안 연구비를 주지 않았다"며 대책을 호소하기도 했다.

이밖에 A 교수는 B 씨가 문제를 제기하자 사건을 덮기 위해 합의금 명목으로 400만원을 제시하기도 했다고 상담소 측은 전했다.

학교 측은 이에 성추행 문제가 제기된 지 20여일이 지난 뒤 상담센터 관계자와 해당 교수, 해당 유학생 등이 참석한 가운데 정년퇴임을 6개월여 앞둔 A 교수의 사직을 받아들이는 조건으로 합의했다. A교수는 지난 달 사직한 것으로 확인됐다.

대학 관계자는 징계위원회를 열지 않은 이유에 대해 "공식적인 절차를 밟게 되면 아무리 비밀리에 한다고 하더라도 이 문제가 외부로 알려지게 될 가능성이 커 B 씨가 부담을 많이 느꼈다"며 "B 씨가 비밀 보장을 원해 A 교수가 사직하는 선에서 원만하게 문제가 해결됐다"고 말했다.

연합뉴스는 A 교수의 해명을 듣기 위해 접촉을 시도했으나 연락이 되지 않았다.
changyong@yna.co.kr
(끝)
< 연합뉴스 긴급속보를 SMS로! SKT 사용자는 무료 체험! >
< 저작권자(c)연합뉴스. 무단전재-재배포금지. >

게임기획전문가 실기 노하우! Knowhow

min2__da 2004.12.30 15:13

조회 7,366

-----------------
제 1회 게임기획전문가 시험 필기.
-----------------

1번문제> 자신의 만들게임의 장르를 결정하고 그 이유에 대해서 200자 내외로 설명하시오.

-200자면 원고지 한장 분량이군요. 이른바 30초 마케팅용임을 염두에 둔다면 문제없을듯 합니다.
문제가 정확하다면, 중요한건 '장르의 결정'이고, 설명해야하는건 그 장르를 왜 결정했는지에
대한 이유일 것입니다. 만들게임에 대해 쓸 필요는 없어보이는 문제입니다. 왜 그 장르의 게임을
만들기로 했는지에 대한 이유에 대해서 집중하시면 문제될 것은 없어보입니다.
200자 내외라면 몇자나 초과해도 되느냐라고 궁금해하실 분이 있으실지 모르겠는데, 200자쯤 되는
그 '줄'에서 멈추시면 됩니다. 글자 맞추는 놀이는 아니고, 내외라고 했으니 앞뒤 10자 정도의
여유는 있다고 봐야겠죠.


2번문제>예시된 장르 RTSgame <실시간 전략시뮬레이션> 참고게임 ----->스타크래프트,워크래프트 시리즈..등등..
* 그에 따른 대상 연령층을 정하시오..
* 그 대상 연령층을 정한 이유가 무엇인가 (200자내외)

(예시를 들 필요가 있습니다만, 앞서 이야기한 이유로 예를 들 필요가 있다면 문제에 언급된 대로
스타크래프트로 하겠습니다. 하지만 수험자에게 스타크래프트를 분석하라는 문제는 아닙니다.)

-이건 전제를 조건으로 하는 문제입니다. 당신이 RTS를 만들기로 이미 결정된 것입니다. 이제부터
변명의 시간인거죠. 어라? 난 RTS 안할건데... 란 생각은 마시고, 문제에 충실하시길. RTS를 만들기로
했으니, 이제 거기에 입각해서 생각하면 됩니다.그래서 머리속에 당신이 만들 RTS를 하나 생각해두어야 합니다.
대상 연령층을 잡는거야 잡으시면 되고, 이유는 이 게임에 어떤 특징이나 이유때문에 그 연령층이 타겟이
되는지 설명해야합니다. 그 게임이 그 연령층(유아,10-15세,중고등학생,23-30세의 남성 등등..)에게 어떤
점에서 어필할 수 있는 지, 혹은 그 연령층 외에 계층은 어떤 이유로 이 게임의 타겟이 되지 못했는지에
대해 언급하면 됩니다.

* 게임의 제목을 정하시오.
* 그 제목을 정한 이유를 무엇인가? (200자 내외)

-앞서와 같습니다. 제목은 마케팅의 첫번째 무기입니다. 왜 그 제목을 정했으며, 그 제목은 어떤 의미를
가지고 어떻게 어필하는지 적어야합니다. 앞서 문제인 연령층에 그 제목이 어떻게 어필하는지에 대해 적
을수도 있을 겁니다. 독특한 언어가 사용되었다던가, 어감이 특정한 어감이라면 왜 그런 어감이 됐으며
어떤 이유가 있었는지, 그 제목이 보는 이로하여금 어떤 기대를 불러일으키는지 언급할 수 있습니다.
앞으로 편의상 수험자가 디자인하는 이 게임을 'It'이라고 부르겠습니다.

* 다른 게임에 비해서 특징이 되는 플레이상의 기술에 대해서 3가지 기술하시오..
-RPG의 스킬 이야기가 아닙니다. 워크래프트는 스타크래프트와 다르게 히어로라는 성장개념이 가미되어
있습니다. 이것은 분명 일반게임인 스타크래프트에 비해 특징이 되는 플레이상의 기술일 것입니다.
마찬가지로 'It'에서 유저가 느끼게될 게임방식의 차이점을 말하면 됩니다. 요는 아 이 부분은 다른
RTS(스타크래프트나 워크래프트 등등)랑 다르구나라고 생각할 수 있는 부분에 대한 이야기입니다.
문제에서 언급한 '다른 게임'상호간의 차이로서는 MS사의 어떤 RTS는 스타크래프트와 다르게
플레이어가 직접 컨트롤을 통해 지역공격등의 게임내 개입을 할 수 있습니다.
이런 식으로 '다른 RTS'들과 'It'의 플레이상의 차이점에 대해 3가지를 씁니다.


* 게임의 기술적 우위에 대해서 3가지 기술하시오.
* 위에 같은 기술이 있을경우 우려되는 문제를 기술하시오.
-문제의 문맥이 여러가지로 해석될 수 있어서, 자료부족을 탓할 수밖에 없군요.
어쨌든 무턱대고 유추한다면 개발환경이나 개발기술에 대한 이야기가 될 수 있을 겁니다.
아마 실제문제가 이렇게 무턱대고 나오리라고는 생각하지 않습니다. 좀 더 설명이 있기를
기대해야죠. --; 3D라거나, LOD가 적용됐다거나, 그런걸 언급해야할까요? 잘 모르겠습니다.--;



* 이 게임의 장,단점을 4분야에서 2가지 이상 기술하시오.<SOWT분석>

-SOWT는 전략경영기법입니다. Strength,Weakness,Opportunity,Therat의 약자입니다.
강점과 약점, 기회와 위기를 말합니다.
대체로 강점과 약점은 이 게임 자체의 내부적인 이야기이고,
기회와 위기는 외부적인 이야기를 말합니다.
이 강,약,기회,위기 4분야에서 2가지씩 써넣는 것입니다.

흠... 예를 들어야겠는데, 그럼 선을 넘는 것 같아서, 다른 이야기를 잠시 드리겠습니다.
SOWT에는 다른 4가지 전략이 있습니다. SO ST WO WT가 그것입니다.

SO는 강점+기회 전략으로서 이 기회에 이 게임 'It'의 강점을 밀어붙여서 시장에서 전략적 승리를 얻는 것입니다.
ST는 강점+위기 전략으로서 위기를 이 강점을 이용해 극복하는 것입니다.
WO는 약점+기회 전략으로서 '기회'때문에 '약점'이 축소되는 것, 약점이 있지만, 기회로 극복하는걸 말합니다.
WT는 약점+위기 전략으로서 위협을 피하고, 약점을 최소화하는 방법을 도출하기 위한 것입니다.

따라서 SOWT는 거꾸로 SO,ST,WO,WT를 도출할 수 있는 내용을 적으면 되며, 작성방법은 다음과 같습니다.

첫째. 강점부분에 이 게임이 가진 2가지 강점을 써 넣습니다. 주 관점은 시장에서의 승리. 유저의 호응입니다.
언급된 2가지 강점은 이 주 관점을 충족시키는 것이어야 합니다.

둘째. 약점부분은 강점의 반대입니다.

셋째. 기회부분에는 SO전략을 충족시킬 수 있도록 '강점'부분에서 언급한 2가지 강점이 어떤 외부적 요인에
의해 강점으로서 존재할 수 있는지 적으면 됩니다.
또 WO전략을 충족시킬 수 있도록, '약점'이 그리 큰 문제가 되지 않는 외부적 이유를 적으면 됩니다.

넷째. 위기부분에는 ST,WT를 충족시킬 수 있도록, 강점이 소실되고,약점이 도출될만한 외부적 요인을 적습니다.

다시 첫째. 강점은 SO,ST를 도출할 수 있도록, '기회'에 적은 2가지 요인에 상승할만한 것이어야 합니다.
또 위기에 적은 이유로 무의미해질 위험이 있는 것이어야 합니다.
다시 둘째- 약점은 WO,WT를 도출할 수 있도록, '기회'에서 감춰지며, '위기'에서 문제가 될만한 내용이어야합니다.

이렇게 4개가 상호보완적이 될 수있도록 적으면, 문제가 요구하는 답변을 적을 수 있습니다.

뜬금없이 저가형 에어콘에 대해서 적자면...(사실과 무관함. 그냥 예시를 위한 예시임)

강점 : 가격 초 저렴.
약점 : 성능은 더 저렴(--).
기회 : 경제불황으로 인해 저가형 상품 선호, 덥지않은 날씨이므로 이정도 성능으로 충분함.
위기 : 불황과 그리 덥지않은 날씨로 인한 매출 감소로 고가 에어콘 가격이 하락세임.

이런 식이 됩니다. 뜬금없이 적은 예라 좀 적절치 못한듯 하지만, 아무튼 이런 식입니다.




* 인터 페이스를 예시에 맞게 구성하시오..<그림 문제>
예시>자원:금,철강,기름,인구..
전체 맵, 메인메뉴 ,동맹 버튼 , 공격,이동,정지,순찰 버튼
힘 ,체력, 민첩 ,지능, 인벤토리 <6개저장> ,마법스킬,레벨
현재 경험치, 다음 레벨 필요 경험치, 캐릭터 얼굴 등등

- 수험자가 디자인한 게임인 'It'의 인터페이스를 그리면 됩니다. 기술적 특징과 플레이상의
차이점을 수용할 수 있어야 합니다. 직접 그리던가 컴퓨터로 그리던가하면 됩니다.


* 이 인테페이스의 특징을 기술하시오...<200자내외>
- 말 그대로입니다. 앞서 플레이상의 차이점을 수용했다면 그 부분을 쓰고, 또 다른게임들에
비해 발전된 다른 기능성향상 혹은 플레이 편의를 위한 아이디어가 들어갔다면 그점을 언급
하면 됩니다.



* 마케팅시 광고 카피를 정하시오.
- 뛰어난 카피라이터가 될 필요는 없습니다만, 좋으면 좋을수록 좋겠죠. 짧고 간결하게.
이 게임의 캣치프레이즈를 적으면 됩니다. 게임 잡지를 보고 다른 게임의 캣치프레이즈를
봐두면 도움이 될 것입니다.
대충 항간의 말로는 인칭은 2인칭 단수로 쓰고, 명사와 동사로 만들다거나, 압축해야하고,
대상이 앞에 있는 것처럼 대화체, 유행어로 말하거나, 드라마틱해야한다는 소리도 있습니다.
http://ilovecopy.com/ 에 가면 카피에 대한 많은 이야기가 있습니다. 제목이라던가,
바로 아래문제인 텍스트를 작성하는데도 도움이 될 겁니다.

* 마케팅시 주 광고 카피아래에 들어갈 게임을 간략하게 설명하는 글 3가지를 기술하시오.
-카피와 마찬가지. 카피보다는 좀 더 구체적이고, 직접적인 것이 되겠죠.

* 마케팅시 이벤트로한 아이템을 패키지와 함께 추가 하려고 한다..
어떤 아이템을 넣을 것인가? <5000원짜리 >
* 그 아이템을 선택하는 이유는 무엇인가?
-이건 따로 멘트할게 없군요. 팩키지게임 열어보면 들어있는 기념품같은 걸 뭘 넣을건지
왜 그걸 골랐는지 이유를 설명하는 것입니다.





*캐릭터 배경 설정 문제
보기>장보고라는 소년이 있다. 때는 제력 000년이고 무슨무슨 왕국이
왕권을 강화하기위해서 이제는 수인들이 사는곳으로 변해버린 성지를
되찾기 위한 전쟁을 일으킨 시대이다. 0 은 인간관 짐승이 반반씩
섞인 종속들로 결코 인간은 될수 없는 종속이다..

문제>여자 캐릭터를 정하고 그 캐릭터의 그래픽 디자인 특징을 13항목
이상 설명하시오..

- 미국에 있는 원화그리는 사람에게 메일로 여자 캐릭터를 그려달라고
부탁하면서 그 모양새를 설명한다고 생각하면 됩니다. 13가지 항목으로
주문하는 것이죠. 미니스커트를 입히라는둥, 단발머리라는 둥...


보기>장보고 일행이 설산을 향해 가던중 무슨 무슨 왕국의 지그프리트
왕자이 야만족 마을을 학살하는 것을 발견한다.. 장보고 일행은 그것
을 저지하기 위해 지그프리트 왕자 일행과 전투를 하게되고 지그프리
트 왕자 일행과 전투를 하게되고 지그 프리트 왕자 일행은 패하고 도
망을 간다..전투가 끝난뒤 장보고는 야만족 영웅을 만난다.
설산을 들어가는 입구에서 설산으로 들어가시 위해서는 협곡을 지
나가야 하는데 그러기 위해서는 수송계 부대가 필요하다. 그때 수송계
부대가 위기에 처했다는 소식을 듣고 수송계 부대를 구하기 위한 전투
를 벌인다. 이때 제시카라는 여자를 구하는 이벤트가 발생한다.
협곡을 지나서 설산 입구에 들어섰을때 지그프리트 왕자는 장보고
일행을 막기 위해 눈사태를 일으키고 지그프리트 왕자의 동생 제시카
의 도움으로 빠져나갈 입구를 찾게 된다.
그러나 눈사태가 멈추지 않고 계속되어서 위기에 빠질무렵 어디선가
동방의 닌자 일행이 나타나 함께 탈출한다. 달아난 지그프리트 왕자를
쫒다가 지그프리트 왕자의 마법 부대를 만나서 전투를 하려는 찰나 믿
었던 닌자 일행이 장보고가 지닌 용의 구슬을 탈취해서 달아나고 장보
고는 힘겹게 전투를 벌인다...

*각 장면대로 순서를 나열하시오.< 플로우 챠트 작성문제>
- 파랜드텍틱스같은 게임의 장면을 연상하십시오. 일종의 씬의 문제입니다.
비주얼이 나오고, 전투를 하고, 다시 비주얼이 나오고 전투를 하는 문제입니다.

예를 들자면 어떤 게임에서 "주인공이 길을 가다가 비명소리를 듣고 뛰어가니
늑대에게 둘러쌓인 여성이 있었다. 늑대를 해치우면 여성은 고맙다며 다리를
다쳤다고 근처의 마을에 데려다달라고 한다."라면..

비주얼 1 (주인공 걸어감. 비명소리대사출력,주인공 대사출력, 주인공이동)
전투 1 (늑대,여자NPC. 늑대가 전멸하면 비주얼2,주인공이 죽으면 종료)
비주얼 2 (여자 대사, 주인공 대사. 페이드아웃)

입니다. 플로차트 작성하는 문제는 따로 설명하지 않습니다.


*게임 진행시 등장한 캐릭터를 순서대로 나열하시오..
*게임 진해시 등장한 지면을 순서대로 나열하시오..
-설명 생략. 보기를 보고 추리면 됩니다.




<시나리오 작성문제>
*상황을 대본을 작성하시오.. (1000자 내외)
상황> 세계를 정복하려는 대마왕이 공주를 납치하고,주인공과 동료1,2는
모든 역결을 물리치고 마지막으로 공주가 납치되어 있는 대마왕 앞에
서 있다..
표정 1-->화난 표정
표정 2-->찡그린 모습
표정 3-->우는 모습
표정 4--> 웃는 모습
기호를 넣으며 작성..

-일반적 RPG에서 옆에 그림 나오면서 대사 나오는 비주얼씬을 말하는 것입니다.
작성의도는 이 답변을 보고 어떤 그림파일을 불러오고, 어떤 대사를 출력할 지를 정하는 것입니다.
아래 3가지 요소를 적어나가면 됩니다.

대상(주인공,동료1,2,대마왕,공주)
표정(표정1,2,3,4)
대사(좋을대로~)

표정은 문제에 횟수가 정해져있지 않는한 한번만 쓸 필요는 없습니다만, 골고루 써주는게 좋습니다.





* 어는 양식장에 물고기 5종류를 풀어 놓았다. 물고기 B를 잡을 확률을
구하라.
물고기 A --6마리 물고기 B-->12마리 물고기 C-->8마리
물고기 D -->10마리 물고기 E-->4마리
* 물고기 C를 잡을 확률을 구하라.
- 못풀면 기획시험을 보지 마십시오. 자격증 질 떨어집니다.




*다음표는 피보나치 수열이다.. 레벨 증가시 경험치가 늘어나는 상태를
수열로 나타내어라.
1 2 3 4 5 ..... _______> LV1 LV2 LV3 LV4 LV5 LV6 LV7..
1 1 2 3 5 .... _______> 10 10 20 30 50 80 120

-피보나치 수열은 앞의 두 수를 더하여 본수로 삼는 방법입니다.
1부터 시작하면 0+1=1, 1+1=2, 입니다. 그래서 처음엔
1 1 2 가 되고, 다음 수는 앞의 두 수인 1+2=3이 됩니다.
1 1 2 3 이 되고, 다음 수는 2+3은 5입니다.
1 1 2 3 5 가 되고, 다음수는 3+5인 8입니다.
1 1 2 3 5 8...

수열로 나타내는 부분은 알아서 공부하십시오. 기획의 방향성 문제는 아니니까요.
대충 말씀드리면 An=An-2+An-1 정도겠죠. (n번째 A) = (n-2번째 A) + (n-1번째 A)
우연찮게도 n은 레벨과도 같습니다. 레벨n의 경험치An은 An-2+An-1입니다만, 문제의
보기를 보면 아시겠듯 곱해줘야할게 있습니다.






* 레벨 증가시 경험치가 늘어나는 상태를 수식으로 나타내어라..
LV1 LV2 LV3 LV4 LV5 LV6 LV7......
10 20 40 80 160 320 640......
-해당레벨의 경험치 A= 레벨*2 라면 2레벨의 경험치는 4점입니다, 답이 아닙니다.
해당레벨의 경험치 A= (위의 보기에 나온 값이 정확히 나오는 식)이 들어가야합니다.





* 비공격형 몬스터가 있다. 그 몬스터의 행동 양식은 7가지되어있다.
몬스터 게이지 100%~30% ,30%~
PC 의 캐릭터 100%~65% ,65%~30% , 30%~0
상황에 따른 몬스터의 행동을 설명하여라..
-행동양식은 행동의 조건입니다. 아래와 같은 식으로 사용합니다.
몬스터의 HP가 100~30%면 전투
몬스터의 HP가 30%미만이면 도망친다.
단 이때 PC의 HP가 30%미만이면 도망치지 않는다.
몬스터게이지와 캐릭터 게이지를 어떤 행동의 지표로 삼는 것입니다. 잘 만들어보세요.





*스토리 보드 작성문제
주어진 시나리오를 주고,,,난뒤 스토리 보드작성하는 문제도 있음.

- 이 문제는 필기를 잘 준비하신 분이라면 문제 없을겁니다.





-----


1차는 여기까지입니다. 저도 게임기획전문가 자격의 수준을 알기위해 이 시험을 봤었죠.
다음의 2차는 게임과기획(http://cafe.daum.net/imgCon) Q&A 게시판. 194번글. 가을바람님의 글입니다.
무단 전제한 것에 대한 죄송한 말씀과 함께, 손수 정리해주신 가을바람님께 감사드립시다.^^

---------------------------------------
제 2회 게임기획전문가 실기문제
---------------------------------------


1.[창작성] 게임 컨텐츠 제작의 기초단계 [6점]
설명: 제작할 게임의 장르가 결정된 이후에는 도일 장르의 게임들과 비교해서 어떠한 독창성을 갖을 것인가에 대하여 구상해 두어야 한다.
다음의 주어진 장르에 따라 게임을 제작하게 될 경우 다음 문제들의 답안을 작성하라.

장르: 탑뷰 방식을 중심으로 한 슈팅게임.
조건: 제작인원 10명으로 10개월 이내에 제작할수 있을 것.
동일 장르의 게임 : (ex/라이덴, 기가윙스)

문제:
1-1) 동일 장르의 게임들과 비교해서 어떠한 요소로 차별화를 시도할 것인지에 대하여 작성하시오.(차별화된 요소 3가지 이상 기술)
1-2) 온라인 게임으로 기획할 경우 다수의 유저들이 서로 경쟁 할 수 있는 환경이 필요하다.
어떠한 환경을 조성하여 다수의 유저들이동시에 즐길 수 있게 할 것 인지 기술하시오.
(3가지 이상 기술)

2.[창작성] 주어진 조건에 맞는 스토리 구상과 세계관 설정 [15점]
설명: mmorpg장르의 게임을 만들 때 자연스러운 커뮤니티의 형성을 위하여 게임세계 안에서 여러 가지 단체와 세력이 존재할 필요가 있다. 다음의 주어진 조건에 맞는 게임의 세계관을 설정하라.

조건: 현대 내지는 미래으 ㅣ한반도에 위치한 항구도시, 과학문명과 초능력, 영혼, 악령, 주술 등이 공존하는 세계관.

문제
2-1) 게임의 무대가 되는 도시는 다른 도시와 철저히 교통과 통신이 두절된 상태이어야 하며 탈것(자동차, 오토바이등)들이 등장하기는 하지만 매우 귀한 아이템으로 등장하기 때문에 주 이동수단은 보행이 되어야한다. 어떠한 사건이 일어나서 그런 상황이 되었는지 간략한 배경스토리를 설정하라. (200자 이내)

2-2) 플레이어들이 임의로 결성 및 해체할 수 있는 혈맹 또는 길드 개념의 단체 이외의 게임세계의 흐름을 이끌어가는 (직업을 대표하며 해당직업을 지원해주는)커다란 세력을 지닌 단체들이 필요하다.
문제 2-1에서 설정한 스토리와 연계하여 4개의 세력들의 이름과존재 이유, 주요 목적 등을 서술하라. (100자 이내)

2-3 플레이어들이 가지게 될 직업의 이름과 개념을 정의해야 한다.
다음 조건에 맞는 직업의 이름과게임 상에서 그 직업이 생기게 된 유래를 간단히 정리하라.
조건1. 아이템 조합, 자원 채취에 능하고 전투에는 부적합 하지만 회피력이 뛰어나고 폭약을 사용할 때 추가 데미지를 가질 수 있는 직업.
조건2. 접근전용 무기 사용에 능하고 체력과 공격력 방어력 등이 잘 조화를 이루는 균형 잡힌 전사 타입의 직업
조건3. 원거리용 무기 사용에 능하고 각종 기계장비들을 사용할 때 보너스 포인트를 받는 직업
조건.4 여러 가지 주술을 사용하여 전투를 수행하고 주술아이템을 만들어내는 직업

3.[창작성] 캐릭터 설정 능력 [9점]
설명: 캐릭터와 직업에 대한 기본적인 배경스토리와 설정이 끝나면 어떠한 요소들을 사용하여 캐릭터의 개성을 나타낼 것인지 결정해야 한다.

문제: 2번에서 제시했던 게임에서 등장하는 필레이어 캐릭터들이 가질 수 있는 모든 능력치의 이름과 용도를 정의하여 표로 만들어라, 모든 능력치의 용도는 2가지 이상이 되어야 한다.
(2개 이상의 능력치 작성)
ex) 이름/용도
힘 / 1) 근접무기 공격력 상승 2) 체력 최대치 증가
집중력 / 1) 원거리 무기 공격력 상승 2) 모든 무기 명중률상승
지능 / 1) 주술 위력 상승 2)마력 최대치 증가

4. [창작성] 배경 설정 능력 [4점]
설명: 캐릭터들이 활동할 무대가 될 맵을 작성해야 한다. 타일구조로 맵을 구성 할 때는 타일 셋트의 개수와 조합 방식 등을 생각해보아야 한다.
조건: 800*600 해상도에 쿼터뷰(타일크기 128*84)구조의 게임배경을 제작해야 한다.

문제:
4-1) 작은 선착장이 잇는 해안 마을이 스타트 지점으로 결정되었다. 캐릭터가 한화면(800*600)을 직선으로 가로질러 가는데 걸리는 시간이평균 3초가량 걸린다고 가정 했을 때 마을안의 모든 편의시설을 방문하는데 걸리는 시간이 40초가 넘지 않도록 마을의 대략적인 지도를 제작하고 마을의 크기(픽셀사이즈)를 설정 하라.

4-2) 위의 문제에서 만들어진 지도대로 배경을 제작할 경우 타일은 몇 개의 셋트가 필요한지 결정하시오.

5. [분석 및 마케팅] 판매 전략 분석[4점]

5-1)2,3,4,번에서 설정한 게임이 기존의 mmorpg들과 어떠한 차이점을 가지고 있으며 게임상의 요소 중 어떤 부분을 강조하여 마케팅을 할 것인지에대한 보고서를 작성하라, 보고서에는 다음과 같은 요소가 포함되어 있어야 한다.



<b>문제5 답안에 포함되어야 하는것은 대략...
경쟁게임에는 어떤것이 있고, 이 경쟁게임의 특징과 2,3,4 에서 설정한 게임의 특징을 설명하는 것.
그리고 경쟁게임과 비교되는 특별한 점
어떤 계층을 대상으로 할 것인가 등...</b>

12[기술성] 캐릭터 행동 양식 설정[3점]
허드슨 소프트의 ‘봄버맨’과 유사한 게임을 만들고자 하는데 몬스터와 캐릭터 사이으 ㅣ거리와 위치, 장애물의 유무, 포탄의 위치에 따라서어떠한 행동을 보일 수 있는지하나의 몬스ㅓ가 최대 5개의 행동방식을 가질 수 있다고 가정 할 때 몬스터로 등장할 캐릭터들의 ai표를 작성해서 프로그래머에게 전달하고자 한다. 알기 쉽게 작성하라

13. [기술성] 게임 인터페이스 작성 [5점]
쿼터뷰 rpg게임의 인터페이스를 작성하려고 한다. 플레이어 캐릭터는 기본적으로 무장의 교환, 마법사용, 아이템 조합, 캐릭터간 거래, 용병(소환수) 관리 등이 가능해야 한다.
앞서 열거한 행동들이 메인화면에서 마우스 클릭 4버 이내에 모두 가능할수 있도록 인터페이스화면과 순서도를 작성하라.

14. [기술성] 각 팀의 역할 분담 및 PM[8점]
게임개발팀은 크게 분류해서 기획팀, 프로그래밍팀, 그래픽팀 으로 나뉘어 진다. 각 팀들의 역할을 각각 50자 이내로 서술하고, 기획팀중 pm의 자질과 역할에 대하여 기술하시오,

문제:
14-1) 기획팀의 역할에 대해서 50자 이내로 서술하시오.
14-2) 프로그램팀의 역할에 대해서 50자 이내로 서술하시오.
14-3) 그래픽팀의 역할에 대해서 50자 이내로 서술하시오.
14-4) PM의 역할에 대해서 50자 이내로 서술하시오.

15) [창작성] 초기 구상시 문제점해결[3점]
문제: 주사위를 던져서 보드 위를 움직이는 턴방식의 온라인 보드게임을 만들려고 한다. 동시 참여 하는 플레이어의 수가 최대 6인까지 가능하게 구상하려고 하는데, 동시 참여하는 플레이어의 수가 많아질수록 자신의 턴을 기다리는 동안 대기시간이 길어져서 지루해할 우려가 있다. 어떠한 방식으로 해결할 수 있는지에 대하여 자신의 생각을 서술하라.

16. [창작성] 현재 상황의 문제점 파악 [3점]
문제: 현재 대한민국의 게임시장에서 패키지게임은 거의 자취를 감추고 온라인 게임만이전성기를 맞이 하고 있다.
물론 세게적으로 보았을 때도 온라인 게임쪽에비중이 커지고 있는 추세이지만 이와 같은 현상은 유독 대한민국에만 두드러지게 나타난다고 한다. 현재 게임시장에 있어서 패키지 게임의 문제점은 무엇이고 이를 해결하기 위해서는 어떠한 환경이 준비되어야하는지에 대해서 서술하시오.

게임전문가 관련정보

출처 : [기타] 인터넷

직장생활, 글 잘 쓰는 것도 경쟁력이다
2008년 5월 14일(수) / 삼성 / 조회(3759)

직장인들은 매일같이 글을 쓴다. 이메일에서부터 기획안ㆍ보고서 등 자신의 생각을 글로 표현해야 하기 때문에 글쓰기 능력은 이제 성공적인 비즈니스를 위한 하나의 경쟁력이다. 하지만 막상 글을 쓰려고 하면 생각만큼 잘 써지지 않는 게 현실.

몇 가지 글쓰기 방법을 익혀 보자. 이것만 알아도 직장생활을 하는 데 필요한 글은 충분히 해결할 수 있다. 글은 무엇보다 연습이다. 좋은 글을 많이 읽고 많이 쓰면 는다.


글을 쓰는 데도 요령이 필요하다

어느 분야를 막론하고 글쓰기 능력은 이제 비즈니스의 기본이다. 기획ㆍ마케팅ㆍ홍보뿐 아니라 영업ㆍ관리 등 모든 분야에서 글쓰기가 필요하다. 인터넷의 발달로 사람과 사람을 잇는 방식이 근본적으로 변했고, 지식정보화사회가 기업 환경을 바꾸어 놓았기 때문이다. 글쓰기 능력이 부족한 사람은 경쟁에서 뒤처질 수밖에 없다.

멋진 아이디어를 갖고 있을지라도 그것을 글로 잘 표현하지 못하면,
누구도 알아주지 않는 쓸모없는 아이디어가 된다.
글쓰기 능력을 키우는 것은 그래서 필요하다.

그러나 막상 글을 쓰려고 하면 잘 되지 않고 앞이 꽉 막힌다. 글쓰기가 잘되지 않는 것은 실제적으로 글을 써 나가는 방식, 즉 글쓰기의 요령을 제대로 익히지 못했기 때문이다. 몇 가지 요령을 익히는 것만으로도 직장생활에서 필요한 글쓰기는 어느 정도 해결할 수 있다. 도움이 될 만한 몇 가지를 소개한다.

일단 써놓고 다듬어라

글을 손쉽게 쓰는 방법은 우선 대충 써 놓고 다듬는 것이다. 잘 쓰든 못 쓰는 상관없이 일단 생각나는 대로 적어 내려간 뒤 다듬어야 한다. 지나치게 잘 쓰려는 욕심으로 처음부터 한 줄 한 줄 매달리다 보면 3박 4일이 걸려도 한 장을 쓰기 힘들다. 마음에 들지 않더라도 다음 줄로 넘어가는 식으로 계속 써 내려가야 한다.

처음부터 완벽한 글을 쓸 수는 없다.
몇 줄 써 놓고 맘에 안 든다고 종이를 구기거나 글을 삭제하지 말고,
일단 처음부터 끝까지 써 놓고 다듬어야 진도를 나갈 수 있다.

원하는 양의 두세 배를 적은 뒤 분량을 조절하고, 내용을 수정ㆍ보완하고, 문제가 있는 부분을 고치면 남에게 충분히 읽힐 만한 글이 완성된다. 부드럽게 굴러갈 때까지 요리조리 다듬다 보면 결국 마음에 드는 글이 나온다. 처음부터 완전한 글을 쓸 수는 없다. 가장 중요한 것은 일단 끝까지 써 내려가는 것이다.

문장은 짧게 끊어 써라

글을 쓰는 재주가 특별하지 않은 한 긴 문장을 제대로 구성하기는 힘들다. 문장이 길면 구성 요소가 복잡하게 얽혀 너저분해지고 글이 늘어지게 마련이다. 한꺼번에 많은 내용을 집어넣으려 하지 말고 한 문장에 한 메시지만 전달한다는 생각으로 짧게 끊어 쓰는 것이 바람직하다.

긴 문장은 몇 개의 짧은 문장으로 나누어 적당한 길이(30~50자)로 써야 읽기 편하고 이해하기 쉽다. 다만 짧은 문장이 계속 이어지면 단조롭고 딱딱한 느낌을 줄 수 있으므로 길이에 변화가 필요하다. 긴 문장과 짧은 문장을 적당히 섞어 글에 리듬감을 불어넣으면 내용이 좀 부족하더라도 읽은 뒤 여운이 좋다.

단어의 중복을 피하라

글을 쓸 때는 한 가지 단어만 사용하지 말고 어휘력을 발휘해 다양한 단어를 자유자재로 구사해야 한다. 우리말은 어휘가 풍부하다는 것이 특징이다. 어휘를 다양하게 구사하면 단어나 구절이 불필요하게 반복되는 것을 피할 수 있다. 같은 단어나 표현이 반복되면 읽기 불편하고 지루해지며, 글의 세련된 맛이 없어진다.

"불황이 장기화하면서 불황을 극복하기 위한 기업들의 생존 마케팅이 점입가경이다."는 문장은 '불황'이 반복해 나와 어설프다. 뒤의 '불황'을 '이를'로 바꾸어 "불황이 장기화하면서 이를 극복하기 위한 기업들의 생존 마케팅이 점입가경이다."고 하면 훨씬 세련된 문장이 된다.

문장 혹은 문단 안에서 같은 단어가 자꾸 반복되면, 지루하고 멋없는 글이 되기 쉽다.
이럴 때는 지시대명사 등을 활용하는 것이 방법이다.

문장 성분을 호응시켜라

흔히 저지르는 실수가 문장의 주요 성분인 주어와 서술어를 호응시키지 못하는 것이다. "내 목표는 우리 팀에서 가장 높은 판매 실적을 올리려고 한다."에서처럼 주어와 서술어가 호응하지 못하는 경우가 허다하다. "내 목표는 우리 팀에서 가장 높은 판매 실적을 올리는 것이다."로 해야 주어와 서술어가 호응한다.

주어와 서술어가 호응을 이루지 못하면, 문장이 산으로 가게 된다.
문장을 짧게 끊어 쓰는 것이 좋다는 것도 문장이 꼬이는 것을 방지하기 위해서이다.

목적어와 서술어가 호응하지 못하는 경우도 많다. 특히 “글을 잘 쓰려면 신문과 TV를 열심히 시청해야 한다.”처럼 목적어가 여러 개이고 서술어는 하나인 경우 각각의 목적어는 서술어에 똑같이 호응해야 하나 그렇지 못한 예가 흔하다. 신문은 시청할 수 없으므로 “글을 잘 쓰려면 신문을 꼼꼼히 읽고 TV를 열심히 시청해야 한다.”와 같이 고쳐야 한다.

단어나 구를 나열하면서 흔히 범하기 쉬운 실수.
목적어가 엉뚱한 서술어와 연결되지 않도록 주의해야 한다.

내용별로 단락을 구분하라

글쓰기 훈련이 부족한 사람은 단락을 제대로 구성하기가 쉽지 않다. 무리하게 전체를 하나의 단락으로 처리하거나 지나치게 여러 개의 단락으로 나누는 경우가 허다하다. 하나의 단락에 여러 가지 내용이 섞여 있거나 하나의 단락이 지나치게 길어지면 전달하고자 하는 의미가 제대로 와 닿지 않고 읽는 사람을 지루하게 만든다.

주제를 세분화함으로써 나타나는 소주제에 따라 단락을 구분하는 것이 바람직하다. 각 단락이 자연스럽게 연결될 수 있도록 논리적인 선후 관계에 따라 단락들을 배열하고, 적절한 연결어를 넣어 주어야 한다. 내용이나 논리의 흐름상 앞 단락과 뒤 단락이 꼬리에 꼬리를 물고 긴밀하게 이어져야 한다. 가능하면 연결어 없이 물처럼 굴러가면 좋다.

구어체적 표현을 삼가라

말하듯이 자연스럽게 글을 써야 하지만 말과 글이 같을 수는 없다. 말할 때는 생각을 떠올리거나 호흡을 가다듬기 위해 별다른 의미가 없는 말들이 많이 쓰이고, 줄임말이 사용되기도 한다. 그러나 글의 문장은 말보다 완전하고 체계적이어야 하며, 높은 완성도로 세련된 맛을 살려야 한다.

"중국의 추격세가 언제까지 이어질지 누구도 장담 못 한다. 경계를 안 늦추고 지속적으로 신제품을 개발하는 것만이 경쟁에서 이기는 길이다."에서 '장담 못 한다'와 '안 늦추고'는 구어체적 표현으로 글의 맛을 떨어뜨린다. 각각 ‘장담하지 못한다' ‘늦추지 않고'로 표현하는 것이 적절하다.

대등성을 살려라

단어나 구절을 나열할 때는 대등성을 살려야 한다. '한국ㆍ일본ㆍ중국'처럼 국가를 나열할 경우 국가만 나와야 하고, '한국 서울, 일본 도쿄, 중국 베이징'과 같이 국가와 도시를 나열할 때는 반드시 이 구조를 유지해야 한다. "프랑스 파리와 이탈리아 밀라노, 미국 등이 세계 패션을 주름잡고 있다."에서 '미국'은 도시가 없으므로 '미국 뉴욕' 형태가 돼야 한다.

요령 없이 접속사나 쉼표를 남용함으로써 복잡하고 어수선한 문장을 만들어 내는 경우도 많다. '과'ㆍ'와'ㆍ'나'ㆍ'및' 등 접속사 사용을 되도록 피하고 가운뎃점(ㆍ)이나 쉼표(,)를 이용해 단어와 구절을 앞뒤 대등하게 나열하는 것이 문장을 깔끔하게 만드는 비결이다. 단어 나열에는 가운뎃점, 구 또는 절의 나열에는 쉼표가 유용하다.

공감을 느끼게끔 써라

글을 쓰는 목적은 자신의 생각이나 정보ㆍ지식 등을 읽는 사람에게 전달해 상대가 공감하도록 하는 것이다. ‘그래 맞는 말이야', ‘아. 이렇게 하면 되겠구나' 하면서 상대가 고개를 끄덕일 정도라면 글을 쓰는 목적을 충분히 달성하는 것이다. 설사 대단한 내용이 아니더라도 상대가 고개를 끄덕이게끔 하기 위해서는 몇 가지 기술이 필요하다.

'남의 일이 아니다'는 생각을 갖게 하거나 자녀 교육 등 공통적인 체험에 호소하면 공감을 얻는 데 효과적이다. '차갑다'ㆍ'뜨겁다'는 직접적인 표현보다 능숙한 수사법을 동원해 ‘얼음장과 같다'ㆍ‘열기가 후끈 달아올랐다'는 식으로 비유하는 것도 쉽게 공감을 얻는 방법이다. 에피소드나 유머 등을 삽입해 재미있게 이야기를 풀어 나가도 쉽게 공감을 얻을 수 있다.


- 글

배상복 / 중앙일보 어문연구소 기자
<문장기술>ㆍ<글쓰기정석>ㆍ<엄마가 보는 논술>ㆍ<첨삭기술> 저자, '배상복 기자의 우리말 산책 블로그' (blog.joins.com/bsb2001) 운영

+ Recent posts