|
|
Cheju_National_University_CE2007
제주대학교 컴퓨터공학과
소개
- 과목명: 공개 소프트웨어 공학 (Open Source Software Engineering)
- 목적: 오픈소스 개발은 비교적 쉽게 참여할 수 있으면서도 여러가지 형태의 진보된 개발 방법을 습득하고 연습할 수 있는 좋은 기회이자, 흥미를 느끼고 지속적으로 기여하는 경우 많은 경험을 할 수 있다. 일반적인 오픈소스 프로젝트들에 여러 형태로 기여하고 참여할 수 있는 방법과 그에 필요한 여러가지 기술들을 소개한다. 그리고, 실제로 관심 있는 오픈소스 프로젝트에 참여하여 실습해본다.
- 선수과목:
- 필수 - 없음
- 권장 - C프로그래밍, 자료구조, 시스템프로그래밍, 소프트웨어 공학
- 요구사항: 본 강의 수강자는 적어도 하나 이상의 프로그래밍 언어를 사용할 수 있어야 하며, 리눅스/유닉스 운영 체제를 사용해 본 경험이 있어야 한다.
수업 방식
강의자
- 윤석찬 (다음커뮤니케이션, 부산대, M.S) - oss2007cjnu@gmail.com
- 외부 초청 전문가 (4~5회)
진행 방식
- 일반 강의(40%), 실습 강의(40%), 영상 강의 (20%)
성적 평가 방식
- 프로젝트: 30 (오픈 소스 개발 모의 과제 시행)
- 개별 과제 : 30
- 퀴즈 : 20 (총 2회)
- 수업외 참여 : 10 (수업기간 내 외부 프로젝트 버그 보고 등의 관련 메일/URL을 제출)
- 출석 : 10
수업 일정 (주별)
- 오픈소스의 정의와 소개, 개요 (8월 31일)
- 수업 진행 방식 안내
- Revolution OS 동영상 상영 (2시간)
- 오픈 소스 개발 과정 개요 (9월 7일)
- 오픈 소스 소프트웨어 현황
- 오픈 소스 개발 도구 및 과정 소개
- 개발 도구 I: 버전 컨트롤 (9월 14일)
- CVS와 Subversion 실습
- 개발 도구 II:버그 트래킹 (9월 21일)
- Bugzilla, Trac, GNATS, 메일로 보고하기 실습
- 개발 방법론 I - 문서화, 번역 (9월 28일)
- Wiki, Gettext
- 모의 프로젝트 팀 배정
- 개발 방법론 II- 버그 추적 기술, 패치 제출, 스타일의 관례 (10월 12일)
- 장혜식
- 특별 수업 - JCO 오픈소스콘퍼런스 참관 (10월 13일- 서울)
- 중간고사 : 강의 없음, 실습 시험- 버그 추적, 패치 제출, follow-up (10월 19일)
- 개방 방법론 III - 빌드, 배포, 버전, (10월 26일)
- 이창신
- 모의 프로젝트 I - 선정 내용 및 소개, 향후 계획 (11월 2일)
- 각 프로젝트별 발표
- 프로젝트 기간 내에 달성 가능한 간단한 기능 제작 (구글 프로젝트 호스팅 이용)
- 가급적 기존 오픈 소스 프로젝트의 플러그인으로 개발
- 국내 참여 사례 (11월 9일)
- 초청 강연: 국내 커미터 현황 및 작업 방식
- 모의 프로젝트 II - 버그 제출 및 패치 진행 사항 발표 (11월 16일)
- 프로젝트 내 버그 제출 내용과 관련 패치 진행 발표
- 오픈 소스의 사회 문화적 영향 (11월 23일)
- 초청 강연: CCL, Wikipedia 등
- (과제) 위키퍼디아 제출
- 모의 프로젝트 III - 릴리스, 문서화 등 (11월 30일)
- 최종 결과물 발표
- Daum에서 오픈 소스 활용 (12월 7일)
- 기업에서 오픈 소스 활용 이유
- LAMJI 플랫폼 및 외부 지원
- 기말고사 -강의 없음
읽을 책/문서
- Diomidis Spinellis (류광 역), Code Reading - 오픈 소스 관점에서 본 코드 읽기
- Martin Fink (조광제 역), 리눅스와 오픈소스의 비지니스와 경제학
- Tim O'Reilly, Open Source Paradigm Shift
- Eric S. Raymond, 성당과 시장
관련 교과목
Sign in to add a comment
