Research 도메인 바운디드 컨텍스트
1. 컨텍스트 개요
Research Bounded Context는 Dashboard 내 연구(Research) 기능을 제공하기 위한 컨텍스트입니다. 연구 시트에서 임상 연구 참여자(Research Participant)를 관리하고, 연구 참여자 카드에 표시되는 파생 지표를 제공하며, 불성실(NonCompliant) 판정 및 관련 UI 요구사항을 정의합니다.
비즈니스 목적: 임상 연구 기관에서 연구 참여자 관리 및 데이터 모니터링을 효율적으로 수행할 수 있도록, 연구 참여자 리스트/지표/필터링을 일관된 규칙으로 제공
2. 범위
포함:
- 연구(Research) 시트 접근 및 데이터 조회 스코프 정의 (IAM 권한 평가 결과 +
siteId컨텍스트 기반) - 연구 참여자(Research Participant) 관리
- 진료용 환자(활성 사용자) 목록에서 연구 참여자 등록(연구 리스트 포함)
- 임상 연구용 환자 신규 등록(코드 발송 수단 선택 포함)
- 연구 참여자 연구 리스트 제외(삭제) 및 비밀번호 확인 요구
- 검색/정렬/불성실 필터
- 연구 참여자 카드 표시 및 파생 지표 산출 규칙
- 무작위번호/메모 수정 규칙
- 무작위번호는 병원(Site) 단위 유니크(
siteId + randomizationNumber) - 메모는 단일 최신본만 유지(이력 미제공)
- 무작위번호는 병원(Site) 단위 유니크(
- 불성실(NonCompliant) 판정 규칙 및 노출/정렬 우선순위
제외:
- 인증/토큰/세션: Auth Operation 도메인
- 운영자/서비스 계정 생명주기(회원가입/초대/계정 삭제 등): Operation User 도메인
- 권한/Role/Group/Permission 모델 및 프로비저닝: IAM Operation 도메인
- 병원(Site) 생성/수정/임상연구 참여 여부 관리: Site 도메인
- 처방/슬립큐 코드 발급 및 Connect DTx 연동: 처방/외부 연동 컨텍스트
- 앱 원천 데이터 수집(수면기록/설문/접속/복용 등): 앱/데이터 컨텍스트
3. 유비쿼터스 언어
| Term | Definition |
|---|---|
| 연구 시트(Research Tab/Sheet) | Dashboard 내 연구 기능을 제공하는 화면/탭 |
| 연구 참여자(Research Participant) | 연구 시트에 포함되어 연구 대상자로 관리되는 슬립큐 앱 사용자 |
| 진료용 환자(Clinical Patient) | 진료용 시트에 등록된 활성 사용자(연구 참여자는 진료용 환자의 부분집합) |
| 병원(Site) | 연구 참여자/계정이 소속된 기관(스코프의 기본 단위) |
| 임상연구 참여 Site(ClinicalResearch Site) | clinicalResearch=true인 Site |
| 무작위번호(Randomization Number) | 연구 참여자에 부여되는 식별 코드(병원 단위 유니크) |
| 메모(Memo) | 연구 참여자의 특이사항 기록(단일 최신본) |
| 불성실(NonCompliant) | 연구 참여자 상태 라벨(수면기록/설문 규칙 기반) |
| 플랫폼 전체 조회 권한 | 모든 임상연구 참여 Site를 조회할 수 있는 권한(예: medi.platform-admin) |
| 사이트 스코프 권한 | 본인 소속 Site 범위에서만 조회 가능한 권한(예: medi.site-admin/member) |
4. 컨텍스트 맵
4.1 IAM Operation
- 의존: 연구 시트 접근 허용 및 스코프 결정을 위한 그룹/권한 평가
- 참조 정보:
medi.platform-admin,medi.site-admin,medi.site-member및 연구용 탭 접근 조건(ClinicalResearch Site 조건부)
4.2 Site
- 의존:
clinicalResearch플래그로 임상연구 참여 Site 여부 판정 - 의존: 플랫폼 전체 조회 권한 보유자에 대한 병원(Site) 목록 제공 및 필터링
4.3 Auth Operation
- 의존: 연구 참여자 연구 리스트 제외(삭제) 시 비밀번호 검증 및 인증 컨텍스트
4.4 Clinical/Patient(진료용)
- 의존: “진료용 환자 목록에서 불러오기” 플로우를 위한 활성 사용자 목록 및 식별자 참조
4.5 App Data / Analytics
- 의존: 연구 참여자 카드 파생 지표(수면기록/설문/접속/복용 등)의 입력 데이터
- 참고: 파생 지표의 산출 규칙은 Research 컨텍스트에서 정의하되, 원천 데이터의 정합성 책임은 해당 컨텍스트에 있다.
5. 주요 시나리오
5.1 진료용 환자 불러오기 → 연구 참여자 등록
- 사이트 스코프 사용자(임상연구 참여 Site 소속)가 진료용 환자 목록에서 대상을 선택
- 무작위번호 입력(병원 단위 중복 검증)
- 연구 참여자 리스트에 포함되고 연구 시트 홈에서 카드로 노출
5.2 임상 연구용 환자 신규 등록 → 코드 발송 → 앱 가입 완료
- 사이트 스코프 사용자가 발송 수단(이메일/SMS/카카오톡)과 담당의를 입력
- 시스템이 코드 발송을 수행
- 앱 가입 완료 이후 진료/연구 시트에서 동일 사용자로 노출
5.3 불성실 판정 → 라벨/정렬/필터 반영
- 수면기록률/설문 완료 여부가 갱신됨
- 불성실 여부가 재평가됨
- 불성실 라벨 표시, 강조 텍스트, 불성실 우선 정렬/필터가 반영됨
변경 이력
| 버전 | 날짜 | 작성자 | 변경 내용 |
|---|---|---|---|
| 0.1.0 | 2025-12-29 | jeff@weltcorp.com | 최초 작성 |