소프트웨어 개발의 원리와 실제의 실제 UPnL 31st workshop 김재찬
개념편
소프트웨어 개발의 원리와 실제 Principle and Practice of Software Development 줄이면 PPSD가 되어야 할 거 같은데 SWPP로 줄여 부른다. Development는 어디로 갔을까 2015 1학기에 개설 2015학번부터 전공 필수 과목
가르치는 것 팀 프로젝트 진행 코드 관리 서비스 운영 방법론(Agile 등) 소스 관리(Git) BDD(Behavior Driven Design) TDD(Test Driven Development) 리팩토링 레거시 코드 서비스 운영 스케일링 보안 관리
프로젝트 한 학기 동안 웹 프로젝트 하나를 진행 Agile 식으로 진행하며, 총 4번의 iteration을 진행
이상편
개발 지식의 습득 다양한 개발 방법론을 배우고 코드 관리를 어떻게 해야 잘 할 수 있는지 배우고 현업에서 쓸 수 있는 지식을 배움
이상적인 프로젝트 진행 적당한 난이도의 프로젝트를 진행하면서 수업 시간에 배웠던 걸 직접 적용해보고
현실편
영어 강의 한국어로 해도 어려운 걸 영어로 진행
수박 겉핥기 수업 심히 많은 내용을 한 학기에 우겨 넣음 현업에서 몇 년 구르고 와야 겨우 이해할 내용들
절망적인 프로젝트 진행 각자가 제안한 프로젝트 4번의 Iteration. 이 때마다 구동 가능한 결과물 내놓고 발표해야 함 프로젝트의 난이도가 천차만별 4번의 Iteration. 이 때마다 구동 가능한 결과물 내놓고 발표해야 함 4월 27일, 5월 14일, 5월 28일, 6월 12일 Agile은 모두가 으쌰으쌰하고 열심히 해야 의미가 있음 하지만 현실은 다들 학부생
절망적인 프로젝트 진행(2) 처음 하는 웹 개발 많은 요구 사항들 CI 툴(젠킨스) 설치, TDD(테스트 커버리지 90% 이상 요구) 프로젝트 문서 작성, 발표 모두 영어로 진행
빌어먹을 숙제 첫 번째 숙제는 레일즈 써보는 것 두 번째 숙제는 REEF를 이용한 에러 핸들링하는 스케쥴러를 짜는 것이었는 데 여기까진 좋았음 두 번째 숙제는 REEF를 이용한 에러 핸들링하는 스케쥴러를 짜는 것이었는 데 REEF가 뭐 하는 놈인지도 모르겠고 아직 널리 알려지지 않아서 구글링도 안 되고 궁극적으로 스펙이 명확하지 않아 뭘 해야 할 지 정확히 알 수 없었음 해야 할 게 뭔지 모르는 사람들이 넘쳐났음
결론
의도는 좋았다 회사로 나갈 학생들에게 현업에 필요한 지식을 가르치는 건 필요한 것 그 동안 그런 과목이 매우 드물긴 했다 커리큘럼에 있던 과목을 제대로 익히면 어느 IT 현장에서도 잘 써먹을 수 있었을 것
그들이 간과했던 것 소개원실은 3학점짜리 과목이었다는 것 학생들이 듣는 6과목 중 하나에 불과하다는 것 현업에서 써먹을만한 지식을 익히기 위해선 최소한 현업에서 1년은 굴러야 한다는 것
개선해야 할 점 한국어 강의로 전환 소개원실1, 2 로 나눠서 두 학기에 걸쳐 진행하든지 내용을 줄이든지 프로젝트를 대국적으로초심자들도 진행할만한 걸로 정해줘야 프로젝트와 수업의 연계를 확실히 해야 함 숙제도 대국적으로스펙을 명확하게 해서 내야 오픈 소스 프로젝트는 이런 식으로 진행되지 않음
끗 고기 먹고 싶다