소프트웨어 아키텍처 품질속성 시나리오

I. 비기능 요구사항 도출, 품질속성 시나리오

가. 품질속성 시나리오 개념

비기능 요구사항을 도출하기 위해 시스템과 이해관계자의 상호작용으로 표현한 시나리오 기반 요구사항 도출 기법

나. 품질속성 시나리오 필요성

핵심 요구사항 발굴– 아키텍처 분석에 시간 소비 방지
– 고객 관심 이슈 검토/도출
품질 정량화– 특정 환경의 대상체에 자극 시 응답을 측정하여 품질을 정량화

 

II. 품질속성 시나리오의 구성도 및 유형

가. 품질속성 시나리오의 구성도/구성요소

자극 유발원– 자극을 만들어내는 존재, 사람, 시스템 등
자극– 시스템의 반응의 원인이 되는 조건
대상체– 자극을 받는 대상, 시스템 전체/일부
환경– 자극은 특정 상황이나 특정 환경에서 발생
응답– 자극이 시스템에 도달 후 취해지는 행위
응답측정– 요구사항의 검증 가능 상태, 측정결과 값

나. 품질속성 시나리오의 유형

유형설명
유즈케이스– 사용자와 완성 시스템의 상호작용
성장– 충분히 예상 가능한 시스템의 변경
사전탐사– 발생가능성 없는 변경 및 시스템의 한계
  • 품질속성 시나리오를 통해 시스템의 다른 측면 표현, 아키텍처 평가 전략을 제공, 이해관계자의 통로 제공

 

III. 품질속성 시나리오 사례

가용성 사례– 시스템외부에서 잘못된 값이 정상 모드의 업무프로세스에 입력 시 정상 동작할 확률(99.9%)
변경 용이성– 개발자는 기능 추가를 빌드시점 사용자 I/F에 변경 결과 배포 시 다른 기능에 영향을 주지 않음

 

IV. 유틸리티 트리

가. 유틸리티 트리의 개념

일반적 문제로부터 특정상황에 접근하며 품질속성의 목표 및 우선순위 파악하는 시나리오 도출 기법

나. 유틸리티 트리의 구성요소

항목내용사례
품질속성– 핵심품질 속성 식별– 성능(Performance)
속성정제– 품질속성 정제– 응답시간 향상
시나리오– 시나리오 수준 식별– 응답시간 3초 이내
중요도– 시나리오 중요도– 3 (구현성과 합계)
구현성– 구현 가능성– 4 (중요도와 합계)

 

V. 유틸리티 트리 사례

품질속성속성 정제기호시나리오중요도구현성합계
운영성우선순위 재투표O1020분 100개 결정 수행347
동시처리 강화O14간섭없이 50개 동시 요구 서비스 가능   

 

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^