Applying SHAPR in AI-Assisted Research Software Development: Lessons Learnt from Building a Share Trading System
이 논문은 SHAPR 프레임워크를 적용하여 주가 거래 시스템을 개발한 사례를 통해, AI 지원 연구 소프트웨어 개발 과정에서 계약, 소스 오브 트루스, 주기별 스냅샷, 그리고 도구 간 협업을 통한 문서화와 코드 공진화가 프로젝트의 연속성과 방법론적 명확성을 유지하는 데 중요한 교훈을 제공함을 보여줍니다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
🌟 핵심 비유: "AI 는 뛰어난 조수, 하지만 당신은 '선장'입니다"
이 논문은 AI(인공지능) 가 코드를 짜주는 것을 도와주는 '훌륭한 조수'라고 봅니다. 하지만 조수가 너무 빨리 일을 해치우면, 누가 무엇을 왜 했는지 기억이 안 나거나 (기억 상실), 프로젝트가 엉망이 될 수 있습니다.
SHAPR 은 바로 이 문제를 해결하기 위해 **"선장 (연구자) 이 조수 (AI) 를 잘 통제하면서, 항해 일지를 꼼꼼히 쓰는 방법"**을 제안합니다.
🛠️ SHAPR 이란 무엇인가요? (세 가지 공간의 조화)
이 연구에서는 세 가지 도구를 연결해서 일했습니다. 마치 집을 지을 때 설계실, 공사 현장, 그리고 일기장을 따로따로 쓰되 서로 연결하는 것과 같습니다.
- ChatGPT (대화실/설계실):
- 역할: AI 조수와 대화하는 곳입니다.
- 비유: "이 벽을 어떻게 칠할까?", "이 부품이 맞을까?"라고 조수에게 물어보고 아이디어를 구상하는 회의실입니다.
- PyCharm (공사 현장):
- 역할: 실제 코드를 작성하고 프로그램을 실행하는 곳입니다.
- 비유: 실제로 벽돌을 쌓고 전선을 연결하는 현장입니다.
- Obsidian (일기장/기록실):
- 역할: 모든 결정, 규칙, 그리고 오늘의 일을 기록하는 곳입니다.
- 비유: "오늘은 A 라는 재료를 썼고, B 라는 이유로 C 를 고쳤다"라고 남기는 정리한 항해 일지입니다.
이 세 가지를 따로따로 쓰지 않고 서로 연결해서 쓰니, AI 가 말한 내용이 실제 코드에 어떻게 적용되었는지, 그리고 왜 그렇게 했는지가 모두 남게 되었습니다.
💡 이 프로젝트에서 배운 5 가지 중요한 교훈 (일상 언어로)
논문은 이 과정을 통해 5 가지 중요한 '비법'을 발견했습니다.
1. 규칙을 먼저 정하세요 (계약서 쓰기)
- 상황: AI 는 말을 잘하지만, 때로는 용어를 자꾸 바꾸거나 규칙을 무시합니다.
- 비유: 요리할 때 "소금 1 스푼"이라고만 하면 AI 가 "1 큰술"을 넣을 수도 있습니다.
- 해결: 시작하기 전에 **"이 함수는 이렇게 생기고, 이름은 이렇게 붙인다"**라는 **계약서 (규칙)**를 먼저 AI 와 정했습니다. 그래야 AI 가 엉뚱한 일을 하지 않습니다.
2. '진짜 기록' 한 장을 유지하세요 (Source-of-Truth)
- 상황: 일기가 여러 곳에 흩어져 있으면 나중에 무엇을 했는지 모릅니다.
- 비유: 집안일 목록이 냉장고, 책상, 스마트폰에 다 따로 적혀 있다면 헷갈리죠.
- 해결: **"지금 프로젝트의 진짜 상태는 이 문서에 있다"**라고 정한 하나의 중심 기록을 항상 최신으로 유지했습니다.
3. 단계마다 '스냅샷'을 찍으세요 (휴식과 정리)
- 상황: 계속 일만 하다가 다음 단계로 넘어가면, 이전 단계의 기억이 사라집니다.
- 비유: 여행할 때 각 도시를 떠나기 전에 사진을 찍고 여행 일지를 정리하는 것과 같습니다.
- 해결: 개발 단계를 끝낼 때마다 상태를 저장하고 (스냅샷), 무엇을 배웠는지 정리했습니다. 그래야 다음 단계로 넘어갈 때 헷갈리지 않습니다.
4. 코딩과 기록은 함께 자라게 하세요 (즉석 기록)
- 상황: 일이 다 끝난 뒤에 "어제 뭐 했지?"라고 기억을 더듬으며 일기를 쓰면 너무 귀찮고, 중요한 건 잊어버립니다.
- 비유: 요리하면서 "아, 이걸 넣으면 맛있겠다"라고 즉석에서 메모를 하는 것과 같습니다.
- 해결: 아이디어가 떠오르면 **즉시 짧게 메모 (Quick Capture)**를 남겼습니다. 나중에 AI 가 이 메모들을 정리해주니, 기록하는 부담은 줄고 내용은 풍부해졌습니다.
5. 작업 환경을 만드는 것 자체가 '학습'입니다
- 상황: 도구와 규칙을 설정하는 건 귀찮은 준비 작업이라고 생각하기 쉽습니다.
- 비유: 요리를 시작하기 전에 주방을 깔끔하게 정리하고 칼을 갈아두는 것 자체가 요리의 질을 결정합니다.
- 해결: SHAPR 환경을 처음 세팅하는 과정 자체가 **"어떻게 일할지 고민하는 학습 과정"**이었고, 이 덕분에 나중에 코딩이 훨씬 수월해졌습니다.
🚀 결론: 왜 이 논문이 중요한가요?
이 논문은 "주식 거래 프로그램"을 만든 것 자체가 목표가 아니라, **"AI 와 함께 일할 때 어떻게 하면 연구자 (혼자 일하는 사람) 가 주도권을 잃지 않고, 기록도 남기고, 결과도 낼 수 있는지"**를 보여줍니다.
한 줄 요약:
"AI 는 훌륭한 조수지만, **선장 (나)**이 항해 일지 (기록) 를 꼼꼼히 쓰고, 규칙 (계약) 을 정하며, 단계마다 정리 (스냅샷) 를 한다면, AI 와 함께 훨씬 더 똑똑하고 안전한 여행을 할 수 있다."
이 방식은 소프트웨어 개발뿐만 아니라, AI 를 활용하는 어떤 연구나 창작 활동에서도 적용할 수 있는 실용적인 가이드가 됩니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.