본문 바로가기

2021 정보처리기사/1과목: 소프트웨어 설계

[2021 정보처리기사 필기] 아키텍쳐 패턴

728x90
반응형

[정보처리기사 1과목 필기 예상 키워드] 목록으로 돌아가기
과목: 1. 소프트웨어 설계
챕터: 3장 어플리케이션 설계
키워드: 아키텍쳐 패턴
#아키텍처 패턴의 유형

 

 

아키텍처 패턴

아키텍처 패턴은 건축과 비교하면 이해가 쉽다. 예를 들어 오피스텔을 짓는다고 가정할 때, "오피스텔을 지을 때는 이런 재질의 골조가, 복도의 넓이는 이 정도, 층간 높이는 이만큼이 가장 적절하더라" 라는 오피스텔 설계에 대한 가이드라인이 존재한다면 이를 참조해 손쉽게 설계가 가능하다. 이 가이드라인이 바로 소프트웨어 설계에서는 아키텍처 패턴에 해당한다고 할 수 있다.

개요
-  문제 해결의 윤곽을 제시하고, 원칙과 지침의 역할. 스타일, 표준 아키텍처와도 같은 뜻


장점
- 개발 시간 단축, 품질 향상, 검증 편리, 소통 원활, 이해 용이, 예측 가능 등


아키텍쳐 패턴의 유형

레이어 패턴(계층화 패턴, Layers Pattern)
- 시스템을 계층구조(Layer)로 쌓아둔 전형적 패턴
- 각각의 상위, 하위 레이어끼리만 상호작용
- 특정 레이어만 유지보수하여 시스템 개선 가능
- ex) 네트워크 프로토콜


클라이언트-서버 패턴
- 서버(=1, 항시대기): 자원제공 / 클라이언트(=다수): 자원 요청
- 서버: 몬스터 생성 / 클라이언트: 몬스터 사냥 > 각자의 기능이 독립적으로 동작


파이프-필터 패턴
- 데이터의 흐름(스트림)의 각 단계를 파이프와 필터로 연결
- 파이프: 각 단계명 / 필터: 각 파이프를 통해 넘어온 데이터를 처리하고 캡슐화
- 앞 시스템의 처리 결과물을 파이프를 통해 전달받아 처리한 다음 그 결과물을 다시 파이프를 통해 다음 시스템으로 넘겨주는 패턴을 반복하는 것이 파이프-필터 패턴
- 재사용성, 확장성이 좋아 다양한 파이프라인 생성 가능
- 데이터 변환, 버퍼링, 동기화 등에 유리


모델-뷰-컨트롤러 패턴(MVC) (일반적인 *대화형 어플리케이션에 적합)
- 모델: 핵심 기능과 데이터 보관 / 컨트롤러: 입력 처리 / 뷰: 처리된 정보 표시(여러 형태의 뷰)
* 대화형 어플리케이션:
온라인 쇼핑몰 사이트나 스마트폰 앱과 같이 사용자의 요구가 발생하면 시스템이 이를 처리하고 반응하는 소프트웨어


마스터-슬레이브 패턴
- 마스터 컴포넌트가 지시한 일을 여러 슬레이브 컴포넌트가 병렬처리하여 결과를 취합
- 도중에 몇 개의 슬레이브가 고장나도 업무 처리에는 문제가 없음


브로커 패턴
- 클라이언트의 요청을 중간에서 브로커가 적절한 서버로 연결해주는 형식(서버 여러개=분산환경 시스템)


피어 투 피어 패턴(P2P)
- 서버와 클라이언트가 서로 역할을 바꿀 수 있는 형태(토렌트, 웹하드)
- 두 가지 일을 병렬로 수행하는 멀티스레딩(자원요청/제원제공)이 특징


이벤트-버스 패턴
-특정 이벤트를 발행하면 해당 채널(버스)를 구독하고 있는 리스너들이 이벤트를 받아서 처리하는 형식


블랙보드 패턴
-공유데이터를 관리하는 블랙보드에 접근하여 원하는 데이터를 찾는 형식(음성인식, 차량식별, 신호해석 등)

 

 

 

 

 

 

 

 

 

 

[2021 정보처리기사 키워드 정리] 1. 소프트웨어 설계 (상시업데이트)

[2021 정보처리기사 키워드 정리] 1. 소프트웨어 설계 2021년 정보처리기사 공부를 위해 각 과목/챕터 별 Best 키워드를 정리해 놓은 글입니다. 시나공 문제집의 기출빈도와 중요도를 기준으로 정리

y-oni.tistory.com

참고: 시나공 정보처리기사 필기 (저자: 강윤석, 김용갑, 김우경, 김정준 | 출판사: 길벗), 유튜브 주간컴공TV

 

 

728x90