개발자 '쑥말고인절미'

[정보처리기사] 5과목 정보시스템 구축 관리 322 ~ 327 (비용산정기법-LOC, COCOMO, Putnam, 기능점수) 본문

STUDY/정보처리기사

[정보처리기사] 5과목 정보시스템 구축 관리 322 ~ 327 (비용산정기법-LOC, COCOMO, Putnam, 기능점수)

쑥말고인절미 2024. 2. 22. 00:54
  • 322 LOC(원시 코드 라인 수, source Line Of Code) 기법
  • 323 수학적 산정 기법의 개요
  • 324 COCOMO 모형 개요
  • 325 COCOMO의 소프트웨어 개발 유형
  • 326 Putnam 모형
  • 327 기능 점수(FP) 모형

 

  • LOC
    • 소프트웨어 각 기능의 원시 코드 라인 수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정하는 기법
    • 예측치 = (a + 4m + b) / 6
      • 단, a : 낙관치, b : 비관치, m : 기대치(중간치)
    • 산정 공식
      • 노력(인월) = 개발 인원 × 투입 인원 = LOC / 1인당 월평균 생산 코드 라인 수
      • 개발 비용 = 노력(인월) × 단위 비용(1인당 월평균 인건비)
      • 개발 기간 = 노력(인월) / 투입 인원
      • 생산성 = LOC / 노력(인월)
  • 수학적 산정 기법
    • 상향식 비용 산정기법으로, 경험적 추정 모형, 실험적 추정 모형 이라고도 하며, 개발 비용 산정의 자동화를 목표로 한다.
    • 비용을 자동으로 산정하기 위해 사용되는 공식은 과거 유사한 프로젝트를 기반으로 하여 경험적으로 유도된 것
    • 수학적 산정 기법 종류
      • 1) COCOMO 모형
        • 보헴(Bohem)이 제안한 것으로, 원시 프로그램의 규모인 LOC(원시 코드 라인 수)에 의한 비용 산정 기법
        • 비교적 작은 규모의 프로젝트들을 통계 분석한 결과를 반영한 모델이므로 중소 규모 소프트웨어 프로젝트 비용 추정에 적합
        • 같은 규모의 프로그램이라도 그 성격에 따라 비용이 다르게 산정된다.
        • 비용 산정 결과는 프로젝트를 완성하는 데 필요한 노력(Man-Month)으로 나타난다.
        • COCOMO의 소프트웨어 개발 유형
          • 1) 조직형(Organic Mode)
            • 기관 내부에서 개발된 중·소 규모의 소프트웨어로 일괄 자료 처리나 과학 기술 계산용, 비즈니스 자료 처리용으로 5만(50KDSI) 라인 이하의 소프트웨어를 개발하는 유형
            • 사무 처리용, 업무용, 과학용 응용 소프트웨어 개발에 적합
          • 2) 반분리형(Semi-Detached Mode)
            • 조직형과 내장형의 중간형으로 트랜잭션 처리 시스템이나 운영체제, 데이터베이스 관리 시스템 등의 30만(300KDSI) 라인 이하의 소프트웨어를 개발하는 유형
            • 컴파일러, 인터프리터와 같은 유틸리티 개발에 적합
          • 3) 내장형(Embedded Mode)
            • 초대형 규모의 트랜잭션 처리 시스템이나 운영체제 등의 30만(300KDSI)라인 이상의 소프트웨어를 개발하는 유형
            • 신호기 제어 시스템, 미사일 유도 시스템, 실시간 처리 시스템 등의 시스템 프로그램 개발에 적합
      • 2) Putnam 모형
        • 소프트웨어 생명 주기의 전 과정 동안에 사용될 노력의 분포를 가정해주는 모형
        • 푸트남(Putnam)이 제안한 것으로 생명 주기 예측 모형 이라고도 한다.
        • 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로 한다.
        • 대형 프로젝트의 노력 분포 산정에 이용되는 기법
        • 개발 기간이 늘어날수록 프로젝트 적용 인원의 노력이 감소한다.
      • 3) 기능 점수(FP; Function Point) 모형
        • 알브레히트(Albrecht)가 제안한 것으로, 소프트웨어의 기능을 증대시키는 요인별로 가중치를 부여하고, 요인별 가중치를 합산하여 총 기능 점수를 산출하며 총 기능 점수와 영향도를 이용하여 기능 점수(FP)를 구한 후 이를 이용해서 비용을 산정하는 기법
        • 소프트웨어 기능 증대 요인
          • 1) 자료 입력(입력 양식)
          • 2) 정보 출력(출력 보고서)
          • 3) 명령어(사용자 질의수)
          • 4) 데이터 파일
          • 5) 필요한 외부 루틴과의 인터페이스
    • 자동화 추정 도구
      • 1) SLIM
        • Rayleigh-Norden 곡선과 Putnam 예측 모델을 기초로 하여 개발된 자동화 추정 도구
      • 2) ESTIMACS
        • 다양한 프로젝트와 개인별 요소를 수용하도록 FP 모형을 기초로 하여 개발된 자동화 추정 도구