본문으로 건너뛰기
← All Projects
Featured Project

OBELAB NIRSIT 데이터 관리 시스템

fNIRS 기반 웨어러블 뇌영상 측정기기 "NIRSIT"의 환자·검사 데이터를 관리하는 의사용 웹 시스템과 모바일 앱용 백엔드(원본 분석 파일 업로드·다운로드). PL로서 전체 설계·DB 설계·API 설계와 문서화를 주도했다. 기여도 80%, 코아리버 외주(2018.01~04).

OBELAB NIRSIT 데이터 관리 시스템
OBELAB NIRSIT 데이터 관리 시스템
OBELAB NIRSIT 데이터 관리 시스템

Project Overview

역할

PL(프로젝트 리더) + 실무 개발 — 전체 설계, DB 설계, API 설계·문서화(Swagger), 웹 시스템·앱 연동 API 구현 주도. 기여도 80%는 인력-시간 기준.

담당 경계

모바일 앱 클라이언트는 사내 다른 개발자 담당(약 4개월 중 1개월 남짓 투입). 그래프 화면은 정적 테스트 이미지 출력 수준으로, 시각화 엔진 구현은 담당 범위에 미포함.

Project Story

프로젝트 이야기

배경과 과정, 그리고 판단의 기록

배경

NIRSIT는 fNIRS 기반의 웨어러블 뇌영상 측정기기다. 이 기기가 만드는 환자·검사 데이터를 의사가 웹에서 관리하고, 모바일 앱이 원본 분석 파일을 업로드·다운로드할 수 있게 하는 시스템을 만들었다. PL로서 전체 설계·DB 설계·API 설계와 문서화를 주도했고, 앱 클라이언트와 그래프 시각화 엔진은 담당 범위 밖이었다.

소비자가 둘인 API를 설계하다

같은 데이터를 의사 웹과 모바일 앱이 서로 다른 목적으로 소비하는 구조라, API를 /app/*(모바일)과 /doctor/*(의사 웹)로 역할별 분리하고 Swagger로 문서화해 협업 접점을 명확히 했다. 실시간 알림은 WebSocket 기반 Push로 구현했다.

데이터 모델에서는 검사 종류가 boolean 컬럼으로 하나씩 굳어 있던 스키마를 카테고리 코드 테이블 구조로 리팩터링했다 — 새 검사 종류가 생길 때마다 스키마를 바꾸는 대신, 행을 추가하면 되는 구조로 확장성을 확보했다.

Technology Stack

이 프로젝트를 구성한 기술들

OpenJDKJava 8
SpringSpring 4.3 (MVC/Security)
MMyBatis
MySQLMySQL 5.7
AWS (EC2, RDS)
SwaggerSwagger
WWebSocket

Technical Implementation

Architecture decisions and code highlights

Architecture

Key Highlights

  • 역할별 API 분리 설계(/app/* 모바일 · /doctor/* 의사 웹) + Swagger 문서화, WebSocket 기반 실시간 Push 알림

  • 검사 종류별 boolean 컬럼으로 굳어 있던 스키마를 카테고리 코드 테이블 구조로 리팩터링해 확장성 확보

Feature Demonstrations

Demonstrations

실제 화면으로 보는 핵심 흐름

측정 대상 제품 — NIRSIT
측정 대상 제품 — NIRSIT
측정 대상 제품 — NIRSIT

측정 대상 제품 — NIRSIT

이 시스템이 다루는 데이터를 만들어내는 기기가 무엇인지 보여주는 제품 소개 화면입니다. fNIRS 기반 웨어러블 뇌영상 측정기기 NIRSIT의 검사 데이터가 이 프로젝트의 관리 대상이었습니다.

OBELAB 공식 웹사이트 화면으로, 본인이 만든 결과물이 아닙니다. 담당 범위는 의사용 웹 시스템과 모바일 앱용 백엔드 API이며, 해당 시스템은 사내·의료기기용이라 공개 화면이 없습니다.

Impact Analysis

Project Impact & Results

Real-world outcomes and measurable results

Achievements

  • 기여도 80%로 납품 완료 — 담당 범위는 코드 검증 기반으로 서술

Next Project

바나나맵

Map Service