2020정보처리기사 요구사항 관리 – SW 개발 방법론 선정

요구사항 관리 – SW 개발 방법론 선정

요구공학

  • 요구사항에 관계되는 모든 활동과 원칙들에 대한 공학적인 접근 즉, 요구사항을 정의, 문서화, 관리하는 프로세스
  • 요구사항 추출- 분석 – 기술 – 검증 – 유지보수

요구사항 추출

  • 생명 주기 동안 지속적으로 반복
  • 시스템에 대한 요구사항 수집 (개발자관점)
  • 이해관계자 식별, 개발 팀과 고객 사이의 관계 생성
  • 도출기법 : 인터뷰, 설문, 브레인스토밍, 워크샵, 유스케이스, 프로토타이핑

요구사항 분석

  • 무슨 시스템을 구현할 것인가 분석
  • 요구사항 간 상충 해결, 소프트웨어 범위 파악, 환경과의 상호작용 이해
  • 시스템 요구사항을 정제하여 소프트웨어 요구사항 도출
  • 분석기법 : 요구사항 분류, 개념모델링, 요구사항 할당, 요구사항 협상, 정형분석(수학적 기호 표현)
    요구사항 기술(명세화)
  • 분석된 요구사항을 명확하고 정확하게 기록하여 문서화
  • 기능 요구사항은 빠짐없이, 비기능 요구사항은 필요한 것만
  • 체계적으로 검토, 평가, 승인될 수 있는 문서 작성
  • 산출물 : 시스템정의서, 시스템 요구사항 명세서, 소프트웨어 요구사항 명세서

요구사항 검증 및 확인

  • 요구사항이 정확하고 완벽하게 그리고 연계성있게 명세호 되었는지 검증
  • 분석가가 요구사항을 이해했는지 확인
  • 요구사항 문서가 표준에 적합하고 이해 가능하며, 일관성 있고 완전한지 검증
  • 리소스가 요구사항에 할당되기 전에 문제파악을 위해 검증 수행
  • 주요 활동 : 검토, 프로토타이핑, 모델 검증(정적), 인수테스트(사용자입장, 알바/베타 테스트)

요구사항 유지보수

  • 새로운 요구사항의 출현과 변경을 체계적으로 관리

비용산정

  • 소프트웨어 개발 비용을 예측하는 과학적이고 합리적인 활동

비용산정의 구성

  • 개발원가 = 소프트웨어 개발규모 X 단가 X 기술보정
  • 이익 = 개발원가의 10~20% 내외

하향식 산정기법(전체 비용 산정 후 작업별로 비용 세분화)

  • 과거의 유사 경험을 바탕으로 회의를 통해 산정하는 비과학적인 기법
  • 전문가 판단 기법 : 조직 내 경험이 있는 2명 이상의 전문가에게 비용 산정 의뢰, 편리하고 신속
  • 델파이 기법 : 한명의 조정자와 다수 전문가의 의견 종합하여 비용 산정, 전문가의 주관성이라는 단점 보완

상향식 산정기법(세부적인 작업 단위별로 비용 산정 후 전체 비용 산정)

  • 원시코드라인수(LOC) : 각 기능의 원시 코드 라인 수의 비관치, 낙관치, 중간치를 측정해 예측치를 구해 비용 산정기법
    (비관치 + 4중간치 + 낙관치)/6 = 예측치
  • 개발 단계별 노력(MM) : 생명주기 각 단계별로 노력(인/월수)을 산정하는 방ㅇ식

LOC 산정 공식

  • 노력 : 개발기간 * 투입인원 == LOC / 1인당 월평균생산코드라인수
  • 개발 기간 : 인월 / 투입 인원
  • 개발 비용 : 인월 * 단위 비용(1인당 월평균 인건비)
  • 생산성 : LOC / MM

수학적 산정기법 (경험적 추정기법)

  • 목표 : 개발 비용 산정의 자동화
  • COCOMO / Putnam / FP(기능점수)
    COCOMO 방법 (Bohem 제안)
  • 개발할 소프트웨어의 규모(LOC)를 예측한 후 소프트웨어 종류에 따라 비용 산정
  • 비용 견적의 강도 분석 및 비용 겨넉의 유연성이 높아 개발비 견적에 널리 통용
  • 원시 프로그램의 규모 따라 조직형 organic / 반분리형 semi detached / 내장형 embedded model로 분류
  • 비용산정 단계 및 구체화 정도에 따라 기본형(Basic) / 중간형(Intermediate) / 발전형(Detailed) COCOMO로 분류

Putnam 방법

  • 소프트웨어 생명주기의 전 과정에 사용될 노력의 분포를 가정해주는 방식( = 생명주기 예측 모형)
  • 개발기간이 늘어날수록 프로젝트 적용 인원의 노력 감소, 대형 프로젝트에 이용
    기능점수법 (FP)
  • 알란 알브레히트가 소개 후, ISO.IEC 14143으로 소프트웨어 크기에 대한 국제 표준이 됨
  • 기준 : 데이터 기능과 트랜잭션 기능으로 구분하고 가중치를 부여 후 합산하여 총 기능 점수 산출물
  • 데이터 기능 : 내부 논리파일 + 외부연계파일
  • 트랜잭션 기능 : 외부 입력 + 외부 출력 + 외부 조회

문제1 소프트웨어 위험의 대표적 특성

  • 불확실성과 손실
  • 위험은 불확실성과 손실을 내재하고 있는데, 이러한 위험의 불확실성을 감소시키고 손실에 대비하는 것이 위험관리 작업이다.

문제2 소프트웨어 재공학 활동(3R)

  • Reverse Engineering 역공학 : 소프트웨어를 분석하여 소프트웨어 분석 및 설계 정보를 재발견하거나 다시 만들어내는 작업
  • Re-engineering 재공학 : 기존 시스템을 이용하여 보다 나은 시스템을 구축하고 새로운 기능을 추가하여 성능을 향상시키는 작업
  • Reuse

문제3 나선형 모델(Spiral Model) by Bohem

  • 소프트웨어를 개발하면서 발생할 수 있는 위험을 관리하고 최소화하는 것이 목적 (점진적 모형)
  • 개발 순서 : 계획 및 정의 -> 위험 분석 -> 공학적 개발 -> 고객 평가 (유지보수 과정 불필요)

 

————————————————–

사이트 리뉴얼중입니다~

서버(Linux, ESXi), NAS(헤놀로지, ESXi 및 IT관련 정보, 기타 등등을 공유하는 커뮤니티 SVRFORUM을 새로 만들었습니다.
많은 가입(?) 부탁드립니다~
https://svrforum.com

이전글들은 모두 상단 메뉴의 Blog 글 모음에있습니다!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

홈서버 IT 커뮤니티 SVRFORUM
Link