소프트웨어공학 () - 개요 (Overview) 2006 년가을학기, 문양세, 컴퓨터과학전공, IT 특성화대학, 강원대학교 소프트웨어공학이란? 소프트웨어란? 프로그램, 프로그래머, 소스코드, 버그, 에러, 노가다, 하드웨어의반대말, 눈에보이지않음, 공학이란? 컴퓨터, 전기, 전자, 기계, 건축, 엔지니어링, 엔지니어, 공돌이, 소프트웨어공학이란? 어떻게하면적은비용으로소프트웨어를개발할수있을까? 어떻게하면좋은품질의소프트웨어를개발할수있을까? 어떻게하면적기에소프트웨어를개발할수있을까? 어떻게하면시리즈계속 사용자요구만족하는 대박을터트릴수있는 Page 2 1
강의개요 과목개요 컴퓨터의발전과더불어다양한소프트웨어개발기술및방법론이필요하다. 소프트웨어개발에있어서, 1) 초기기획및설계는어떻게하고, 2) 실제구현및시험을어떻게수행하며, 3) 또한사후관리를어떻게하는지방법론을습득한다. 특히, 소규모그룹단위의프로젝트를수행하면서, 소프트웨어공학이실제상황에어떻게적용되는지간접체험한다. 강의내용요약 개요 계획및요구분석 설계및구현 테스트및유지보수 품질보증 소프트웨어공학동향 Page 3 강의계획 (1/4) 선수과목 (Prerequisites) 웹프로그래밍언어한가지 (PHP, ASP, JSP, ) 담당교수 이름 : 문양세 사무실 : 자연대 5호관 201호 전화 : (033) 250-8449 E-mail : ysmoon@kangwon.ac.kr 홈피 : http://cs.kangwon.ac.kr/~ysmoon/ 강의교재 주교재 : 소프트웨어공학, 최은만, 정익사, 2003. 참고도서 : 객체지향소프트웨어공학론, 최은만, 사이텍미디어 이론과실무중심의 21세기용소프트웨어공학, Roger S. Pressman, 유해영역, 사이텍미디어 Page 4 2
강의계획 (2/4) 평가기준 중간시험 : 30% 기말시험 : 30% 과제 : 30% 출석 : 10% 강의계획 Week 1 2 3 4 5 6 7 8 강의내용강의개요, 소프트웨어공학개요 (I) 소프트웨어공학개요 (II) 계획 (I) 계획 (II), 요구분석 (I) 요구분석 (II) 설계 (I) 설계 (II) 중간시험 비고 Page 5 강의계획 (3/4) 강의계획 ( 계속 ) Week 9 구현 (I) 10 구현 (II), 테스트 (I) 11 테스트 (II), 유지보수 (I) 12 유지보수 (II) 13 품질보증 14 소프트웨어공학동향 15 기말시험 강의내용 비고프로젝트계획서제출객체지향최종계획서제출 Page 6 3
강의계획 (4/4) 과제관련 모든과제는프린트하여제출하는것을원칙으로함 과제는제출기한이후 1주 delay이면 20% 감점, 1주이후는받지않음 프로젝트관련 4주차정도지난후에프로젝트팀을구성해줄예정이고, 5주차 ( 혹은 6주차 ) 정도에프로젝트계획서를제출하며, 기말고사이전에최종보고서를제출한다. 주제 : 아직미정이나, WIPI를사용한간단한모바일프로그래밍생각중임 강의사이트 http://cs.kangwon.ac.kr/~ysmoon/courses/2006_2/se/se.html 강의노트는강의일주일전까지는 Upload할예정임 Many slides are extracted from Prof. Choi in Dongguk university. Thanks to Prof. Choi. Page 7 소프트웨어프로젝트의예 비행기예약및발권시스템원자력발전소제어및통제시스템우주 ( 왕복 ) 선제어, 유도, 통제시스템은행전산처리시스템전자정부시스템음성및데이터통신네트워크시스템최신운영체제, DBMS 그외, 대규모, 중규모, 소규모모두무수히많음 Page 8 4
CDMA 이동통신개발예제 (1/7) CDMA? Code Division Multiple Access ( 부호분할접속방식 ) AMPS(Advanced Mobile Phone Service), TDMA(Time Division ), 이동통신인구 : 수십만 (90 년대초 ) 3,700 만 ( 누구나 ) CDMA 이동통신 Brief History 1993년: 개발착수 1996년: 세계최초상용화 (ETRI+ 삼성 /LG/ 현대 한국이동통신 (SK Telecom), 신세기통신 ) 1997년: CDMA PCS 세계최초상용화 (KTF, LGT, HansolM.com) 그후 : CDMA 1x, CDMA 1xEV-DO, CDMA-1xEV-DV, W-CDMA, Page 9 CDMA 이동통신개발예제 (2/7) ( 매우간략히나타낸 ) CDMA 망구조 MS ( 단말기 ) S ( 기지국 ) ( 제어국 ) ( 교환기 ) PDSN AAA PC 개념으로보면, 전체시스템은 PC 수백대 ~ 수천대에해당하는초대규모시스템임 Page 10 5
CDMA 이동통신개발예제 (3/7) 개발인력구성예제 (1996년경, 현대전자, 개략적숫자임 ) : 100여명 : 50여명 : 50여명 : 30여명 MS: 100여명 AAA, PDSN: 50여명 (1999년이후) 상기인력은영업, 마케팅, 생산인력은제외한순수개발인력을나타냄 이같은대형개발조직을어떻게조직하고관리할것인가? Page 11 CDMA 이동통신개발예제 (4/7) 각종변수 개발스펙이자주변한다. ( 규격진화, 정부 / 사업자요구사항, ) 하드웨어와소프트웨어가동시에개발되어야한다. 부족한엔지니어를개발하면서교육시켜야한다. 내부및외부interworking이엄청많다. 수많은또한복잡한환경에서의실험이필요하다. 매니저는물론엔지니어의변화 ( 입사, 이직등 ) 등등등숫한난제 Page 12 6
CDMA 이동통신개발예제 (5/7) 개발조직을다음과같이엔티티별로구성해보았다. 개발대장 Page 13 CDMA 이동통신개발예제 (6/7) 개발조직을다음과같이기능별로도구성해보았다. 개발대장 System Eng. Page 14 7
CDMA 이동통신개발예제 (7/7)? 전체시스템및세부시스템구조설계 개발계획수립및비용최소화전략수립 신규기술동향파악및교육, 표준화작업참여 마케팅분야기술자료및제안서작성? Part of Page 15 여러분이개발자로나가면 (1/2) 처음 ( 입사후 10 년까지 ) 에는 SE 가어디에있는지잘보이지않음이때, 주로관리자가 무엇을작성해내라, 무슨계획서를써라, 개발이잘되어가고있느냐 고하는말들에서약간의 SE 냄새가풍김 중간관리자 (10 년 ~20 년 ) 가되면, 업무의절반이이에해당함위에서 언제까지제안서를써라, 개발중간점검회의를하자, 어디가서발표하고오너라, 언제까지개발할수있느냐? 등의말을실천하는것들이곧 SE 에해당함 고급관리자 (20 년 ~) 가되면, 모든업무가이에해당함사장님이 ( 혹은고객이 ) 비용을최소화한개발계획을세워라, 필요한인력을산출하고배치하라, 설계발표회의를갖자 등의이야기가돋 SE 로볼수있음 Page 16 8
여러분이개발자로나가면 (2/2) 결국, 초기에는 SE가그다지중요한작업이아니며, 규모가작은과제 ( 예 : 개인홈페이지작성회사 ) 의경우궁극적으로필요하지않음 BUT, 중규모이상인경우, 관리자가되면서 SE 관련작업이많아지며, 업무속에서자연스럽게실천하게됨 대학에서아무리잘배워도, 2~3년지나면핵심용어조차다잊어버리므로, 관리자가되었을경우에, 나름대로의재교육이필요함 Page 17 9