CRC Card — 카드 한 장으로 객체지향 설계
Entity (인물·조직)lectureverified2026-05-09

CRC Card — 카드 한 장으로 객체지향 설계

#vch#lecture-intro#C-se-tool#se-g3

CRC Card — 카드 한 장으로 객체지향 설계

1. 요약

CRC (Class-Responsibility-Collaboration) 카드는 1989년 Kent Beck과 Ward Cunningham이 Tektronix에서 일하던 시절에 발명한 4×6 인덱스 카드 기반 객체지향 설계 도구 다. OOPSLA '89 에서 A Laboratory for Teaching Object-Oriented Thinking 논문으로 발표됐다. 단순함이 미덕 인 객체지향 설계 도구의 대표.

2. 배경 (이전 도구의 한계)

UML 등장 전 (1989) OO 설계 도구는 너무 무거웠다 — Booch notation 의 구름 모양은 그리기 어렵고, OMT는 클래스마다 박스 안에 속성·메서드 다 적어야 했다. Beck·Cunningham 의 통찰: 그냥 인덱스 카드 한 장에 클래스 하나, 책임 몇 개, 협력자 몇 개 적으면 되지 않을까?물리적 카드를 손으로 옮기며 그룹으로 토의 하는 워크숍에 최적.

원래 HyperCard 디지털 스택 으로 시작했지만 물리 카드 가 더 인기를 얻었다.

3. 핵심 개념·표기법

4×6 인덱스 카드 한 장에:

┌─────────────────────────────────────┐
│ ClassName (좌측 상단, 밑줄)          │
├──────────────────┬──────────────────┤
│ Responsibilities │ Collaborators    │
│ - 책임 1         │ - 협력자 A        │
│ - 책임 2         │ - 협력자 B        │
│ - 책임 3         │                  │
└──────────────────┴──────────────────┘

핵심 원칙:

  • 카드는 작아야 한다 (4×6 인치) — 책임이 7개 넘으면 클래스 분리
  • 토론은 카드를 손으로 옮기며 (역할 연기, role-playing)
  • Collaborators 가 많으면 결합도가 높다 — 즉시 보임

4. 언어·OS 매핑 (★ 강의 핵심)

시대언어CRC 활용
1989~95Smalltalk, C++OOPSLA + 교육 표준
1995~2000sJava, C#XP 의 핵심 워크숍 도구
2000s~모든 OOAgile + Scrum 팀 워크숍
2020sAI 에이전트Agent CRC = AgentName + Responsibility + Collaborator (다른 에이전트)

★ AI 에이전트 시대에 역할 (Role) + 책임 (Responsibility) + 협력 에이전트 (Collaborator) 패턴은 정확히 CRC 카드 구조. 멀티에이전트 시스템 설계는 본질적으로 객체지향 설계와 같다 의 증거.

5. 현대까지의 영향

  • Extreme Programming (XP) — Beck 자신이 만든 XP의 핵심 워크숍
  • Domain-Driven Design (2003) — Aggregate · Bounded Context 의 카드화
  • Event Storming (Brandolini 2013) — Post-it 기반 협업 (CRC 의 진화)
  • Agile 회고 (Retrospective) — 카드 기반 그룹 토의의 표준
  • AI 에이전트 워크숍각 에이전트가 무엇을 책임지고 누구와 협력하는가 를 카드로 정리

6. 주요 인물·사건

연도사건
1980sBeck + Cunningham, Tektronix 에서 Smalltalk 작업
1989OOPSLA '89 — A Laboratory for Teaching Object-Oriented Thinking
1990s대학 OO 강의 표준 도구
1999Beck의 XP 발표 — CRC 카드를 핵심 워크숍 도구로
2013Event Storming (Post-it 기반 진화)
2024~AI 에이전트 설계 워크숍에서 부활

7. 강의 활용

"카드 한 장이 UML 클래스 다이어그램보다 강력하다" 는 통찰. 단순한 도구가 토론을 만든다 — Beck·Cunningham 이 35년 전에 박은 패턴이 AI 에이전트 시대에도 유효. 본 강의의 Plan-First 워크숍 도 사실상 CRC 카드의 디지털 부활 — Agent Name + Inputs/Outputs/Tasks + Collaborator Agents 를 한 화면에 정리.

출처

그룹 시리즈

synthesis/group-se_g3 (시대 그룹 종합 카드)