정보관리기술/소프트웨어공학

소프트웨어 아키텍처 분석방법

아이티신비 2024. 1. 20. 11:00

문제5) 소프트웨어 구조의 평가 및 개선을 위한 소프트웨어 아키텍처 분석 방법에 대하여 다음 내용을 설명하시오.

 

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

나. 소프트웨어 아키텍처 정방향 분석과 역방향 분석 개념

다. 소프트웨어 아키텍처 평가 기법 ATAM

 

답)

 

 

1. 소프트웨어 아키텍처 분석의 필요성

  1. 요구사항 도출
  • SW 아키텍처 요구사항
  • SW 품질속성 도출
2. 의사소통 도구
  • 아키텍처 기술서 작성
  • 4+1 View 관점 이해관계자간 소통 도구
3. 아키텍처 스타일 선택
  • 시스템 구성 컴포넌트간 송수신 방법 패턴
  • Repository, Layered, Server&Client, Data Flow
4. 아키텍처 평가
  • 분석 산출물 통한 아키텍처 평가자료로 활용
  • SAAM, ATAM, CBAM, ADR, ARID
  • SW 아키텍처 정의, SW 구성요소간 관계식별 및 SW 아키텍처기술서(SAD) 명세를 통해 사전 발생 가능한 위험요소 제거와 SW 구조의 평가 및 개선을 위해 SW 아키텍처 분석이 필요
  • 특히 SW 아키텍처 분석시 정합성분석과 역방향분석을 사용하여, 아키텍처 분석 수행

 

2. 소프트웨어 아키텍처 정방향 분석과 역방향 분석 개념

가. 소프트웨어 아키텍처 정방향 분석과 역방향 분석의 개념

구분
정뱡향 분석
역뱡향 분석
개념도
개념
  • SW아키텍처 레벨에서 품질특성을 도출 및 분석하는 순방향 분석 기법
  • 산출물, 소스코드 레벨에서 아키텍처를 분석하는 역방향 분석 기법
주요기법
  • 가시적(SAAM,ATAM,CBAM,ADR)
  • 비가시적(인스펙션, 리뷰, V&V)
  • 원론적(역공학, 재공학, 재사용)
  • 기술적(ShowString, JAD, PMD, Guru)
  • 정방향 분석은 아키텍처 구현 관점, 역방향 분석은 아키텍처 유지보수(재사용)관점

 

나. 소프트웨어 아키텍처 정방향 분석과 역방향 분석의 상세설명

구분
정뱡향 분석
역방향 분석
분석기간
  • 분석,설계,평가 순차적 수행
  • 분석기간 아키텍처 수준따라 상이
  • 장방향 분석 산출물 통해 분석 수행
  • 대략적 분석 시 기간 짧음
구현측면
  • Top Down 방식
  • 아키텍처 구현 용이
  • Bottom Up 방식
  • 아키텍처 구체성 보장, 많은 시간 소요
비용측면
  • 역방향 대비 저비용
  • 비용 낮음
  • 분석도구, 분해도구, 기술적 분석비용이 추가발생으로 비용높음
  • 역방향 분석은 비용, 시간 문제가 존재하여, 통상 정방향 분석 이후 ATAM을 통해 아키텍처 평가 수행

 

3. 소프트웨어 아키텍처 평가 기법 ATAM

가. 소프트웨어 아키텍처 평가 기법 ATAM 개념

개념
  • SW 아키텍처 품질 목표 간의 Trade-off 및 민감도 분석을 통한 시나리오 기반 아키텍처 평가 기법
절차
  • 아키텍처 목표 만족을 위해, 시스템(성능, 보안, 가용성, 유지보수성. 재사용성), 비즈니스(시장 적시성, 비용), 아키텍처(정확성, 구축성)간 연관성을 파악하는 아키텍처 평가 기법

 

나. 소프트웨어 아키텍처 평가 기법 ATAM 의 평가절차

구분
평가절차
설명
소개
  1. ATAM 소개
  • 평가 리더가 이해관계자에게 ATAM 설명
2. Biz Driver 소개
  • 프로젝트 결정권자가 Biz 관점에서 시스템전반 설명
3. 아키텍처 소개
  • 아키텍트가 평가팀에세 아키텍처 View 설명
조사/분석
4. 아키텍처 접근법 식별
  • BMT,PROTOTYPE 등의 아키텍처 접근법 식별
5. 유틸리티 트리 작성
  • 비기능적 품질 속성간 중요/영향도 파악 위한 트리
6. 아키텍처 접근법 분석
  • 품질속성 요구사항 적합여부 검사 및 산출물 작성
테스트/보고
7. 브레인스토밍 및 시나리오 우선순위 결정
  • 유틸리티 트리의 품질속성 및 시나리오 검증 수행
  • 브레인스토밍, 유틸리티트리 비교후 우선순위 결정
8. 접근법 분석 반복
  • 1~6 절차 반복, 시나리오 도출 및 우선순위 조정
9. 평가결과 보고
  • 최종 보고서, 시나리오, 유틸리티 트리 보고
  • ATAM의 경우 비용, 적합성 측면 검증 어려움이 존재. 이를 보완하기 위해 다른 기법을 활용

 

4. ATAM 및 다른 평가 기법의 관계

  • ATAM 평가 시 다양한 기법의 활용과 평가 외에 평가 유형 중 시뮬레이션 기법 병행(프로토타입, BMT)하여, 정확한 아키텍처 검증 할 경우, 소프트웨어 구조의 평가 및 개선 가능


 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