2016년 7월 7일 목요일

운영결함밀도와 SW공학수준 간 분석


SW공학등급(Absent, Average, Advanced)과 납기성과간의 관계를 비교한 결과는 아래의 표와 같다. 




위 표에서 확인할 수 있듯이 SW공학수준 등급이 높을수록(Advanced) 운영결함밀도가 낮아지는 것을 확인할 수 있으며, 공학수준 등급이 낮을수록(Absent) 운영결함밀도가 높아지는 것을 확인할 수 있다. 이러한 결과는 SW공학수준이 운영결함밀도에 영향을 주는 요소임을 파악할 수 있으며, 운영결함밀도의 개선을 위하여 SW공학수준의 개선이 필요함을 확인할 수 있다. 

또한 SW공학수준을 결정하는 하위 구성요소(프로세스, 인력, 기술)의 등급에 따라 운영결함밀도의 추세를 살펴보도록 한다. 

SW공학수준을 결정하는 프로세스의 수준등급에 따른 운영결함밀도는 다음의 표와 같으며, 프로세 스 수준등급이 높아질수록 운영결함밀도가 낮아지는 것으로 나타났으며 Advanced 등급이 되어서 야 전체 평균인 0.136(개/FP)보다 낮은 운영결함밀도 수준을 나타내고 있어 국내 SW기업들이 프 로세스 수준 개선에 상대적으로 많은 노력을 집중해야 할 필요가 있음을 확인할 수 있다.



더보기

운영 결함밀도


운영결함밀도란 SW개발 이후 운영단계로 이관한 실제 사용 환경에서의 테스트 결함밀도를 말하며 이를 통해 실제 고객에게 인도된 시스템의 품질성과를 간접적으로 측정할 수 있다. 

이번 조사를 통해 수집된 452개의 데이터 중 운영결함밀도 관련 항목에 응답한 설문은 33개 프로 젝트로 응답율이 7.30%를 보이고 있다. 이러한 낮은 응답율은 국내 SW기업 대부분이 아직까지 결함데이터의 정량적 관리가 미흡한 상황이거나 데이터가 수집되어도 공개를 꺼려하는 상황이기 때 문인 것으로 이해할 수 있다. 수집된 데이터는 부족하지만 이번 조사를 통해 국내 SW기업의 운영 결함밀도는 전체 평균 0.136(개/FP)으로 전년도(2013년도)결과인 0.144(개/FP)와 비교해 5.56% 감소한 결과를 보여주고 있다. 

연도별 운영결함밀도는 다음의 표와 같으며, 금년도(2014년도)의 경우 전년도(2013년도)와 비교하 여 매년 조금씩 감소하는 추세를 보여주고 있다. 


프로젝트 비용


비용성과를 살펴보기 위해 수집된 데이터에서 비용을 준수한 프로젝트 비율의 추이를 비교하는 것 으로 국내 SW개발 프로젝트의 비용성과 현황을 분석했다. 프로젝트의 성과항목 중 비용 측면의 지표로는 비용초과율을 선정하였으며, 비용초과율은 고객과 계약한 프로젝트의 전체 투입인력과 비 교하여 실제 프로젝트 투입인력이 증가 혹은 감소하였는지를 나타내는 지표이다. 예를 들어, 비용 초과율이 0%보다 작은 값을 가지면 프로젝트 계약 투입공수보다 적은 인력을 투입하여 프로젝트를 완료했음을 나타내며, 0%보다 클 경우에는 계약 투입공수보다 더 많은 인력을 투입하여 프로젝트 를 완료했음을 의미한다. 

 

이번 조사의 비용성과에 대한 응답율은 22.6%로 응답율이 낮은 편이며, 비용을 준수한 비율은 50.98%로 나타나고 있다. 

2016년 7월 6일 수요일

납기성과별 분포

기업규모(대기업, 중소기업)별로 납기성과를 비교해 보면 아래의 표와 같은 비율을 보이고 있으며, 기업의 규모가 클수록 납기준수율이 상대적으로 높은 것으로 나타났다.

 
SW개발 유형(IT서비스, 임베디드SW, 패키지SW)별로 납기성과를 비교해 보면 아래의 표와 같은 결과를 보이고 있어 SW개발유형에 따라 납기성과 차이를 보이고 있지 않는 것으로 나타났다.


 
프로젝트 계약형태(단독, 컨소시엄, 하도급)별로 납기성과를 비교해 보면 아래의 표와 같으며, 프로 젝트 계약형태 유형별로 큰 차이를 보이고 있지 않는 것으로 나타났다. 



