본문으로 건너뛰기

개발자에게 필요한 툴민의 논증 모델

· 약 7분
조준철
HandStack 개발자

개발자는 코드를 작성하거나 문제를 해결할 때 숙고하며 알고리즘을 구상하는 논리적인 사고에 익숙합니다. 그래서 특정 주제를 가지고 사람들 앞에서 발표하거나 회의에서 자신이 주장하는 내용에 유연한 사고를 해야 하는 상황을 어려워하는 경우가 있습니다.

여기에는 여러 가지 원인이 있겠지만 이때, 툴민의 논증 모델을 활용하면 주장을 더 명확하게 표현하고, 그 주장을 지지하는 증거와 논거를 제시하며, 반론을 예상하고 대응할 수 있습니다.

툴민의 논증 모델은 영국의 철학자인 스티븐 툴민이 개발한 논증법으로, 어려운 내용은 제쳐두고 당장 써먹을 만한 실용적인 논증법을 제시합니다.

핵심은 주장하고자 바의 설득력을 높이려면 단순히 근거를 몇 개 제시하기보다는 자신이 제시한 정당한 이유를 반박하는 반론을 본인이 구상하고 그것을 재반박해서 얻게 된 결론이 설득력을 얻게 된다는 겁니다.

개발자의 숙고하며 논리적인 사고에 익숙한 장점을 활용하여 발표나 회의 전에 주제에 대해 미리 생각해 보고, 툴민의 논증 모델을 활용해 보세요. 그러면 주장을 더 명확하게 표현하고, 그 주장을 지지하는 증거와 논거를 제시하며, 반론을 예상하고 대응할 수 있습니다.

툴민의 논증 모델은 다음과 같이 6개의 구성 요소로 이루어져 있습니다.

  • 주장 (Claim): 주장은 논증의 목표로, 증명하려는 주제나 판단입니다.
  • 증거 (Data/Frame/Evidence): 증거는 주장을 지지하는 사실이나 정보입니다.
  • 논거 (Warrant): 논거는 주장과 증거 사이의 논리적 연결고리입니다.
  • 보강 (Backing): 보강은 논거를 지지하는 추가적인 정보나 설명입니다.
  • 조건 (Qualifier): 조건은 주장의 힘을 약화하거나 한정하는 역할을 합니다.
  • 반론 (Rebuttal): 반론은 주장이나 논거에 대한 예외 사항이나 반대 의견을 제시하는 것입니다.

논증 모델은 크게 기본구조 (4) + 보조구조 (2)로 구성합니다. 기본구조는 (주장, 증거, 논거, 보강)으로 이루어져 있고, 보조구조는 (조건, 반론)으로 이루어져 있고, 상황에 따라 필요한 구성 요소를 추가하거나 수정해서 사용하면 됩니다.

논증의 구성 요소에 대한 주요 흐름을 이렇게 구성하면 좋습니다. & (AND) | (OR) 는 각 구성 요소를 구분하기 위한 구분자입니다.

  1. 주장 (Claim)
  2. 근거 - 증거 (Data/Grounds/Evidence)
  3. 왜냐하면 - 논거 (Warrant) & 때문에 - 보강 (Backing)
  4. 그래서 So (So) | 어쩌면 - 조건 (Qualifier) | 예외로 - 반론 (Rebuttal)
  5. 주장 (Claim)

주요 흐름에 대한 예시를 들면 다음과 같습니다. 본인 성향에 따라 필요한 구성 요소를 추가하거나 수정해 보세요.

  1. 나는 우리 반 학생들이 모두 A 학점을 받을 것이라고 믿는다. "주장 (Claim)"
  2. 왜냐하면 우리 반 학생들은 모두 열심히 공부했기 때문이다. "증거 (Data/Grounds/Evidence)"
  3. 우리 반 학생들은 좋은 시험 성적을 거두었으며, 과제물에서도 좋은 평가를 받았다. "논거 (Warrant)" & 시험성적과 과제물 점수가 높은 학생은 학칙에 따라 좋은 점수를 부여하게 되어 있다. "보강 (Backing)"
  4. 그래서 "So (So)" | 어쩌면 대부분의 학생은 "조건 (Qualifier)" | 따라서 시험에서 부정을 저지르거나 수업시간에 불성실한 태도를 보인 경우가 아니라면, "반론 (Rebuttal)"
  5. A 학점을 받게 될 것이다 "주장 (Claim)"

한두 번만 활용해 보면 동료들에게 더 명확하게 주장하고 설득하는 사람으로 인지되어, 향후 예상하지 못한 돌발 상황에서는 좀 더 생각해 보고 다시 예기할 수 있는 상황을 만들 수 있습니다.


한 주간의 여정 (2024-05-06 ~ 2024-05-10)

  • 프로젝트 빌드에 필요한 시간을 줄이는 MSBuild 옵션 추가
  • 종속 패키지 버전 업데이트
  • 변수명 변경
  • Node.js 함수 테스트 기능 개선
  • 스크립트 로더 기능 개선
  • 공통 리소스 BindingAction (Replace, Append, None) 옵션 추가
  • 배치 스크립트 디렉토리명 변경
  • 디자인 개선
  • LoadOptions 중복 방지를 위해 시스템에서 부여하는 키에 '$' 접두어 사용
  • 거래 실행시 접근 권한 정보를 dbclient, function 모듈에 전달하도록 개선
  • JSON 데이터 쿼리 및 변환 라이브러리 jsonata 추가
  • C# 서버리스 함수 개발 테스트 API Controller 추가
  • Node.js 서버리스 함수 개발 테스트 서버 추가