[go: up one dir, main page]

KR100901357B1 - 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템 - Google Patents

소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템 Download PDF

Info

Publication number
KR100901357B1
KR100901357B1 KR1020070033666A KR20070033666A KR100901357B1 KR 100901357 B1 KR100901357 B1 KR 100901357B1 KR 1020070033666 A KR1020070033666 A KR 1020070033666A KR 20070033666 A KR20070033666 A KR 20070033666A KR 100901357 B1 KR100901357 B1 KR 100901357B1
Authority
KR
South Korea
Prior art keywords
function
development
maintenance
request
score
Prior art date
Application number
KR1020070033666A
Other languages
English (en)
Other versions
KR20090000818A (ko
Inventor
김만배
김제인
김동석
방중수
홍성찬
Original Assignee
주식회사 케이티프리텔
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티프리텔 filed Critical 주식회사 케이티프리텔
Priority to KR1020070033666A priority Critical patent/KR100901357B1/ko
Publication of KR20090000818A publication Critical patent/KR20090000818A/ko
Application granted granted Critical
Publication of KR100901357B1 publication Critical patent/KR100901357B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/20Administration of product repair or maintenance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Educational Administration (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 소프트웨어의 유지보수에 대한 요청사항이 있을 때 이를 수행하기 위한 개발 규모 및/또는 개발 공수를 자동으로 산출하여 효율적인 규모 관리가 가능하도록 하는 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템에 관한 것으로서, 소프트웨어의 유지보수에 대한 요청사항 발생 시, 입력부가 기능점수 기법에 따라 상기 요청사항에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형을 각각 분별하여 입력받는 단계; 및 제어부가 입력된 상기 기능유형 및 개선유형 각각에 상응하는 기능별로 기능점수를 산출하는 단계; 및 상기 제어부가 산출된 상기 기능점수를 기반으로 하나 이상의 기능을 포함하는 상기 요청 사항의 개발규모를 추정 산출하는 단계를 포함하고, 상기 기능점수는 이전의 단위시간 동안 산출된 동일 기능의 기능점수의 평균 값일 수 있다. 또한, 개발 규모 및 자원 등을 산출하는 데 있어 기존에 이미 측정된 기능점수 및 투입 공수값을 활용함으로써 요구사항에 따른 소요자원의 예측에 있어서의 객관성 및 효율성을 향상시킬 수 있는 효과가 있다.
기능점수, 개발 공수, 유지보수, 소프트웨어

Description

소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템{Measuring method of Software maintenance development size and the System thereof}
도 1 은 일반적인 유지보수 개발 규모 측정방법이 도시된 순서도,
도 2 는 본 발명에 따른 기능점수 산정범위가 도시된 도,
도 3 은 본 발명에 따른 유지보수 개발 규모 측정방법이 도시된 순서도,
도 4 는 본 발명의 바람직한 실시예에 따른 기능점수 입력을 위한 UI가 도시된 도,
도 5 는 본 발명의 바람직한 실시예에 따른 개발 규모 측정방법에 있어서, 개선기능 및 기능유형 데이터를 입력하는 UI가 도시된 도,
도 6 은 도 5의 데이터가 입력된 후의 UI가 도시된 도,
도 7 은 본 발명에 따른 유지보수 개발규모 측정시스템의 구성이 간략하게 도시된 블럭도이다.
<도면의 주요부분에 관한 설명>
100: 제어부 110: FP DB
120: 입력부 130: 출력부
본 발명은 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템에 관한 것으로서, 특히 유지보수에 대한 요청사항이 있을 때 이를 수행하기 위한 개발 규모를 자동으로 산출하여 효율적인 규모 관리가 가능하도록 하는 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템에 관한 것이다.
일반적으로 컴퓨터 시스템을 구성하는 소프트웨어의 개발 규모나 개발 공수 비용을 견적 내는 경우, 소프트웨어의 규모나 작업 내용을 고려하여 이를 산출하게 된다. 따라서, 소프트웨어의 개발 규모나 개발 공수 비용의 견적이나 평가작업은 소프트웨어 개발 작업에 오랫동안 종사한 전문가와 같은 특정한 사람의 경험과 감에 의존하는 경우가 많다.
최근에는 이러한 소프트웨어 개발 공수비용의 견적을 내거나 평가하는 방법으로서, 기능점수(FP; Function Point) 방법이 활용되고 있다. 기능점수는 소프트웨어가 가지는 기능의 양을 측정하는 방법으로서, 시스템 사양서에 의해 규모를 정량적으로 계측하여 보다 객관적이고 합리적으로 소프트웨어 기능 규모를 계산하는 방법이다.
이러한 기능점수 방법은 구매하고자 하는 응용 패키지의 규모와 사용자 요구의 부합성, 소프트웨어 개발과 유지보수를 위한 비용과 자원 소요 산정 등에 활용되고 있다.
이중 소프트웨어의 유지보수 업무는 신규개발된 소프트웨어를 고객에게 인도한 후 오류를 수정하거나 성능 및 기능의 개선 또는 변화된 환경에 적응시키기 위 해 소프트웨어를 변경하는 활동을 뜻하는 것으로 소프트웨어의 신규개발과는 달리 신속성을 요구하며 전체 시스템 관련 업무의 60% 내지 80%의 비율을 차지하고 있다.
도 1은 기능점수 방법을 이용한 일반적인 소프트웨어의 유지보수 개발 규모 측정방법이 도시된 순서도이다.
우선, 단계 S10에서 이미 설계된 소프트웨어(시스템)의 유지보수에 대한 요청사항이 접수되면, 단계 S20에서 개발자는 접수된 요청사항을 분석하여 기능점수 방법에 따라 기능별 및 유형별로 분류하고, 단계 S30에서 분류된 각 기능의 기능점수를 측정한다.
다음, 단계 S40에서 분류된 기능별 및 기능 유형별로 해당하는 개수에 따라 요청사항의 개발 규모(개선 기능점수)를 추정한다.
단계 S50에서 추정된 개발 규모를 통해 해당 요구사항의 달성을 위해 필요한 비용 또는 자원을 예측하여 개발을 진행한다.
그러나, 상기와 같이 진행하는 기능점수 방법을 이용한 일반적인 소프트웨어의 유지보수 개발 규모 측정방법은 고객으로부터 요청사항이 접수되면 이를 유지보수 업무의 관리자가 분석하고 개발규모를 추정하기까지 장시간이 걸리는 문제점이 있다.
즉, 유지보수 업무의 관리자는 접수된 요청사항이 전달되면, 먼저 우선 전달된 요청사항을 파악하여 해당 요청사항을 수행하는 데 어느 기능이 필요한지를 판단한다. 다음, 기능점수 방법에 따라 상기 판단된 적어도 하나 이상의 기능의 유형 을 분석하고, 상기 기능이 개선되는 데 필요한 데이터의 개수 및 종류 등을 분류해야 한다. 또한, 각 기능별로 분류된 데이터의 개수 및 종류로부터 복합도를 예측하여 개선 기능점수를 각각 산출한다. 그리고, 산출된 각 개선 기능점수로부터 생산성을 추정하여 각 기능의 개발규모를 예측하고, 요청사항에 해당하는 최종적인 개발규모를 추정하게 된다. 이 경우, 상술한 바와 같은 업무 과정들은 유지보수 업무의 관리자가 직접 수작업을 통해 일일이 수행되어야 하므로 해당 업무를 위한 개발 규모를 추정하기까지 장시간이 소요되며, 특히 신속성을 요하는 소프트웨어의 유지보수 업무에 적용하기에는 적합하지 않다.
또한, 기능점수 방법을 능숙하게 활용할 수 있는 전문가가 상술한 바와 같은 과정을 수행한다 하더라도 산출된 개선 기능점수로부터 생산성을 추정하여 개발규모를 예측하는 데 있어서는 종종 전문가의 주관에 의존하게 되므로 개발규모 예측 결과의 객관성을 보장할 수 없는 문제점이 있다.
본 발명은 상기한 종래 기술의 문제점을 해결하기 위한 것으로서, 유지 보수하고자 하는 사항의 기능 개선 유형 및 기능유형을 입력하면 이전에 수행된 유지보수 업무에 대한 각 기능점수의 평균값을 이용하여 입력된 유지보수 사항의 추정 개발 규모가 자동으로 산출되므로 소프트웨어의 유지보수 개발 규모를 보다 용이하고 신속하게 측정할 수 있도록 하는 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템을 제공하는 데 그 목적이 있다.
또한, 본 발명의 소프트웨어 유지보수 개발 규모 측정방법 및 그 시스템은 추정 개발 규모를 산출하는 데 있어서 이전에 실제 투입된 기능점수의 평균값을 활용하므로 개발 규모의 추정시 객관성을 크게 향상시킬 수 있도록 하는 데 또 다른 목적이 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 제 1특징에 따른 소프트웨어 유지보수 개발 규모 측정방법은 소프트웨어의 유지보수에 대한 요청사항 발생시, 입력부가 기능점수 기법에 따라 상기 요청사항에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형을 각각 분별하여 입력받는 단계; 및 제어부가 입력된 상기 기능유형 및 개선유형 각각에 상응하는 기능별로 기능점수를 산출하는 단계; 및 상기 제어부가 산출된 상기 기능점수를 기반으로 하나 이상의 기능을 포함하는 상기 요청사항의 개발규모를 추정 산출하는 단계를 포함하고, 상기 기능점수는 이전의 단위시간 동안 산출된 동일 기능의 기능점수의 평균 값일 수 있다.
여기서, 상기 개발공수를 추정 산출하는 단계는 상기 기능점수와 이에 상응하는 개발 생산성 값을 곱하여 기능별로 개발공수를 추정 산출하는 단계; 및 산출된 상기 개발공수를 합하여 하나 이상의 기능을 포함하는 상기 요청사항의 개발공수를 추정 산출하는 단계를 포함하고, 상기 개발 생산성 값은 이전의 단위기간 동안에 산출된 동일 기능의 기능점수에 상응하는 개발 생산성 값의 평균일 수 있다.
또한, 상술한 바와 같은 목적을 달성하기 위한 본 발명의 제 2특징에 따른 소프트웨어의 유지보수 개발 규모 측정 시스템은, 유지보수 업무를 수행한 결과 상기 유지보수 업무에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형 각각에 따라 적용된 기능점수가 저장되는 DB; 소프트웨어의 유지보수에 대한 요청사항 발생 시, 기능점수 기법에 따라 상기 요청사항에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형이 각각 입력되고, 상기 요청사항의 개발공수가 출력되는 UI; 및 상기 UI를 통해 입력된 상기 기능유형 및 개선유형 각각에 대해 소정의 단위기간 별로 상기 DB에 저장된 상기 기능점수와 이에 상응하는 개발 생산성 값을 곱하여 하나 이상의 기능을 포함하는 상기 요청사항의 개발공수를 추정 산출하는 제어부를 포함하고, 상기 기능점수는 이전의 단위시간 동안 산출된 동일 기능의 기능점수의 평균 값일 수 있다.
여기서, 상기 개발 생산성 값은 소정의 기능점수 범위별로 개발 생산성 값의 평균이 설정되어 있는 테이블인 생산성 베이스라인 모델에 의해 결정될 수 있다.
또한, 상기 생산성 베이스라인 모델은 상기 이전의 단위기간 동안 산출된 기능점수 및 이에 상응하는 개발 생산성 값을 상관관계 분석, I and MR Chart 및 정규성 검증 중 어느 하나의 통계적인 방법을 이용하여 생성될 수 있다.
또한, 상기 요청사항의 개발공수는 외부 입력에 의해 조정가능할 수 있다.
이하, 첨부된 도면을 참조로 하여 본 발명에 따른 실시예를 설명한다.
우선, 본 발명에 따른 유지보수 업무 개발규모의 적용범위에 대해 설명하도록 한다. 상술한 바와 같이 유지보수 업무는 고객의 요청에 따라 이미 인도된 소프트웨어의 오류를 수정하거나, 성능을 개선하거나 또는 변경하는 업무를 말한다.
도 2는 본 발명에 따른 유지보수 개발 규모의 적용범위가 도시된 블럭도이다. 일반적으로 유지보수 업무는 크게 순수한 유지보수 활동, 인도된 소프트웨어의 운영, 소프트웨어를 사용하는 사용자 지원서비스 등으로 나눌 수 있다. 이중 순수 유지보수 활동은 프로그램의 수정을 포함한 활동을 말하며, 다시 오류수정, 성능향상, 예방조치 및 기능변경 부문으로 세분화될 수 있다.
이때, 유지보수 업무에 있어서 기능점수 방법은 기능변경 부문에 제한되어 적용되어 왔는데, 이는 기능점수의 정의 자체가 소프트웨어가 포함하는 기능을 정량적으로 나타내는 것이며 유지보수 활동의 성격상 기능변경 부문만이 기능점수를 사용한 측정 및 추정이 가능한 데 기인한다.
그러나, 본 발명에 따른 유지보수 개발 규모 측정방법 및 그 시스템은 과거 실제 유지보수 활동에 투입된 기능점수 값을 활용하여 추정 개선 기능점수를 산출하므로 기존에 적용되지 못했던 오류수정, 성능향상, 예방조치 부문까지도 함께 기능점수를 산정할 수 있으며, 따라서 본 발명에 따른 유지보수 개발 규모의 적용범위는 순수 유지보수 업무를 모두 포함한다.
도 3은 본 발명에 따른 유지보수 개발 규모 측정방법이 도시된 순서도이다.
단계 S100에서, 인도된 소프트웨어에 대한 유지보수 요청사항이 접수되면 개발자는 접수된 요청사항을 분석하여 요청사항을 수행하는데 필요한 기능 및 기능의 개수, 각 기능의 개선유형 및 기능유형을 식별한다. 이때 각 기능의 개선유형 또는 기능유형은 기능점수 방법에 따라 세부사항을 분류하게 된다.
요청사항에 대한 각 기능의 개선유형 및 기능유형을 식별하면, 단계 S110에 서, 개발 규모 측정시스템에 필요한 기능을 입력하고, 입력된 기능의 개선유형 및 기능유형을 차례로 입력한다.
개선유형 및 기능유형이 입력되면, 단계 S120에서는 입력된 각 개선유형 및 기능유형에 해당하는 기능점수를 산정한다. 이때 산정되는 기능점수는 과거 소정기간 동안 실제 유지보수 업무를 마친 후 측정한 개발 업무의 기능점수를 통계하여 각 업무별 기능점수의 평균값으로 산정한다.
다음, 단계 S130에서 산출된 추정 개선 기능점수를 동일 개발 생산성과 곱하여 추정 개발공수를 산출한다. 요청사항에 포함된 모든 기능에 대하여 상술한 바와 같은 과정이 반복 수행된 후, 단계 S140에서 유지보수 사항의 개발을 진행하게 된다.
여기서, 추정 개발공수를 산출하기 위한 개발 생산성 값은 소정 단위 기간 동안 실제 유지보수 업무에 투입된 공수 및 업무를 마친 후 측정한 기능점수를 통해 산출될 수 있다.
개발 생산성은 일반적으로 해당 업무에 투입된 공수를 기능점수로 나누어서 구할 수 있는데, 이러한 추정 과정에서 개발 규모 및 공수에 대한 추정 정확도를 높이기 위해 과거 데이터를 통한 통계적인 방법을 사용하여 추정된 생산성 베이스라인을 활용한다. 즉, 통계적인 방법을 통해 작성된 FP 규모별 평균 생산성 베이스라인 모델에 따라 추정된 요구사항의 FP규모에 해당하는 평균 생산성을 적용하여 정확도가 높은 추정 개발 공수를 산출할 수 있다.
생산성 베이스라인 모델을 작성하기 위한 통계적 방법으로서 상관관계 분석, I and MR Chart, 정규성 검증 등을 사용하여 정확도를 높일 수 있다. 상기 생산성 모델은 각 기능점수 구간에 대한 평균 생산성 값이 제시되는 일종의 테이블로서 작성된다. 이때 상기한 통계적 방법을 사용하여 개발 생산성의 평균값을 산출하면 소정의 기능점수 범위에 따라 상기 산출된 개발 생산성의 평균값이 서로 큰 차이를 나타내는 경향이 있으므로, 상기한 개발 생산성 값을 기준으로 각 기능점수 구간을 나누어 정하는 것이 보다 정확한 생산성 값이 추정될 수 있어 바람직하다.
예를 들어, 한 달을 단위로 하여 유지보수 업무에 투입된 공수 및 측정된 개선 기능점수로부터 상술한 바와 같은 통계적 방법을 통해 작성된 생산성 베이스라인 모델의 일례를 표 1에 도시한다. 일반적으로 유지 보수 업무에 따라 각 기능점수 구간별로 평균 생산성 값이 큰 차이를 보이는데, 표 1을 참조하면, 특히 기능점수가 3미만인 경우에는 평균 생산성 값이 아주 높게 나타나고, 기능점수가 20미만인 경우에는 평균 생산성 값이 아주 낮게 나타났다. 본 발명은 이러한 평균 생산성 값이 기능점수 구간별로 다르다는 특성을 감안하여, 기능점수 구간별로 평균 생산성 값을 매칭시킨 표 1에 도시된 바와 같은 생산성 베이스라인 모델을 활용하고 있다. 따라서, 만약 개발공수를 정하고자 하는 기능의 추정 개선 기능점수가 5라고 추정되면 표 1에서 3<FP<8 인 구간에 해당하는 평균 생산성인 7.733 값을 상기 추정 개선 기능점수의 평균생산성 값으로 적용하여 서로 곱함으로써 추정 개발공수를 산출한다.
기능점수(FP) 평균 생산성(MH/FP)
3미만 22.56
3-8미만 7.733
8-20미만 4.258
20이상 1.879
한편, 산출된 추정 개발공수를 외부로 출력하여 사용자가 상기 추정 개발공수를 인지할 수 있도록 하는 경우, 필요한 경우 사용자의 판단에 따라 상기 추정 개발공수의 값이 임의로 조정될 수 있다. 추정 개발공수가 사용자에 의해 조정되는 경우에는 조정한 사유를 기록하여 추후 관리자가 산출된 개선 기능점수와 조정된 추정 개발공수의 값이 맞지 않는 이유를 알 수 있도록 하는 것이 바람직하다.
다음, 상기 요구사항에 필요한 각 기능별로 추정 개발공수가 모두 산출되면, 산출된 추정 개발공수를 모두 합하여 요청사항에 대한 추정 개발공수를 출력한다.
단계 S140에서 출력된 추정 개발공수에 따라 상기 요청사항을 수행하는데 요구되는 비용 또는 자원을 산정할 수 있으며, 이에 따라 유지보수 요청사항의 개발을 진행하게 된다.
상기와 같이 동작하는 본 발명에 따른 개발 규모 측정방법에 있어서, 추정 개선 기능점수 및 추정 개발 공수를 산출하는 데에는 이전 실제 투입된 유지보수 업무의 각 기능별 기능점수가 요구된다. 또한, 소정의 단위기간에 따라 지속적으로 기능점수의 평균값을 산출하여야 하므로 본 발명의 개발 규모 측정방법과 연동하여 실제 투입된 기능점수의 데이터베이스가 구축되는 것이 바람직하다.
도 4는 본 발명의 바람직한 실시예에 따른 기능점수 입력을 위한 UI가 도시된 도이다.
도 4에 도시된 바와 같이, 즉, 실제 유지보수 업무를 수행하고 나면, 업무 수행기간, 수행된 업무 및 업무 후 측정된 기능점수를 차례로 입력하게 된다. 이를 위해 상기 UI는 기능명 입력필드, 유형 선택필드(a), 개선전 복잡도 필드(b), 변경 입력필드(c) 및 개선후 복잡도 필드(d)를 차례로 구비한다.
이때, 각 기능 및 그에 따른 기능점수를 입력하기 전, 해당 유지보수 업무에 대한 업무 내용 및 실제 업무를 수행한 기간 등의 데이터를 입력하는 데이터입력 필드가 동일화면 또는 별도의 화면상에 구현될 수 있다.
상기 기능명 입력필드는 해당 유지보수 업무를 수행하는데 필요한 각 기능을 입력하는 텍스트 박스로 직접 입력 또는 필드 내 구비된 버튼을 이용하여 해당 기능을 선택할 수 있도록 구현될 수 있다.
또한, 기능입력 필드의 옆으로 해당 기능을 개발한 개발자의 이름이 기록되는 텍스트 필드가 더 구비될 수 있다.
유형 선택필드(a)를 포함한 그 외 데이터 필드는 기능점수 방법의 국제표준기구인 IFPUG의 표준에 따라 분류되는 것이 바람직하며, 이에 따라 각 필드에 해당하는 값을 입력할 수 있다.
유형 선택필드(a)는 해당 기능의 개선 유형에 따라 추가, 변경, 삭제 등을 선택할 수 있는 개선유형필드 및 대상 트랜젝션 및 데이터 유형에 따라 등록, 수정, 삭제, 출력, 조회 등과 내부 논리 파일, 외부 연계 파일 등의 SW기능 및 이에 대한 EQ(External Query), EI(External Input), ILF(Internal Logical Files) 및 EIF(External Interface Files) 등의 FP유형으로 표현되는 기능유형을 선택할 수 있는 기능유형 필드를 포함하여 구현된다.
개선전 복잡도 필드(b)는 개선유형 필드에서 변경 및 삭제가 선택된 경우 입력되는 필드로, 유지보수를 수행하기 전 해당 기능의 RET/FTR 필드 및 DET(Data Element Type) 필드에 해당하는 개수를 입력하면 IFPUG의 표준에 따라 각 기능별로 정의된 보정요인을 반영하여 복잡도 및 기능점수를 출력하게 된다.
RET(Record Element Type) 및 DET(Data Element Type)는 해당 기능의 데이터 기능의 복잡도를 측정하는데 필요한 요소이며, FTR(File Type Referenced) 및 DET(Data Element Type)는 해당 기능의 트랜젝션 기능의 복잡도를 측정하는데 필요한 요소이다. 또한 기능점수는 기본적으로 데이터 기능의 복잡도를 통한 기능점수 및 트랜젝션 기능의 복잡도를 통한 기능점수를 합하여 구할 수 있으며, 여기에 기능별로 정의된 여러 조정인자를 곱하거나 합하여 해당 기능의 최종 기능점수를 산출할 수 있다.
변경 입력필드(c)는 해당 기능의 개선유형에 따라 변경되는 RET/FTR 및 DET의 개수를 입력하는 필드로서, 개선 전과 비교하여 추가, 변경, 삭제된 개수를 차례로 입력할 수 있다.
개선후 복잡도 필드(d)에는 개선된 해당 기능의 전체 RET/FTR 및 DET 개수가 출력되며, 이를 바탕으로 개선된 기능의 복잡도 및 개선 기능점수가 산출된다.
또한, 본 발명에 따른 기능점수 입력 UI는 표준 방법을 통해 기능점수를 산출할 수 없는 오류수정, 성능향상, 예방조치 부문에 대해 별도의 데이터 입력필드를 구비하여 해당 작업 및 이에 실제 투입된 투입공수(e)를 입력할 수 있도록 한다. 이때, 개발 공수는 기능점수에 생산성 값을 곱하여 구할 수 있으므로 역으로 입력된 투입공수로부터 해당 작업에 대한 기능점수값을 산출할 수 있다.
한편, 상기와 같이 구현되는 기능점수 입력 UI를 통해 실제 적용된 기능점수 및 투입공수가 입력되면, 입력된 데이터를 바탕으로 신규 접수된 유지보수 업무에 대한 추정 개발공수를 산출할 수 있다.
도 5는 본 발명의 바람직한 실시예에 따른 개발 규모 측정방법에 있어서, 개선기능 및 기능유형 데이터를 입력하는 UI가 도시된 도이다.
도 5에 도시된 바와 같이, 유지보수 업무에 있어서 신규 요청사항(Service Request; SR)이 접수되면, 접수된 요청사항의 접수일시 및 내용이 입력될 수 있는 텍스트 필드가 각각 구현된다.
또한, 이와 구별되어 하단에 구비된 상세정보/ 개발자/ 규모추정/ 규모측정 탭에서 규모추정 탭을 선택하면 상단에 입력된 요청사항을 수행하기 위한 세부기능의 관련정보를 입력할 수 있는 데이터 입력필드(f)가 구현된다.
따라서, 'wise 수납자료 실시간 반영요청'의 유지보수 사항이 고객으로부터 접수되면, 이를 기재하고 규모추정 탭에서 상기 'wise 수납자료 실시간 반영요청'을 수행하기 위한 세부 기능 중 하나인 'AR 관리'를 입력한다. 또한, 입력된 'AR 관리' 기능의 개선 유형과 'AR 관리' 기능의 기능유형을 분별하여 입력한다. 그 후 추정공수 텍스트 필드 내 구현된 추정공수 산출아이콘(g)을 클릭하면 본 발명에 따른 기능점수 및 개발공수 추정방법에 따라 산출된 추정공수 값인 4.76MH 및 추정 개선 기능점수값인 1.56이 상기 추정공수 텍스트필드 및 추정 개선기능점수 텍스트 필드에 출력된다.
이때, 별도의 텍스트 박스(h)를 구현하여, 출력된 추정공수 값을 사용자가 임의로 조정하여 다시 입력하면, 이에 대한 변경사유를 입력할 수 있도록 한다. 사용자가 임의로 조정하여 재입력하는 과정은 출력된 추정공수 값을 보고 사용자가 판단할 때 해당 업무를 수행하는 데에 출력된 추정공수에 해당하는 자원보다 더 많거나 적은 자원이 소요될 것으로 예상되는 경우에 한한다. 따라서, 출력된 추정공수 값을 조정한 후에는 변경사유를 입력하여 이후 관리자가 상기 요청사항에 관한 데이터를 조회하였을 때 산출된 추정 개선 기능점수 값과 조정된 추정공수 값이 다른 이유를 확인할 수 있도록 하는 것이 바람직하다.
이러한 추정 기능 점수의 산출은 요청된 유지보수 사항의 모든 단위 기능에 대해 수행된다.
도 6은 도 5의 데이터가 입력된 후의 UI가 도시된 도이다.
도 6은, 예를 들어 'wise 수납자료 실시간 반영요청'의 유지보수 사항이 'AR 관리' 애플리케이션에 있어서의 '상담대상자 조회' 및 '신자료할당' 이라는 단위기능, 즉, 도 5에 도시된 바와 같이 규모추정 탭에 요청업무에 대한 'AR 관리' 기능의 관련사항을 입력하고 이를 저장하면, 'AR 관리', 'CReaM' 애플리케이션에 있어서의 '미납고객 정보갱신'이라는 단위 기능 등으로 이루어진 경우를 도시한다. 도 5에 도시된 바와 같이 규모추정 탭에 요청업무에 대한 'AR 관리' 애플리케이션에 있어서의 '신자료할당' 이라는 단위 기능에 대한 추정 공수값을 산출하면, 기 출력된 각 기능별 개선 유형 및 기능 유형과 함께, '신자료할당' 이라는 단위 기능에 대해 산출된 추정 개선 기능점수 및 추정 개발 공수가 한 행(K) 입력된 각 기능별 개선 유형 및 기능 유형과 함께 산출된 추정 개선 기능점수 및 추정 개발 공수가 한 행(K)에 차례로 배열된다.
요청사항인 'wise 수납자료 실시간 반영요청'을 수행하는데 필요한 전체 추정 개발 공수값은 상기 규모추정 탭의 각 기능별 추정 개발공수를 모두 더한 값인 26.3MH로 산술된다. 산출된 값은 상위 윈도우에 구현된 추정공수 텍스트 필드(m)에 출력되므로 유지보수 업무의 관리자 또는 개발자는 한눈에 상기 요청업무에 대한 추정 개발공수를 알아볼 수 있다. 또한, 예를 들어 출력된 26.3MH를 바탕으로 상기 요청사항이 3일에 해당하는 업무 분량임을 파악하여, 1명의 개발자를 3일간 투입하기로 결정하고 바로 개발을 진행하도록 할 수 있다.
한편, 상기와 같이 동작하는 본 발명에 따른 유지보수 개발규모 측정방법은 다음과 같은 시스템으로 구성될 수 있다.
도 7은 본 발명에 따른 유지보수 개발규모 측정시스템의 구성이 간략하게 도시된 블럭도이다.
본 발명에 따른 유지보수 개발규모 측정시스템은 개발 규모 및/또는 개발 공수 측정 UI가 외부로 출력되는 출력부(125)와, 출력된 UI를 통해 사용자가 데이터를 입력할 수 있도록 하는 입력부(120) 및 상기 UI를 구현하고 상기 입력부(120)로부터 전달되는 데이터에 따라 추정개발 기능점수 및 추정 개발 공수를 산출하여 상기 출력부(125)로 전달하는 제어부(100)를 포함하여 구성된다.
또한, 과거 실제 유지보수 업무에 투입된 투입공수 및 이를 통해 변경된 개발 산출물의 기능점수가 저장되는 DB(110)를 더 포함하여 구성된다.
상기 제어부(100)는 상기 시스템의 전반적인 동작을 제어하는 OS를 수행할 수 있으며, DB(110)로부터 소정 단위기간 동안의 개선 기능점수 및 투입공수 데이터를 불러들여 상술한 바와 같이 생산성 베이스라인 모델을 작성하고 이로부터 추정 개선 기능점수를 산출한다. 작성된 생산성 베이스라인 모델에 따라 추정 개발 공수를 산출하여 상기 출력부(125)로 전달할 수 있다.
또한, 본 발명에 따른 유지보수 개발규모 측정시스템은, 상기 DB(110)는 물리적으로 상기 시스템 내에 구비된 메모리 상에 구현되는 것이 바람직하나 별도의 장치로 구현되어 케이블 또는 무선 통신 등의 통신방법을 통해 상기 제어부(100)와 데이터를 송수신할 수도 있으며, 상기 DB(110) 및/또는 제어부(100)가 네트워크를 통해 입력부(120) 및 출력부(125)와 연결되도록 구성될 수도 있다.
이상과 같이 본 발명에 따른 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템을 예시된 도면을 참조로 하여 설명하였으나 본 발명은 본 명세서에 개시된 실시예와 도면에 의해 한정되지 않으며, 이전 실제 투입된 개발공수 및 기능점수를 활용하여 신속하면서도 간단하게 요청업무에 대한 추정 개발공수를 산정할 수 있도록 하는 본 발명의 기술사상은 특허청구범위의 범위 이내에서 당업자에 의해 용이하게 응용될 수 있음은 자명하다.
상기와 같이 구성 및 동작하는 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템은 신규접수된 유지 보수 요구사항에 대해 기능의 개선유형 및 기능유 형만을 입력하여 개발 규모(기능점수) 및 자원(개발공수)을 자동으로 산출할 수 있으므로 소프트웨어의 유지보수 개발 규모를 용이하고 신속하게 추정하여 개발 규모를 추정하는데 까지 걸리는 시간을 크게 단축할 수 있다.
또한, 개발 규모 및 자원 등을 산출하는 데 있어 기존에 이미 측정된 기능점수 및 투입 공수값을 활용하므로 요구사항에 따른 소요비용을 보다 객관적이고 합리적으로 산출할 수 있는 효과가 있다.

Claims (8)

  1. 소프트웨어의 유지보수에 대한 요청사항 발생시, 입력부가 기능점수 기법에 따라 상기 요청사항에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형을 각각 분별하여 입력받는 단계; 및
    제어부가 입력된 상기 기능유형 및 개선유형 각각에 상응하는 기능별로 기능점수를 산출하는 단계; 및
    상기 제어부가 산출된 상기 기능점수를 기반으로 하나 이상의 기능을 포함하는 상기 요청사항의 개발공수를 추정 산출하는 단계
    를 포함하고, 상기 기능점수는 이전의 단위기간 동안 산출된 동일 기능의 기능점수의 평균 값인 것을 특징으로 하는 소프트웨어의 유지보수 개발 규모 측정방법.
  2. 삭제
  3. 제1 항에 있어서,
    상기 개발공수를 추정 산출하는 단계는,
    상기 기능점수와 이에 상응하는 개발 생산성 값을 곱하여 기능별로 개발공수를 추정 산출하는 단계; 및
    산출된 상기 개발공수를 합하여 하나 이상의 기능을 포함하는 상기 요청사항의 개발공수를 추정 산출하는 단계를 포함하고,
    상기 개발 생산성 값은 이전의 단위기간 동안에 산출된 동일 기능의 기능점수에 상응하는 개발 생산성 값의 평균인 것을 특징으로 하는 소프트웨어의 유지보수 개발규모 측정방법.
  4. 제3 항에 있어서,
    상기 개발 생산성 값은,
    소정의 기능점수 범위별로 개발 생산성 값의 평균이 설정되어 있는 테이블인 생산성 베이스라인 모델에 의해 결정되는 것을 특징으로 하는 소프트웨어의 유지보수 개발규모 측정방법.
  5. 제4 항에 있어서,
    상기 생산성 베이스라인 모델은,
    상기 이전의 단위기간 동안 산출된 기능점수 및 이에 상응하는 개발 생산성 값을 상관관계 분석, I and MR Chart 및 정규성 검증 중 어느 하나의 통계적인 방법을 이용하여 생성되는 것을 특징으로 하는 소프트웨어의 유지보수 개발규모 측정방법.
  6. 삭제
  7. 제1 항 또는 제3 항에 있어서,
    상기 요청사항의 개발공수는 외부 입력에 의해 조정가능한 것을 특징으로 하는 소프트웨어의 유지보수 개발규모 측정방법.
  8. 유지보수 업무를 수행한 결과 상기 유지보수 업무에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형 각각에 따라 적용된 기능점수가 저장되는 DB;
    소프트웨어의 유지보수에 대한 요청사항 발생시, 기능점수 기법에 따라 상기 요청사항에 포함되는 하나 이상의 기능에 대한 기능유형 및 개선유형이 각각 입력되고, 상기 요청사항의 개발공수가 출력되는 UI;
    상기 UI를 통해 입력된 상기 기능유형 및 개선유형 각각에 대해 이전의 단위 기간별로 상기 DB에 저장된 상기 기능점수와 이에 따른 개발 생산성 값을 곱하여 하나 이상의 기능을 포함하는 상기 요청 사항의 개발공수를 추정 산출하는 제어부
    를 포함하고, 상기 기능점수는 이전의 단위기간 동안 산출된 동일 기능의 기능점수의 평균 값인 것을 특징으로 하는 소프트웨어의 유지보수 개발규모 측정시스템.
KR1020070033666A 2007-04-05 2007-04-05 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템 KR100901357B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070033666A KR100901357B1 (ko) 2007-04-05 2007-04-05 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070033666A KR100901357B1 (ko) 2007-04-05 2007-04-05 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템

Publications (2)

Publication Number Publication Date
KR20090000818A KR20090000818A (ko) 2009-01-08
KR100901357B1 true KR100901357B1 (ko) 2009-06-05

Family

ID=40483952

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070033666A KR100901357B1 (ko) 2007-04-05 2007-04-05 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR100901357B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102327227B1 (ko) * 2020-07-20 2021-11-16 엠앤엠솔루션 주식회사 사용자 요구사항을 활용한 기능점수 자동 측정과 검증 방법 및 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH026A (ja) * 1987-11-23 1990-01-05 Polaroid Corp 写真カメラ
US20030070157A1 (en) 2001-09-28 2003-04-10 Adams John R. Method and system for estimating software maintenance
KR20030041040A (ko) * 2001-11-19 2003-05-23 바산네트워크(주) 소프트웨어 규모 및 복잡도 측정 방법 및 시스템
JP2004199119A (ja) * 2002-12-16 2004-07-15 Toshiba Corp ソフトウェアの開発・運用・保守コスト予測方法及びシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH026A (ja) * 1987-11-23 1990-01-05 Polaroid Corp 写真カメラ
US20030070157A1 (en) 2001-09-28 2003-04-10 Adams John R. Method and system for estimating software maintenance
KR20030041040A (ko) * 2001-11-19 2003-05-23 바산네트워크(주) 소프트웨어 규모 및 복잡도 측정 방법 및 시스템
JP2004199119A (ja) * 2002-12-16 2004-07-15 Toshiba Corp ソフトウェアの開発・運用・保守コスト予測方法及びシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
소프트웨어 사업 대가기준(2006)

Also Published As

Publication number Publication date
KR20090000818A (ko) 2009-01-08

Similar Documents

Publication Publication Date Title
Martens et al. A buffer control method for top-down project control
US6735571B2 (en) Compensation data prediction
JP4739472B2 (ja) 性能予測装置および方法、記録媒体
US20030033586A1 (en) Automated system and method for software application quantification
US20060025984A1 (en) Automatic validation and calibration of transaction-based performance models
US20030070157A1 (en) Method and system for estimating software maintenance
US20050071807A1 (en) Methods and systems for predicting software defects in an upcoming software release
DE102005016572A1 (de) System zum Schätzen von Verarbeitungsanforderungen
EP1484684B1 (en) Method and computer system for providing a cost estimate for sizing a computer system
Kenley et al. A construction project net cash flow model
US8219368B1 (en) Capacity modeling system
Poh et al. Integrated duration–cost influence network for modelling risk impacts on construction tasks
US20090254492A1 (en) Method and Apparatus for Estimating Value of Information Technology Service Management Based on Process Complexity Analysis
AU2010202477B2 (en) Component based productivity measurement
WO2001016838A9 (en) Project management, scheduling system and method
KR100901357B1 (ko) 소프트웨어의 유지보수 개발 규모 측정방법 및 그 시스템
JP4707376B2 (ja) 情報処理方法及びプログラム
JP2006323851A (ja) ソフトウェア開発工数費用の評価装置
KR20070082028A (ko) Cdm사업 베이스라인 설정 및 모니터링 자동 관리 방법
Kim An Overview of Time Estimation in the Appraisal of Completeness for Software
Kofjač et al. Warranty claims prediction with a combined model of market absorption and failure process
Norton Don't Predict Applications When You Should Model the Business
CN119168478A (zh) 应用运维人力成本评估方法、装置、存储介质以及设备
Okumoto Digital Transformation in Software Quality Assurance
De Rore et al. Cocomo II as productivity measurement: a case study at KBC

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20070405

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20081001

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20090522

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20090601

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20090602

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20120601

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20130603

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20130603

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20140602

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20140602

Start annual number: 6

End annual number: 6

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20160509