두번째 키노트로 나선 Robert Lefkowitz의 발표는 정말 인상적이었습니다. 우선 그는 마이크로소프트의 개발 프로세스를 꼬집어서 전통적인 개발 방식이 오픈 소스와 얼마나 다른지 비교해 주었습니다.
뿐만 아니라, 켄트벡의 익스트림 프로그래밍의 라이프 사이클도 비교 대상에 올렸는데요. 이러한 과정은 과거 5세기 부터 발달한 수사학 단계의 일반적 접근으로 보았습니다.
수사학의 분야는 착상(inventio), 배열( dispositio), 표현(elocutio), 암기(memoria), 발표(actio-pronuntiatio)라는 다섯 부분으로 이루어져 있고, 이는 일반적으로 연설이 행해지기까지의 과정으로 알려져 있죠. 수사학과 MS, XP, 오픈 소스를 비교한 도표는 아래와 같습니다.
| 방법론 | 개발 과정 |
| Rheotic(수사학) | Inventio- Dispositio- Elocutio- Memoria- Pronuntiatio |
| Microsoft | Requirement- Development – Test – Release – Maintainance |
| XP방법론 | Exploration- Planning – Iteration – Release – Productionizing |
| 오픈소스 | Bug Report- Tiage – Integration – Commit/Update – Run/Use |
하지만, 오픈 소스의 개발은 실제로 Bug Report가 아니라 Commit으로 부터 출발합니다. 즉, Commit / Update (memoria) – Run / Use (Pronuntiatio) – Bug Reporting (Inventio) – Triage (Dispositio) – Integration (Elocutio)의 순서를 따르고 이 점이 전통 소프트웨어 개발과 확연히 다른 것이죠. 여기서 Exceptional Software Methodology가 나옵니다.
먼저 우리가 만드는 소스 코드의 70%는 예외 처리 코드입니다. try – catch를 보면 catch쪽의 코드가 꽤 많죠. 즉, 일단 만들고 문제점을 파악하는 익셉션 처리 방식을 힌트로 오픈 소스 개발 방법론을 정의한 겁니다. 이것은 유지 보수만 있고 개발이 없기 때문에 당연히 프로젝트 단계에서 맨먼저하는 (우리가 늘 고민하는) ‘요구 사항’을 만들지 않습니다. (여기서 모두들 박수를!)
실제로 많은 오픈 소스 프로젝트에서 요구 사항이란게 존재하지 않죠. 사람들은 일단 가져와 그냥 쓰거나 원하면 직접 ㅏ 고치죠. 진짜 필요하면 원하는 기능을 담은 버그를 제출할 뿐입니다. 이게 들어가는지 좋을지 여부를 사용자와 개발자가 판단할 뿐 입니다. 궁극에는 모든 개발 프로젝트의 원흉인 ‘요구 사항’이 없어지는 순간입니다. 행복한 개발 프로세스의 시작인가요? 흠…
p.s. 세번째 키노트는 Larry Wall과 함께 Perl 커뮤니티를 이끌고 있는 Damian Conway 였는데 이렇게 유쾌하면서 지적인 기조 연설을 처음 입니다.
그의 발표는 뭐랄까 ‘유머와 지적 유희’가 겸비되어 있어서 뭐라고 설명하기가 어렵군요. 우선 앞서 발표한 Mark, Robert와 자신의 친구 Larry Wall을 가지고 노는 희화를 통해 사람들에게 유머를 줍니다. 물론 오픈 소스의 미신이라는 것을 섞어서 풍자해서 말이죠.
한바탕 웃고 나서 자신이 구현한 양자 역학과 일반 상대성 이론을 결합할 수 있는 Perl 모듈을 소개했습니다. 제목이 “Temporally Quaquaversal Virtual Nanomachine Programming in Multiple Topologically Connected Quantum-Relativistic Parallel Timespaces — Made Easy” 인데요. 대략 ‘다중 위상으로 연결된 양자-상대적 평행 시공간에서 일시적 양자우주 가상 나노 머신 프로그래밍- 아주 쉬워요!’ 입니다. 솔직히 진짜 쉽게 풀어냈습니다.
그의 이론은 양자역학의 결론은 반물질(Dark Energy)에서 힌트를 얻어 시간이 반대로 흐를 때 사용할 수 있는 positronic variables 라는 변수를 얻어 내는 module을 만듭니다. (이를 이용하면 정의 없이도 값을 얻어 낼 수 있답니다. 흡…)

그의 발표가 끝나자 사람들이 그의 Geek적이고 학자적인 창의적 아이디어에 우뢰와 같은 기립 박수를 보내더군요. 재미있는 광경이었습니다.
이 저작물은 크리에이티브 커먼즈 저작자표시-비영리-변경금지 라이센스에 따라 이용하실 수 있습니다.여러분의 생각
Trackback URL: http://channy.creation.net/blog/531/trackback여러분의 의견
-
aero
2008 7월 23 19:16Damian Conway씨는 정말 한번 직접 보고 싶은 사람인데 부럽군요(Larry Wall할아버지 하고는 동경에서 열린 YAPC::Asia 2008에서 만나서 같이 사진도 찍고 싸인도 받았음 – -V ) 근데 Damian Conway씨가 기조연설을 했나보군요. 이번 OSCON 2008에는 스크립트 언어중에 Perl관련 세션이 가장 많던데 시간이 되면 들어보시고 감상을 올려주시면 감사하겠습니다.
-
Channy
2008 7월 24 0:01@aero, 네 사실 OSCON은 Perl이 원조죠. 오라일리도 그렇고… Perl 관련 어워드도 따로 시상하구요.
저도 Perl로 웹 프로그래밍을 입문했으니까 관심이 많고 정말 좋은 언어라고 생각 합니다. 좋은 Perl 세션 있으면 들어가 볼께요.






이 블로그의 주요 관심사는
















7월 23rd, 2008 at 23:41
iron의 느낌
모든 개발 프로젝트의 원흉인 ‘요구 사항’이 없어지는 순간