티스토리 뷰

반응형
📘 요구 분석(Requirement Analysis)이란?

📘 요구 분석(Requirement Analysis)이란?

– 제대로 만들기 위해, 먼저 ‘제대로 이해하는’ 과정



✅ 요구 분석의 정의

요구 분석(Requirement Analysis)은 소프트웨어 개발의 가장 첫 단계로, 사용자와 이해관계자가 원하는 것(요구사항, Requirements)명확히 파악하고, 문서화하고, 검증하는 활동입니다.

“시작이 반이다”라는 말은, 요구 분석에서는 “시작이 거의 전부다”로 바꿔도 무방합니다.


 


💡 왜 요구 분석이 중요한가?

이유상세 설명
🎯 방향 설정무엇을 개발할지 방향을 잡지 않으면, 아무리 잘 만들어도 의미 없음
💰 비용 절감요구사항 오류는 개발 이후 발견 시, 수정 비용이 10~100배 증가
🤝 사용자 만족고객이 진짜 원하는 것을 만들어야 성공적인 프로젝트가 됨
🧩 팀 내 소통분석 결과는 디자이너, 개발자, 테스터가 공통으로 보는 기준 문서가 됨


🧭 요구 분석은 무엇을 하느냐에 따라 다섯 가지 활동으로 나뉩니다

1. 🔍 요구 추출 (Requirement Elicitation)

“고객이 말하지 않은 것도 끌어낸다”
  • 고객, 사용자, 이해관계자와 인터뷰
  • 워크숍, 관찰, 시나리오 분석, 유사 시스템 분석 등 수행
  • 숨겨진 니즈, 모순된 요구, 비현실적 기대까지도 추출

2. 🧪 요구 분석 (Requirement Analysis)

“그냥 말한 걸 받아 적는 게 아니라, 정제한다”
  • 수집된 요구를 분류하고, 중복/충돌/모호함 제거
  • 기능/비기능 구분, 우선순위 설정
  • 사용자, 시스템, 외부 시스템 간의 경계 정의

3. 🏷 도메인 분석 (Domain Analysis)

“이 시스템이 속한 업계/영역이 어떤 특성을 가지는가?”
  • 예: 병원, 항공, 금융 등 산업마다 요구사항 패턴이 다름
  • 도메인 모델링 (용어 정의, 제약 조건, 규칙 등)
  • 현행 시스템 분석을 통해 요구 도출 보조

4. 📄 요구 명세 (Requirement Specification)

“개발자가 보고 구현할 수 있을 정도로 명확히 문서화해야 한다”
  • SRS (Software Requirements Specification) 문서 작성
  • 텍스트 기반 + 다이어그램 기반(UML, ERD 등)
  • 추적 가능성, 일관성, 완전성 확보

5. ✅ 요구 검증 (Requirement Validation)

“이게 정말 맞는 요구인지 사용자와 최종 확인하는 단계”
  • 사용자 피드백, 리뷰, 시뮬레이션, 프로토타입 등을 통해
  • 잘못된 요구나 누락된 요구를 찾아 수정


 


📚 요구사항의 종류

📌 1. 기능적 요구사항 (Functional Requirements)

시스템이 무엇을 해야 하는가?
예시
사용자는 이메일로 로그인할 수 있어야 한다
관리자는 게시물을 삭제할 수 있어야 한다
주문 시 결제 API를 호출해야 한다

📌 2. 비기능적 요구사항 (Non-functional Requirements)

시스템이 어떻게 동작해야 하는가?
항목예시
성능페이지 로딩 시간은 2초 이내여야 한다
보안사용자 정보는 암호화되어 저장되어야 한다
안정성시스템은 연속 24시간 운영 가능해야 한다
확장성향후 사용자 수 증가에 대응할 수 있어야 한다


⚠️ 요구 분석 시 자주 발생하는 실수

실수설명
❌ 사용자의 말만 ‘그대로’ 적는다본질적 요구가 아니라 표현만 남게 됨
❌ 비기능 요구를 빼먹음“동작은 하는데 못 쓰는 시스템”이 됨
❌ 우선순위 없이 나열자원과 일정의 비효율적 사용
❌ 중복되거나 충돌되는 요구를 방치설계 단계에서 갈등 발생
❌ 문서화 없이 구두 전달개발자가 다르게 이해함


✏️ 요구 분석의 주요 산출물

문서명설명
요구사항 명세서(SRS)요구사항을 정리한 공식 문서
요구사항 목록기능/비기능 요구사항을 구조화한 표
요구사항 추적 매트릭스(RTM)요구사항 ↔ 구현 간 연결 관계 문서
사용자 스토리 / 유스케이스사용자의 행위를 중심으로 시나리오화


🧠 실생활 비유: 맞춤 정장 주문

“추상적으로 ‘정장 하나 만들어주세요’라는 요구는 실패 확률이 높다.”

요구 분석이란, 다음과 같은 질문을 사용자에게 던지는 일입니다:

  • 무슨 색을 원하시나요?
  • 겨울용인가요? 여름용인가요?
  • 정장은 어떤 목적으로 입으시나요? (면접, 결혼식 등)
  • 체형에 맞게 맞추시겠어요?
→ 이 질문들을 다 듣고, 정리해서, 디자이너가 재단할 수 있게 도면으로 만들어주는 것
→ 이게 바로 요구 분석입니다.


✅ 요약 정리

항목설명
정의사용자/이해관계자의 요구를 수집·정리·검증하는 과정
단계추출 → 분석 → 도메인 분석 → 명세 → 검증
요구 유형기능적 요구, 비기능적 요구
결과물요구사항 명세서(SRS), 추적표, 유스케이스 등
성공 조건명확성, 일관성, 완전성, 추적 가능성


🧩 마무리하며

요구 분석은 “무엇을 만들 것인가”에 대한 논의입니다.
이 단계가 부실하면,
이후의 설계, 개발, 테스트, 유지보수 모두 헛수고가 될 수 있습니다.

요구 분석에 시간을 투자하는 것은, 전체 프로젝트를 위한 가장 저렴하고 강력한 보험입니다.
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함
반응형