달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2007. 1. 29. 15:07

아키텍처 입문 - 자산과 패턴 그거/Architecture2007. 1. 29. 15:07

developerWorks
개요   |   요구사항 분석   |   모델링   |   자산과 패턴   |   통합   |   샘플 프로젝트

개요   레퍼런스 아키텍처
컴포넌트   베스트 프랙티스와 표준
패턴  
 


다양한 IT 자산들이 개발되고 재사용 되어 미래 프로젝트에 가치를 더하고, 참조 아키텍처, 패턴, 프레임웍, 컴포넌트를 포함하여 추가 아키텍처 프레임웍을 보조한다. work products 또는 artifacts라고 불리는 이러한 자산들은 개발 프로세스의 직접적인 결과이다. 소프트웨어 개발 라이프 사이클의 결과로 생긴 다른 유형의 생성물들에는 요구 사항 문서, 소스 코드 파일, 전개 디스크립터, 테스트 케이스 또는 스크립트 등이 포함된다.

대부분의 경우, 이러한 생성물들은 처음부터 만들어지지 않는다. 대신, 이전의 작업에서 얻게 되거나, 오픈 표준 작업 그룹, 컨소시엄, 외부 퍼블리케이션을 통해 얻어진다. 소프트웨어 개발 자산들은, 새로운 솔루션과 애플리케이션을 구현할 때, 개발 프로세스를 추진하고, 디자인 결정을 재확인 하고, 코드 개발을 최소화 하는 등의 미래의 재정적인 이득을 만들어 낼 수 있다.

IT 자산들을 개발 및 재사용 하는 것과 관련한 베스트 프랙티스, 툴, 방법을 설명한다.

자산과 패턴 소개

소프트웨어 개발을 자산 기반 모델로 변형하기: Grady Booch는 IBM의 아키텍처와 전략 분야 전문가인 Mike Devlin과 Danny Sabbah와 인터뷰를 했다.

패턴 솔루션: 자산 기반 개발의 개요를 설명한다.

e-비즈니스용 패턴: 재사용 전략: 패턴을 정의하고, 소프트웨어 아키텍처에서 패턴을 이해하고 사용하는 방법을 설명한다.

서비스-지향 아키텍처(SOA)용 자산 라이프- 사이클 관리: 자산들을 관리, 적용, 재사용하는 툴과 메소드를 SOA 개발에 활용할 때 서비스의 효과적인 라이프 사이클 관리가 어떤 영향을 미치는 지를 알아본다.



위로



컴포넌트

컴포넌트는 대부분 IT 솔루션이나 애플리케이션으로 구성된 엘리먼트이다. 결합되었을 때, 식별 가능한, 자율적인 엘리먼트로서, IT 솔루션 내에서 비즈니스 가치를 제공한다. 컴포넌트는 아키텍처에서 기능을 나타내는 고급 엘리먼트가 될 수 있고, 제품에 전개되는 보다 상세한 프로그래밍 엘리먼트가 될 수 있다.

WebSphere Business Components와 웹 서비스 아키텍처: 컴포넌트의 예비 분석과 웹 서비스 이니셔티브를 이해하고, 완벽한 아키텍처의 보완 엘리먼트로서 이들의 차이점과 유사점을 설명한다.

진화하는 컴포넌트 모델 (한글): 웹 서비스 구현과 조합을 서비스-지향 아키텍처(SOA)의 언어 중립적인, 컴포넌트-기반 프로그래밍 모델을 가진 솔루션에 적용한다. 프로그래밍 모델은 프로그래머가 아닌 사람들도 기술을 마스터 하지 않고도 기존 IT 자산들을 사용할 수 있도록 한다.

Service Component Architecture로 SOA 솔루션 구현하기: SOA에서 비즈니스 솔루션을 구현 및 조합하고, 서비스를 통합하고 구성하도록 특별히 설계된 새로운 프로그래밍 모델인 Service Component Architecture라고 하는 서비스 지향 아키텍처를 구현하는 새로운 프로그래밍 패러다임을 공부한다.

컴포넌트 통합하기: 컴퓨팅이 메인프레임 시스템에서 웹-기반 분산 시스템으로 옮겨가면서 네트워크로 연결된 시스템과 컴포넌트들이 엔터프라이즈 시스템의 부분들을 통합하는데 얼마나 중요한 역할을 하는지를 설명한다.

기능 장애가 있는 조직에서 컴포넌트 아키텍처 사용하기: 컴포넌트 아키텍처와 코드 재사용에 대한 저자의 경험을 나눈다.

