반응형
요구사항 관리 - 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) / 중간형(Intermediated) / 발전형(Detailed) COCOMO로 분류
Putnam 방법
- 소프트웨어 생명주기의 전 과정에 사용될 노력의 분포를 가정해주는 방식( = 생명주기 예측 모형)
- 개발기간이 늘어날수록 프로젝트 적용 인원의 노력 감소, 대형프로젝트에 이용
기능점수법(FP)
- 알란 알브레히트가 소개 후, ISO.IEC 14143으로 소프트웨어 크기에 대한 국제 표준이 됨
- 기준 : 데이터 기능과 트랜잭션 기능으로 구분하고 가중치를 부여 후 합산하여 총 기능 점수 산출물
- 데이터 기능 : 내부 논리파일 + 외부 연계파일
- 트랜잭션 기능 : 외부 입력 + 외부 출력 + 외부 조회
[문제]
- 소프트웨어 위험의 대표적 특성
- 불확실성과 손실
- 위험은 불확실성과 손실을 내재하고 있는데, 이러한 위험의 불확실성을 감소시키고 손실에 대비하는것이 위험관리 작업이다.
- 소프트웨어 재공학 활동(3R)
Reverse Engineering
( 역공학 ) : 소프트웨어를 분석하여 소프트웨어 분석 및 설계 정보를 재발견하거나 다시 만들어내는 작업Re-enginnering
( 재공학 ) : 기존 시스템을 이용하여 보다 나은 시스템을 구축하고 새로운 기능을 추가하여 성능을 향상시키는 작업Reuse
- 나선형 모델(Spiral Model) by Bohem
- 소프트웨어를 개발하면서 발생할 수 있는 위험을 관리하고 최소화하는 것이 목적(점진적 모형)
- 개발 순서 : 계획및 정의 > 위험 분석 > 공학적 개발 > 고객 평가(유지보수 과정 불필요)
반응형
'IT > [ 정보처리기사 ]' 카테고리의 다른 글
[ 정보처리기사 ] 04. 2020 정보처리기사 3회차 실기 대비 - 화면설계 ( UI 요구사항 확인 ) (0) | 2020.08.13 |
---|---|
[ 정보처리기사 ] 02. 2020 정보처리기사 3회차 실기 대비 - 요구사항 분석모델 확인 (0) | 2020.08.13 |
[ 정보처리기사 ] 01. 2020 정보처리기사 3회차 실기 대비 - 요구사항 확인 (0) | 2020.08.13 |
[ 정보처리기사 ] 00. 2020 정보처리기사 3회차 실기 대비 - 요구사항 확인 ( 현행시스템 분석 ) (0) | 2020.08.13 |