[정보처리기사] 2. 소프트웨어 아키텍쳐, 디자인패턴

이영준·2023년 6월 13일
1

소프트웨어 아키텍쳐

여러가지 소프트웨어 구성요소와 그 구성요소가 가진 특성 중에서 외부에 드러나는 특성, 그리고 구성요소 간의 관계를 표현하는 시스템의 구조나 구조체이다.

소프트웨어 아키텍쳐 4+1 뷰 개념

소프트웨어 아키텍쳐 4+1 뷰는 고객의 요구사항을 정리해 놓은 시나리오를 4개의 관점에서 바라보는 소프트웨어적인 접근 방법이다.

  • 4개의 분리된 구조로 구성되는 아키텍쳐 개념을 제시하고, 이들 4개 구조가 서로 충돌되지 않는지, 시스템의 요구사항을 충족시키는지를 증명하기 위해 체크 방법으로 '유스케이스를 사용한다.'

유스케이스 뷰 : 유스케이스 또는 아키텍처를 도출하고 설계하며 다른 뷰를 검증하는 데 사용되는 뷰

  • 사용자, 설계자, 개발자, 테스트 관점

논리 뷰 : 시스템의 기능적인 요구사항이 어떻게 제공되는지 설명해주는 뷰
프로세스 뷰 : 시스템의 비기능적인 속성으로서 자원의 효율적인 사용, 범행 실행, 비동기, 이벤트 처리 등을 표현한 뷰
구현 뷰 : 개발 환경 안에서 정적인 소프트웨어 모듈의 구성을 보여주는 뷰
배포 뷰 : 컴포넌트가 물리적인 아키텍쳐에 어떻게 배치되는가를 매핑해서 보여주는 뷰

소프트웨어 아키텍쳐 패턴

소프트웨어를 설계할 때 참조할 수 있는 전형적인 해결 방식

  • 주어진 상황에서의 소프트웨 아키텍쳐에서 일반적으로 발생하는 문제점들에 대한 일반화되고 재사용 가능한 솔루션이다.
profile
컴퓨터와 교육 그사이 어딘가

0개의 댓글