 |  |
|
난이도 : 초급 Scott Shekerow, Content Editor, IBM developerWorks WebSphere, IBM
원문 게재일 : 2008 년 4 월 07 일 번역 게재일 : 2009 년 10 월 13 일 IBM® WebSphere®
sMash는 Smart SOA를 발전시킨 애플리케이션으로 애자일 개발 및 런타임 환경을 제공하여 매시업이 가능하고 기존 SOA
투자를 활용하는 Web 2.0 기반의 상황별 애플리케이션을 빠르고 간편하게 사용할 수 있도록 지원합니다.
소개
최신 트렌드 및 기술을 활용하여 수많은 개발자들은 다양한 방식으로 애플리케이션을 개발하고
있다. 동적 언어를 사용하는 개발자가 늘어나고 있고, 그 어느 때보다도 많은 자산이 재사용되고 있으며, 새로운
Web 2.0 기술 및 리치 클라이언트로 인해 사용자 환경에 대한 재정의가 이루어지고 있다. 기업과 웹 모두에서
서비스 활용도가 높아졌고 이러한 서비스를 활용하는 동적 언어와 관련된 새로운 프로그래밍 방식을 통해 상황별로
필요한 요구사항을 해결할 목적으로 애플리케이션을 작성하는 경우가 증가하고 있다. 이처럼 변화하는 조건에
대응하기 위해서는 조직의 기존 SOA 투자를 좀 더 민첩하게 활용할 수 있는 방법과 상황에 맞는 애플리케이션을
낮은 비용으로 빠르고, 단순하게 개발할 수 있는 방법이 필요하다.
2007년 초 IBM에서는 근본적인 단순함을 추구하면서 동적 스크립트를 사용하여 웹 기반 애플리케이션
개발하는 방법을 중점적으로 연구하는 커뮤니티 주도적 인큐베이터 프로젝트인 Project
Zero를 많은 기대 속에 시작했다. Project Zero에서는 Java(JSE), 동적 스크립트 언어 지원, 강력한 단순성을
지원하는 웹 기술(REST 및 RSS) 및 JVM(Java Virtual Machine) 개념을 결합한 다음 "애플리케이션이 서버다."라는 새 개념을
추가했다. 이 개념은 애플리케이션이 서버라는 말이 아니라 애플리케이션을 서버에 배포하지 않아도 된다는 점을 강조한
것이다. 또한 Project Zero에서는 템플리트, 패턴 및 엔드-투-엔드 플랫폼으로 구성된 환경을 제공했으며 이 플랫폼에는
서버측 및 클라이언트측 웹 개발을 모두 지원하는 브라우저 기반 비주얼 도구가 포함되어 있었다.
간단히 말해서 Project Zero 커뮤니티의 헌신적인 노력의 결과로 동적 스크립트 언어 및 어셈블리 기반 개발을
기반으로 웹 기반 애플리케이션을 빠르고 간편하게 제공할 수 있는 애자일 환경을 제공하는 제품이 탄생한 것이다. 이 제품이
바로 IBM WebSphere sMash이다.
WebSphere sMash는 SOA 원칙을 사용하여 동적 웹 애플리케이션을 민첩하게 개발할 수 있는 개발 및 실행 환경을
제공한다. WebSphere sMash를 통해 개발자는 동적 스크립트 언어, 경량 애플리케이션 어셈블리 및 REST 스타일 서비스 호출을
사용하여 상황에 맞는 복합 애플리케이션을 작성, 어셈블 및 실행할 수 있다. WebSphere sMash에서 개발 작업을 수행하게 되면
복잡도와 위험도를 낮추고, 개발 시간을 단축하고, 학습 시간을 최소화할 수 있다.
WebSphere sMash에서 다음과 같은 작업을 수행할 수 있다.
- 동적 스크립트 언어와 REST 기반의 간단한 사용 원칙을 사용하여 PHP 자산, 서비스, 필드, 코드 조각 등의
기존 자산을 채우고, 작성하고, "어셈블"하여 Web 2.0 기반 애플리케이션을 개발할 수 있다.
- 외부 시스템에 액세스하거나 활동 세트를 조정할 수 있는 웹 애플리케이션을 개발할 수 있다.
- 다양한 형식의 비즈니스 논리를 지원하는 재사용 가능한 구성 요소를 작성할 수 있다.
- 여러 서비스 호출을 동시에 표시, 작성 및 조정하거나 외부 시스템에 연결할 수 있다.
- 비용 효율성이 낮은 패키지 애플리케이션에 관한 사용자 정의를 쉽게 수행할 수 있다.
- 기존 SOA 자산과 공용으로 사용할 수 있는 API를 활용하여 엔터프라이즈 시스템을 확장한 동적 웹 애플리케이션을 빠르게 개발할 수 있다.
속도, 단순성 및 민첩성
WebSphere sMash는 속도, 단순성 및 민첩성을 원하는 개발자를 위한 제품으로 다음과 같은 용어를 통해 이 제품의 특징과 기능을 알아볼 수 있다.
속도
-
동적 스크립트 언어를 통해 생산성을 향상시킬 수 있다.
많은 시간, 많은 양의 코드 및 높은 수준의 전문적인 스킬이 없어도 재사용 가능한
구성 요소와 상황에 맞는 애플리케이션을 빠르게 제공할 수 있는 방법이 필요한 개발자를 위해 WebSphere
sMash는 동적 스크립트를 쉽게 익힐 수 있고 제한 사항이 거의 없는 애자일 프로그래밍 옵션을 제공한다. 현재
지원되는 동적 스크립트 언어로는 Groovy(Java에 익숙한 사용자에게 이상적임)와 PHP가 있다.
-
빠른 속도를 지원하기 위해 개발된 통합 런타임 환경을 사용할 수 있다.
WebSphere sMash가 근본적으로 빠른 이유는 무엇일까? 그것은 바로 애플리케이션이 서버이기
때문에 전개가 필요하지 않다는 것이다. 또한 WebSphere sMash는 "설정보다는 관례"(convention over configuration)를
따르는 프레임워크를 제공하므로 불필요한 수동 코딩이 필요하지 않다. 게다가 이러한 애자일 스크립트 애플리케이션의
실행을 최적화하기 위해 가상 시스템과 관련된 기능도 개선되었다.
-
높은 성능과 확장성을 제공하는 애자일 애플리케이션을 개발할 수 있다.
상황에 맞는 Web 2.0 기반 애플리케이션의 요구, 범위 및 볼륨이 증가함에 따라 IBM WebSphere
Extended Deployment와 같은 관리 시스템을 사용하여 비용 효율이 높고 효과적인 방법으로 이러한 애자일 애플리케이션을
실행 및 관리할 수 있다.
단순성
-
서비스에서 REST를 사용하면 기존 컨텐츠를 쉽게 표시 및 활용할 수 있다.
WebSphere sMash는 단순함을 바탕으로 높은 인기를 얻고 있는 REST를 사용하여 서비스를 표시 및
활용하며 기타 단순한 기술을 사용하여 피드를 표시하고(RSS) 다른 애플리케이션의 컨텐츠에 액세스한다(HTTP, JMS 등).
-
SOA 원칙은 REST 스타일 아키텍처를 사용하여 관리된다.
REST 스타일 아키텍처에서는 SOA와 웹이 모두 지원되며 다양한 서버측 및 클라이언트 구성 요소를
확장 가능하면서도 단순한 방법으로 재사용할 수 있는 구성 요소 중심적 모델을 활용할 수 있다.
-
어셈블리 스타일 개발을 통해 빠른 복합 애플리케이션을 작성할 수 있다.
효율을 극대화하기 위해 내부 및 외부 소스에 있는 기존 서비스와 피드를 상황에 맞는 복합
애플리케이션으로 어셈블하여 애플리케이션을 작성할 수 있다. 어셈블리 스타일 개발은 동적 스크립트를 사용하거나(예를
들어, 피드를 받아서 병합 및 집계하는 Groovy 또는 PHP 스크립트를 작성하거나) 다음과 같은 시각적 어셈블리 편집기를
사용하여 수행할 수 있다.
- Dojo 툴킷 기반의 시각적 UI 편집기를 사용하여 AJAX 클라이언트 및 기타 구성 요소를 작성한다.
- 시각적 흐름 기반 편집기를 사용하여 여러 서비스 호출을 함께 하나의 흐름으로 어셈블,
결합 및 조정하거나 다른 내부 또는 외부 시스템에 연결할 수 있는 구성 요소를 구성한다.
민첩성
-
단순한 형태의 엔드-투-엔드 개발 및 런타임 환경
WebSphere sMash를 사용하면 상황에 맞는 애플리케이션 및 구성 요소를 매우 민첩한 방법으로
개발할 수 있다. 예를 들어, 어셈블리 유형 애플리케이션을 작성할 경우 기존 방식의 웹 개발에 비해 훨씬 적은 수의
개발자만 필요하므로 다음 작업을 수행할 인력이 적어도 된다. 또한 엔드-투-엔드 브라우저 기반 도구를 활용하므로
클라이언트측과 서버측 둘 다에서 개발을 수행할 수 있으며 구성 요소를 "결합"하는 기타 도구를
위한 프론트 엔드 위젯을 제공할 수 있다.
-
유연성 극대화를 위한 구성 요소 스타일 개발 및 제공
WebSphere sMash에서 제공하는 구성 요소 스타일 개발 및 제공을 통해 재사용 가능한 빌딩 블록,
컨텐츠, 템플리트 및 패턴을 작성할 수 있으며 모든 WebSphere sMash 컨텐츠를 프론트 엔드 위젯의 형태로 재사용할 수 있다.
-
애자일 애플리케이션의 사용 및 관리를 지원하는 통합 환경
WebSphere sMash의 통합 환경은 비용 효율적이면서도 최적화된 방식으로 Web 2.0 기반 애플리케이션을 사용 및 관리할 수 있는 이상적인 환경이다.
공개된 컨텐츠 관리
 | |
