웹스퀘어 → React 전환 비용과 기간 — 64화면 실측으로 계산하는 방법
전환 견적이 "화면 수 × 인일"로 계산되던 시절에는 100화면 시스템이 곧 수개월 프로젝트였다. 화면 변환이 자동화되면 비용 구조가 둘로 갈라진다. 컴퓨터의 시간(변환·검증)과 사람의 시간(어댑터·검수)이다. 이 글은 그 둘을 실측으로 분리해 견적을 스스로 계산할 수 있게 한 것이다.
컴퓨터의 시간: 실측
실제 업무 시스템 두 곳 64화면(조회/등록, 팝업, 탭·멀티그리드, 트리, 파일첨부, 대형 화면)을 ws2react로 변환한 결과다.
| 항목 | 실측 |
|---|---|
| 자동 변환 | 64 / 64 (수작업 코드 수정 0건) |
| 화면당 소요 | 2~5분, 대형 화면 10~20분 |
| 평균 시도 | 1.8회 (1회 약 30%, 2회 약 60%, 3회 이상 약 10%) |
| 화면당 LLM 비용 | $0.3~6 (API 정가 환산 — 소형 $0.9, 중형 $1.6, 대형·2회 시도 $6.1) |
| 최대 화면 | 11,717줄 |
100화면이면 변환 시간은 총 4~8시간, LLM 비용은 대략 $100~400이다. Claude 구독을 쓰면 LLM 종량 비용은 0이다.
사람의 시간: 견적에 실제로 들어가는 것
| 항목 | 내용 | 규모 감 |
|---|---|---|
| 어댑터 준비 | 프로젝트 공통 스크립트(팝업·공통코드·통신 래퍼)를 호환 계층으로 이식. 도구가 골격 생성·타입검사 | 시스템당 수일 (첫 시스템은 사람이 손으로 붙였고, 두 번째부터는 도구가 대신) |
| 서버 규약 확정 | 요청 래핑·응답 봉투를 운영 캡처로 확정 | 시스템당 1~2일 |
| 수작업 큐 | 재시도 한도 안에 통과하지 못한 화면 마무리 | 64화면 실측에서는 0건. 미지원 컴포넌트 화면은 발생 |
| 업무 검수 | 변환 화면의 업무 동작 확인 | 기존 검수 프로세스와 같음 — 이것이 일정의 대부분 |
| 셸 | 로그인·메뉴·레이아웃 앱 셸 | 시스템당 1회 |
즉 견적은 "화면 수 × 인일"이 아니라 "시스템당 고정비(어댑터·규약·셸) + 검수"가 된다. 화면 수는 컴퓨터의 시간에만 비례한다.
도구 비용
| 구분 | 가격 |
|---|---|
| 체험 | 무료 — 프로젝트당 화면 2개까지 변환, 모든 명령 사용 가능 |
| Pro | 연 ₩290,000 (1인) — 프로젝트·화면 무제한 |
| Team | 연 ₩890,000 (5인) |
| LLM | 별도 — 본인 Claude 구독이면 0, API 키면 위 실측 |
100화면 규모에서 도구·LLM 비용의 합이 사람이 화면 몇 개를 손으로 옮기는 비용보다 작다. 견적의 변수는 도구가 아니라 검수 일정이다.
견적 계산 순서
- 화면 XML 전체를 도구의 의존성 추출에 넣어 미지원 컴포넌트·공통 스크립트 표면을 확인한다. 이 결과가 어댑터 규모와 수작업 큐 예상치를 준다.
- 대표 화면 2개를 체험판으로 변환해 시도 횟수·비용·소요를 리포트로 확인한다. 이것이 그 시스템의 화면당 단가다.
- 시스템당 고정비(어댑터·규약·셸)에 화면 수 × 화면당 단가를 더하고, 검수 일정을 별도로 잡는다.
자주 묻는 질문
왜 화면당 비용에 폭이 있나요?
원본 크기와 시도 횟수에 비례한다. 소형 조회 화면은 1회 통과에 $1 미만이고, 수천 줄 화면이 2회 시도하면 $6 수준이다. 재시도는 이전 코드와 에러를 다시 입력하므로 비용이 늘어난다.
저가 모델을 쓰면 싸지나요?
단가는 낮지만 시도 횟수가 늘어 총비용 절감은 1/3~2/3에 그치고 시간은 더 걸렸다. 기본 모델을 권하고, 비용 민감 시에만 옵션으로 쓴다.
라이선스가 만료되면요?
도구는 체험 모드로 계속 동작하고, 이미 변환된 코드는 표준 React 프로젝트라 그대로 여러분 것이다.
견적을 받으려면?
먼저 체험판으로 대표 화면 2개를 변환한 리포트를 만드는 것이 가장 정확하다. 그 리포트를 기준으로 문의하면 된다.
ws2react는 로컬 CLI입니다. 소스는 PC를 떠나지 않고, 라이선스 없이 프로젝트당 화면 2개까지 변환해 볼 수 있습니다.
무료 체험 다운로드 가격 보기
ws