MKS-VMS (Video Management System)는 대량의 IP 카메라, 감지기(센서) 등 외부 인터페이스 장비를 종합적으로 운용하고 감시하는 영상관제 솔루션이다. 종합관제센터(Main Server)와 다수의 지역 관제실(Edge Server)을 연계하여, 실시간 영상 모니터링, 녹화/재생, AI 기반 이벤트 탐지, PTZ 제어 등 통합 관제 기능을 수행한다.
현재 프로젝트는 설계 단계에 집중되어 있으며, 5주간 요구분석, 프로세스 정의서, 엔티티/테이블 정의서, 통신 프로토콜 정의서, 화면 설계서 등의 기술 산출물이 작성되었다. 1월 마지막 주에 VMS 화면 정의서 v1.0이 완성되어 2월 3일 화상회의 안건으로 제출되었으며, Edge Server의 기능 구현(코딩)이 병행 진행 중이다. UI/UX 디자인 인력 충원이 지속적인 미해결 이슈로 남아 있다.
| 주차 | 기간 | 금주 주요 활동 | 상태 |
|---|---|---|---|
| W1 | 12.29 ~ 01.02 |
Edge Server 개발 진도 체크(현행화) 시작 Front End 화면설계서 작성 시작 VMS 개발 개요 및 내용 정리 |
Start |
| W2 | 01.05 ~ 01.09 |
Main Server 설계 시작 요구분석, 프로세스 정의, 엔티티/테이블 정의, 통신 프로토콜 정의 등 산출물 업데이트 UI/UX 인력 면접 1인 시행 |
진행중 |
| W3 | 01.12 ~ 01.16 |
요구분석, 프로세스 정의, 엔티티/테이블 정의, 통신 프로토콜 정의, 화면설계서 업데이트 계속 Edge Server 기능 구현(코딩) 시작 UI/UX 정규직 인력 충원 시도 |
진행중 |
| W4 | 01.19 ~ 01.23 |
각 서버별 프로세스 정의서, 엔티티 관계도/정의서, 테이블 정의서 작성 — Edge Server, Main Server, Display Server, Client PC 프로세스 분해도에 따른 함수 설정, 변수 선언 및 초기화, UI 배치 Edge Server: IP카메라 HEVC(H.265) 접속 테스트, DB연동 카메라 정보 읽기 |
진행중 |
| W5 | 01.26 ~ 01.30 |
각 서버별 프로세스 정의서 작성 완료 화면설계서 작성 계속, VMS 화면 정의서 v1.0 완성 기능 중심 코드 정리 Edge Server 기능 구현 계속 (HEVC 접속, DB 연동) 2/3(화) 오전 10시 화상회의 요청 |
진행중 |
| 주차 | 항목 | 내용 |
|---|---|---|
| W1 | UI/UX 인력 | 인력충원 준비 |
| W2 | UI/UX 인력 | 1인 면접 시행 |
| W3 | UI/UX 인력 | 정규직 인력충원 시도 |
| W4 | - | 별도 이슈 없음 |
| W5 | 화상회의 | 2/3(화) 오전 10시 VMS 화면 정의서 v1.0 기준 리뷰 진행상황 및 전체 구조/방향 리뷰 |
Edge-Main 분산 구조로, 지역 관제실(Edge)은 독립적으로 운영되며 종합 관제센터(Main)에서 전체를 통합 관리. Main Server 장애 시에도 Edge 서버들은 독립적으로 동작 가능한 내결함성(Fault Tolerance) 설계.
모든 서버 간 통신은 TCP Socket 기반 표준화된 패킷 프로토콜을 사용. 변경 통지(Notification), 실행 통지(Command) 패턴으로 구분하며, DB 기반 간접 통신(DB에 기록 후 읽기 통지)을 혼용.
Edge 서버의 2단계 AI 파이프라인: 1단계 Detection(Edge) -> 2단계 Classification(Main). 썸네일+메타데이터 기반 전송으로 네트워크 대역폭 최적화. HEVC(H.265) 코덱 지원.
VMS의 핵심 서버. 뷰어+저장+이벤트 표출+전체 제어/관리 기능 수행. 최대 4개 모니터 지원 (Map, View, 로그, Player 전용)
| 기능 그룹 | 주요 기능 |
|---|---|
| 뷰어 | 16채널, 분할화면, PTZ, Rotation, D&D, Audio, OSD |
| 저장 | 수동 녹화, 자동 녹화 시간제한(1H) |
| Player | Local/Remote Play, 파노라마, VOD, AVI 추출 |
| 이벤트 | 가시/가청 통지, 로그 클릭시 영상 연동 |
| 관리 | 사용자(3등급), 카메라, 서버, 외부IF, 로그, Map |
| 제어 | Display/Edge 서버 원격 제어, 일괄 설정 |
영상 녹화 전담. 24H Full 녹화, 예약 녹화, AI 이벤트 녹화 지원. VOD 서비스(STREAMER 모듈) 내장. 예비 서버 전환 구조.
| 프로세스 | 함수명 |
|---|---|
| 카메라 정보 읽기 | LoadCameraInformation |
| 저장모듈 생성/실행 | CreateStramingServiceScript |
| 스토리지 저장 | RecordingThread |
| 카메라 접속 확인 | ManagerThread |
| VOD 전송 | LoadH265File |
| 자동 삭제 | FileDeleteManager |
| 프로세서 관리 | ProcessorManager |
실시간 영상 스트리밍 전담. RTSP 프로토콜 기반. MJPEG, MPEG4, HEVC 코덱 지원.
| 프로세스 | 함수명 |
|---|---|
| 영상 버퍼 저장 | ReadVideoData_onRTSP |
| 접속 대기 | RelayServerSocketThread |
| 영상 전송분배 | WriteVideoData_onRTSP |
| 프레임 수 확인 | CreateCalculationThread |
| 다른 서버 통신 | fnServiceEventThread |
AI엔진(카메라), 외부설비(센서) 이벤트 수신/파싱/저장/통지. 포트별 분리: AI카메라(9001), 외부설비(9002), 서버전환(9003).
| 프로세스 | 함수명 |
|---|---|
| AI카메라 이벤트 수신 | fnAICameraServiceStart |
| 외부설비 이벤트 수신 | fnElectricMachineServiceStart |
| NMS 정보 수신 | fnNMSGetInfoeStart |
| 이벤트 송신(Main) | fnEventMsgToMainSend |
| 이벤트 DB 저장 | fnEventMsgDBSave |
| 소켓 상태 관리 | fnServerSocketActiveCheckStart |
전체 화면 영상 출력 전용. 자체 UI 제어 없이 Main Server에서 원격 제어. 최대 36채널 지원, 다양한 분할 모드, 로테이션 기능 내장.
1Ch, 4Ch, 6Ch, 9Ch, 10Ch, 12Ch, 16Ch, 17Ch, 17Ch(Center), 21Ch, 21Ch(Center), 22Ch, 25Ch, 28Ch, 33Ch, 33Ch(Center), 36Ch
| # | 산출물 | 파일명 | 버전 | 상태 |
|---|---|---|---|---|
| 1 | 요구분석서 MKS VMS 개발개요, 내용 정리 |
1. 요구분석_MKS VMS 개발개요, 내용 정리_20260108_작성중.doc | v1.1 | 작성중 |
| 2 | 프로세스 정의서 (Edge) 저장서버, 전송분배서버, AI이벤트서버 |
2. 프로세스 정의서_Edge Server_20260108 작성중.doc | v1.0 | 완료 |
| 3 | 프로세스 정의서 (Main) 뷰어제어, Display 제어, 관리기능 |
2. 프로세스 정의서_Main Server_20260109 작성중.doc | v1.0 | 완료 |
| 4 | 엔티티 정의서 | 3. 엔티티 정의서_20260108 작성중.doc | v1.0 | 작성중 |
| 5 | 엔티티 관계도 | 엔터티관계도_20260108 작성중.erwin | v1.0 | 작성중 |
| 6 | 테이블 정의서 | 4. 테이블 정의서_20260109 작성중.doc | v1.0 | 작성중 |
| 7 | 통신 프로토콜 정의서 | 5. 통신프로토콜_20260108 작성중.doc | v1.0 | 작성중 |
| 8 | 패킷 설계서 | 패킷설계_20250108 작성중.xls | v1.0 | 작성중 |
| 9 | 화면 레이아웃 설계서 | 6. 화면 레이아웃 설계서_세로 (양식).doc | v1.0 | 작성중 |
| 10 | VMS 화면 정의서 화면 ID, GUI 설계, 동작 프로세스 |
2. VMS 화면정의서_v1.0_20260130.pptx | v1.0 | 완료 |
| 11 | 기능중심 프로그램 목록표 | 1. 기능중심 코드정리, 프로그램_목록표_20260130.xls | v1.0 | 작성중 |
| 12 | Edge Server 진도체크 | 1. Edge 서버, 개발 진도체크.mpp_20260102.pdf | - | 완료 |
분석 소견: 설계 산출물의 전반적인 완성도는 약 65% 수준으로, 프로세스 정의서와 화면 정의서가 상대적으로 높은 완성도를 보이고 있으며, 통신 프로토콜 및 엔티티/테이블 정의는 추가 보완이 필요한 상태이다.
하나의 Parent Frame 안에서 여러 Child Window를 관리하는 MDI(Multiple Document Interface) 구조를 채택. 탭 기반 윈도우 관리로 다중 화면 동시 운용이 가능하다.
"직관적인 GUI" - V사의 직관적 GUI 벤치마킹, F사의 Setting 구조 벤치마킹을 명시하고 있으며, 하나의 대시보드에서 모든 카메라의 실시간/과거 저장 영상을 확인 가능한 구조를 지향.
모든 화면은 Main Server 및 Client PC에서 공통 사용되며, Display Server는 Main Server 원격 제어 방식으로 별도 UI 없음.
화상회의 Agenda PPTX(34 slides)는 화면정의서 v1.0에 VMS 프로그램 개발 핵심 원리 슬라이드가 추가된 확장본이다.
C 코드 수준의 동작 프로세스가 4개 모듈에 대해 상세히 기술됨:
(1) 스트리밍 엔진 (RelayServerMain.C / RelayClientMain.C) - RTSP 기반 영상 전송분배 코어
(2) 스토리지 관리 (RecordServerMain.C / RecordClientMain.C) - 녹화 모듈 프로세스
(3) VOD 서버 (VODServerMain.C) - 녹화 영상 스트리밍 서비스
(4) AI 클래스 연동 - 플레이어 -> VOD -> AI클래스 -> 저장서버 연동 6단계 프로세스
| 빨간 선 = 현재 시점 (2026.02.02) 현재 2단계(Pilot Product) 완료 후 3단계(화면정의 디자인 완성 + 코드 구현) 진입 시점.
프로젝트 문서 관리 효율화를 위한 RAG 기반 문서 분석 시스템이 별도 계획됨.
| Phase | 내용 |
|---|---|
| Phase 1 | 기반 구축 - FastAPI, ko-sroberta 임베딩, ChromaDB |
| Phase 2 | 문서 처리 - PDF/DOC 파싱, 청킹, 메타데이터 추출 |
| Phase 3 | 검색/RAG - 시맨틱 검색, 질의응답, 출처 추적 |
| Phase 4 | 대시보드 - 자동 대시보드 생성, JSON 스키마 |
| Phase 5 | 변경 추적 - 주간 스냅샷, Diff 엔진 |
| # | 항목 | 상세 내용 | 해당 서버 |
|---|---|---|---|
| 1 | 녹화 저장 포맷 | LOW DATA 저장 vs ASF/AVI 변환 여부 미결정 (Linux 계열) | Edge/저장서버 |
| 2 | 이벤트 녹화 시 영상 공백 | 이벤트 수신 -> 카메라 연결 시 수초간 녹화 공백 발생. 해결 방안 미확정 | Edge/저장서버 |
| 3 | 스토리지 연계 | 스토리지와의 디스크 저장 방식 미결정 | Edge/저장서버 |
| 4 | Remote Play-Back | 다양한 VOD 방식(Streaming, Download, FTP, HTTP, NFS) 중 우선순위 미결정 | Main Server |
| 5 | Display Server 분할모드 | 17종 이상의 분할 모드 중 세부 검토 필요 (구현 범위) | Display Server |
| # | 우선순위 | 권고 사항 | 기대 효과 |
|---|---|---|---|
| 1 | 긴급 | UI/UX 디자인 인력 확보: 3주간 지속 보고된 인력 충원 이슈의 조속한 해결. 외주 용역 또는 프리랜서 활용 방안도 병행 검토. | 화면정의 디자인 완성 일정 정상화, 개발자 업무 과부하 해소 |
| 2 | 긴급 | 기술적 미결 사항 의사결정: 녹화 저장 포맷(LOW/AVI/ASF), 스토리지 방식, Remote Playback 우선순위 등을 2월 내 확정. | 구현 단계 진입 시 재작업 리스크 최소화 |
| 3 | 높음 | 정량적 프로젝트 일정 수립: WBS(Work Breakdown Structure) 기반 상세 일정표 작성. 마일스톤별 완료 기준 및 목표일 명시. | 진행률 측정 가능, 의사결정 타이밍 명확화 |
| 4 | 높음 | 지식 이전 및 문서화 강화: 단일 개발자 의존 리스크 완화를 위해, 아키텍처 결정 사유(ADR) 및 코드 주요 로직의 문서화 병행. | 신규 인력 투입 시 온보딩 효율성, Bus Factor 완화 |
| 5 | 보통 | 산출물 완성 우선순위 재조정: 통신 프로토콜 정의서, 패킷 설계서를 코드 구현 전 우선 완성하도록 일정 재조정. | 서버 간 통신 구현 시 명세 기반 작업 가능 |
| 6 | 보통 | 정기 리뷰 체계 강화: 2/3 화상회의를 시작으로, 격주 또는 월간 기술 리뷰 체계를 정례화. | 설계 품질 검증, 방향성 얼라인먼트 강화 |
MKS-VMS 프로젝트는 5주간의 설계 단계에서 체계적인 산출물 구조와 명확한 아키텍처 비전을 수립하였다. Edge Server의 기능 구현이 시작되었고, VMS 화면 정의서 v1.0이 완성되어 2월 화상회의를 통한 방향 리뷰가 예정되어 있다. 다만, UI/UX 인력 부재와 단일 개발자 의존 구조는 프로젝트의 지속가능성 측면에서 즉각적인 조치가 필요한 핵심 리스크이며, 기술적 미결 사항의 조속한 의사결정이 구현 단계의 원활한 진행을 위해 선행되어야 한다.