공든탑앱 열기

요구사항 분석과 명세

정보처리기사 · 요구사항 확인 · 약 12분

쉽게 말하면

요구사항은 '이 프로그램이 무엇을 해야 하나'예요. 로그인, 결제처럼 하는 일은 기능 요구사항, 3초 안에 열려야 한다거나 개인정보를 암호화해야 한다는 조건은 비기능 요구사항이에요. 요구사항은 고객에게서 끌어내고(도출), 정리·분석하고, 문서로 적고(명세), 맞게 적었는지 확인해요(검증). 이 순서를 외워 두면 문제가 쉽게 풀려요.

시험용 정의

요구사항은 소프트웨어가 제공해야 할 서비스와 지켜야 할 제약이다. 기능 요구사항은 시스템이 무엇을 하는지(입출력, 처리, 저장 기능), 비기능 요구사항은 성능·보안·품질·신뢰성·사용성·제약 같은 조건이다. 요구사항 개발은 도출(Elicitation) → 분석(Analysis) → 명세(Specification) → 확인(Validation) 순서로 진행한다. 도출 기법은 인터뷰, 브레인스토밍, 설문, 프로토타이핑, 유스케이스, 워크숍 등이 있고, 분석 도구로 자료 흐름도(DFD), 자료 사전(DD), HIPO 등을 쓴다. 명세는 정형 명세(수학적 기호, Z 등)와 비정형 명세(자연어, 다이어그램)로 나뉜다.

비유로 이해하기

맞춤 양복 주문이다. '정장 한 벌'은 기능 요구, '움직이기 편하고 구김이 덜 가게'는 비기능 요구다. 재단사는 묻고(도출), 정리하고(분석), 치수표에 적고(명세), 가봉으로 맞는지 확인한다(검증).

자세히

먼저 알아 둘 말

말뜻
도출고객·사용자에게서 요구를 끌어내는 일
명세요구사항을 빠짐없이, 모호하지 않게 문서로 적는 일 (요구사항 명세서, SRS)
검증·확인명세가 고객 의도와 맞고 서로 모순이 없는지 점검
DFD자료 흐름도. 자료가 프로세스 사이를 어떻게 흐르는지 그린 그림
자료 사전자료 흐름도에 나오는 자료의 정의를 기호로 적은 사전
HIPO입력·처리·출력 중심으로 시스템을 위에서 아래로 그리는 도구

기능 vs 비기능

구분뜻예
기능시스템이 무엇을 하는가회원 가입, 상품 검색, 주문 내역 조회
비기능얼마나 잘, 어떤 제약 아래 하는가응답 3초 이내, 동시 접속 1만 명, 비밀번호 암호화, 99.9% 가용성

자료 흐름도(DFD) 기호

요소기호뜻
프로세스원 ○자료를 처리하는 곳
자료 흐름화살표 →자료가 움직이는 길
자료 저장소평행선 =파일·데이터베이스
단말사각형 □시스템 밖의 사람·기관 (자료의 출발·도착)

자료 사전 기호

기호뜻
=자료의 정의 (~로 구성된다)
+자료의 연결 (그리고)
( )생략 가능
[ | ]여러 개 중 하나 선택
{ }반복
* *주석

요구사항 검증 방법

  • 동료 검토: 작성자가 설명하고 동료가 결함을 찾는다
  • 워크스루: 회의 전에 명세서를 나눠 주고 짧은 검토 회의로 결함을 찾는다
  • 인스펙션: 작성자를 뺀 전문가들이 체크리스트로 결함을 찾는 가장 공식적인 검토
  • 프로토타이핑, 테스트 설계, CASE 도구 활용도 쓰인다

기출에서 더 나온 것

말뜻
NS 차트나시-슈나이더만 차트. 순차·선택·반복 구조를 상자 도형으로 그린다. 화살표와 GOTO를 쓰지 않는다
SADT소프트텍사가 만든 구조적 분석 도구. 블록 다이어그램을 쓴다
정형 기술 검토(FTR) 지침의제와 참가자 수를 제한하고, 논쟁·반박을 줄이고, 제품을 검토하지 사람을 평가하지 않는다
비정형 명세자연어로 요구를 적는다. Z 언어 같은 수학 기호를 쓰는 것은 정형 명세
플랫폼 성능 측정응답 시간·가용성·사용률을 본다. 서버 튜닝은 측정 항목이 아니다
DBMS 분석 고려 사항가용성·성능·상호 호환성·기술 지원·구축 비용 (네트워크 구성도는 아님)

시험에 이렇게 나와요

확인 문제

Q1. '검색 결과는 3초 안에 화면에 나와야 한다'는 어떤 요구사항일까요?

  1. 기능 요구사항
  2. 사용자 인터페이스 설계
  3. 테스트 케이스
  4. 비기능 요구사항
정답 보기

4번 비기능 요구사항

무엇을 하는지(검색)가 아니라 얼마나 잘해야 하는지(응답 시간)를 정한 비기능 요구사항(성능)이다.

Q2. 다음 중 비기능 요구사항에 해당하는 것은?

  1. 사용자는 장바구니에 상품을 담을 수 있어야 한다
  2. 관리자는 회원을 탈퇴시킬 수 있어야 한다
  3. 시스템은 하루 24시간 중단 없이 운영되어야 한다
  4. 회원은 게시글을 작성할 수 있어야 한다
정답 보기

3번 시스템은 하루 24시간 중단 없이 운영되어야 한다

가용성(운영 시간)은 품질 조건이라 비기능.

Q3. 자료 사전에서 '반복'을 뜻하는 기호는?

  1. { }
  2. * *
  3. ( )
  4. [ ]
정답 보기

1번 { }

( ) 생략, [ ] 선택, * * 주석.

Q4. 요구사항 개발 단계의 순서로 옳은 것은?

  1. 명세 → 도출 → 분석 → 확인
  2. 도출 → 명세 → 분석 → 확인
  3. 도출 → 분석 → 명세 → 확인
  4. 분석 → 도출 → 명세 → 확인
정답 보기

3번 도출 → 분석 → 명세 → 확인

끌어내고, 분석하고, 적고, 확인한다.

Q5. 작성자를 제외한 전문가들이 체크리스트로 결함을 찾는 공식적인 검토 방법은?

  1. 인스펙션
  2. 동료 검토
  3. 워크스루
  4. 브레인스토밍
정답 보기

1번 인스펙션

인스펙션이다. 가장 공식적인 검토로 작성자는 빠지고 전문가가 체크리스트로 결함을 찾는다. 워크스루는 작성자가 설명하며 비공식적으로 검토한다.

헷갈리기 쉬운 O·X

보안·성능·사용성 요구는 기능 요구사항에 속한다.

정답 보기

X 비기능 요구사항이다.

DFD에서 원(○)은 자료를 처리하는 프로세스를 뜻한다.

정답 보기

O

자료 사전에서 + 기호는 '여러 개 중 하나를 선택'한다는 뜻이다.

정답 보기

X +는 연결(그리고), 선택은 [ | ].

함께 보면 좋은 개념