본문 바로가기

소프트웨어공학

[요구사항분석론] Requirement Engineering (요구공학)

- Requirement Engineering

  • 정의
    • stakeholder 의 needs 와 프로젝트 constraint 사이에서 조율하여, Elicitation / Analysis / Specification / Verification 을 통해 requirement 를 도출해내고, requirement 변경관리까지 진행하는 프로세스 기반의 활동
  • Not What, Why
    • 프로젝트의 목적 (goal)을 우선시하여야 함
    • Goal 을 구체화 --> Scope 설정
    • requirement 속 business value 도출 가능
  • Consideration (고려 사항)
    • Customer & User needs Understanding (Not developer needs)
    • Business & Market Understanding
    • Domain knowledge & Technology Understanding
    • Scope Creeping (요구사항 변경 & 증가)
  • Perspective (관점)
    • Business
      • Business requirement visibility 확보
      • 프로젝트의 predicability 확보 (Cost & Schedule)
    • Develop
      • 소프트웨어 개발 정확성 향상
      • 개발 변경 최소화
    • Customer
      • Product 품질 & 신뢰성 확보
      • 기능적 & 비기능적 요소 에 대한 만족
  • Areas
    • Requirements Development
      • 요구사항 정의 및 구체화
      • Elicitation
      • Analysis
      • Specification
      • Verfication
    • Requirements Management
      • 요구사항의 status 를 지속적으로 tracing 하여 변경 관리
      • control baselined requirements
    • Acceptance Testing
      • Testing 의 기준 역할

 

- RE Framework

  • 정의
    • 요구공학을 적용하기 위한 기본 Framework
  • Attributes
    • Specification
    • Representation
      • formal
    • Agreement
      • common view
  • 구성 요소
    • RE Process
      • 비즈니스와 개발 영역을 연계하는 역할
      • Development Process
        • Elicitation
          • Define Business Requirements (Goal) 
          • Identify stakeholder
          • Information Gathering 및 requirement 추출 --> Candidate Requirements
          • Modeling with Documentation
          • requirement visualization
        • Analysis
          • wish-list 작성 및 priority 작성
          • Negotiate Requirement --> Agreed Requirements
          • requirement valuation
        • Specification
          • Specify functional & non-functional Requirements 
          • requirement formalization --> Formal Requirements
        • Verification
          • Verify SRS(Software Requirement Specification, 요구사항명세서) contents and structure
          • Establish Requirements Baseline --> Baselined Requirements
      • Management Process
        • Requirements Review
        • Expectation of Changes
        • Version Management
        • Requirements Tracing
    • RE Methodology (방법론)
      • 6P's for RE
        • Purpose
          • 프로젝트 Goal & Requirement Scope 에 대한 명확한 식별
        • Participants
          • stakeholder 역할 & 관계 정의
        • Precision
          • 정확한 요구사항 정의
        • Priority
          • 고객의 가치 평가기준 정의 및 해당 기반으로 우선 순위 작성
        • Product
          • Product의 명확한 기능과 품질 정의
        • Process
          • 체계적이고 내재화된 RE 프로세스 적용
    • RE Tool
      • Requirement Management
      • Requirement Trace
      • Version and Change Management
      • RM Improvement

 

- RE 시대적 흐름

  • Past RE
    • Traditional Approach
    • Well-documented RE
  • Current & Future RE
    • Agile Approach
    • Customer Needs 에 대한 깊은 고찰을 통한 value 도출
    • Elicitation, Analysis, Specification 을 통한 idea 도출
    • Service 중심의 Development (Agility, Flexibility)
반응형