19 KiB
🚀 SMART IMS 통합 프로젝트 로드맵 (Integrated Master Plan)
프로젝트명: SOKUREE Platform - Smart Integrated Management System 최초 작성일: 2026-01-25 최근 업데이트: 2026-01-26 버전: v0.4.4.0
📌 개요 (Overview)
본 문서는 SOKUREE 플랫폼의 핵심 성능 개선(Platform Review)과 스마트 관리 모듈(Smart Module Implementation Plan)의 구현 계획을 통합하여, 기능 구현 단계별 태그(Tag) 기반의 전체 마스터 플랜을 정의합니다.
🗺️ 구현 로드맵 (Implementation Roadmap)
🟦 Phase 1: 기반 강화 및 보안 고도화 (Platform Stability)
목표: 플랫폼의 안정성 확보 및 사용자 중심의 보안/관리 체계 구축
🏷️ Tag: v0.4.1.0
-
세션 관리 엔진 최적화
- 세션 자동 로그아웃 시간 합산 오류 수정 (시간+분 단위 정상 동작 확인)
- 활동 부재 시 자동 로그아웃 잔여 시간 추적 로그 시스템 도입
- (수정사항): 서버 요청 로그([KST])에 해당 세션의 남은 시간(
m s left)을 실시간 표시하도록 개선 및 세션 연장 로직 최적화 -사용자가 마지막 활동 후 **설정된 시간(기본 10분)**이 경과하면, 30초 간격으로 돌아가는 감시 엔진에 의해 즉시 포착되어 로그아웃이 수행됩니다. 따라서 체감상 로그아웃이 발생하는 "최초 트리거 타임"은 [설정된 시간] + (0~30초) 이내입니다.
-
사용자별 맞춤 보안 설정
- 시스템 기본 설정의 보안/세션 을 개별 사용자의 기본설정에서 설정 가능하도록 이동
- 사용자 별 세션 만료 시간 적용가능하도록 사용자 DB에 이 설정 값을 포함하도록 재 구성
- 사용자 등록 양식 기본 값을 10분으로 설정
- 사용자 등록화면에서의 권한 명칭 수정 (최고관리자, 관리자, 사용자 로 통일)
- (수정사항):
users테이블 스키마 확장(session_timeout추가) 및 로그인 세션 생성 시 사용자별 커스텀 타임아웃 주입 엔진 구현
-
CCTV 설정 추가
- 등록된 CCTV 조회 메뉴 추가하여 게시판 형으로 목록화 하고 활성(비활성)/수정/삭제 할수 있는 관리 기능 구현
- CCTV 설정 파일 DB 저장 시 username/password 필드 암호화 처리
- CCTV 설정 파일 조회 시 username/password 필드 복호화 처리
- (수정사항):
CameraManagementPage신설 및cryptoUtil을 통한 RTSP 계정 정보의 DB 암호화 저장 로직 완성 (AES-256)
🏷️ Tag: v0.4.2.9
- 라이선스 관리 오류 수정
- 모듈 활성화 상태 체크 미들웨어(
requireModule) 보강 및 라이선스 만료 감지 로직 안정화
- 모듈 활성화 상태 체크 미들웨어(
- 시스템 관리 기본설정 오류 수정
- 'monitoring' → 'cctv' 모듈 코드 마이그레이션 시 발생하는 중복 키 오류(
ER_DUP_ENTRY) 완벽 해결
- 'monitoring' → 'cctv' 모듈 코드 마이그레이션 시 발생하는 중복 키 오류(
- 시스템 업데이트 엔진 고도화 & 인프라 보호 (Shovel-work/삽질 기록)
- 인프라 보호 시스템(Infrastructure Shield):
.env.local우선순위 도입으로 업데이트 시 운영 서버 설정이 초기화되는 문제 근본 해결 - 실시간 버전 동기화: 정적 파일 대신 Git Tag를 직접 조회하도록 개선하여 업데이트 후 현재 버전 즉시 반영
- 업데이트 안정성: 소스 교체 전
.env/.env.local2중 백업 및 복구 시퀀스 적용 - 서버 가용성: Synology NAS 등 저사양 환경에서의 블로킹 방지를 위한
execSync차단 및 에러 핸들링 강화
- 인프라 보호 시스템(Infrastructure Shield):
🏷️ Tag: v0.4.2.11
- CCTV 모니터링 UI 리뉴얼
- 페이지 배경색을 플랫폼 표준인 연한 그레이(
var(--sokuree-bg-main))로 변경하여 일체감 형성 - 카메라 슬롯을 독립적인 카드(Card) 형태로 디자인하고 둥근 모서리(
rounded-xl) 및 그림자(shadow-sm) 적용 - 고정된 검은색 배경 대신 브랜드 컬러인 다크 슬레이트(
var(--sokuree-brand-secondary)) 배경 적용 - 빈 슬롯 디자인을 깔끔한 화이트 카드 형태로 개선하여 시각적 피로도 감소
- 페이지 배경색을 플랫폼 표준인 연한 그레이(
🏷️ Tag: v0.4.3.0 [x]
- 소모품 및 자재 관리 모듈(
material) 신규 구축- 자재/재고 관리 독립 모듈 생성 및 '기준정보' 하위 메뉴 배치
- 소모품(공구, 부품, 오일 등)의 재고 상태 시각화 및 카드형 UI 구현 (
MaterialListPage)
- 부속설비 관리 UI 및 로직 고도화
- 설비 검색 전용
AssetSearchModal도입으로 수천 개의 자산 중 정밀 검색 및 선택 가능 - 부속 설비 등록 버튼 클릭 시 상위 설비(부모) 정보 및 카테고리 자동 바인딩 로직 구현
- 상위 설비 선택 방식을 드롭다운에서 검색 모달 방식으로 전면 교체하여 데이터 무결성 강화
- 설비 검색 전용
- 사이드바 메뉴 구조 전면 개편
- 기준정보(Standard Info) 그룹: 자산 관리, 자재/재고 관리를 통합하여 관리 효율성 증대
- 설정(Settings) 그룹: IoT 센서 모니터링, 모듈 관리, 설비 관리 메뉴 신설 및 구조화
- 사용자 맞춤형 권한 제어 엔진 구현
users테이블 스키마 확장(allowed_modulesJSON 도입)을 통한 사용자별 모듈 접근 제한 지원- 사용자 관리 화면에 모듈별 접근 권한 체크박스 UI 추가하여 직관적인 권한 부여 가능
- 권한에 따른 사이드바 메뉴 동적 필터링 시스템 구축 (최고관리자 면제 로직 포함)
🏷️ Tag: v0.4.3.1 (완료)
- 모듈 통합 및 구조 최적화
- '자재 관리'와 '재고 관리' 모듈을
material모듈로 통합 (자재/재고 관리) - 중복되는
inventory모듈을 제거하고 비즈니스 로직을material로 흡수하여 관리 효율성 증대
- '자재 관리'와 '재고 관리' 모듈을
- 스마트 관리 모듈 라인업 확장
- 품질 관리 모듈(
quality) 신규 구축 및 핵심 지표(불량률, 합격률, Cpk 등) 시각화 대시보드 구현
- 품질 관리 모듈(
- 라이선스 및 시스템 설정 고도화
- 라이선스 관리 화면(
LicensePage)에 통합된 '자재/재고' 및 '품질 관리' 모듈 즉시 연동 - 서버 기동 시 DB(
system_modules) 내 모듈 정보 자동 동기화 및 전역 권한 설정 최적화
- 라이선스 관리 화면(
- 플랫폼 신뢰성 강화 (Runtime Stability)
- 사용자 관리 페이지의 데이터 가드 로직 강화로 불완전한 데이터 수신 시 발생하던 런타임 오류(흰 화면) 해결
- 라이선스 발급 표준 정의
- 발급 관리 프로그램 연동을 위한 모듈별 고유 코드(
asset,production,material,quality,cctv) 및 필수 규격 확정
- 발급 관리 프로그램 연동을 위한 모듈별 고유 코드(
🏷️ Tag: v0.4.3.5 (완료)
- 버전 관리 표준 확립
- MAJOR.MINOR.PATCH.BUILD 4단계 체계 도입 및 문서화 (
version manage.md) - 배포 표준 절차(Standard Deployment Procedure) 정의
- MAJOR.MINOR.PATCH.BUILD 4단계 체계 도입 및 문서화 (
- 시스템 안정성 및 빌드 최적화
- 빌드 시 정적 자산 강제 업데이트 스크립트 보강
- 미사용 변수 및 린트 에러 수정을 통한 빌드 실패 방지
- 버전 정보 동기화 로직 최적화 (package.json 기반)
🏷️ Tag: v0.4.4.1 (완료)
- 라이선스 모듈 활성화 오류 긴급 수정
inventory→material및monitoring→cctv레거시 라이선스 호환성 확보- CLI 도구(
license_manager.cjs) 내 신규 모듈(material,quality) 지원 추가 - 사용자 권한(
allowed_modules) 자동 마이그레이션 로직 보강
- 모듈 카테고리 동적 생성 기능
- 모듈 정의(
IModuleDefinition) 시 카테고리를 하드코딩하지 않고 직접 문자열로 정의 가능하도록 개선 - 사이드바 그룹화 로직을 동적으로 처리하여 신규 카테고리 추가 시 코드 수정 최소화
- 모듈 정의(
- UI 시각화 및 사용성 개선
- 사이드바 메뉴 선택 시 하이라이트 색상을 브랜드 테마(
var(--sokuree-brand-primary))와 일치시켜 시각적 일관성 확보
- 사이드바 메뉴 선택 시 하이라이트 색상을 브랜드 테마(
- 통합 로드맵 및 문서 현행화
INTEGRATED_ROADMAP.md업데이트 및 버전 관리 규정 반영
🏷️ Tag: v0.5.0.x
-
모듈 간 연동을 위한 API 인터페이스 정의
-
자재/재고 관리 모듈 추가
-
생산관리 모듈
- 생산 공정 메뉴
- 생산 라인 메뉴
- 생산 실적 관리 메뉴
-
품질관리 모듈
-
IoT 모듈
- IoT 센서 모니터링 메뉴
- IoT 센서 데이터 수집 및 저장
- IoT 센서 데이터 시각화
-
-
사용자 관리 시스템 강화
- 사용자 고유 관리번호 도입 (중복 불가)
- 프로필 이미지 필드 추가 및 업로드 기능
- 사용자 목록 UI 최적화 (페이지당 10개 제한, 네비게이션 추가)
- 복합 검색 기능 (관리번호, 아이디, 이름) 및 소속 필터 적용
🟩 Phase 2: 자산관리 MVP 및 모니터링 (Core Assets & IoT)
목표: 통합 자산관리의 핵심 기능 구현 및 실시간 데이터 연동 기반 구축
🏷️ Tag: v0.5.1.x
- 자산관리 기본 모듈 (Asset CRUD)
- 6대 카테고리(
FAC,TOL,INS,VEH,GEN,CSM) 기반 관리 체계 확립 - 자산 등록/수정/삭제 웹 인터페이스 구현
- QR 코드 자동 생성 및 라벨 출력 기능
- 6대 카테고리(
- 에너지 미터 모니터링 (Energy Meter)
- MQTT 프로토콜 기반 실시간 데이터 수집 (qideun.com:1883)
- 전압, 전류, 전력량, 역률 시각화
- 년/월/일/시간별 누적 소비량 통계 및 차트 구현
- CCTV 스트리밍 연동
- 현재의 JSMpeg 기반 스트리밍 구조 유지 및 모니터링 탭 통합
🟧 Phase 3: 지능형 통합 및 품질 관리 (Smart Integration)
목표: 모듈 간 데이터 연쇄 작용 및 생산/품질 시스템과의 연동 고도화
🏷️ Tag: v0.6.0.x
- 스마트 센서 매핑 및 확장 시스템
- 설비별 임의 센서(온도, 진동 등)를 동적으로 추가할 수 있는 Sensor Mapping 기능
- 센서 임계치 도달 시 고장 접수 자동화 및 예방정비(PM) 알림 연계
- 품질-생산 연동 (Accuracy Management)
- 계측기 검교정 후 발생하는 보정치(Bias/Offset) 실시간 저장
- MES 연동: 생산 공정 데이터 측정 시 자산 모듈의 보정 계수를 실시간 반영하여 정밀도 확보
- 예방정비-재고 자동 연동
- 예방정비 스케줄 도래 시 필요한 소모품(
CSM)의 재고 확인 및 자동 할당 - 소모품 안전재고(ROP) 기반 자동 발주 알림 처리
- 예방정비 스케줄 도래 시 필요한 소모품(
🛠️ 기술 상세 규격 (Technical Specifications)
1. 전력 모니터링 MQTT 규격
- Topic:
sokuree/home/ems(실시간),sokuree/home/ems/report(통계) - Data Payload:
{
"node_id": "PZEM004T-R4",
"voltage": "225.20",
"current": "2.17",
"power": "408.40",
"energy": "157.94"
}
2. 고도화된 데이터 모델 (Interface)
시설물 (Facility + IoT + Parts)
interface FacilityAsset extends AssetBase {
iotConfig?: {
nodeId: string;
sensors: Array<{ type: string; field: string; threshold?: number }>;
};
linkedParts: Array<{ itemId: string; quantity: number }>; // 예방정비 소요 부품
maintenance: { nextDate: string; intervalDays: number };
}
계측기 (Instrument + Correction)
interface InstrumentAsset extends AssetBase {
calibration: {
nextDate: string;
correction: { bias: number; slope: number }; // 생산관리 연동용 보정치
};
}
📋 자산 분류 및 관리 전략
| 코드 | 분류명 | 핵심 연동 항목 |
|---|---|---|
| FAC | 시설물 | PM(예방정비), IoT 가동률, 소모품 재고 |
| INS | 계측기 | 검교정 이력, MES 보정값 반영 |
| CSM | 소모품 | 정비 부품 할당, 안전재고 알림 |
| TOL | 공구 | 불출/반납 이력, 금형 수명 관리 |
💡 참고 사항
- 모든 기능 구현 시 플랫폼의 디자인 시스템(CSS Variables)을 준수해야 함.
- 모듈 독립성 유지를 위해 모듈 간 통신은 정의된 API 인터페이스를 통해서만 수행함.
아키텍처 상세 도식
┌─────────────────────────────────────────────────────────────────────────┐ │ Layer 5: 지능형 분석 및 시각화 (The Brain) │ │ ┌───────────────────────┐ ┌──────────────────────────────┐ │ │ │ AI 분석 엔진 │◀──────────▶│ 통합 관제 대시보드 (BI) │ │ │ │ (예지보전, 품질최적화) │ 인사이트 │ (KPI, 가동률 실시간 모니터링)│ │ │ └───────────▲───────────┘ └──────────────▲───────────────┘ │ └──────────────┼───────────────────────────────────────┼──────────────────┘ │ 분석 결과 피드백 │ 실시간 현황 ▼ ▼ ┌──────────────┼───────────────────────────────────────┼──────────────────┐ │ │ Layer 4: 애플리케이션 계층 (IT System) │ │ │ ┌───────────▼──┐ ┌──────────────┐ ┌─────────────┐ ┌──────────┐ │ │ │ MES │◀─▶│ ERP │◀─▶│ WMS │◀─▶│ QMS │ │ │ │ (생산 실행) │ │ (전사적 자원) │ │ (창고관리) │ │(품질관리) │ │ │ └───────▲──────┘ └───────▲──────┘ └──────▲──────┘ └─────▲────┘ │ └──────────┼──────────────────┼─────────────────┼────────────────┼────────┘ │ │ │ │ ▼ ▼ ▼ ▼ ┌─────────────────────────────────────────────────────────────────────────┐ │ ⭐ Layer 3: 통합 데이터 플랫폼 (CORE HUB & Data Lake) │ │ ┌───────────────────────────────────────────────────────────────────┐ │ │ │ 통합 데이터 허브 (Data Broker) │ │ │ │ "모든 데이터가 모이고, 필요한 곳으로 분배된다" │ │ │ └─────────────────────────────────▲─────────────────────────────────┘ │ │ │ ↕ 양방향 데이터 동기화 │ │ ┌──────────▼──────────┐ │ │ │ 실시간 / 이력 DB │ │ │ └─────────────────────┘ │ └────────────────────────────────────▲────────────────────────────────────┘ │ 표준 프로토콜 (MQTT/OPC-UA) ┌────────────────────────────────────┼────────────────────────────────────┐ │ Layer 2: 엣지 컴퓨팅 계층 (Translator) │ │ ┌────────────────────────┴───────────────────────┐ │ │ │ 엣지 게이트웨이 (Edge GW) │ │ │ │ (데이터 수집, 프로토콜 변환, 1차 필터링) │ │ │ └──────▲─────────────────▲────────────────▲──────┘ │ └──────────────────┼─────────────────┼────────────────┼───────────────────┘ │ │ │ ┌──────────────────┼─────────────────┼────────────────┼───────────────────┐ │ ┌─────────┴──────┐ ┌──────┴───────┐ ┌────┴─────┐ │ │ │ P1. 기존 설비 │ │ P2. 최신설비 │ │ P3. 센서 │ │ │ │ (PLC/Legacy) │ │ (Robot/CNC) │ │ (환경) │ │ │ └────────────────┘ └──────────────┘ └──────────┘ │ │ Layer 1: 현장 물리 계층 (Data Source) │ └─────────────────────────────────────────────────────────────────────────┘