Project Zero 커뮤니티
Project Zero는 WebSphere sMash를 위한 개발 커뮤니티로 개발자에게 애플리케이션
개발을 위한 무료 플랫폼을 제공하는 동시에 최신 빌드, 최신 기능 및 커뮤니티 지원도 지속적으로
제공할 것이다. projectzero.org에서 자세한 정보를 확인하자.
|
|
WebSphere sMash는 최근에 발표된 몇 가지 새롭고 혁신적인 IBM 제품 중 하나로 Web 2.0 기술을
사용하여 문제점을 효과적으로 해결하고 신규 고객을 유치하며 통합 효율성을 최적화하는 데 유용하다. 또한 이를
활용하여 내부 협업을 향상시킬 수 있고 SOA 리소스를 쉽게 표시하고 사용할 수 있다.
-
IBM Lotus® Mashups는
인터넷 및 엔터프라이즈 컨텐츠를 단순하고 유연한 동적 웹 애플리케이션으로 빠르게 어셈블할 수 있는 경량 매시업 환경이다. 웹에
정통한 비즈니스 사용자라면 Lotus Mashup을 사용하여 시급한 비즈니스 요구를 해결하는 새로운 웹 애플리케이션을 쉽게 작성 및
공유할 수 있다.
-
IBM InfoSphere Mashup Hub는 기본 정보 리소스에 대한 변경 없이 Web 2.0
사용 엔터프라이즈, 웹 및 부서 시스템에 사용할 수 있는 엔터프라이즈급 솔루션이다. "공개된" 정보를
혼합 및 변환하여 특정 요구 사항과 상황에 맞는 애플리케이션 수요를 충족하는 동시에 엔터프라이즈
표준에 따라 보안 및 거버넌스를 관리할 수 있다.
이러한 각 제품은 Web 2.0 기술을 엔터프라이즈의 기존 서비스 인벤토리에 다양한 방식으로
적용하므로 과거에는 실질적으로 불가능했던 방법을 사용하여 자산을 재사용할 수 있다. 또한 이러한 제품은
매우 뛰어난 호환성을 제공한다. 예를 들어, WebSphere sMash에서 작성한 구성 요소를 InfoSphere Mashup Hub를
통해 관리하고 Lotus Mashups에서 어셈블할 수 있다.
세 제품에 대한 추가 정보가 제공될 때마다 자세히 살펴보자.
진행 중이지만 지금 바로 시작할 수 있다
IBM WebSphere sMash는 위험도를 낮추고 비용을 최소화하는 방식으로 상황에 맞는 Web 2.0
기반 애플리케이션을 제공하기 위한 플랫폼이다. IBM WebSphere sMash Developer Edition은 이러한 애플리케이션을
빠르고 단순하며 민첩하게 개발하는 데 필요한 (무료) 도구를 제공한다.
WebSphere sMash는 무료로 제공되므로 부담 없이 개발 작업을 수행하면서 평가해 볼 수
있다. Project Zero는 WebSphere sMash를 위한 개발 커뮤니티로서 계속 유지될 것이므로 지금 바로
Project Zero를 다운로드하고 사용해 보면서 개발자, 환경,
애플리케이션 및 기존 SOA 투자에 필요한 WebSphere sMash의 기능을 살펴보자.
참고자료
필자소개
기사에 대한 평가
 |
| 이 문서 북마킹 하기
|
|  |