1. 기존 시스템 유지보수는 새로 만드는 프로젝트와 다릅니다.
신규개발은 요구사항을 바탕으로 구조를 설계할 수 있지만 기존 시스템을 넘겨받는 개발자는 이미 만들어진 구조와 데이터, 운영환경을 먼저 이해해야 합니다. 문서가 부족하거나 운영본과 소스가 다르면 분석에 더 많은 시간이 필요할 수 있습니다.
2. 새 개발업체가 시작하려면 최소한 이 자료가 필요합니다.
현재 운영본 기준 소스, 저장소와 변경 이력
DB 구조, 필요한 데이터, 업로드 파일과 백업
서버 구성, 실행환경, 배포와 로그 확인방법
도메인, 클라우드, 결제, 문자, 메일 등
시스템 구성, 주요 기능, 배치와 운영절차
잔여 버그, 임시처리, 예정 작업과 주요 이슈
3. 문서보다 중요한 것은 ‘지금 어떤 상태인가’입니다.
새 업체는 시스템 구조만 알아서는 유지보수를 시작하기 어렵습니다. 현재 어떤 기능이 정상이고 어떤 문제가 남아 있는지, 운영자가 수동으로 처리하는 업무는 무엇인지, 최근 변경사항은 무엇인지도 함께 알아야 합니다.
| 인계 항목 | 확인할 내용 |
|---|---|
| 운영 중 기능 | 현재 정상적으로 사용하는 주요 업무 흐름 |
| 미해결 오류 | 알려진 버그, 재현조건, 임시 대응방법 |
| 개발 예정 | 진행 중이거나 합의된 추가개발 항목 |
| 최근 변경 | 최근 배포된 기능과 영향 범위 |
| 정기 운영업무 | 배치, 데이터 처리, 백업, 월별·수동 작업 |
| 외부 의존성 | API, 라이선스, 인증서, 갱신일과 비용 |
4. 업체 변경은 한 번에 끊기보다 단계적으로 전환하세요.
자산·계정·이슈 목록화
소스·DB·문서·권한 인수
구조와 운영환경 파악
실행·주요 기능 확인
테스트 환경에서 변경·배포
운영 인계 후 불필요 권한 회수
가능하다면 기존 업체와 새 업체가 일정 기간 겹치는 것이 가장 효율적입니다. 어려운 경우에는 현재 시스템의 백업과 상태 보존을 먼저 하고 새 업체가 분석할 시간을 확보하는 것이 좋습니다.
5. 새 업체의 첫 작업은 기능 추가보다 ‘운영 가능성 확인’이 좋습니다.
인수 직후 큰 기능을 바로 수정하면 새 업체가 아직 파악하지 못한 영역에서 문제가 생길 수 있습니다. 먼저 시스템을 실행하고 주요 업무 흐름을 확인한 뒤, 작은 변경을 테스트 환경에 배포하면서 실제 유지보수 가능성을 확인하는 방법이 안정적입니다.
| 초기 단계 | 확인할 것 |
|---|---|
| 환경 분석 | 기술스택, DB, 서버, 외부서비스 구조 |
| 실행 검증 | 전달받은 소스로 개발·테스트 환경 실행 |
| 기능 검증 | 핵심 사용자·관리자 업무 흐름 확인 |
| 작은 변경 | 영향이 낮은 수정으로 개발 절차 확인 |
| 테스트 배포 | 빌드·배포·로그·롤백 절차 확인 |
| 운영 전환 | 담당자·연락체계·장애 대응범위 확정 |
새 업체의 분석비용은 무조건 ‘중복 비용’은 아닙니다.
기존 시스템의 문서와 인수상태가 좋으면 분석기간을 줄일 수 있지만, 새 개발자는 자신이 운영할 시스템을 이해하고 위험을 확인하는 시간이 필요합니다. 중요한 것은 분석이라는 이름으로 기간과 비용이 무제한 늘어나는 것이 아니라 분석 범위, 결과물, 기간과 다음 단계를 사전에 합의하는 것입니다.
6. 유지보수 업체 변경 전 체크리스트
개발업체 변경의 핵심은 새 업체 선정이 아니라, 기존 서비스를 ‘이어받을 수 있는 상태’로 만드는 것입니다.
소스·데이터·환경·계정·현재 상태를 확보하고 실제 실행과 배포까지 검증한 뒤 유지보수를 전환하세요.