🧪 Software Testing · 7/8 · 약 8분
긴 문서에서 필요한 추적표 하나를 찾기 위해 문서 전체를 같은 깊이로 읽는다면 구현은 단순해 보일 수 있다. 하지만 정밀한 구조를 모두 만들수록 처리 비용과 메모리 사용이 커지고, 실제로 사용하지 않는 정보까지 변환하게 된다.
반대로 키워드 검색만 사용하면 일반 표를 추적표로 오인하거나, 제목이 조금 다른 표를 놓칠 수 있다. 가벼운 탐색과 정확한 해석을 한 단계에 모두 넣지 않고 역할을 나누는 Two-pass 방식을 정리했다.
#Parsing · #TwoPass · #DocumentProcessing · #Performance
긴 문서
↓
Light scan
위치·제목·열 수·식별자 단서 수집
↓
표 후보 목록
↓
Rich parse
헤더·셀 관계·추적 연결 정밀 해석
↓
필요한 결과와 검토 상태만 반환
| 단계 | 목표 | 읽는 정보 | 피해야 할 일 |
|---|---|---|---|
| Light scan | 후보를 빠르고 넓게 찾기 | 표 위치, 주변 제목, 헤더 단서, 가상 식별자 형태 | 모든 셀을 완전한 의미 모델로 변환 |
| Rich parse | 선택한 후보를 정확히 해석하기 | 행·열 관계, 셀 값, REQ-001과 TEST-001의 대응 | 후보가 아닌 전체 영역 재처리 |
두 단계가 같은 정보를 반복해서 읽는 것이 아니라 서로 다른 깊이로 읽는 것이 핵심이다. 첫 단계는 누락을 줄이는 데, 두 번째 단계는 오인을 줄이는 데 초점을 둔다.
추적표라는 단어가 들어 있다고 반드시 추적 관계를 가진 표는 아니다. 반대로 그 단어가 없어도 식별자와 연결 열을 통해 목적을 알 수 있다. 후보 판단에는 다음 단서를 조합할 수 있다.