30년된 고전 ( 1990~)


고약한 문제는 해결책이 문제의 공간 안에 있는 문제를 일컫는다. 즉 문제가 완전히 풀려야 비로소 그 문제가

무엇인지 완전히 이해되는 그런 문제다. 반면 그 반대편에는 합당한 문제가 있다. 합당한 문제는 정의할 수 있

고, 이들에 대한 데이터를 수집해서 분석할 수 있으며, 해결책을 낼 수 있는 문제다. 마치 폭포수 모델의 시원한

절차처럼 말이다.

소프트웨어 개발 프로젝트에서 어떤 결과를 내는 데 필요한 정보를 제공하거나 체계화하는 것은 컴퓨터가 중심

인 것처럼 보이지만 사실 사람이 중심에 서 있다. 그리고 태생적으로 야기되는 불확실성의 문제는 그 정형성을

이루는 데 반드시 있어야 하는 객관적이고 명료한 기준을 세우기 어렵게한다.

  • 고약한 문제는 정형화되어 있지 않다.
  • 고약한 문제를 푸는 해결책은 옳으냐 틀리냐가 아니라 좋으냐 나쁘냐다.
  • 고약한 문제에는 중단의 규칙이 없다.


빅뱅이론은, 기 이론이 우주의 탄생을 설명하 기에 적합한 내용인지 모든 천문학자가 동의하는 건 아니지만,

천문학자 라면 이해는 한다. 하지만 소프트웨어 공학 분야에서는 모든 사람이 동의
하는 전문용어가 없다. 예를 들어, 객체지향 프로그래밍의 정의는 다양하다.

비즈니스 환경에서 우리 분야를 원래 '데이터 처리'라고 불렀지만 지금은 '정보 처리'라고 부른다.

공학 환경에서는 '컴퓨팅'이라고 부른다. 우리 가운데 일부는 이제 우리분야의 이름을 '지식 처리'라고

바꿔 부르기를 원하기도 한다. 

소프트웨어 공학에서 모두가 동의하는 전문용어가 없고 고민해본적이 없다. 







  • No labels
Write a comment…