반응형
요구사항 명세
개념
- 파악된 요구사항을 체계적으로 검토, 평가하고 승인될 수 있는 문서를 작성
- 개발자뿐만 아니라 고객도 알 수 있을 정도로 쉽게 작성한다.
요구사항 명세기법
정형 명세 기법(공학, 형식, 공식)
- 수학적인 원리와 표기법
- 요구사항을 정확하게 표현
- 명세서가 간결하고 구현이 일치
- 수학적인 이해가 필요하며 도구 사용이 필수적이다.
비정형 명세 기법
- 자연어를 기반으로
- 친숙하지만 명세서로는 불충분할 수 있음
- 상태, 기능, 객체 중심으로 서술
- 전달 방법이 다양하고 이해가 용이
명세서 작성 시 고려사항
- 고객과 개발자 모두가 쉽게 이해해야 한다.
- 시스템의 모든 기능과 모든 제약조건을 기술
- 요구사항 검증을 위해 품질 측정 및 검증 방식
- 우선순위에 따른 중요도 기술
명세서 작성 원칙
명확성 | 명세 내용은 하나의 의미만 부여 |
완전성 | 모든 요구사항을 표현 |
검증 가능성 | 요구사항의 충족, 달성 여부 |
일관성 | 내용간에 상호 모순이 발생하는지 확인 |
수정 용이성 | 요구사항 변경이 용이한지 |
추적 가능성 | 요구사항 명세 근거로 요류 추적이 가능 |
개발 후 이용 가능성 | 운영 및 유지보수가 효과적인지 확인 |
요구사항 검증
요구 공학
요구공학 개념
- 요구사항의 획득, 분석, 명세, 검증 및 변경관리를 체계적이고 반복적으로 진행
- 요구사항 명세서가 최종 산출물이다.
- 요구사항 개발 절차: 타당성 조사 - 요구사항 분석 및 추출 - 요구사항 명세화 - 요구사항 검증
- 요구사항 관리 절차: 요구사항 협상 - 요구사항 기준선 - 요구사항 변경관리 - 요구사항 검증
요구사항 관리 도구
- 도구의 종류: IBM Rational, DOORS 등이 있다
- 요구사항 관리 도구의 주요 기능
- 프로젝트 생성
- 요구사항 작성
- 파일 내보내기 / 가져오기
- 이력 관리
- 베이스 라인: 요구사항이 확정되고 관리의 시작점이 되는 기능
- 요구사항 추적성
- 협업 환경
- 외부 연동 환경
- 확장성
요구사항 검증 기법
요구사항 검토
- 명세서를 훑어보는 가장 일반적인 검증
- 요구사항 분석가는 요구사항을 정확히 이해해야 한다.
- 고객 검토자가 반드시 포함되어야 한다.
프로토타이핑
- 견본을 만들어서 사용자의 요구사항이나 새로운 요구사항을 검증하기 위한 방식
- 즉각적인 피드백이 가능하다.
- 사전에 문제를 식별할 수 있다.
- 반복적인 프로토타입 개선으로 비용이 증가할 수 있다.
- 특정 프로토타입에 관심이 집중되거나 사용성이 과대평가될 수 있다.
모델 검증
- 요구사항 분석 단계에서 개발된 모델이 요구사항을 충족하는지 검증하는 것이다.
- 객체 모델의 경우 객체들 사이의 의사소통 경로를 검증하기 위해 정적 분성을 수행하는 것이 유용하다.
인수 테스트
- 개발이 완료된 소프트웨어를 직접 인수받아 요구사항을 충족하는지 검증한다.
- 요구사항을 어떻게 테스트할 것인지 계획을 세운다.
요구사항 검증 방법
요구사항 검토
동료 검토
- 2~3명의 검토 담당자가 수행한다.
- 이해관계자들의 설명을 들으며 결함을 분석한다.
워크스루
- 검토 자료를 회의 전에 배포한다.
- 짧은 시간 동안 회의를 진행하여 오류를 검출하고 문서화한다.
- 오류를 조기에 검출하는데 목적을 두고 있다.
- 소프트웨어 개발 단계마다 실시하는 비정형 검토 회의이다.
인스펙션
- 개발에 참여하지 않은 다른 전문가가 오류를 찾는 검토방식이다.
프로토타입
- 검증에 필요한 주요 기능이나 일부분의 견본을 생성해서 고객을 대상으로 검토받는 방식이다.
테스트 설계
요구사항이 현실적으로 테스트 가능한지 검토한다.
CASE (Computer Aided SoftWare Engineering)
CASE의 개념
- 생명주기 전반을 지원하는 자동화 도구 혹은 방법론의 결합
- 개발과정의 일부 또는 전체를 자동화하기 위한 도구
- 구조적 시스템 등 모든 분야에 적용된다.
- 다양한 이해관계자가 공동 작업할 수 있고, 테스트 연계 및 결함, 형상 관리등의 기능을 제공하기 때문에 시스템 구축 업무를 효율적으로 수행할 수 있다.
CASE 특징
- 가격은 비싸지만 개발 기간이나 인력이 감소되기 때문에 전체 개발 비용이 감소된다.
- 전문 분석가의 지원이 필요하다.
- 다양한 개발 모형과 그래픽을 지원한다.
- CASE 툴 간의 호환성이 없다.
- 언어 번역 프로그램은 지원하지 않는다.
SADT
- 시스템의 정의, 소프트웨어 요구사항 분석, 시스템/소프트웨어 설계를 위해 널리 이용되어 온 구조적 분석 및 설계 도구
- 구조적 요구분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구이다.
SREM
- 우주 국방 시스템 그룹에 의해 실시간 처리 소프트웨어
- RSL과 REVS를 사용
PSL/PSA
- 미시간 대학에서 개발한 것으로 PSL과 PSA를 사용하는 자동화 도구
TAGS
- 시스템 공학 방법 응용에 대한 자동 접근 방법
- 개발 주기의 전 과정에 이용할 수 있는 통합 자동화 도구
반응형
'자격증 > 정보처리기사' 카테고리의 다른 글
UI 표준 (0) | 2023.11.26 |
---|---|
UML (0) | 2023.11.15 |
요구사항 정의(1) (0) | 2023.10.16 |
소프트웨어 개발 환경 분석 (0) | 2023.10.13 |
소프트웨어 생명 주기 모델 (0) | 2023.10.12 |