Rational Application Developer for WebSphere를 이용한 컴포넌트 테스팅: 컴포넌트 테스트를 구현 및 전개하는 프로세스를 자동화하는 것에 초점을 맞춰, 컴포넌트 테스팅을 소개한다.

컴포넌트 구성과 Unified Change Management: 설정 관리를 위한 컴포넌트-기반 아키텍처인 Unified Change Management (UCM)를 사용한다.

컴포넌트 다이어그램과 UML: Unified Modeling Language (UML) 2.0 스팩의 구조 다이어그램인, 컴포넌트 다이어그램을 소개한다.



위로



패턴

패턴은 일반적으로, 솔루션 개발에 사용될 수 있는 폼, 템플릿, 또는 프로그래밍 모델이다. 패턴은 필수적인 애플리케이션 컴포넌트이다. 개발 될 컴포넌트가 기반 패턴과 많은 공통점을 갖고 있다면, 그 컴포넌트는 패턴을 나타내는 것으로 간주된다.

e-비즈니스용 패턴: 재사용 가능한 자산 그룹이 웹 기반 애플리케이션 개발 프로세스의 속도를 어떻게 높이는 지를 설명한다. 다음은 그러한 패턴들을 분류한 것이다.

Redbook: e-비즈니스 시리즈에 패턴 접근 방식 적용하기: e-비즈니스에 IBM Patterns를 사용하여 재사용 가능한 아키텍처 템플릿들을 인스턴스로 만들어서, 80% 되풀이 되는 비즈니스 문제를 해결한다.

e-비즈니스용 패턴: 재사용 전략: 아키텍트 관점에서, 소프트웨어 개발에 있어서 패턴의 사용법을 설명한다.

e-비즈니스용 퍼베이시브 포탈 패턴: 본 IBM Redbooks™ 시리즈에서는 퍼베이시브 액세스용 포탈 상에서 Access Integration pattern을 설명한다.

SOA 환경에서 자가 서비스 구현하기: IT 시스템의 유연한 통합을 실현하는데 도움이 되는 솔루션을 구현할 때 SOA와 Enterprise Service Bus (ESB)를 검토한다.



위로



레퍼런스 아키텍처와 프레임웍

AIT 또는 소프트웨어 아키텍처는 큰 IT 솔루션에 속한 각 측면들의 디자인을 이끄는 패턴, 프레임웍, 컴포넌트 세트이다. 프레임웍은 일반적으로, 어떤 솔루션과 애플리케이션이 구성 및 개발될 수 있는지에 대한 지원 구조로서 정의된다. 프레임웍에는 지원 프로그램, 코드 라이브러리, 스크립팅 언어, 기타 생성물들을 지원하여 다양한 솔루션 컴포넌트들 또는 애플리케이션을 결합한다. 레퍼런스 아키텍처(reference architecture)는 기업 또는 업계에서 고려되는 IT 솔루션 아키텍처로서, 일반적인 문제들에 대한 구체적인 필요를 다루고 있다. 기업에 의해 사용되는 레퍼런스 아키텍처는 비즈니스 요구 사항에서 명시되어 있지 않는 한, 솔루션 개발용 디폴트 아키텍처로서 간주된다.

레퍼런스 아키텍처: 최상의 베스트 프랙티스: IBM Rational® Unified Process에서 제공하는 가이드라인을 따라가다 보면, 강력한 레퍼런스 아키텍처가 소프트웨어 개발 프로젝트에서 어떤 역할을 하는지, 그 차이점을 알 수 있다. 레퍼런스 아키텍처를 효과적으로 수집, 관리, 사용하는 실질적인 분류법을 설명한다.

웹 서비스를 구현하는 SOA 프로그래밍 모델: 프로그래머가 아닌 사람들도 IT 기술을 마스터 하지 않고 IT 자산들을 생성 및 재사용할 수 있도록 하는 SOA용 IBM 프로그래밍 모델을 검토한다.

재사용 가능한 아키텍처의 빠른 생성: 소스 코드를 복사해서 붙이는 클래스 레벨의 소단위 재사용에서, 프레임웍과 아키텍처 레벨에서 대단위, 대규모 재사용으로 성장한 재사용 기술을 검토한다. 이 글은 패턴과 IBM Rational XDE를 사용하는 재사용 가능한 프레임웍에 초점을 맞춘다.

자율 컴퓨팅 레퍼런스 아키텍처: 자율 컴퓨팅 시스템 구현에 필요한 프레임웍을 자율 컴퓨팅 레퍼런스 아키텍처가 구성하는 방법을 설명한다.