프로젝트 납기


프로젝트의 성공적인 추진을 위해서는 납기와 비용, 품질을 지키는 것이 가장 기본적인 활동이다. 수집된 프로젝트 성과데이터에서 납기를 준수한 프로젝트 비율을 비교하는 방법으로 국내 SW개발 프로젝트의 납기성과 현황을 분석하였다. 납기성과를 나타내는 납기초과율은 고객과 합의한 프로젝 트 종료일을 준수하였는지를 나타내는 지표로 납기초과율이 0%보다 작은 값을 가지면 프로젝트가 계획 종료일 보다 일찍 완료되었음을 의미하며, 0%보다 클 경우에는 프로젝트가 지연되었음을 의 미한다. 이번 조사의 납기성과에 대한 응답율은 54.4%로 납기를 준수한 비율은 72.8%로 비교적 높은 결과를 보여주고 있다. 

 
연도별 납기준수율은 다음의 표와 같으며, 전년도(2013년도) 대비 2.20% 감소한 결과를 보여주고 있다. 


프로젝트 이행 기반역량 분석


성공적인 프로젝트 수행을 위해서는 기본적으로 적정 인력의 투입과 투입인력의 개발 대상에 대한 개발 경험을 통한 지식 보유 즉 도메인에 대한 지식, 그리고 투입인력의 적용 기술에 대한 이해가 전제되어야 한다. 이러한 성공적 프로젝트 수행의 기본전제 조건이 되는 투입공수 적정성, 프로젝 트 도메인에 대한 개발 경험수준 및 적용 기반기술에 대한 이해도를 기반으로 프로젝트 이행 기반역 량을 조사하고 SW공학수준과의 비교 분석을 통해 SW공학수준에 따른 조직의 현상을 파악하였다. 


2016년 7월 5일 화요일

가속화 되고 있는 클라우드 도입으로 인한 소프트웨어 활용의 범위

지금까지도 소프트웨어 자체를 만드는 것보다는 소프트웨어를 서비스하기 위해 준비해야 하는 것들이 너무 많다. 서버와 데이터베이스를 비롯해 네트워크와 보안 등의 전문가들이 필요하기 때문에 많은 소프트웨어 업체가 고민에 빠진다. 클라우드는 개발자와 회사가 소프트웨어에 집중하고 구매, 유지 관리, 용량 계획과 같은 획일적인 일은 피할 수 있도록 해주고 있다. 이번 회에서는 클라우드 도입이 소프트웨어 활용에 어떤 영향을 미치는지 살펴보도록 한다.

사용자 관점의 클라우드 서비스
최근에 알려진 클라우드 서비스라면 스마트폰이나 스마트패드를 들고 다니며, 인터넷 상에서 음악을 듣고, 동영상 보던 것을 집에 있는 PC 로 이어서 듣거나 볼 수 있거나 회사의 회의시간에 정리한 문서를 바로 인터넷을 통해 회의 참석자들과 함께 공유하는 것을 생각한다(그림1).

그림1과 같이 사용자가 생각하는 클라우드 서비스는 디바이스와는 상관없이 원하는 서비스를 받는다. 애플, 구글, KT 등 클라우드 서비스를 제공하는 다양한 업체는 대부분 스토리지나 서버를 공유하는 형태가 일반적이고 일부 소프트웨어는 라이선스를 공유해서 사용하기도 한다. 사용자 입장에서는 디바이스나 소프트웨어 중심의 서비스에서 사용자 중심의 서비스로 이동한다고 볼 수 있다.
이번에는, 소프트웨어 개발자 입장에서 클라우드를 살펴보자. 사용자 입장과는 다르게 소프트웨어 개발자는 소프트웨어를 개발하기 전에 고민해야 할 것들이 매우 많다. 서비스하고자 하는 소프트웨어를 개발하는 것부터 개발에 필요한 웹 서버, 어플리케이션 서버, 데이터베이스 서버, 라이브러리 등을 고민해야 하고, 이를 구동시키기 위한 물리적인 하드웨어와 네트워크 등도 고민해야 한다. 소프트웨어 업체가 좋은 아이디어를 가지고도 실패하는 이유가 아이디어를 소프트웨어로 만드는 것 외에 준비해야 할 것들이 너무 많았기 때문이다.
그렇다면, 클라우드 서비스의 유형을 살펴보고, 개발자 관점으로 클라우드 서비스에 대해 살펴보면서 높은 품질의 소프트웨어를 개발하기 위해 클라우드 서비스를 활용하는 방법에 대해 알아보자.