콘텐츠로 이동

EDGE — Application Architecture

원본: EDGE_아키텍처_v0_2.pptx — Slide 2 (Application Architecture)

[설계 뷰] 논리 설계 개요다. 현행·계약의 권위는 SSOT에 있다 — 서비스/책임 경계 상세는 ../context.md, 콘솔 화면·메뉴 상세는 super-admin-console.md·tenant-console.md. 논리명↔배포 모듈은 system-architecture.md의 논리→배포 매핑 참조. 충돌 시 SSOT 우선.

⚠️ 위젯 접점: 이 문서의 "위젯 UI 임베드" 서술은 SSOT로 전진됨 — EDGE 위젯 UI를 빌드 산출물로 납품(실행 서버 없음, 증권사가 임베드·호스팅)하는 것이 현행이다 (../context.md §2, ../adr/0035). 위젯이 벤더 클라우드를 직접 호출하지 않는 것은 그대로다.

⚠️ 호출 경로·고객 컨텍스트: 아래 "금융사 구축 API"(중계 백엔드)와 "계정계 보유 여부 확인" 서술은 ADR-0053으로 폐지됨 — 개인화 없음이 확정되어 위젯이 증권사 엣지(프록시) 경유로 On-Prem Publication API 를 직접 호출하고, 고객 식별은 어떤 형태로도 받지 않는다. 다이어그램 갱신은 뷰 재작도 PR 소관.

개요

애플리케이션은 크게 금융사 통제 환경과 EDGE 환경 두 영역으로 분리되며, 두 환경은 DMZ의 수집 중계 컴포넌트를 통해서만 연결된다. 고객 데이터는 금융사 밖으로 반출되지 않고, EDGE에서 생성된 가격 변동 분석이 금융사 내부로 반입(pull)되는 구조다.

  • 행위자: 투자자(채널계 위젯 이용), 준법 감시인(내부 통제 영역 콘솔 이용), 슈퍼 어드민(EDGE 콘솔 이용)

1. 금융사 통제 환경

1.1 채널계 (고객 접점 시스템)

  • 금융사 종목 콘텐츠 페이지 — 투자자가 투자 종목 확인
  • 가격 변동 설명 위젯 UI (위젯 임베드) — 종목 별 가격 변동 설명 조회
  • 금융사 구축 API — 위젯의 가격 변동 설명 요청 처리
  • 계정계에 보유 여부 확인 (Y/N)
  • 내부 통제 영역의 가격 변동 설명 제공 API에 승인된 가격 변동 설명 조회

1.2 계정계 (금융사 계정 시스템)

  • 고객 데이터 — 외부 반출 없음

1.3 사내 공통 인프라

  • 사내 인증 체계 — 인증 API가 OIDC / SAML 인증 위임

1.4 내부 통제 영역 (컴플라이언스 검수 · 승인)

UI 계층 (준법 감시인)

UI 기능
인증 / 온보딩 UI 로그인, 온보딩
대시보드 UI 가격 변동 설명 수신 상태 조회, 자동 제공 건수 조회, 검수 대기 건수 조회, 미제공(차단/반려/중단) 건수 조회, 최근 가격 변동 설명 조회
가격 변동 설명 관리 UI 가격 변동 설명 목록 조회, 종목 검색, 상태 필터, 시장 필터, 확신도 필터, 근거 데이터 조회, 원본 설명 문구 조회, 최종 제공 문구 조회, 관리 액션
검수 관리 UI 검수 대기 목록 조회, 종목 검색, 검수 사유 필터, 원본 설명 문구 조회, 근거 데이터 조회, 검수 사유 조회, 최종 문구 수정, 검수 의견 생성, 검수 액션
점검 기준 관리 UI 금칙어 설정, 점검 처리 기준 설정, 면책 문구 설정
설정 UI 시장 / 종목 제공 범위 설정, 사용자 조회 / 등록(관리자 직접)

API / 서비스 계층

API·서비스 기능
가격 변동 설명 제공 API 종목별 가격 변동 설명 조회, 제공 이벤트 로그 기록
인증 API 로그인(사내 SSO 위임), 로그아웃 / 토큰 갱신, 온보딩, 사용자 조회 / 등록(관리자 직접) / 역할 변경 — 초대·재설정 메일 흐름 없음(온프렘 SMTP 통제, ../adr/0025)
대시보드 API 주요현황 집계, 최근 설명 요약, 제공·검수·미제공 카운트
가격 변동 설명 API 가격 변동 설명 목록 조회, 설명 상세 / 근거 데이터 조회, 최종 문구 수정, 상태 전이(검수로 이관 / 중단)
검수 API 검수 대기 목록 조회, 검수 의견 저장, 검수 판정 제출(승인 / 반려)
점검 기준 API 금칙어 조회 / 등록 / 활성화, 점검 처리 기준 조회 / 설정, 면책 문구 조회 / 수정
환경 설정 API 시장 제공 범위 조회 / 설정, 종목별 제공 여부 조회 / 설정
점검 엔진 금칙어 검사, 투자권유성 표현 검사, 필수 고지 / 근거 부족 검사
가격 변동 설명 수집 (반입) 가격 변동 설명 데이터 수집 — DMZ 중계 컴포넌트로부터 반입

저장소 계층

  • 사용자 Repository
  • 감사 로그 Repository
  • 가격 변동 설명 Repository
  • 검수 Repository
  • 점검 기준 Repository

→ 모든 Repository는 금융사 내부 DB에 저장