WebSphere Integration Reference Architecture 소개 (한글): 이 포괄적인 서비스-기반 토대에서 통합과 관련한 전통적인 문제를 일으키지 않고, 엔터프라이즈 레벨의 비즈니스 통합을 어떻게 이룩하는지를 설명한다.

WebSphere Business Integration Server의 Enterprise Service Bus 기능: WebSphere Business Integration Server의 정황 속에서 IBM WebSphere® Business Integration Reference Architecture를 분석한다.

비즈니스 정보 솔루션 아키텍처: 데이터 웨어하우징 솔루션에서 비즈니스 정보의 역할을 분석한다.

포탈 솔루션 구현하기: 본 IBM 레드북에서는 WebSphere Portal Server 기반 동적 워크플레이스의 설계와 구현을 설명한다.

The Open Group Architecture Framework (TOGAF)과 IT 아키텍처: 오픈 표준 프레임웍을 연구하고, 더 나은 IT 아키텍트가 되는 방법을 연구한다.

기타 IBM 프레임웍:

  • IBM Tivoli Management Framework: Tivoli 관리 애플리케이션 수트의 토대가 되는 IBM Tivoli Management Framework을 설명한다.
  • Enterprise Identity Mapping (EIM): Kerberos, Lightweight Directory Access Protocol (LDAP), Kerberos Network Authentication Service를 포함한 광범위한 기술이 포함된 크로스 플랫폼 솔루션인 Enterprise Identity Mapping (EIM)을 사용법을 설명한다. EIM은 IBM에서 제공하는 프레임웍으로서 인증 사용자들을 OS/400 (애플리케이션) 사용자 ID로 연결한다.
  • Unstructured Information Management Architecture Framework (UIMA): 컴포넌트 인터페이스, 디자인 패턴, 데이터 표현, 개발 역할들을 지정하는 아키텍처에 대해 배운다.

오픈 소스 프레임웍 예제:

  • Eclipse: 소프트웨어 구현에 확장성 있는 개발 플랫폼과 애플리케이션 프레임웍을 제공하는 오픈 소스 커뮤니티 프로젝트인 Eclipse에 대해 알아본다.
  • Graphical Editing Framework과 Eclipse Modeling Framework을 사용한 Eclipse 개발: Eclipse 플랫폼에서 사용하도록 Eclipse Tools Project에서 개발된 두 개의 프레임웍인 Graphical Editing Framework (GEF)과 Eclipse Modeling Framework (EMF)을 IBM Redbook에서 설명한다.
  • Apache Struts: Apache Struts 프로젝트가 전통적인 Model-View-Controller (MVC) 디자인 패러다임의 변형인 Model 2 방식에 기반하여 애플리케이션 아키텍처를 개발시키는 방법을 설명한다.
  • Apache Cocoon: 영역의 분리와 컴포넌트 기반 웹 개발 개념을 중심으로 구현된 웹 개발 프레임웍인 Apache Cocoon을 소개한다.
  • XML 프로젝트: Xerces, Xalan, Simple Object Access Protocol (SOAP), XML-RPC를 포함하여, XML에 기반한 프로젝트에 대해 배운다.


위로



베스트 프랙티스와 표준

자산과 패턴의 베스트 프랙티스는 실제-경험에 기반한 가이드라인이다. 이것은 비즈니스와 기술적 문제를 해결하는데 도움이 된다.

Java theory and practice: pseudo-typedef 반패턴: 자바 언어에 대한 제너릭의 추가로 유형에 대한 짧은 이름을 정의하는데 어떤 typedef 장치도 존재하지 않기 때문에, 일부 개발자들은 그다지 좋지 않은 대안 typedef에 의존한다. Brian Goetz가 이 반패턴의 한계를 설명한다.

온 디맨드 솔루션 설계하기: 모델링, 애플리케이션 통합, 정책 기반 오케스트레이션을 사용하여, 온 디맨드 솔루션을 설계 및 구현할 때 분석가, 디자이너, 아키텍트의 역할에 대해 알아본다.

온 디맨드 소프트웨어 개발에 재사용 가능한 자산 구현하기: 온 디맨드 환경의 구현 뒤에 숨은 방법론을 분석하고, 패턴, 모델링, 워크플로우, 규칙과 모니터링이 포함된 유스 케이스를 살펴본다.

WebSphere Business Integration 툴로 웹 서비스 애플리케이션 최적화 하기: WebSphere Business Integrator를 사용하여 서비스 지향 아키텍처에서 웹 서비스 애플리케이션을 최적화 한다.

