Skip to content

sblabkribb/bf_workflow_monitor

Repository files navigation

통합 실험 현황 시각화

1. 프로젝트 목표

'Labnote Manager'로 생성된 구조화된 연구노트와 일반 마크다운 형식의 연구노트를 모두 자동으로 파싱하여, 워크플로우 구조를 나타내는 다이어그램실시간 진행 현황을 결합한 웹 기반 통합 대시보드를 구축합니다. 사용자는 실험의 전체적인 흐름과 각 단계별 현황(계획, 진행, 완료)을 한눈에 파악할 수 있습니다.

2. 핵심 기능 및 시각화

이 시스템은 'Labnote Manager'의 구조와 일반 연구노트의 관례적인 패턴을 모두 인식하여 시각화합니다.

  • 계층적 다이어그램 뷰:

    • 최상위에는 labnote/ 폴더 내의 각 실험(001_..., 241127_... 등)이 표시됩니다.
    • 각 실험을 클릭하면, 해당 실험에 포함된 워크플로우 또는 주요 단위 작업(Unit Operation)들이 순서도 형태로 나타납니다.
  • 실시간 현황 표시:

    • 다이어그램의 각 노드(단위 작업)에는 진행 상태가 색상으로 표시됩니다.
      • 🟩 완료 (Completed): 'Labnote Manager'의 경우 [x] 체크, 일반 노트의 경우 ### Result 또는 ### Conclusion 섹션이 존재할 때.
      • 🟦 진행 중 (In Progress): 'Labnote Manager'의 경우 [ ] 상태이고, 일반 노트의 경우 #### Method는 있으나 Result가 없을 때.
      • ⬜ 계획됨 (Planned): 시작 날짜가 미래이거나, 아직 시작되지 않은 단계.
    • 각 노드에는 담당자(User/author)와 시작/종료 날짜(Date/created_date)가 표시됩니다.
  • Timeline 및 Gantt 차트 뷰:

    • 파싱된 날짜 정보를 기반으로 전체 실험 과정을 시간순으로 보여주는 Gantt 차트 형태의 뷰를 제공하여 프로젝트 일정을 시각적으로 관리합니다.

3. 기술 스택 및 데이터 파싱 로직

  • 백엔드: 주기적으로 Git 저장소를 git pull 하고, 연구노트를 파싱하는 스케줄러를 구현합니다. (Python/Node.js)

  • 파싱 로직 (Dual-Mode Parser):

    1. 'Labnote Manager' 모드:
      • labnote/<번호>_<주제>/README.md 파일을 중심으로 파싱합니다.
      • <!-- WORKFLOW_LIST_START --> 내의 체크박스([x])로 워크플로우의 완료 여부를 판단합니다.
    2. '일반 연구노트' 모드:
      • 사용자가 제공한 예시(241127~241129_GGA_TF_Opt_Manual)와 같은 파일을 파싱합니다.
      • 정규표현식을 사용하여 ### [Manual] Golden Gate Assembly와 같은 헤더를 하나의 단위 작업(Unit Operation) 노드로 인식합니다.
      • 각 단위 작업 내 #### Meta 섹션에서 UserDate 정보를 추출합니다.
      • 파일 내에 ### Result, ### Conclusion 같은 섹션의 존재 여부로 해당 노트의 '완료' 상태를 추론합니다.
  • 프론트엔드: React, Vue.js, D3.js 등을 사용하여 인터랙티브한 다이어그램과 대시보드를 구현합니다.

  • Workflow:

    1. 데이터 수집: 백엔드 서버가 주기적으로 Git 저장소의 최신 변경사항을 가져옵니다.
    2. 파일 분석: labnote 디렉토리 내의 모든 마크다운 파일을 읽고, Dual-Mode Parser를 이용해 각 파일의 형식에 맞게 구조(실험, 단위 작업)와 메타데이터(담당자, 날짜, 진행 상태)를 추출합니다.
    3. 데이터베이스 저장: 정형화된 데이터를 DB(예: PostgreSQL, MongoDB)에 저장합니다.
    4. 시각화: 프론트엔드 대시보드가 DB의 데이터를 가져와 다이어그램과 타임라인 형태로 렌더링합니다.

About

통합 실험 현황 확인

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published