소프트웨어 아키텍처

1 개요[ | ]

software architecture, software system architecture
소프트웨어 아키텍처, 소프트웨어 시스템 아키텍처
  • 소프트웨어 동작구조
  • 소프트웨어 요소와 관계
  • 시스템[1]을 추론(추상화)하는 데 필요한 구조의 집합
  • 소프트웨어 요소(element)와 이들 사이의 관계, 그리고 이들 요소와 관계의 속성으로 구성된다.
  • 소프트웨어 요소와 그들이 가진 특성 중에 외부에 드러나는 요소의 특성, 그리고 요소들 간의 관계를 표현하는 시스템의 구조나 구조체
  • 소프트웨어 시스템을 대표하는 구조를 추상화해야 한다.

Software Architecture Activities.jpg


  • 시스템의 구조를 정의한다.
  • 시스템의 동작을 정의한다.
  • 구성요소 관계를 정의한다.
  • 통신 구조를 정의한다.
  • 이해 관계자의 요구들의 균형을 맞춘다.
  • 팀 구조에 영향을 미친다[2].
  • 중요한 요소에 중점을 둔다.
  • 초기 설계 결정사항들을 잡아준다.

2 특징[ | ]

  • 다수의 이해관계자
  • 관심사의 분리
  • 품질-주도
  • 반복적인 스타일(recurring style)
  • 개념적 통합
  • 인지적 제약사항

3 SEI 3 뷰[ | ]

People.ece.ubc.ca matei EECE417 BASS files 02fig03.gif

런타임 뷰, 동적 뷰, 컴포넌트 및 커넥터 뷰 (C&C 뷰) Runtime Views, Component-and-Connector Views (C&C Views)
모듈 뷰, 정적 뷰 Module Views
항당 뷰, 물리 뷰 Allocation Views, Physical Views

4 같이 보기[ | ]

5 참고[ | ]

  1. 소프트웨어 중심의 시스템
  2. 역콘웨이의 법칙
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}