정원외 신청

신청기간(개강 첫주)에 시스템을 통하여 신청한 학생들에 대해 명단 파악 후 선별적으로 결정하여, 첫 주 주말중에 일괄 승인 예정

수강취소

불가피한경우(예: 질병으로 병원에 몇주간 입원)를 제외하고는 개강 2주차 이후 부터는 수강취소 절대 불허

과목 소개

본 과목은 소프트웨어 개발의 원리와 기술을 학습하는 과목으로, 소프트웨어를 효율적이고 체계적으로 개발하고 유지보수하는 방법을 익힌다. 특히, 본 강의는 팀 프로젝트를 중심으로 강의 및 평가가 이루어지며, 각 팀마다 하나의 완성된 컴퓨터 게임 개발을 목표로 한다. 성공적이고 효과적인 개발을 위하여, 소프트웨어 개발 주기와 요구사항 분석, 설계, 구현, 테스트, 배포, 유지보수 등의 과정을 다루며, 개발 프로세스를 효과적으로 관리하는 방법과 팀 프로젝트에서의 협업 기술을 배운다. 추가적으로, 소프트웨어 아키텍처, 디자인 패턴, 테스트 자동화 등에 대한 이론을 익힌다. 이러한 경험과 이론적 지식을 통해서 소프트웨어 개발자로서의 역량을 키우는 것을 목표로 한다.

선수과목

프로젝트관련사항

본 과목은 팀 프로젝트 기반으로 한학기동안 운영되고, 팀 프로젝트의 “주제”, 정해진 주제를 달성하기 위한 “계획” 및 구현 “과정”, 그리고 최종 “결과” 등 가능한 모든 요소가 평가에 반영된다. 본 강의는 팀당 하나의 컴퓨터 게임을 만드는 것으로 목표로 하는데 단순히 최종 만든 게임이 뛰어나다고 해서 평가를 잘 받는 것이 아니며, 게임을 설계하는 과정과 조별간의 의사소통, 그리고 수업시간에 배우는 소프트웨어 개발 프로세를 잘 지켜가며 구현을 했는지 모든 부분을 종합하여 평가한다.

팀 프로젝트를 위해서 각 조는 프로젝트 관련 평소 의사소통을 위한 플랫폼, 구현관련 의사소통 및 프로세스를 위한 플랫폼, 그리고 문서화를 위한 플랫폼을 제공받는다. 위 플랫폼에 남은 기록을 강의자 및 조교가 확인하여 평가하게된다. 반대로 말하면, 플랫폼에 기록으로 남은 의사소통, 구현, 및 문서만 평가하고, 기록되지 않은것은 평가하지 않는다. 따라서 팀 프로젝트를 진행함에 있어서 모든 내용을 플랫폼에 순차적으로 남기기를 강력히 권장한다.

수업에서 사용할 개발 및 의사소통 플랫폼 정보