모델-중심 아키텍처: 모델-중심 아키텍처의 모델링을 사용하여 소프트웨어를 보다 효율적으로 개발한다.

코드에 디자인 결점 노출하기: Architectural Discovery: IBM Rational Software Architect 툴의 Architectural Discovery 컴포넌트를 분석하고, 이것을 사용하여 코드에서 좋고 나쁜 패턴을 탐지한다.

SOA용 재사용 엔지니어링 (한글): SOA의 중요한 가치인 재사용을 적용할 시기를 알아본다. 솔루션을 개발할 때 재사용을 적용할 적기를 알아본다.

SOA 반패턴: 서비스 지향 아키텍처의 채택과 성공적인 실현의 방해물 (한글): 부정적인 결과를 만들어 내는 일반적인 상황이나 솔루션을 피해보자. 다양한 SOA 작업을 통해 얻은 개인적인 경험을 바탕으로 걸러낸 반패턴을 설명한다.

SCA와 SDO 스팩: 새로운 Service Component Architecture와 Service Data Objects 스팩을 사용하여 SOA에 기반하여 애플리케이션을 구현하는 보다 강력하고 단순한 방법들을 찾아본다.

SOA와 통합용 패턴 언어:SOA와 SOI용 패턴을 연구하고, 강력하고 유연한 SOA를 구현하기 위해 핵심 아키텍처를 결정할 때 사용할 수 있는 개념들을 검토한다.

웹 서비스 개발 패턴 이해하기: 자바™를 사용하여 Web Services Description Language (WSDL)를 만든다. WSDL을 사용하여 자바를 만든다. WSDL로 시작하여 자바를 만든다. 이는 다시 WSDL을 만드는데 사용되고, 다시 자바를 만드는데 사용된다. 이러한 세 가지 개발 패턴의 장단점을 분석한다.

패턴을 사용하여 포틀릿 구현하기: Rational Software Architect와 IBM State Oriented Portlet Patterns를 사용하여 IBM WebSphere Portal용 포틀릿 애플리케이션을 빠르게 구현할 수 있는 방법을 연구한다.

패일오버(failover) 패턴을 사용하여 IBM Tivoli System Automation 설정하기: Tivoli System Automation Failover Configuration Pattern 자산을 사용하여 고 가용성 솔루션의 개발과 전개를 단순화 할 수 있다.

점-대-점 트랜잭션 사용 케이스 모델: 재사용 가능한 자산을 사용하여 프로젝트의 아키텍처 단계에 대한 문서화를 단순화 한다.



위로



아래 소개하는 툴들은 아키텍처의 디자인, 개발, 적용에 도움이 되는 툴들이다. 잘 알려진 패턴(Gang of Four)을 사용하거나, Rational Software Architect 빌트인 패턴 엔진과 패턴 마법사를 사용하여 직접 만들 수 있다. 이 마법사를 사용하여 기존 코드와 모델을 활용할 수 있다.

  • IBM SOA Business Catalog는 IBM과 IBM SOA Specialty 비즈니스 파트너들이 제공한 재사용 가능한 SOA 콘텐트의 온라인 디렉토리이다. 어댑터, 모델, QuickStarts, 웹 서비스에 이르기까지, 기존 서비스, 컴포넌트, 기능, 확장 등을 활용함으로써, SOA 환경을 빠르게 향상시킬 수 있다.
  • IBM Rational Software Architect는 통합 디자인 및 개발 툴로서, 애플리케이션과 서비스 구현에 UML과 모델 중심 개발을 활용한다. 제품 관련 페이지를 참조하거나 시험판을 다운로드 하라.
  • Reusable Asset Specification은 재사용 가능한 소프트웨어 자산들을 패키징 할 수 있는 표준 방식을 정의한다.
  • IBM RUP for Asset-Based Development 플러그-인은 설정 가능한 소프트웨어 개발 프로세스 플랫폼으로서, 입증된 베스트 프랙티스와 설정 가능한 아키텍처를 제공한다. 제품 관련 페이지를 참조하거나 시험판을 다운로드 하라.

'그거 > Architecture' 카테고리의 다른 글

아키텍처 입문 - 샘플 프로젝트  (0) 2007.01.29
아키텍처 입문 - 통합  (0) 2007.01.29
아키텍처 입문 - 모델링  (0) 2007.01.29
아키텍처 입문 - 요구사항 분석  (0) 2007.01.29
아키텍처 입문 - 개요  (0) 2007.01.29
:
Posted by 뽀기