Skip to content

[7팀 권연욱] Chapter 1-2. AI와 테스트를 활용한 안정적인 기능 개발#91

Open
grappe96 wants to merge 21 commits intohanghae-plus:mainfrom
grappe96:main
Open

[7팀 권연욱] Chapter 1-2. AI와 테스트를 활용한 안정적인 기능 개발#91
grappe96 wants to merge 21 commits intohanghae-plus:mainfrom
grappe96:main

Conversation

@grappe96
Copy link

@grappe96 grappe96 commented Oct 31, 2025

과제 체크포인트

필수 스펙

    1. 반복 유형 선택
    • 일정 생성 또는 수정 시 반복 유형을 선택할 수 있다.
    • 반복 유형은 다음과 같다: 매일, 매주, 매월, 매년
      • 31일에 매월을 선택한다면 → 매월 마지막이 아닌, 31일에만 생성하세요.
      • 윤년 29일에 매년을 선택한다면 → 29일에만 생성하세요!
    • 반복일정은 일정 겹침을 고려하지 않는다.
  1. 반복 일정 표시
    • 캘린더 뷰에서 반복 일정을 아이콘을 넣어 구분하여 표시한다.
  2. 반복 종료
    • 반복 종료 조건을 지정할 수 있다.
    • 옵션: 특정 날짜까지
      • 예제 특성상, 2025-12-31까지 최대 일자를 만들어 주세요.
  3. 반복 일정 수정
    1. ‘해당 일정만 수정하시겠어요?’ 라는 텍스트에서 ‘예’라고 누르는 경우 단일 수정
      • 반복일정을 수정하면 단일 일정으로 변경됩니다.
      • 반복일정 아이콘도 사라집니다.
    2. ‘해당 일정만 수정하시겠어요?’ 라는 텍스트에서 ‘아니오’라고 누르는 경우 전체 수정
      • 이 경우 반복 일정은 유지됩니다.
      • 반복일정 아이콘도 유지됩니다.
  4. 반복 일정 삭제
    1. ‘해당 일정만 삭제하시겠어요?’ 라는 텍스트에서 ‘예’라고 누르는 경우 단일 수정
      1. 해당 일정만 삭제합니다.
    2. ‘해당 일정만 삭제하시겠어요?’ 라는 텍스트에서 ‘아니오’라고 누르는 경우 전체 수정
      1. 반복 일정의 모든 일정을 삭제할 수 있다.

기본 과제

공통 제출

  • 테스트를 잘 작성할 수 있는 규칙 명세
  • 명세에 있는 기능을 구현하기 위한 테스트를 모두 작성하고 올바르게 구현했는지
  • 명세에 있는 기능을 모두 올바르게 구현하고 잘 동작하는지

기본 과제(Hard)

  • Agent 구현 명세 문서 또는 코드
  • 커밋별 올바르게 단계에 대한 작업
  • 결과를 올바로 얻기위한 history 또는 log
  • AI 도구 활용을 개선하기 위해 노력한 점 PR에 작성

심화 과제

  • 모든 질문에 대해 꼼꼼하게 정리했는지

과제 셀프회고

이번 과제를 통해 똑똑한 검색창 정도로만 사용하던 GPT나 Cursor를 가지고 AI Agent를 구현해보면서
원하는 답변을 이끌어내는 프롬프트 작성법을 고민해보았습니다.
기능 명세를 구체화 하는 부분이나 에이전트 문서를 작성할 때에도 AI에게 작성을 맡기고
체크리스트를 생성한 다음에 확인해보라고 하거나,
프롬프트 작성이나 에이전트 문서에 실제 예시가 들어가는 경우 좀 더 나은 output을 내는 것을 확인했습니다.
그러나 AI가 작성한 문서 전체를 이해하고 검증하기에 개념 공부가 더 필요하다고 느꼈습니다.

기술적 성장

  • 새로 학습한 개념
  1. AI Agent
    작동 방식을 제한하는 명세 프롬프팅을 통해 특정한 역할을 부여받아 주어진 지시를 역할에 맞게 수행하는 LLM 인스턴스
  2. BMad Method
    애자일 워크플로우를 수행할 에이전트 팀을 구성해서 에이전트끼리 주어진 역할을 수행하고 산출물을 전달받아 다음 job을 실행하는 에이전트 개발 방법론
  • 기존 지식의 재발견/심화
    회사에서도 Cursor를 사용했지만 주로 ask 모드로 질문만 하고, 직접 agent 모드로 코드를 수정하는 경험이 거의 없었는데
    이번 과제를 하면서 프롬프트 작성 시 역할을 명시하고,
    할 것과 하지 말아야 할 것을 정의하고,
    가이드가 될 수 있는 실제 코드 블록을 첨부해서
    기능 개발 속도를 훨씬 빠르게 할 수 있었습니다.

코드 품질

  • 코드 설계 관련 고민과 결정
    기존 프로젝트의 코드 품질을 유지하기 위해 AI가 프로젝트를 분석하고 cursor rule을 작성하게 했습니다.
    또한 1주차에 배웠던 개념이 잘 적용되도록 테스트 명세 가이드를 작성하여 에이전트 문서에 참조했습니다.

학습 효과 분석

  • 추가 학습이 필요한 영역
    테스트 코드 작성 연습
    과제 완료하지 못한 부분 마저 해보기

  • 실무 적용 가능성
    에이전트를 구성해서 테스트 코드 작성을 연습하는 브랜치를 생성하고 관리하면서
    경험을 팀원들에게 공유하면 좋을 것 같습니다

과제 피드백

TDD에 대한 학습이나 경험이 부족한 상태에서
AI Agent 구현에 대한 체크포인트를 검증하고 피드백하는 부분이 어렵게 느껴졌습니다.

리뷰 받고 싶은 내용

  • bmm-activity-log.md 파일에서 각 에이전트의 작업 내역은 기록되고 있지만
    에이전트가 체크리스트 항목을 실제로 수행했는지 여부를 확인할 수 없었습니다.
    각 항목의 수행 여부가 명확하게 드러나도록 로그 구조나 기록 포맷을 개선하려면 어떻게 설계하는 것이 좋을까요?
  • AI Agent끼리 디버깅 작업을 시킬 때 엉뚱한 수정이 일어나지 않도록 성공 / 실패 판정 기준이나 종료 조건을 어떻게 설정해야 하나요?

…ence rules and implement computeRecurringDates
- useEventForm에서 initialEvent가 undefined일 때 isRepeating이 true로 설정되는 버그 수정
- optional chaining과 비교 연산자 조합으로 인한 의도치 않은 true 반환 문제 해결
- 이제 초기 렌더링 시 반복 일정 체크박스가 올바르게 체크 해제 상태로 시작됨
- recurring-select.spec.ts 테스트 통과 확인
- 관련 App.tsx 변경사항 포함
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant