- 2023년 런칭한 자체 플랫폼, 외부 개발사가 유지보수 축소 입장으로 전환
- 서버 운영사 양수도로 관리 주체까지 흔들림
- 2027년 정부 원격훈련 심사 요건 대응 필요
- 소스는 SVN, 커밋 이력 없이 zip만 인수
교육 플랫폼 LMS 이관 ⬜

- 자체 개발 조직이 없어 기능 추가와 장애 대응이 막힘
- 기존 기능이 문서 없이 화면에만 있어 이관 범위를 말로 설명 불가
- 솔루션 커스터마이징은 어드민 공수만 약 7 man-months
- 개발사, 서버사, 인증사 계약이 각각 만료나 전환 시점을 향함
- LMS 3사 비교 후 커스터마이징 대신 신규 LMS에 오픈패스를 녹이는 방식으로 협상
- 어드민 50메뉴와 프론트 전수 분석 → 기능 정의 413행 11시트로 전달
- 견적 65항목을 확정, 미결, 퍼블리싱, 원격훈련으로 나눠 협상 시나리오 4개 준비
- WBS 44작업, 리스크 5개, 마일스톤으로 벤더 4곳 일정 관리
- 어드민 커스터마이징 7 man-months → 전체 추가개발 약 6 man-months로 범위 확대와 공수 절감
- 오픈 2026-11-01 합의, 계약, 킥오프, 기능 정의, 디자인 전달 완료
- 협의 안건 100건 정리, 미팅 5회 주재, 이메일 40여 건 관리
- 본인인증 전환 유예 승인, SSL 갱신 방식 단순화로 오픈 리스크 2건 제거
배경
1. 서비스 맥락 및 프로젝트 배경
openpath.kr은 2023년 외부 개발사가 만든 자체 플랫폼으로, 3년간 어드민을 포함해 장애 없이 운영해 왔습니다. 그러나 2026년 초 개발사가 유지보수와 지원을 최소화하는 입장으로 돌아섰고, 서버 운영사도 양수도를 거치며 관리 주체가 바뀌었습니다. 여기에 2027년 정부 원격훈련 기관 심사를 준비하려면 진도율, 평가, 수료 요건을 갖춘 LMS가 필요했습니다. 새 개발사를 붙여 자체 플랫폼을 유지할지, 외부 LMS로 옮길지 정해야 했습니다.
2. 기존 상태 (As-Is)
이관을 검토하기 시작한 시점의 상태입니다.
- 기능 추가와 장애 대응: 개발사에 요청하면 회신이 늦거나 범위 밖이라는 답을 받음. 자체 개발 조직 없음
- 문서: 어드민 12개 대분류, 50개 메뉴와 프론트 화면이 있지만, 기능 정의서는 2023년 구축 시점 것뿐. 이후 추가된 기능은 화면에만 존재
- 소스와 인프라: 소스는 개발사 SVN에 있어 커밋 이력 없이 zip으로만 인수. 서버는 KT Cloud, 운영사는 1월에 양수도
- 외부 계약: 본인인증(NICE)은 7월 30일 구 모듈 종료, SSL은 9월 22일 만료, PG와 알림톡은 서버 이전 시 재설정 필요
옮기려면 "지금 무엇이 있는지"부터 다시 정리해야 하고, 옮기는 동안 만료되는 계약을 하나씩 넘겨야 했습니다.
3. 운영상 문제점
- 이관 범위를 설명할 문서가 없음: 새 개발사에 "지금 이 기능이 있다"를 화면 캡처와 말로만 전달하면 빠지거나 다르게 만들어집니다.
- 솔루션 도입 비용 구조: 첫 검토안인 기존 솔루션 커스터마이징은 어드민 공수만 약 7 man-months로 추정돼 예산과 일정을 넘었습니다.
- 일정 종속: 개발사, 서버사, 기존 개발사, 본인인증사 4곳의 일정과 계약 만료가 각각 달라, 한 곳이 밀리면 오픈일이 흔들립니다.
- 자산 유출 리스크: 솔루션에 오픈패스 디자인을 입히면 그 디자인이 다른 고객사 납품의 기본값이 될 수 있었습니다.
기술 결정보다 먼저, 무엇을 옮기고 무엇을 버릴지와 누구와 어떤 순서로 협상할지를 정하는 일이었습니다.
문제
어드민 50개 메뉴와 프론트 화면이 3년간 쌓였지만 최신 기능 정의서가 없었습니다. 개발사에 범위를 전달하려면 화면 하나하나를 다시 확인해 문서로 옮겨야 했습니다.
기존 솔루션에 오픈패스 기능을 얹는 안은 어드민만 약 7 man-months였습니다. 그대로 가면 예산을 넘거나 기능을 크게 포기해야 했습니다.
신규 개발사, 현 서버사, 기존 개발사, 본인인증사가 각각 다른 시점에 만료되거나 전환됩니다. 본인인증은 7월 30일, SSL은 9월 22일이 마감이었고 오픈은 그 뒤였습니다.
솔루션 업체가 학습자 포털 디자인을 다른 고객사에도 쓰는 구조라, 오픈패스가 공들인 디자인이 우리 자산으로 남지 않을 수 있었습니다.
목표
어드민 50개 메뉴와 프론트 전 화면을 유지, 보완, 제거, 신규, 보류로 판정한 문서를 만들어, 개발사가 그 문서만 보고 범위를 잡게 하는 것을 목표로 했습니다.
어드민 7 man-months 안을 대체할 이관 방식을 찾아, 전체 추가개발 공수를 그 이하로 맞추는 것을 목표로 했습니다.
오픈일을 개발사와 문서로 합의하고, 본인인증, SSL 같은 마감을 오픈 전에 전부 넘기는 것을 목표로 했습니다.
솔루션 기본 디자인과 오픈패스 디자인을 분리해 운영할 수 있는 구조를 계약과 설계 단계에서 확보하는 것을 목표로 했습니다.
담당 범위
의사결정은 이사, 일정 관리는 PM 1인과 나눴고, 나머지 실무를 맡았습니다.
- 벤더 비교·선정: LMS 3사 미팅, 커스터마이징 비용, 스토리지, CDN 과금 비교, 경영진 보고
- 계약 협상: 이관 방식, 견적 65개 항목, 스토리지, 자동 연장, 중도 해지 조항 조정 요청
- 기능 정의: 어드민 GNB 12대분류, 50메뉴 전수 분석, 기능 정의 마스터 413행, 11시트, 작업 원칙 문서
- 디자인 전달: 피그마 통합 정리(Deliver 2026), 학습자 포털 디자인 전달, 컬러 테마 전환 방식 합의
- 일정과 리스크: WBS 44작업(Phase 0~6), 리스크 5개, 마일스톤 관리, 이사 보고
- 외부 파트너 4곳: 메디오피아(개발), 아이티트레인(서버), 미르인컴(기존 개발사), NICE(본인인증) + 가비아(SSL)
- QA: 퍼블 디자인 QA (학습자 포털 페이지), 2차 전수 QA (AI 활용 이관 QA 체계 설계 페이지)
실행
LMS 3사 비교와 이관 방식 협상
1월에 LMS 3사와 미팅하며 커스터마이징 범위, 기존 DB 이관 가능성, 원격훈련 심사 커버 여부, 스토리지와 CDN 과금 기준을 비교해 경영진에 보고했습니다. 선정한 업체의 첫 제안은 기존 솔루션 커스터마이징이었는데, 어드민 공수만 약 7 man-months로 추정됐습니다. 업체가 마침 신규 LMS를 고도화하고 있어, 오픈패스를 그 신규 플랫폼에 함께 녹이는 방식을 제안해 3월 미팅에서 수용을 받았습니다. 전체 추가개발 공수가 약 6 man-months로 잡혀 커스터마이징 안의 어드민 몫보다 작은 공수로 전체 범위를 감당하게 됐습니다.
어드민 50메뉴 전수 분석과 기능 정의 413행
견적서 65개 항목 단위로는 범위가 잡히지 않아, 어드민 GNB 12대분류, 50개 메뉴를 캡처하고 소스의 컨트롤러, 라벨과 대조해 메뉴 단위로 다시 정리했습니다. "어드민에 필드가 있어도 강제 로직은 다른 모듈에 있다"는 오판 사례를 겪은 뒤 6개 모듈을 전부 검색하는 것과 비고를 사실, 코드 검증, 추정 3등급으로 적는 것을 작업 원칙으로 문서화했습니다. 그 결과 기능 정의 마스터 413행, 11시트를 만들어 5월 15일 1차 전달했고, 이후 협의 안건 100건을 9개 카테고리로 관리했습니다.
견적 65항목 분류와 계약 조건 조정
견적서를 확정 53건, 미결 8건, 퍼블리싱 2건, 원격훈련 2건으로 나누고 공수 비중을 계산했습니다. 퍼블리싱 2건이 공수의 1/3이라 피그마 전달 기준에 따라 변동이 크고, 미결 8건은 실사용 확인 후 제거·축소할 수 있다는 점을 근거로 협상 시나리오 4개를 준비해 미팅에 올렸습니다. 계약서는 스토리지 기본 용량 상향, 자동 연장 대신 만료 전 합의 갱신, 중도 해지 통보 기한 단축 세 가지를 조정 요청했습니다.
디자인 자산 분리와 전달 순서
솔루션 업체가 학습자 포털 디자인을 다른 고객사에도 쓴다는 점을 킥오프에서 확인하고, 개발사에는 디자인 토큰 구조를 넘기지 않고, 기본 테마와 오픈패스 테마를 컬러만 바꿔 전환하는 한 벌을 제공하기로 정리했습니다. 처음 계획은 토큰을 먼저 만드는 것이었지만 디자이너와 논의해 화면 디자인을 먼저 하고 토큰화는 뒤에 하는 순서로 바꿔 재작업을 줄였습니다. 피그마 파일은 2023·2024 전달본과 운영 화면을 대조해 하나로 정리한 뒤 넘겼습니다.
외부 계약 마감을 오픈 전에 넘기기
본인인증 구 모듈이 7월 30일에 종료돼 오픈 전에 서비스가 멈출 수 있었습니다. 기존 개발사에 신규 모듈 적용을 위탁하는 안과, 거절될 경우 표준 양식으로 전환 유예를 신청하는 안을 동시에 준비했고 유예가 승인돼 11월 9일까지 시간을 확보했습니다. SSL은 신규 발급 대신 기존 와일드카드를 1년 갱신해 전달하는 방식으로 단순화했고, 기존 서버 해지 기준을 미리 정해 병행 운영 기간을 줄였습니다.
학습자 포털 기획과 퍼블 검수
이관으로 새로 필요해진 원격훈련 학습 화면(대시보드, 원격훈련 강의장, 성적/수료증 등)은 제가 기획을 맡아 7월 피그마로 전달했고, 8월 퍼블 이후 디자인 QA까지 진행했습니다. 화면 설계와 QA 과정은 학습자 포털 신규 기획에 따로 정리했습니다. 10월 운영 서버 적용 뒤의 기능, 디자인 전수 검수는 AI 활용 이관 QA 체계 설계에 따로 정리했습니다.
결과
정량적 변화
2026년 9월 기준 진행 중인 프로젝트라, 지금까지 확정된 것만 적었습니다.
- 이관 방식어드민 커스터마이징 약 7 man-months → 전체 추가개발 약 6 man-months (범위는 전체로 넓히고 공수는 줄임)
- 기능 정의어드민 50메뉴 전수 분석 → 413행, 11시트 1차 전달, 협의 안건 100건 관리
- 견적 협상65항목을 4개 상태로 분류, 미결 8건 제거·축소 협상 카드 확보
- 일정계약 4월 → 킥오프 4/29 → 기능 정의 5/15 → 학습자 포털 디자인 전달 7월 → 퍼블 8/7 → 오픈 11/1 합의
- 오픈 리스크본인인증 마감(7/30) 유예 승인, SSL 만료(9/22) 갱신 방식 확정 → 마감 리스크 2건 해소
- 조율외부 파트너 4곳, 미팅 5회 주재, 이메일 40여 건, 회의록과 보고서 20여 건
운영 변화
- 기능 정의 마스터와 협의 안건 트래커가 개발사와의 공통 기준 문서가 돼, 회의마다 같은 질문을 반복하지 않게 됐습니다.
- 계약서, 회의록, 이메일, 리포트를 한 폴더에서 관리하는 문서 체계를 만들어, 일정 PM과 이사가 같은 상태를 보고 판단합니다.
사용자 관점
- 이관 후에도 회원은 같은 도메인과 같은 계정으로 접속하고, 강의 화면은 오픈패스 플레이어를 그대로 씁니다.
- 원격훈련 수강생을 위한 학습 화면은 기존 마이페이지 안에 새로 설계됐습니다(학습자 포털 신규 기획).
사업 관점
- 개발사 한 곳에 묶여 있던 플랫폼을 유지보수와 원격훈련 요건이 보장되는 LMS로 옮겨, 2027년 정부 심사에 들어갈 기반을 만들었습니다.
- 토큰 구조는 넘기지 않고 컬러 테마 전환만 제공해, 오픈패스의 디자인 설계 방식이 솔루션 기본값으로 흡수되지 않게 했습니다.
주요 결정
1. 솔루션 커스터마이징 vs 신규 플랫폼에 녹이기
커스터마이징은 검증된 솔루션 위에 얹는 안정적인 길이지만 어드민 공수가 7 man-months로 과했습니다. 업체가 개발 중인 신규 플랫폼에 오픈패스를 녹이면 공수는 줄지만, 완성도 60~70%인 플랫폼의 일정에 오픈이 묶입니다. 어드민 개발 진행 상황을 직접 확인할 수 있는 계정을 받는 조건으로 후자를 택했고, 오픈일은 계약서보다 한 달 늦은 11월 1일로 합의했습니다.
2. 디자인 고도화 vs 자산 보호
학습자 포털을 오픈패스답게 고도화할수록 그 디자인이 솔루션의 기본값이 돼 다른 고객사에 납품될 수 있었습니다. 업체 제약은 "구조 변경 불가, 색상만 가능"이었습니다. 이 제약 안에서 기본 테마와 오픈패스 테마를 컬러로만 전환하는 한 벌을 제공하고, 토큰 구조 자체는 넘기지 않기로 정리했습니다. 모서리와 타이포까지 두 벌로 나누지는 않았습니다.
3. 토큰 선행 vs 화면 디자인 선행
토큰을 먼저 정의하면 이후 화면이 일관되지만, 화면이 없는 상태에서 토큰을 정하면 실제 화면에서 다시 고치게 됩니다. 디자이너 4명과 논의해 화면 디자인을 먼저 하고 토큰화는 뒤에 하기로 순서를 바꿨습니다. 대신 학습자 포털 6~7월, 일반 페이지 8월로 디자인 일정을 나눠 개발과 병렬로 가게 했습니다.
4. 견적 전체 수용 vs 항목별 협상
견적을 그대로 받으면 빠르지만 "확인 필요"로 남은 8건과 퍼블리싱 40 M/D의 근거가 불명확했습니다. 65개 항목을 상태별로 분류하고 미결 8건은 실사용을 확인해 제거·축소, 퍼블리싱은 피그마 전달 기준을 먼저 정해 범위를 좁히는 시나리오를 준비했습니다. 원격훈련 심사에 직결되는 2건은 절감 대상에서 뺐습니다.
배운 점과 아쉬운 점
문서 없는 3년이 이관 비용으로 돌아옴
런칭 때 어드민 기능 정의서를 만들었지만 이후 추가 기능은 문서로 남기지 않았습니다. 이관 범위를 잡기 위해 50개 메뉴를 다시 전수 분석하는 데 2주가 들었습니다. 운영 중인 플랫폼은 기능이 추가될 때마다 정의서를 갱신해야 다음 전환이 싸집니다.
VOD 백업은 계약 범위 밖
계약서상 동영상은 백업 범위에서 제외되고 DRM도 적용되지 않습니다. 원본이 유실되면 복구할 수 없어 듀오톤이 원본을 별도 보관하기로 했습니다. 계약서를 읽을 때 "무엇이 빠져 있는지"를 먼저 보는 습관이 생겼습니다.
데이터 이관 착수가 늦음
데이터 이관은 개발사가 9월에 검토·진행하기로 했는데, 오픈 11월 1일에서 역산하면 여유가 없습니다. 이관 범위(테이블 매핑, 회원 비밀번호 호환, 결제 이력)를 5월 분석 단계에서 같이 확정했어야 했습니다. 남은 기간의 가장 큰 리스크로 관리 중입니다.
안재찬 · asa0677@naver.com