3D Graphic Technical Artist
아키텍처란? 본문
아키텍처란
정보기술에서, 특히 컴퓨터나 최근의 네트웍에서 말하는 아키텍처란, 프로세스와 전체적인 구조나 논리적 요소들 그리고 컴퓨터와 운영체계, 네트웍 및 기타 다른 개념들 간의 논리적 상호관계 등을 생각해내고 정의하는 등, 모든 곳에 적용되는 용어이다. 아키텍처는 OSI 참조모델처럼 하나의 참조 모델이 될 수도 있지만, 특정 제품의 구조를 위한 모델을 의미하거나, 또는 인텔 펜티엄 프로세서나 IBM의 OS/390 운영체계처럼 특정 제품의 구조가 될 수도 있다.
컴퓨터 아키텍처는 입출력, 저장, 통신, 제어, 처리 등 다섯 개의 기본요소로 나뉠수 있다. 실제로 이러한 각 요소들(때로는 서브시스템이라고 불린다)는 아키텍처를 가지고 있다고 말하는 경우가 간혹 있다. 그러므로, 다른 경우와 마찬가지로 이러한 경우에는 관용적인 의미의 하나이다.
비교해보면, 설계라는 용어는 아키텍처보다 더 적은 범위의 의미를 내포하고 있다. 아키텍처는 하나의 설계이지만 대부분의 설계들이 아키텍처는 아니다. 하나의 단일요소 또는 어떤 새로운 기능은 전체적인 아키텍처 내에 맞추어지도록 설계된다.
비슷한 용어로서, 프레임웍이라는 용어가 있는데, 아키텍처의 일부 구조물이라고 생각할 수도 있다.
참고 : http://www.terms.co.kr/architecture.htm
다양한 아키텍처의 정의
아키텍처는 소프트웨어 시스템의 구성, 구조적 엘리먼트와 시스템을 구성할 인터페이스의 선택, 그러한 엘리먼트들간 협업에 지정된 것으로서 작동과 함께, 그러한 엘리먼트를 점진적으로 더 큰 하위 시스템으로의 구성, 이러한 조직을 이끄는 아키텍처 스타일, 이러한 엘리먼트와 인터페이스, 협업, 구성에 대한 중요한 결정 세트이다. [Kruchten]4
프로그램 또는 컴퓨팅 시스템의 소프트웨어 아키텍처는 소프트웨어 엘리먼트를 구성하는 시스템의 구조 또는 구조이자, 그러한 엘리먼트들을 외부로 보이는 속성이자 이들간 관계이다. [Bass et al] 5
[아키텍처는] 조직화된 구조이며 시스템의 제휴된 작동이다. 시스템의 제휴된 작동이다. 아키텍처는 인터페이스, 부분들과의 관계, 어셈블링의 제약조건 등으로 분할될 수 있다. 인터페이스를 통해 인터랙팅하는 부분들에는 클래스, 컴포넌트, 하위 시스템 등이 있다. [UML 1.5]6
시스템의 소프트웨어 아키텍처나 시스템의 컬렉션은 소프트웨어 구조와, 그 시스템을 구성하고 있는 구조들 간 인터랙션에 대한 중요한 디자인 결정들로 구성되어 있다. 디자인 결정은 원하는 품질을 보장해야 한다. 디자인 결정은 시스템 개발, 지원, 관리에 개념적인 기반을 제공한다. [McGovern]7
참고 : http://www.ibm.com/developerworks/rational/library/feb06/eeles/index.html