주요 흐름 (UI → API)

  • 인증/온보딩 UI → 인증 API: 로그인
  • 대시보드 UI → 대시보드 API: 대시보드 조회 / 최근 설명 조회
  • 가격 변동 설명 관리 UI → 가격 변동 설명 API: 가격 변동 설명 조회, 관리 액션
  • 검수 관리 UI → 가격 변동 설명 API: 최종 문구 수정 / 검수 API: 검수 대기 목록 조회, 판정 / 검수 사유 조회
  • 점검 기준 관리 UI → 점검 기준 API: 점검 기준 설정
  • 설정 UI → 인증 API: 사용자 조회 / 등록(관리자 직접), 환경 설정 API: 시장 / 종목 제공 범위 설정

2. DMZ

  • 가격 변동 설명 수집 (중계) — 가격 변동 설명 데이터 수집
  • EDGE 환경의 Tenant Sync API(반입 표면 — cursor·fan-out·mTLS 이벤트 번들, ../contracts/sync-protocol.md)에서 번들을 가져와 금융사 내부의 수집(반입) 컴포넌트로 중계. 분석 데이터가 논리적 원천이나 실제 반입 와이어 API는 Tenant Sync API다 — 콘솔 조회용 분석 API(super-admin)로 붙이면 sync 계약(커서·멱등·mTLS)을 우회한다.
  • 금융사 통제 환경과 EDGE 환경 간 유일한 데이터 통로

3. EDGE 환경

3.1 가격 변동 분석 파이프라인

데이터 소스: 뉴스, 가격, 공시

단계 기능
데이터 수집 뉴스 데이터 수집, 가격 데이터 수집, 재무제표 데이터 수집
뉴스 데이터 처리 규칙 기반 중복 제거, 데이터 정합성 확인, 의미 기반 중복 제거, 개체명 추출, 뉴스 데이터 구조화, 연관 뉴스 연결
가격 데이터 처리 규칙 기반 중복 제거, 데이터 정합성 확인, NAV·괴리율 확인
공시 데이터 처리 규칙 기반 중복 제거, 데이터 정합성 확인, 공시 제목 정규화, 연관 뉴스와 연결, 교차소스 정합(뉴스 ↔ 공시 같은 사건 통합)
가격 분석 엔진 괴리율·환율 설명분 계산, 시장 설명분 계산, 구성 종목의 연관 기업 수익률 설명분 계산, 설명 수치 데이터 적재, 이벤트 설명 필요성 결정
가격 변동 분석 AI 설명 수치 데이터 로드, ETF 보유 종목별 비율 로드, ETF 구성 비율이 높은 개별 종목 선택, 신규/후속/재보도 판정, 선별된 뉴스 컨텍스트 로드, 필요시 공시 데이터 로드, 가격 변동 분석 추출

3.2 슈퍼 어드민 콘솔

UI 계층 (슈퍼 어드민)

UI 기능
인증 UI 로그인
테넌트 관리 UI 테넌트 목록 조회, 테넌트 검색, 상태 필터, 기본 정보 조회, 동기화 / 호출 현황 조회, 테넌트 생성
가격 변동 분석 관리 UI 데이터 소스 수집 상태 조회, 가격 변동 분석 목록 조회, 종목 검색, 상태 필터, 시장 필터, 종목 / 등락 정보 조회, 근거 데이터 조회, 분석 결과 조회, 분석 정보 조회, 관리 액션

API 계층

API 기능
인증 API 로그인(OAuth 위임), 로그아웃 / 토큰 갱신, 사용자 조회 / 초대
테넌트 API 테넌트 목록 조회, 테넌트 상세 / 기본 정보 조회, 동기화 / 호출 현황 조회 / 설정, 테넌트 생성
가격 변동 분석 API 데이터 소스 수집 상태 조회, 가격 변동 분석 목록 조회, 분석 상세 / 근거 데이터 조회, 분석 결과 조회, 분석 무효화(게시 철회 + 테넌트 전파)

저장소 계층

  • 사용자 Repository
  • 테넌트 Repository
  • 가격 변동 분석 Repository

→ 모든 Repository는 EDGE DB에 저장

주요 흐름

  • 인증 UI → 인증 API: 로그인
  • 테넌트 관리 UI → 테넌트 API: 테넌트 조회, 생성 / 테넌트 동기화 · 호출 현황 갱신
  • 가격 변동 분석 관리 UI → 가격 변동 분석 API: 가격 변동 분석 조회, 관리 액션
  • Tenant Sync API → DMZ 중계(Relay): 이벤트 번들 반입 (분석 결과는 Cloud Event Store를 거친 원천, 금융사로의 반입 경로) — 콘솔 조회용 분석 API가 아님

아키텍처 특징 요약

  1. 데이터 주권 분리 — 고객 데이터는 계정계에 머물며 외부 반출이 없고, 위젯의 보유 여부 확인은 Y/N만 응답
  2. 컴플라이언스 게이트 — EDGE의 분석 결과는 금융사 내부 통제 영역(점검 엔진 + 검수)을 거쳐 승인된 것만 제공 API로 노출
  3. DMZ 단방향 반입 — EDGE → DMZ 중계 → 금융사 수집(반입)의 통로로만 환경 간 데이터가 이동
  4. 인증 위임 — 금융사 콘솔은 사내 인증 체계에 OIDC/SAML 위임, EDGE 콘솔은 OAuth 위임
  5. 감사 추적 — 제공 이벤트 로그 기록과 감사 로그 Repository로 제공 이력 보존