소프트웨어 공학의 사실과 오해 10 – 연구, 마무리
연구
그런데, 소프트웨어 연구에는 문제가 있다. 평가적 연구(방법, 모델, 이론 등을 검토하는 연구)가 거의 없다는 것이다. 소프트웨어 공학 연구 유형의 스펙트럼에서 14%만이 평가적 연구다. 컴퓨터 과학 연구도 단지 11%만이 평가적 연구다. 이와는 대조적으로, 정보 시스템과 같은 다른 주요 컴퓨팅 분야에서는 평가적 연구가 67%에 이른다.
p.265
Potts(1993)은 이런 잘못된 연구 방법을 ‘연구한 다음 전파하는 방식’이라고 불렀는데, 이는 새로 연구한 접근방법의 제안과 이를 실무에 전파하기 위해 제시하는 중간에 평가가 없다는 것을 뜻한다. 나는 동일한 상황을 나타내는데 ‘옹호적 연구’란 용어를 사용했다. (…) Tichy와 그의 동료들(1995)은 컴퓨팅 분야에 대한 400개의 연구 논문을 검토해 소프트웨어 공학과 컴퓨터 과학에 대한 40~50%의 논문에 평가적 요소가 결여돼 있음을 알아냈다.
p.266
학계의 소프트웨어 연구자들은 너무도 자주 새로운 개념을 제안하고, 이 새로운 개념이 대단히 중요한 것인 양 과장하고, 이를 즉각적으로 실무에 적용하지 않는 이들을 비난한다. 정형방법도 그런 사례 중 하나다. 연구자들이 평가적 연구를 시작하기 전까지는 그 아이디어의 이득에 대해 잘못 인도했고, 또 잘못 인도할 것이다.
p.267
소프트웨어 업계에는 검증되지 않은 개념이나 기술이 과대 선전되고 있다는 얘기. 하지만 결국 은 탄환Siver Bullet은 발견되지 않았다.
마무리
책을 읽고나서 그 내용을 깨끗하게 잊어버리는 데까지 그리 많은 시간이 걸리지 않는다는 걸 알려준 책이다. -_-;; 한 번 정독을 하고 나서, 블로그에 올릴 부분을 고르려고 다시 정독을 하게 되었는데, 처음에 감탄하면서 읽은 내용에 다시 한 번 감탄하고 있는 나를 발견할 수 있었다.
블로그에 올리면서 다시 또 훑어보았으니 3번은 읽은 셈이다. 예전 같았으면 시간이 아까웠을텐데, 오히려 앞으로 좋은 책은 꼭 여러 번 읽어야겠다는 다짐을 하게 되었다. Debugging Applications를 쓴 존 로빈스 아저씨가 자기는 매년 Code Complete을 다시 읽는다고 했을때, 왜 그럴까 했었는데 이제는 좀 이해가 간다.
