본문 바로가기

자격증 준비/정보처리기사필기 - 1과목(소프트웨어 설계)

[정보처리기사 필기] 1과목 정리 - 아키텍처 스타일

728x90
반응형

아키텍처 스타일

  • 일반적인 모양과 조화를 위한 스타일을 정하는 작업
    • 시스템 분할, 전체 제어 흐름, 오류 처리 방침, 서브 시스템 간의 통신 프로토콜 포함
  • 구성 요소 유형에 대한 설명 및 런 타임 제어, 데이터 전송에 대한 패턴
  • 주요 스타일
    • 클라이언트 서버형
    • 계층형
    • 이벤트 기반 아키텍처
    • MVC
    • 파이프 필터
    • 데이터 중심 아키텍처
    • Peer-to-Peer 스타일

 

클라이언트 서버형

서버

  • 강력한 성능으로 자원을 관리
  • 클라이언트가 요청하는 기능이나 자원 제공

클라이언트

  • 자원의 사용을 위하여 서버를 접속

장점

  • 데이터 집중화
  • 보안

단점

  • 병목
  • 비용
  • 비강인성

 

계층형

소프트웨어의 기능을 수직으로 상호 작용하는 여러 층으로 분할

각 층 사이는 메시지를 교환

장점

  • 추상화, 캡슐화, 응집 높음, 재사용

단점

  • 이웃 층과의 커뮤니케이션이

 

이벤트 기반 아키텍처

이벤트 생산자

  • 이벤트 스트림 생성

이벤트 소비자

  • 이벤트를 수신 대기

이벤트

  • 실시간으로 전달되어 발생하는 즉시 소비자가 이벤트에 응답할 수 있어야 함

상태 기반 처리

 

MVC(Model-View-Controller)

사용자 인터페이스로부터 비즈니스 로직과 데이터를 분리

컨트롤러(Controller)

  • 모델에 명령을 보냄으로써 모델의 상태를 변경함

모델(Model)

  • 데이터의 상태에 변화가 있을 때 컨트롤러와 뷰에 이를 통보

뷰(View)

  • 사용자가 볼 결과물을 생성하기 위해 모델로부터 정보를 얻어 옴

 

파이프 필터(Pipe and Filter)

필터 사이에 데이터를 이동시키며 단계적으로 처리

데이터의 변환을 수행하는 필터 구성 요소로 구성

예 : 컴파일러

장점

  • 단순성, 재사용, 병렬성

단점

  • 자원의 낭비

 

데이터 중심 아키텍처

공유 데이터 저장소공유 데이터 접근자로 구성

접근자

  • 공유 데이터를 추가, 삭제 및 수정

블랙보드

  • 제어 스레드 포함
  • 옵서버 디자인 패턴 사용

리파지토리

  • 공유 데이터를 질의하여 변경 사항을 발견

 

Peer-to-Peer 스타일

각 컴포넌트는 동등하여 서비스를 요청하는 클라이언트 동시에 서비스를 제공하는 서버 역할

동일한 수신, 전송 데이터 양을 가지므로 대칭적인 시스템

728x90
반응형