본문 바로가기
정보관리기술사&컴퓨터응용시스템기술사/SW공학과 프로젝트관리

[SW 아키텍처 평가] SW Architecture 수준의 대한 품질 평가

by 별프로 2021. 1. 29.
반응형

I. SW 아키텍처 수준에 대한 품질평가, SW Architecture 평가의 개요

. SW Architecture의 정의

- 제시된 소프트웨어 아키텍처가 대상 시스템에서 요구하는 품질속성을 만족시킬 수 있는지 적합성을 평가하는 표준절차

- 제시된 SW 아키텍처가 시스템 요구품질 속성을 만족시키는지 적합성을 예측, 실무, 사례, 정량적으로 평가하는 표준절차

. SW 아키텍처 평가 방법론 유형 

내 용

평가 유형

Scenario Based

품질 요소를 위해 미리 정의된 Profile에 의존하여 평가

시나리오 기반평가 결과도 정밀, ATAM, CBAM, SAAM

예측 평가

Simulation Based

BMT(BenchMarking Test) 시뮬레이션 기반 평가

실무 평가

Experience Based

정량적인 분석이 어려운 경우 적용하는 경험 기반의 평가

사례 평가

Mathematical

Model Based

기준 모델을 수치화하고 이를 기초로 평가하는 수학적 기반 모델

정량적 평가

 

. 소프트웨어 아키텍처 평가의 필요성

필요성

설 명

위험요소 제거

시스템과 프로젝트의 위험요소 조기 발견 및 제거

비기능성 평가

(NFR 영향도)

비기능적 요소가 SW에 반영에 따른 영향도 평가

핵심요소

(성패 좌우)

평가가 프로젝트 성패를 좌우하는 핵심요소가 됨

 

II. SW 아키텍처의 평가모델 구성도 및 평가 기법

가. SW 아키텍처의 평가 모델 구성도

- ATAM SAAM을 승계하여 발전, CBAM ATAM에서 경제성을 추가

- 일반적으로 정방향 분석인 ATAM, CBAM 많이 사용

 

. SW 아키텍처 평가 기법

평가유형

상 세  설 명

ATAM

- Architecture Trade-off Analysis Method

- 아키텍처가 품질속성을 만족시키는지 판단, 품질 속성간 상호작용 확인 단계

- 아키텍처가 목표로 하는 품질만족도, 각 품질간의 연관성, , 품질 목표간의

 Trade-off가 있는지 파악 가능한 아키텍처 평가방법

CBAM

- Cost Benefit Analysis Method

- SAAM, ATAM의 기술적 아키텍처 및 경제성 평가까지 하여 수익이 최대가 될 수 있도록 의사결정을 도와주는 SW아키텍처 평가모델

SAAM

- Software Architecture Analysis Method

- 최초로 정리된 평가방법. 다양한 수정 가능성들의 관점에서 아키텍처 분석

- 수정 가능성과 기능분석 중심의 최초의 아키텍처 평가방법

ARID

- Active Reviews for Intermediate Designs

- 부분 아키텍처를 아키텍처 초기에 평가하는 방법으로 시나리오 중심의 ATAM, SAAM과 설계검토 방법인 ADR(Active Design Review)를 혼합한 아키텍처 평가방법

- 특정부분 품질요소 집중

- 아키텍처 설계 초기에 검토하여 발생 가능한 위험 감소

ADR

·Active Design Review

·아키텍처 구성요소간 응집도 평가

 

. 품질속성 간 상충관계 고려한, ATAM 모델

 . ATAM 플로우 개념도

 * 시나리오 방식으로 품질 속성 만족 여부를 판단하여, 상충(Trade-off) 관계분석 및 평가

- 비즈니스 드라이버 : 비즈니스 동인(사업에 상당한 영향을 주는 물리적, 비물리적 행위)

 

. ATAM의 활용 목적

목표

SW아키텍처가 요구사항, 특히 비기능적 요구사항을 만족하도록 설계되었는지 여부 판단

SW아키텍처가 내포하고 있는 위험 판단

적합한 대안이 될 수 잇는 SW아키텍처 검토

. ATAM 품질 속성

구분

품질속성

설 명

시스템

상호운영성

·특정 SW와 상호작용하는 능력의 정도

보안성

·프로그램 또는 데이터에 부적법한 접근을 차단하는 능력의 정도

정밀성

·합의한 결과 또는 명문화한 권리조항 관련 속성

오류허용성

·오류 발생 시 사전 정의한 최소 수준으로 동작하는 능력의 정도

회복성

·일정 수준 이상으로 다시 동작하는 능력, 시간, 노력의 정도

비즈니스

적합성

·특정 작업을 처리하는 기능의 적합여부의 정도

준거성

·표준, 관습, 법률, 규격, 협정과 같은 정해진 규칙의 준수 정도

이해성

·SW의 개념과 활용방법을 이해하는데 필요한 사용자의 노력 정도

습득성

·SW의 활용방법을 학습하는데 필요한 사용자의 노력 정도

아키텍처

변경성

·수정, 장애제거, 동작변경 시 필요한 노력의 정도

시험성

·수정된 SW를 검증하는데 필요한 노력의 정도

적응성

·필요한 작업 또는 방법으로 S/W의 동작환경을 바꿀 수 있는 가능성

일치성

·이식성과 관련 표준 또는 관례의 준수 정도

대체성

·대상 SW를 다른 SW로 대체 사용할수 있는 정도

 

 . 경제적 비용 기반의 아키텍처 평가모델, CBAM

. CBAM 개념도

. CBAM 주요 절차

주요절차

설 명

시나리오 결정

·시나리오 수집, 정제, 우선순위 결정

효용반응 곡선 작성

·선별한 시나리오의 효용반응곡선 작성

이익 계산

·예상 반응값 결정 및 예상 효용 파악으로 전체이익 계산

선정과 검증

·ROI 계산, 비용과 일정 제약하에 ROI순으로 전략 선택

 

. ATAM CBAM의 비교

항목

ATAM

CBAM

특징

품질속성 중심 (ISO 9126/ISO 25010)

품질속성의 경제성 중심

시점

프로젝트 초기단계

ATAM 수행 이후

시나리오

개별적인 시나리오

다양한 시나리오

관심사항

아키텍처 품질

이해관계자의 이익, 수익

장점

기존 시스템 분석 가능

비용, 일정, 위험파악

단점

경제성 평가 곤란

품질속성 평가 미흡

 

반응형

댓글