TRACE: AI-Assisted Assessment of Collaborative Projects in Computer Science Education

이 논문은 저장소 마이닝, 커뮤니케이션 분석 및 AI 기반 분석을 활용하여 협업 프로젝트의 품질과 개인 기여도를 공정하고 확장 가능하게 평가하는 'TRACE'라는 반자동 AI 지원 프레임워크를 제안하고, 소프트웨어 공학 수업 파일럿 배포를 통해 교수자 평가와의 높은 일치도 및 학생 만족도 향상을 입증했습니다.

Songmei Yu, Andrew Zagula

게시일 Fri, 13 Ma
📖 3 분 읽기☕ 가벼운 읽기

Each language version is independently generated for its own context, not a direct translation.

🎬 비유: "조별 프로젝트는 마치 '영화 제작'과 같습니다"

상상해 보세요. 학생들이 5 명씩 조를 이루어 영화를 찍는다고 칩시다.

  • 교수님 (감독): 전체적인 영화의 완성도를 보고 점수를 매겨야 합니다.
  • 학생들 (배우 및 스태프): 대본을 쓰고, 카메라를 돌리고, 편집을 하고, 음악을 넣습니다.

기존의 문제점 (과거의 방식):

  1. 모두 같은 점수: "우리는 팀이니까 다 같이 90 점!"이라고 하면, 열심히 일한 학생과 아무것도 안 한 학생이 똑같은 대우를 받습니다. (불공평!)
  2. 서로 평가하기: "누가 더 잘했나요?"라고 서로에게 점수를 매기게 하면, 친구 관계나 감정 때문에 공정한 점수가 나오기 어렵습니다.
  3. 교수님의 고충: 교수님은 200 명짜리 강의실에서 누가 무엇을 했는지 일일이 확인하기엔 시간이 부족합니다.

TRACE 가 해결하는 방법 (새로운 방식):
TRACE 는 현명한 '프로덕션 매니저'이자 '감시 카메라' 역할을 합니다. 이 도구는 학생들의 작업 흔적 (코드, 대화 기록, 문서 등) 을 AI 가 분석해서 **"누가 얼마나, 어떻게 기여했는지"**를 숫자로 보여줍니다.


🛠️ TRACE 의 3 단계 작동 원리

이 시스템은 크게 세 가지 단계로 나뉩니다.

1. 프로젝트 품질 평가 (PQAM) - "영화의 완성도는 어때?"

이 부분은 팀 전체가 만든 결과물을 봅니다.

  • 코드 품질: 코드가 깔끔하게 쓰였는지, 버그는 없는지 (비유: 영화의 촬영 화질과 편집 상태).
  • 테스트: 프로그램이 잘 작동하는지 확인하는 테스트가 충분히 들어갔는지.
  • 문서: 사용 설명서가 잘 쓰였는지.
  • 기능과 사용성: 실제로 쓸 수 있는 기능인지, 디자인이 좋은지.
    이 모든 것을 합쳐서 **팀 전체의 점수 (Project Quality Score)**를 매깁니다.

2. 개인 기여도 분석 (ICA) - "누가 얼마나 일했나?"

이 부분이 TRACE 의 핵심입니다. 개별 학생의 행동을 추적합니다.

  • 코드 작성량: 누가 실제로 코드를 썼는지 (Git 기록 분석).
  • 중요한 기여: 단순히 공백을 지운 것 같은 사소한 작업은 제외하고, 진짜 중요한 기능을 만든 사람을 찾아냅니다.
  • 문제 해결: 버그를 고치거나 새로운 기능을 요청한 기록 (이슈 트래커) 을 분석합니다.
  • 코드 리뷰: 동료의 코드를 검토하고 조언해 준 기록도 점수에 반영합니다.
    이렇게 해서 **개인의 기여도 점수 (Individual Contribution Score)**를 매깁니다.

3. 성적 산출 엔진 (GE) - "최종 점수 계산기"

이제 두 가지 점수를 합칩니다.

  • 공식: 최종 점수 = (팀 전체 점수 × 60%) + (개인 기여도 점수 × 40%)
  • 유연성: 교수님이 원하면 비율을 바꿀 수 있습니다. (예: 팀워크를 더 중요하게 여기면 팀 점수 비중을 높임)
  • 이상 탐지: 만약 어떤 학생이 너무 적은 일만 했거나, 반대로 너무 많은 일을 했을 때 AI 가 "이건 좀 이상하네요"라고 교수님께 알려줍니다. 교수님은 이를 확인하고 최종 결정을 내립니다.

📊 실제 효과: "선생님의 수고로움 줄이고, 학생들의 불만 해소"

이 시스템을 실제 대학 수업 (20 명, 5 개 팀) 에서 시험해 본 결과:

  1. 공정성: AI 가 매긴 점수와 교수님이 매긴 점수가 91% 이상 일치했습니다. (매우 정확함!)
  2. 만족도: 학생들은 "누가 무엇을 했는지 투명하게 보여줘서 공정하다"고 느꼈습니다.
  3. 시간 절약: 교수님의 채점 시간이 45% 줄었습니다.
  4. 사기 방지: "나는 열심히 했어!"라고 말하며 빈번한 사소한 수정 (공백 추가 등) 으로 점수를 받으려던 학생들의 꼼수를 AI 가 잡아내어 점수를 깎아주었습니다.

⚖️ 윤리와 주의점 (중요한 점)

이 시스템은 교수님을 대체하는 것이 아니라 도와주는 도구입니다.

  • 투명성: 학생들은 자신의 점수가 어떻게 나왔는지 상세한 리포트를 볼 수 있어 "블랙박스"라는 불만을 없앱니다.
  • 편향 주의: 영어 실력이 부족해서 문서 점수가 낮아지는 등, 특정 학생에게 불리할 수 있는 부분을 교수님이 최종적으로 확인하고 조정합니다.
  • 사생활 보호: 학생들의 데이터는 안전하게 보호됩니다.

🚀 미래 전망

앞으로는 이 시스템이 더 발전할 예정입니다.

  • IDE 연동: 학생이 코딩하는 동안의 타이핑 속도나 작업 시간까지 분석.
  • 멀티미디어 분석: 발표 자료나 디자인 시안도 AI 가 평가.
  • 적응형 학습: 교수님의 피드백을 학습해서 더 똑똑한 채점 기준을 스스로 만들어감.

💡 결론

TRACE는 "조별 과제에서 누가 뭘 했는지 알 수 없어서 힘들었던" 교수님과 학생들의 고민을 해결해 줍니다. 데이터와 AI 를 이용해 공정하고 투명한 평가를 가능하게 하며, 교수님은 중요한 판단만 하면 되게 도와주는 똑똑한 조력자입니다.