Composite Application은 다양한 리소스로부터 얻은 각기 다른 정보를 최종 사용자에게 가장 바람직한 방식으로, 사용자가 원하는 방식으로 전달하기 위해 화면 구성을 모듈화하고 사용자의 권한과 역할에 따라 화면 구성 및 화면 전환을 달리할 수 있도록 하는 등 사용자 경험을 최적화시키기 위한 만들어지는 애플리케이션이다. 몇 년전까지는 Composite Smart Client라는 이름으로 많은 기업들에 제공되던 방식이기도 하다.
image

현재 Composite Application을 쉽게 구축할 수 있도록 마이크로소프트가 제공하는 Application Block들은 다음과 같다.
-. Composite UI Application Block (CAB) - Windows Form 기반의 composite application을 만들때 유용하다.
-. Smart Client Software Factory (SCSF) - CAB을 핵심으로 관련 application block들을 조합하고 각종 아키텍처 및 개발에 관련된 가이드 및 레시피, How-to 등을 제공하며 Visual Studio에 템플릿 형태로 제공되어 역시 Windows Form 기반의 composite application을 쉽게 개발할 수 있다.
-. Composite Application Guidance for WPF - CAB의 아키텍처적인 장점 및 동작 방식의 장점을 수용하였지만, WPF 기반에서 바닥부터 다시 만든 WPF 기반 composite application 개발 프레임웍이다.

Composite Application Guidance for WPF는 미국 시간 기준 7월 4일 정식 발표되며, 아래 싸이트에서 정보를 확인할 수 있다.
MSDN : http://msdn.microsoft.com/compositewpf
(use http://msdn.microsoft.com/en-us/library/cc707819.aspx for now)
Community : http://www.codeplex.com/compositewpf

이번에 출시되는 Composite Application Guidance for WPF에는 다음과 같은 유용한 자산이 담겨 있다.
-. Stock Trader Reference Implemtation
-. Composite Application Library for WPF
-. Quick Starts (4개 샘플)
-. Hands on Lab (1개)
-. 문서 (300페이지 이상)
   -. Composite Baseline Architecture
   -. UI Designer Guidance
   -. Design Concepts (3가지)
   -. Technical Concepts (8가지)
   -. Patterns (6가지) + Patterns Overview
   -. How-to (20가지)

Acropolis의 중도 포기 이후, CAB과 같이 확장성 있고 모듈화가 잘 되어 있지만, Windows Form 기반이 아닌 WPF 기반 composite UI application block을 원하던 개발자들에게는 그간의 갈증을 해소시켜줄 수 있는 단비가 아닐까 싶다.

참고로 현재까지 나와 있는 Composite Application 구축에 활용할 수 있는 프레임웍을 용도에 따라 구분하면 다음과 같다.
image

Posted by 장현춘