AI 지원 워크플로우 (AI-Assisted Workflow)
본 프로젝트의 개발 과정에서는 생산성 향상과 효율적인 문제 해결을 위해 대규모 언어 모델(LLM)을 엔지니어링 보조 도구로 활용하였다. 이 문서는 AI 도구가 실제 개발 워크플로우에 어떻게 통합되고 통제되었는지 기술한다.
AI 도구의 주요 활용 분야
-
신속한 프로토타이핑 및 보일러플레이트 코드 생성 FastAPI의 엔드포인트 구조 설계 및 Docusaurus 기반의 문서 사이트 구성을 위한 기본 보일러플레이트 코드를 생성하여 초기 환경 구축 시간을 단축하였다.
-
하드웨어 인터페이스 구현 참조 C++ 기반의 MFRC522 라이브러리 활용법 및 4x4 키패드 스캔 알고리즘에 대한 참조 구현을 도출하고, 이를 실제 프로젝트의 핀 맵(Pinout) 및 회로 구성에 맞춰 최적화하였다.
-
엔지니어링 데이터 구조화 및 시각화 개발 과정에서 작성된 원시 노트를 정형화된 마크다운 문서로 변환하고, Mermaid 구문을 활용하여 시스템 아키텍처 및 인증 흐름도를 시각화하는 과정에서 AI의 보조를 받았다.
개발 품질 제어 가이드라인
AI 제안 코드의 보안성과 신뢰성을 유지하기 위해 다음의 관리 원칙을 엄격히 준수하였다.
- 인간 중심의 코드 검토 (Human-in-the-loop): AI가 생성한 모든 코드는 개발자의 수동 리뷰를 거쳤으며, 로컬 단위 테스트를 통해 기능적 무결성을 검증한 후 최종 반영하였다.
- 아키텍처 설계 주권 유지: 비동기 처리 모델, 데이터베이스 스키마 설계, 보안 계층 구성 등 시스템의 핵심 설계 결정은 개발자가 직접 수행하였으며, AI는 결정된 설계를 구체화하는 용도로만 제한적으로 사용되었다.
- 보안 로직의 수동 검증: PIN 해싱 알고리즘(
bcrypt) 적용 및 데이터베이스 접근 권한 설정 등 보안과 직결된 로직은 AI의 제안에 의존하지 않고, 공인된 보안 베스트 프랙티스를 바탕으로 직접 구현 및 검증하였다.