한국소프트웨어품질의현주소 배두환 ITRC S/W 프로세스개선센터한국과학기술원 2006. 6 bae@salmosa.kaist.ac.kr http://salmosa.kaist.ac.kr/
목차 1. 국내소프트웨어개발조직의문제점 2. 소프트웨어품질이란무엇인가? 3. 소프트웨어개발삼대요소와품질 - 인적자원 - 프로세스 - 기술 4. 맺음말
국내소프트웨어개발조직의문제점 (1/2) 현황 : 품질 ( 미국의 2-5배 : 결함율 ), 생산성 ( 미국의 3배 ), 문제점 ( 모 SI 업체자체조사자료, 1999년 ) 평균 30% 이상의요구변경 PM의적절한요구관리능력부족 발주자의 S/W인식부족 40% 미만의원가, 적정의 50% 미만의기간 평균 3배이상의생산성강요 - 결과 : 무리한계획 비현실적인생산성강요 높은결함율 예산낭비, 납기초과. 품질을돌아볼여지가없다
국내소프트웨어개발조직의문제점 (2/2) 업체일반현황 소프트웨어에대한인식부족 : 하면된다! 개인의능력에의존한주먹구구식의소프트웨어개발 고급인력부재 관리자의적절한요구관리능력부족 대부분의소프트웨어는미완성품 ( 품질, 상품화등의측면 )
선진사례 ( 미국 DoD) 1980 년전후, DoD 에서발주한프로젝트의약 5% 만이성공 업체의개발역량을평가할수있는 Model 의장기연구개발착수 (SEI) SW-CMM 에서시작, CMMI 등으로발전 최근프로젝트성공비율약 30-40% 대로향상 우리나라의소프트웨어프로젝트성공률은어느정도인가?
목차 1. 국내소프트웨어개발조직의문제점 2. 소프트웨어품질이란무엇인가? 3. 소프트웨어개발삼대요소와품질 - 인적자원 - 프로세스 - 기술 4. 맺음말
소프트웨어품질은무엇인가? Conformance to user requirements, Phil Crosby Achieving excellent levels of fitness for use, W. Humphrey Total customer satisfaction, IBM A wide variety of plans and methods for producing good software Software Quality Assurance (IEEE Std. 730-1984) Cheaper, Faster, Better, (SEPG2006) Software Quality is a ubiquitous concern in software engineering, (Software Engineering Body of Knowledge)
소프트웨어품질과제품가격, 경쟁력 US $ 200 짜리 VCR 과 $1000 짜리 VCR 의차이 마티즈와 BMW 의가격차이 이들제품의가격의차이는무엇인가? 기본적인제품의기능? 아니면? 품질이곧경쟁력이며, 가격을결정하는주요요소이다!
CSQE (Certified S/W Quality Engineer) 를통해살펴본소프트웨어품질범위 CSQE, by American Society for Quality (ASQ) 시험과목 ( 분야 ) - General knowledge, conduct, ethics - S/W quality management - S/W audit - S/W Engineering process - Program/project management - S/W metrics - S/W verification & validation - S/W configuration management CSQE 의시험과목들을살펴보면, S/W 품질에영향을미치는영역이상당히포괄적임을알수있다.
소프트웨어품질유형 외부품질 (Internal quality) - 제품의사용자관점에서의품질 내부품질 (External quality) - 제품을개발하는개발자의관점에서의품질 제품품질 (Product quality) - functional correctness, reliability, performance,.. ISO9126 프로세스품질 (Process quality) - 제품의품질은그것을만드는프로세스의품질에영향을받는다.
S/W 품질성숙도모델 ( 활동유형 ) 1. 하면된다! 2. S/W 의기본적인기능적품질 (Functionality) 활동을개발자스스로가 testing 을통해해결한다. ( 개인역량 ) 3. S/W 의기능적품질활동을개발프로세스전반에걸쳐, testing 과 peer review 등을통하여진행한다. ( 개인역량, 제삼자에의한품질활동 ) 4. S/W 품질활동이개발, 지원및관리프로세스와유기적으로연결, 개발자전원과 QA 인력이품질요구사항을만족시키고, 또이를지원하기위해노력한다. ( 개인역량 + 조직역량 ) 5. S/W 품질지표가전사적으로관련된프로세스로부터측정되고, 검증된다. ( 프로세스개선을통한품질활동 baseline 구축 ) 6. 지속적인품질개선노력이개발과함께조직차원에서계획, 추진된다. ( 기구축된 baseline 을이용한품질개선활동 )
목차 1. 국내소프트웨어개발조직의문제점 2. 소프트웨어품질이란무엇인가? 3. 소프트웨어개발삼대요소와품질 - 인적자원 - 프로세스 - 기술 4. 맺음말
소프트웨어개발의삼대요소와품질 (1/2) 프로세스 기술 자원 품질향상 생산성향상 Product Service System
소프트웨어개발의삼대요소와품질 (2/2) 좋은제품, 시스템을만들고, 양질의서비스를제공하기위해서는단순한협의의품질활동뿐만아니라, 프로세스, 기술, 인적자원등소프트웨어개발삼대요소의점진적인발전이필요하다.
프로세스 : 현주소 여전히대부분의개발조직이 ad hoc(cmm Level 1) 또는기껏해야 repeatable(level 2) 수준 돈잘버는조직은프로세스에관심이없다. 관리자의프로세스의중요성에대한인식부족 / 매출이더중요 개발자의적극적인참여의식부족 : 추가로일만더생긴다. 수 / 발주프로세스 (Acquisition process) 가체계적이지못하다. 결과적으로새로운기술의도입이효과가적다.
기술 : 현주소 기업의소프트웨어공학기법의활용미흡 국제표준확보능력및노력부족 도구에대한인식부족및사용미흡 소프트웨어공학기술의연구개발투자부족
인적자원 : 현주소 신진인력의질저하 고급전문인력의부재 H/W 중심으로인한 S/W 인력의사기저하 잦은이직으로인한지식의유출 S/W 개발자들의일반적인고민 - 과거에성공사례를갖고있는상관의 S/W 에대한인식불만 - 고참사원과신참사원사이의세대차로인한갈등 ( 능력수준 ) - 장래 career 에대한비전제시부재 ( 앞이안보인다! ) - 9 시부터 9 시까지근무해야하는열악한환경
선진업체와의격차는얼마나될까? 국내소프트웨어및관련업체의관심사는? - 재사용 - Testing - 표준화 - 도구의도입등 IBM, Motorola, HP 등이과거 20-25 년전에관심을갖기시작했던것과매우흡사한모습 최악의경우, 20 년이상뒤쳐져있지않을까?
맺음말 선진국과의격차를해소하기위해서장기적이고, 지속적인대처방안이요구된다. 국내의소프트웨어품질활동은대기업, 중소기업, 업종별로차이가있지만, 전체적으로아직초보적인단계에있다고판단되며, 품질에대한인식, 나아가소프트웨어에대한올바른인식을통한사고의전환이요구된다. 소프트웨어의품질향상은제품의품질뿐만아니라, 제품을만들고, 이를지원, 관리하는프로세스의향상을통해이루어진다. 또한, 우수한인적자원을확보하기위한노력이요구된다. 한편, 소프트웨어강국이되기위해서는소프트웨어공학기술을기반기술로인식하여야하며이를지원하는연구개발 infra 가구축되어야한다.
감사합니다.