image   지난 4월 20일에 올린 "소프트웨어 + 서비스 및 클라우드 컴퓨팅을 위한 설계 고려 사항" 첫번째 번역물에 이어, 두번째 번역 부분을 올려 여러분의 피드백을 받습니다.

지난번 첫번째 번역 부분은 아래에서 확인할 수 있습니다.
#1/3 : http://kingcrap.com/138

이번 두 번째 번역 부분은 S+S가 가져오는 기업내 아키텍처 관점에서의 변화를 지난 번의 엔터프라이즈 아키텍처에 이어 인프라 아키텍처, 소프트웨어 아키텍트의 다양한 관점에서 고찰하는 내용입니다.

여러분의 피드백을 기다리며..

-------------------------------------------------

소프트웨어 아키텍처, 통합 설계

별개로 존재하는 엔터프라이즈 애플리케이션은 거의 없다. 대다수의 애플리케이션은 다른 애플리케이션과 연결되어 있으며, 데이터, 기능 및 프레젠테이션 통합과 같은 다양한 기술을 통해 상호 연결되는 복잡한 시스템을 형성한다.
대부분의 경우, 조직은 다양한 통합 기술을 사용한다. 그 결과 여러 시스템이 긴밀하게 결합되어(tightly coupled), 분리하거나 외부 기능으로 대체하는 것이 어려워진다. 일반적으로 이러한 경우, 조직은 서브 시스템내에 일부 기능들을 대표하는 Course-Grained Façade를 구축하거나, 레거시 애플리케이션과 서비스(내부 혹은 외부에서 호스팅되는 서비스)를 연동시키는 통합 기술을 채택한다.
  데이터 계층에서 통합하고 외부 애플리케이션이 내부 애플리케이션과 동일한 데이터를 사용하도록 하는 경우, 조직은 마스터 데이터의 위치 등 다양한 요소를 고려해야 한다. 읽기 전용 데이터 또는 참조 데이터의 경우, 밀어넣기 또는 끌어오기 (push-or-pull) 복제 기술을 사용해 데이터를 동기화할 수도 있다. 비즈니스 또는 트랜잭션 데이터의 경우에는 다른 기술을 고려해야 한다.
  SOA 기반의 기능성 비즈니스 서비스를 사용하는 조직은 이러한 서비스를 클라우드로 이동시키는 것을 고려해볼 수 있다. 이에 대한 자세한 내용은 다음 섹션에서 다루고 있다. 그러나 어떤 경우에는 비즈니스 애플리케이션을 서비스 계약 기반 클라이언트(service contract-driven clients)와 서비스 공급자 구성 요소(service-provider components)로 쉽게 분류할 수 없을 수도 있다. 예를 들어, 시스템에 복잡한 레거시 프로세스와 휴먼 워크플로가 포함되어 있는 경우를 들 수 있다. 이런 경우에는, 워크플로를 클라우드로 이동시켜 워크플로가 온라인 및 오프라인 시나리오를 모두 확장할 수 있는 하이브리드 운영 모드를 지원할 수 있다.
  트랜잭션을 관리하는 전통적인 단일 접근방식은 더 이상 가능하지 않을 수도 있으며, 조직에서는 데이터 일관성을 보증할 수 있는 대체 모델을 검토해야 한다. 이와 관련된 프로세스는 이 문서의 정보 설계 섹션에서 자세히 설명하고 있다.
  특히 최근에 개발된 애플리케이션은 기능 통합에 서비스 지향 접근 방식을 사용하고 있을 가능성이 높으며 이 경우, S+S 채택이 보다 간편해진다. 공용 서비스 디렉터리를 사용하는 애플리케이션은 서비스 디렉터리에서 대상 서비스의 위치 및 바인딩 요구 사항을 업데이트할 수 있으며, 클라이언트는 스스로를 동적으로 다시 구성할 수 있다. 이는 동일한 계약을 가지고 있는 서비스가 사외로(off-premises) 재배치된 경우에도 마찬가지이다. 그러나 많은 경우에, 클라이언트는 기대와 다른 계약(contract)을 가지고 있는 서비스와 상호 작용해야 한다. 이 경우, 중개자가 클라이언트의 요청을 가로채서 새로운 대상 서비스가 원하는 형태의 요청으로 변형시킬 수 있는 서비스 가상화 기술2을 사용하여 문제를 해결할 수 있다.
  조직이 애플리케이션을 클라우드로 이동시키면서 여러 서비스 공급자가 제공하는 서비스에 더욱 의존하게 되고, 기존 중앙 관리식 메시지 버스3 기술 또한 여러 요구 사항을 충족시키기에 불충분해짐에 따라 조직은 점차 인터넷 서비스 버스 기술을 고려하게 되었다.

소프트웨어 아키텍처, 애플리케이션 설계

지난 10년간 많은 조직들이 중앙 집중식 메인 프레임 기반 애플리케이션에서 서비스 지향 및 인터넷 지향 아키텍처 방식에 근거한 분산 컴퓨팅 모델로 이동했다. 서비스 지향 원칙에 따라 설계된 애플리케이션은 S+S 애플리케이션의 채택 또는 통합을 위한 견고한 기반을 제공한다.
  그러나 이것만으로 충분할 것이라고 단정지으면 안된다. 원격 서비스는 주로 이를 사용하는 조직에서 제어할 수 없는 곳에 위치한다. 따라서 클라이언트 애플리케이션을 개발하는 조직은 원격 서비스가 실패했을 경우를 대비해 애플리케이션이 더 큰 복원력을 갖도록 설계해야 한다. 참조 데이터를 캐싱하거나, 축적 전송 방식(store-and-forward) 등의 기술을 사용하면 서비스 공급자의 서비스 실패시에도 클라이언트 애플리케이션은 영향을 받지 않게 된다. 또한, 원격 서비스와의 상호 작용시 전통적인 단일 트랜잭션(atomic transaction)이 더 이상 적합하지 않을 수 있기 때문에 개발자들은 보상 트랜잭션(compensating transaction) 등과 같은 대안을 고려해야 한다.
서비스가 외부로 이동함에 따라 원격 서비스에 접근하는 시간도 늘어날 수 있다. 애플리케이션 개발자는 비동기 메시징 기술 등 대체 메시징 전략을 고려할 필요가 있다. 서비스 공급자는 대부분 비동기 메시징 전략을 채택해 시스템의 확장성을 높이고자 한다.
  클라이언트 애플리케이션이 대체 서비스 공급자의 가용여부 및 응답시간에 따라 이들과 상호 작용할 수 있도록 하려면, 클라이언트 애플리케이션에서 이러한 서비스의 위치를 동적으로 확인하고 상호 작용에 사용된 프로토콜을 수정할 수 있어야 한다. 외부 서비스에 의존하는 클라이언트 애플리케이션 또는 서비스가 많은 대규모 조직의 경우, 일관된 관리를 위해 구성 정보를 중앙집중화해야 한다.
  S+S 애플리케이션은 종종 단일 시스템에서 다중 사용자를 지원하기 때문에, 변경 관리시 보다 많은 주위를 요구한다. 애플리케이션이 실행시에 거의 100퍼센트에 가까운 가용성이 요구되는 경우에는 업그레이드를 위한 공간이 거의 없기 때문에 문제가 더 복잡해진다. 업데이트 도메인4을 사용하는 애플리케이션 업그레이드 또는 롤링 업데이트의 경우, 보다 신중한 애플리케이션 설계가 필요하다. 이 때, 서비스 공급자에게는 서비스에 고가용성 배포 패턴에 대한 지원을 포함시킬 것이 요구된다.
  서비스의 구현 또는 설계 변경은 서비스 소비자에게 예기치 못한 영향을 끼칠 수도 있으며, 클라이언트 애플리케이션은 정상적인 동작을 위해 지속적인 업데이트가 필요하게 된다. 또한, 서비스가 클라우드 서비스 사업자에 의해 제공되는 그러한 S+S 시나리오하에서 클라이언트가 수정되어야 할 수도 있기 때문에 명확한 버전 관리 전략이 필수적이다. 어떤 경우에는, 웹 서비스 중개자가 이러한 변경에 대해 방어할 수 있는 세이프가드 기능을 제공해, 메시지 변환이 발생해도 클라이언트에게는 일관성있게 메시지가 전달되도록 지원한다. 서비스 공급자는 반드시 클라이언트의 사용 시나리오에 대한 완벽한 이해를 갖추어 서비스 계약(contract) 또는 동작(behavior)의 변경이 예상치 못한 클라이언트 동작의 변경으로 이어지지 않도록 해야 한다.
  S+S 애플리케이션을 테스트할 때도 주의가 필요하다. 클라이언트 애플리케이션에는 개발, 사용자 수용, 성능 테스트 등 다양한 환경이 실제 운영 환경과 동일하게 구성되어 있다는 확신 하에, 이들 다양한 환경을 시뮬레이션할 수 있는 기능이 반드시 있어야 한다.
  관심의 분리(Separation of concern)처럼 확립된 원칙은, 애플리케이션에 최소한의 영향을 미치면서 새로운 인증 및 권한 부여 메커니즘을 허용할 수 있기 때문에, 애플리케이션의 보안 모델을 더욱 간편하게 변경할 수 있도록 지원한다.
  아키텍트는 일반적으로 ‘이 조직에서만 이 애플리케이션을 사용한다’는 가정 하에 애플리케이션 및 관련 데이터 저장소를 설계해 왔다. 그러나, S+S 애플리케이션 설계에서는 더 이상 이러한 가정을 할 수 없으며 아키텍트는 반드시 데이터베이스 설계시 확장을 위해 다양한 접근 방식과 다중 고객 지원(multi-tenancy)을 고려해야 한다.

소프트웨어 아키텍처, 정보 설계

정보 설계는 애플리케이션과 서비스에서 사용되는 데이터의 구조, 관리, 저장소 및 배포와 관련이 있다. 전통적으로 엔터프라이즈 애플리케이션은 데이터 일관성, 트랜잭션 안정성 및 증가된 처리량에 초점을 맞춰왔으며, 안정적인 데이터베이스를 설계하기 위한 방법으로 ACID(원자성, 무결성, 일관성, 영속성) 원칙을 사용하는 관계형 데이터 모델과 관계형 DBMS(데이터베이스 관리 시스템)에 주로 의존해 왔다. 하지만 이제 S+S를 채택함에 따라 조직은 정보 설계 프로세스를 다른 시각에서 생각해볼 필요가 있다.
  SOA의 채택은 원본 데이터를 호스팅하는 플랫폼과는 별도로 데이터에 대한 유비쿼터스 접근이 제공되는 DaaS(Data as a Service) 개념을 이끌어 냈다. 이 기능을 사용하려면 데이터 공개에 따른 개인 정보 보호 및 보안 관련 영향을 고려하면서도, 데이터의 청결도와 무결성을 확인 및 검증할 수 있는 운영을 위한 데이터 저장소가 필요하다.
  클라우드에서 실행하게 될 서비스 설계시 서비스 공급자는 단일 시스템 상의 다중 고객을 지원하는 (multi-tenant) 애플리케이션과 관련된 요구 사항을 고려해야 한다. 단일 시스템 상의 다중 고객을 지원하는 애플리케이션에는 유연하고 안전하며 버전 관리가 되는 대안 스키마 설계가 필요하다. 또한, 일부 영역에서는, 사용자별 스키마 변경에는 더 큰 유연성을 제공하면서 데이터 중복 관리 및 발생 가능한 불일치 문제는 애플리케이션으로 넘기는 범용 비관계형 데이터 모델로 교체하는 움직임이 발견되고 있다. 점차 더 많은 시스템 이 반구조화(semi-structured)되거나 구조화되지 않은 데이터(문서 또는 미디어)를 처리하고 있다. 이러한 데이터는 구조화된 관계형 데이터 모델에 적합하지 않기 때문에 이름-값 저장소(name-value store) 및 개체 저장소(entity store)와 같은 범용 데이터 모델이 필요하다. 큐 지원, 구조화되지 않은 대용량 데이터에 대한 BLOB 제공, 제한된 관계형 의미 체계를 가지고 있는 테이블 제공 등이 유용하다.
  서비스와 기반 데이터 구조는 과거에 비해 훨씬 더 커진 트랜잭션을 지원하도록 설계되어야 하고, 더욱 커진 데이터 볼륨을 관리할 수 있어야 한다. 따라서 스키마 설계와 데이터 분할 전략(data-partitioning)에도 변화가 필요하다. 분할 전략은 근간이 되는 데이터베이스의 확장을 지원해야만 하는데 이는 주로 기능 구분 또는 수평 분할을 통해 이루어진다. 그러나 이러한 전략은 최상의 성능을 얻을 수 있는 능력에 영향을 미칠 수 있다. 이는 왜 일부 고성능 시스템이 ACID 안정성5에서 BASE(Basically Available, Soft State, Eventually Consistent) 일관성6으로, 그리고 물리적 분할 스키마에서 디커플링(decoupling) 논리적 분할로 이동하고 있는 지를 설명해 준다.

인프라 아키텍처

일반적으로 컴퓨팅 인프라는 기업 IT 투자에서 상당 부분을 차지한다. 클라우드 컴퓨팅 시대 이전에는 인프라에 필요한 데스크톱, 서버 하드웨어, 저장소 장치 및 네트워크 장치를 구입하는 데 막대한 비용을 들일 수밖에 없었다. 또한, 대규모 기업에서는 하드웨어와 서비스 인력을 호스팅하기 위해 자체 데이터 센터를 구축하고 운영하는 데 투자했을 수도 있다.
  이제 기업은 IaaS를 통해, 사설 클라우드 서비스와 다양한 형태의 가상화 기술을 통해 많은 대안책을 얻어 자사의 IT 인프라 투자 전략을 재평가할 수 있게 되었다.
  IaaS 덕분에 기업은 트랜잭션 기반 또는 가입(subscription) 기반 지불 방식을 사용해 컴퓨팅 리소스 사용에 대한 요금을 지불할 수 있다. 또한, 동적 확장이 가능한 인프라는 기업이 비즈니스 요구에 따라 인프라 지출을 신속하게 조정할 수 있도록 지원한다. 기업의 인프라 예산이 계산(연산) 사이클 및 저장소에 대한 요구 변동에 따라 늘리거나 줄일 수 있는 운영비용으로 점차 전환됨에 따라, 기업은 새로운 재정적 유연성을 얻게 된다. 이러한 인프라 서비스는 계절적으로 성수기 또는 하루 중 피크타임에 계산 요구가 최고조를 기록하고 그 외의 경우에는 리소스 사용량이 떨어지는 전자 상거래 사이트에 유용하다. IaaS는 컴퓨팅 리소스를 추가하거나 줄이는데 있어서, 인프라 하드웨어에 남아돌게 혹은 부족하게 투자하지 않도록 함으로써 IT 아키텍트의 용량 산정을 용이하게 한다.
  뿐만 아니라, IaaS를 사용하면 새로운 온라인 비즈니스 서비스를 더욱 빨리 시작하고 테스트할 수 있다. 전통적인 방식에서는 새로운 온라인 서비스를 시도할 때 소요되는 하드웨어 초기 투자에 대한 비즈니스 중요성을 판단하는 작업을 하게 된다. 더욱 어려운 점은 시범 서비스를 배포하기 위해, 회사 네트워크 및 방화벽을 재구성 하기 위한 내부 IT 부서와의 싸움이다. 사내 정책-준수 문제는 새로운 온라인 비즈니스 시작을 지연시키는 단골 원인이었다. 하지만 이제 IaaS를 통해 이러한 프로세스를 신속하게 처리할 수 있고, 인프라와 관련된 복잡한 문제를 줄일 수 있다.
  사용자 데스크톱은 서비스 형태로 제공될 수 있으며, 사용자는 어느 곳에서든 가상화 서비스에 네트워크 연결이 되어 있다면 이러한 사용자 데스크톱을 이용할 수 있다. 서버 가상화 기술은 기업에서 서버 하드웨어 공간을 줄이는 데 크게 기여한다. IaaS를 통해 기업은, 클라우드 인프라에서 실행되는 가상 서버 인스턴스를 비즈니스 요구에 맞추어 복제함으로써 인프라 비용을 즉시 절감할 수 있다.
  클라우드 인프라 관련 서비스는 이전에는 불가능했던 많은 혜택을 제공한다. 하지만 이 같은 혜택을 그냥 얻을 수 있는 것은 아니다. IT 아키텍트는 하이브리드 S+S 인프라를 계획하고 구현하는 과정에서 가용성, 확장성, 보안, 안정성 및 관리 효율성 등과 같은 설계 고려 사항에 계속해서 무게를 두어야 한다.
  인프라 서비스가 중단되면 결국 애플리케이션 서비스의 가용성에 영향을 끼친다. 상위 수준 애플리케이션 서비스의 상당수가 아웃소싱된 클라우드 인프라에서 실행될 수 있기 때문에 서비스 공급자 인프라에서 발생한 장애가 하나 이상의 비즈니스 기능에 영향을 끼치고 결과적으로 여러 분야에서 생산성 저하나 수익 손실 등을 야기한다. 따라서, 기업은 자신의 인프라 서비스 공급자가 이러한 장애를 해결하도록 지원할 수 있는지 알고 있어야 한다. 어떤 기업은 다수의 인프라-서비스 공급자를 이용하여, 주 공급자에서 서비스 장애가 발생해도 보조 공급자의 컴퓨팅 리소스를 활성화할 수 있다.
  중앙 집중식 호스팅 인프라를 통해 데스크톱 가상화 기술이 제공될 때에는 솔루션의 확장성 및 성능을 고려해야 한다. 데스크톱 가상화 서비스는 주로 직원들이 로그온해 회사 업무를 수행하는 근무 시간에 부하 사용량이 가장 많으며 근무 시간 이후에는 점차 줄어든다. 동적으로 확장 가능한 컴퓨팅 인프라 서비스에 가상화 기술을 결합하는 것은 조직의 계산(연산) 요구가 변동하는 경우에 좋은 접근 방법이 될 수 있다.
  인프라 보안은 언제나 기업을 보호하는 심층적인 방어 수단으로 이용되어 왔다. 예를 들어, 일부 기업에서는 인트라넷을 통한 기계간 통신을 보호하기 위해 IPSec을 사용한다. IPSec에서는 방어 계층을 추가해, 회사 소유가 아닌 컴퓨팅 장치로부터의 인가되지 않은 정보 접근을 차단해 회사 자산을 보호할 수 있다. 기존 인프라 수준의 보안 메커니즘을 클라우드 인프라 서비스에서 계속해서 사용하기 위해서는 조직의 네트워크, 공개 키 및 이름 확인(name –resolution) 인프라를 다시 구성해야 할 수도 있다.
  서버 인프라가 가상화된 인스턴스로 실행되기 위해 배포되면, IT 아키텍트는 하나의 서비스 실패가 해당 서비스만 영향을 주고 다른 가상화된 서비스들에게 영향을 미치지 않도록, 각 가상 인스턴스를 각 단위(unit) 서비스로 분리, 조직하는 것을 고려해야 한다. 이와 같은 인프라 설계 관행은 상위 애플리케이션 서비스를 원자 단위로 배포하여, 다른 가상화된 단위 서비스가 운영상에 실패를 겪을 때 해당 단위 서비스를 치환할 수 있게 된다.
  상위 수준의 애플리케이션이 하이브리드 S+S 인프라에 걸쳐 배포되는 경우, 인프라 오류로 인해 발생하는 애플리케이션 실패를 디버깅하는 것이 어려울 수 있다. 사내에서 일반적으로 사용하는 네트워크 모니터링 및 추적 도구는 기업 및 서비스 공급자의 방화벽을 통과하지 못할 수도 있다. 따라서, 기업은 클라우드 인프라 공급자에게 클라우드 인프라 트래픽을 검사할 수 있는 진단 도구를 요청할 수 있다.

Posted by 장현춘

많은 개발자들이 기다려온 Enterprise Library (EntLib) 5.0이 출시되었다. EntLib는 개발  과정에서 늘 고민하게 되는 공통적인 코드 블럭들을 마이크로소프트가 전세계 개발자들과 함께 고민하면서 발전시켜 나가고 있는 라이브러리성 프레임웍의 모음집이다. 시장에는 이미 많은 오픈 소스 기반의 라이브러리들이 있어 개발자의 노가다를 줄여주고, 시장에서 검증된 성능의 품질 좋은 코드셋을 앞다투어 쏟아내고 있다. 여기에 마이크로소프트도 거대 닷넷 생태계에 일원으로 참여하고 있는 것이다.

EntLib 5.0은 이전 4.1버전과 마찬가지로 아래와 같은 9개의 application block들로 구성되어 있다.

  • Caching Application Block. Developers can use this application block to incorporate a cache in their applications. Pluggable cache providers and persistent backing stores are supported.
  • Cryptography Application Block. Developers can use this application block to incorporate hashing and symmetric encryption in their applications.
  • Data Access Application Block. Developers can use this application block to incorporate standard database functionality in their applications, including both synchronous and asynchronous data access and returning data in a range of formats.
  • Exception Handling Application Block. Developers and policy makers can use this application block to create a consistent strategy for processing exceptions that occur throughout the architectural layers of enterprise applications.
  • Logging Application Block. Developers can use this application block to include logging functionality for a wide range of logging targets in their applications. This release further improves logging performance.
  • Policy Injection Application Block. Powered by the Interception mechanism built in Unity, this application block can be used to implement interception policies to streamline the implementation of common features, such as logging, caching, exception handling, and validation, across a system.
  • Security Application Block. Developers can use this application block to incorporate authorization and security caching functionality in their applications.
  • Unity Application Block. Developers can use this application block as a lightweight and extensible dependency injection container with support for constructor, property, and method call injection, as well as instance and type interception.
  • Validation Application Block. Developers can use this application block to create validation rules for business objects that can be used across different layers of their applications.
  • 각 application block 사이의 dependency는 아래와 같다.

    image

    이전 버전에 비해 달라진 점 몇가지를 들면...
    * 아키텍처 리팩토링을 통해 DI 기능을 충실히 지원하여 테스트 및 유지보수성이 좋아짐
    * DI 컨테이너 비종속성. (기본은 Unity이며 Objectbuilder와 Unity가 하나로 합쳐져서 더이상 ObjectBuilder가 존재치 않음)
    * 비동기 데이타 접근 지원
    * 캐시 기능 향상
    * Unity 자체 성능 향상
    * 로깅 속도 향상
    * 어셈블리 숫자 감소
    * .NET Framework 4.0 지원, VS2010 통합  지원

    좀 더 상세한 정보를 볼 수 있는 싸이트로는 다음과 같은 곳이 있다.
    * MSDN
    * CodePlex
    * EntLib 5.0 개발 가이드
    * EntLib 5.0 문서

    Posted by 장현춘

    image

    지난 번에 올렸던 "엔터프라이즈 소셜 컴퓨팅"은 현재 MSDN 싸이트에 공식적으로 번역물로 기재되었고 조만간 PDF 버전의 번역물 다운로드 링크도 추가될 예정이다.

    아키텍처 저널 19권의 한글 MSDN 싸이트는 아래와 같다.
    http://msdn.microsoft.com/ko-kr/aa699428.aspx
    "엔터프라이즈 소셜 컴퓨팅"의 한글 번역 MSDN 싸이트는 아래와 같다.
    http://msdn.microsoft.com/ko-kr/aa699425.aspx

    이번부터 시작될 포스트는 아키텍처 저널21권에 수록된 "소프트웨어 + 서비스 및 클라우드 컴퓨팅을 위한 설계 고려 사항"이라는 아티클 번역물에 대한 것으로 조금 긴 편이라 세 번에 걸쳐 리뷰가 끝나는 대로 포스팅을 할 예정이며 여러분의 피드백을 기다립니다.

     

    ------------------------------------------------------------------------------

    요약

    이 문서는 S+S(Software plus Services), 클라우드 컴퓨팅 또는 하이브리드 컴퓨팅으로 일컬어 지는 차세대 애플리케이션의 설계 패턴에 대한 Microsoft의 생각을 공유하기 위해 작성되었다. 여기에는 기업, 소프트웨어, 인프라 아키텍처 등 일반 아키텍처 도메인에 영향을 주는 S+S 아키텍처의 고려 사항과 패턴에 대한 견해가 실려 있다.

    서론

    많은 기업들이 체계적인 마스터 플랜을 따르기 보다는 그때그때의 요구사항에 맞춰 몸집을 키우는 IT 인프라를 보유하는 쪽을 선택한다. 이런 방식으로 확장된 기업 시스템은 강력하게 서로 결합되거나 혹은 완벽하게 분리된 여러 하위 시스템["사일로(Silos)" 시스템으로도 불림]으로 구성된 대형 모놀리식(monolithic) 구조체로 변하는 경향이 있다. 일반적으로, 이러한 시스템은 난해하고 일관되지 못한 인터페이스를 가지고 있으며 복잡하고 효율성이 떨어지기 때문에 비즈니스 혁신 속도가 느려진다. 이로 인해, IT 관리자는 정보 기술을 통해 어떻게 하면 핵심 비즈니스를 지원할 수 있을까에 집중하기 보다는 운영 및 장애 제거 프로세스에 더 많은 시간을 보내게 된다. 게다가 일부 기업의 IT 시스템은 기능면에서 부분적으로 중복되기 때문에 비즈니스 정보에 대한 뷰 자체가 단편적이고 일관되지 못하게 되어, 결국 기업의 재정 지출에 대한 합리적인 의사 결정에 영향을 끼친다.
    S+S(Software plus Services)는 SaaS(Software as a Service)의 확장 형태로서 조직이 비즈니스를 영위하는데 필요한 기술의 개발, 관리, 배포 및 운영 측면에서 더 많은 아웃소싱 옵션을 제공한다. S+S는 서비스 지향 아키텍처(SOA)의 원칙을 따른다. S+S는 애플리케이션 소프트웨어 및 서비스의 소싱, 파이낸싱, 배포와 관련된 다양한 방법을 제공하기 때문에, SOA를 지원하는 기업에서는 기술 선택의 폭이 넓어졌다. 합리적인 의사 결정을 내리고 S+S 모델을 채택함으로써 얻을 수 있는 잠재 혜택을 극대화하기 위해서는, IT 아키텍트와 의사 결정권자는 사내외에 존재하는 경제적, 규제적, 정치적, 재정적인 요인보다는 비즈니스 동인과 기술적 요구 사항에 중점을 두어야 한다.
    이 문서는 Microsoft Worldwide Services 컨설팅 조직이 S+S와 클라우드 기반 애플리케이션을 설계, 이관하는 과정에서 경험한 실제 사례를 근간으로 하고 있다. 또한, 기업, 소프트웨어, 인프라 아키텍처 등 일반적인 아키텍처 도메인에 영향을 미치는 S+S 아키텍처의 고려 사항과 패턴에 대한 견해가 나타나 있다.

    SOA, S+S, 클라우드 컴퓨팅

    2000년대 중반, 복잡한 IT 인프라 구조가 넘쳐나던 기업에 분별력을 제공하기 위해 다양한 SOA 사례가 소개되었다. 그 이후, 업계에서 가장 큰 인기를 끌던 SOA는 점차 주류에서 밀려나고 최근에는 “SOA는 죽었다”는 말까지 나오고 있다. 하지만 SOA가 오늘날까지도 지속되고 있는 중요한 패러다임의 변화를 이끌었다는 사실에는 변함이 없다.
    기술적인 측면에서 SOA의 핵심적인 영향력은 바로 일련의 SOA 원칙, 패턴 그리고 분석 프로세스들이다. 이들을 활용하여 기업은 IT 포트폴리오에 대한 인벤토리를 작성하고 리팩터링을 진행하여 일상적인 비즈니스 운영 작업을 지원하는 모듈화되고 핵심적인 서비스 기능으로 변모시킬 수 있다. SOA의 주요 목표는 비즈니스 목표에 맞춰 기업의 IT를 재구성하고(align) 비즈니스 요구에 IT 부서가 보다 민첩하게 대응할 수 있도록 지원하는 것이다. IT 솔루션의 민첩성 강화를 위한 SOA의 몇 가지 주요 원칙으로는 느슨한 결합(loose coupling), 관심 분리(separation of concerns), 표준 기반 기술 및 대단위(coarse-grained) 서비스 설계가 있다.

    그림 1. SOA, S+S, 클라우드 컴퓨팅을 통한 IT 최적화

    aa699437_a1f1(en-us,MSDN_10)

    SOA는 기업이 주요 서비스 기능을 식별하고, 비즈니스와 IT간 연계를 구축해 민첩성을 유지하도록 지원하는 반면, S+S는 사내에 배포된 클라우드 컴퓨팅 및 솔루션을 통해 IT 투자를 최적화할 수 있는 컴퓨팅 모델을 제공한다. 그러나 S+S는 SOA의 필요성을 없애는 것이 아니라 SOA를 지원하는 기업이 애플리케이션 소프트웨어 및 서비스를 소싱, 파이낸싱, 배포할 수 있는 여러 모드를 구축함으로써 기술 선택을 최적화할 수 있도록 도와준다.

    그림 1은 SOA, S+S 및 클라우드 컴퓨팅 스택 관계를 나타낸다.

    일반적으로 모든 조직에 적용할 수 있는 단 하나의 올바른 IT 포트폴리오가 있는 것이 아니기 때문에, 조직에 무엇이 가장 적합한가는 현재의 비즈니스 목표와 요구 사항에 달려 있다. 따라서 S+S 컴퓨팅 모델은 비용, 핵심 업무와의 관련성, 사용자 경험 및 혁신 가치, 비즈니스 차별성 등의 의사 결정 필터에 따라 특정 기술을 선택해 기업이 IT 포트폴리오를 최적화할 수 있도록 지원한다. S+S는 사업장내 (on-premises) 소프트웨어의 장점(예: 짧은 대기시간 및 풍부한 기능)과 클라우드 컴퓨팅의 장점(예: 유연한 확장성 및 아웃소싱)을 결합시켜 효과적인 하이브리드 분산 아키텍처 설계를 위한 보다 다양한 선택옵션을 제공한다.

    클라우드 컴퓨팅은 제공되는 서비스를 집합적으로 지칭하는 말이다. 현재 클라우드 컴퓨팅은 아래와 같은 벤더의 솔루션을 포함한다.

    * IaaS(Infrastructure as a Service). IaaS는 일반적으로 동적 확장이 가능하고 가상화된 계산 및 저장소 리소스가 서비스 형태로 제공되는 컴퓨팅 환경이다. 이 서비스는 서버 및 저장소 장치와 같은 하위 수준의 하드웨어에 대한 투자 요구로부터 서비스 고객 수를 산정한다.
    * PaaS(Platform as a Service). PaaS는 서비스 고객에게 운영 체제와 애플리케이션 플랫폼 수준의 추상화를 제공한다. 또한, 단일 시스템 상의 다중 고객 지원 (multitenant) 환경에서 고객별 요청 처리 시간을 스케줄링하고, 메모리 공간을 할당하고, 시스템과 애플리케이션의 무결성을 보장할 수 있는 시스템 리소스 관리 기능을 제공한다. 서비스 고객은 PaaS 애플리케이션 개발 도구를 사용하여 호스팅 플랫폼에서 실행되는 클라우드 애플리케이션을 구축할 수 있다.
    * SaaS(Software as a Service). SaaS는 타사 서비스 공급자에 의해 호스팅되는 비즈니스 및 소비자 애플리케이션을 의미한다. 서비스 고객은 웹 브라우저 또는 데스크톱에 설치된 애플리케이션을 통해 호스팅된 애플리케이션을 사용할 수도 있다. 어떤 경우에는, 기업이 자사의 데이터 및 비즈니스 프로세스와 SaaS 애플리케이션을 통합할 수 있도록 SaaS 공급자가 UI가 없는(headless) 웹 서비스를 제공하기도 한다.

    클라우드 컴퓨팅 솔루션은 기업 관리 인프라를 보완하고 다음과 같은 다양한 이점을 제공한다.
    * 추가 컴퓨팅 및 저장소 용량 등과 같은 리소스를 동적으로 할당하는 기능을 사용해 비즈니스 수요에 따라 IT 지출을 유연하게 조정할 수 있다.
    * 트랜잭션 및 가입 기반 클라우드 플랫폼을 사용하여 막대한 IT 투자 없이도 새로운 비즈니스와 작업 모델을 신속하게 테스트할 수 있는 혁신적인 애플리케이션 솔루션을 개발할 수 있다.
    * 아웃소싱된 솔루션은 모든 IT 자산을 효과적으로 관리 및 운영하는데 소요되는 지속적인 IT 비용과 책임(즉, 기회 비용)을 줄여준다.

    설계 고려 사항

    이 섹션에서는 S+S 기반 솔루션 설계 또는 채택 시 고려해야 할 비즈니스 및 기술적인 이슈에 대한 간략한 개요를 제공한다. 그림 2는 이 문서 구성에 사용된 프레임을 나타낸다. 이 프레임은 특정 아키텍처 관점을 중심으로 구성되었으며 공통 관심사(crosscutting concern)를 식별하여 S+S 전략의 일부로 간주되는 시나리오 유형, 설계 고려 사항 및 패턴에 관한 포괄적인 관점을 제공한다.
    이 정보는 S+S 전략을 채택함에 있어서 전체적인 영향을 평가하는 기준이 된다.

    엔터프라이즈 아키텍처

    엔터프라이즈 아키텍트 역할 가운데 가장 까다로운 것 중 하나는 끊임없이 변하는 비즈니스 요구 사항과 이러한 요구 사항을 일관성있게 충족시킬 수 있는 IT 조직 능력 간에 균형을 유지하는 것이다.

    그림 2. 아키텍처 관점 프레임웍

    aa699437_a1f2(en-us,MSDN_10)

    S+S는 IT 플랫폼, 애플리케이션 또는 애플리케이션(비즈니스) 서비스를 통합하거나, 때로는 아웃소싱하여 운영 비용을 절감할 수 있는 새로운 기술 배포 패턴을 제공한다. 또한, 조직은 S+S를 통해 시스템 전사 통합시 발생하는 마찰을 줄일 수 있다. 때로는 기존 채널들을 결합시키는 것만으로도 기존 비즈니스 관계에 정보 서비스를 제공할 수도 있다.
    엔터프라이즈 아키텍트는 먼저 최상위 수준에서 조직의 핵심 역량을 판단할 수 있는 기준을 마련하고, 어떤 애플리케이션이 이러한 핵심 역량을 지원하고 있는지, 그래서 어떤 애플리케이션이 사내에서 계속 유지해야 하는지 혹은 외부에 아웃소싱 주어야 하는지를 결정할 수 있는 프로세스를 마련해야 한다.

    다음은 몇몇 대규모 조직에서 사용되는 모델이다.
    * 회사에 특화된(proprietary) 미션 크리티컬한 시스템— 회사에 특화된 시스템, 혹은 미션 크리티컬한 시스템, 혹은 경쟁 우위를 제공하는 시스템은 무척 중요하기 때문에 외부(off-premises) 서비스 공급자에게 아웃소싱하기에는 위험부담이 너무 크다고 여겨진다. 따라서 이러한 시스템은 주로 조직내 기존 IT 부서에서 설계, 개발, 운영 및 관리한다.
    * 회사에 특화되지 않은 미션 크리티컬 시스템— 회사에 특화되어 있는 시스템은 아니지만 미션 크리티컬한 시스템인 경우, 개발은 다른 회사에서 할 수 있지만 설계, 운영 및 관리는 조직 내 기존 IT 담당 부서에서 담당한다.
    * 회사에 특화되지 않은 시스템— 표준화된 기능 및 인터페이스를 제공하는 특정 회사에 특화되지 않은 시스템은 서비스 공급자와 적절한 SLA(서비스 수준 계약)을 설정할 수 있는 경우, 클라우드 서비스 공급자에게 아웃소싱하기에 아주 적당하다. 이러한 시스템의 예로는 전자 메일, 일정관리 및 콘텐츠 관리 도구 등이 있다.

    이 모델은 애플리케이션 및 시스템을 평가하는 출발점을 제공한다. 하지만 조직마다 차이점이 존재한다는 사실을 고려해야 한다. 예를 들어, 예산 또는 전문가의 부재로 조직 내에서 핵심 시스템을 효율적으로 관리할 수 없는 경우에는 아웃소싱을 고려할 수 있다. 마찬가지로, 일부 미션 크리티컬한 시스템을 클라우드에 두면 적은 비용으로도 추가 기능을 제공할 수 있어 단점이 상쇄된다. 일례로, 지점 또는 신뢰할 수 있는 파트너는 사내 전용 인프라를 구축하지 않고도 시스템에 접근할 수 있다.

    그림 3. IT 성숙도에 따른 S+S 영향

    aa699437_a1f3(en-us,MSDN_10)

    그러나 단순히 애플리케이션을 외부(off-premises)로 이동시킬 기회를 식별하는 것으로는 충분하지 않다. S+S 기회를 활용하려면 의사 결정권자가 조직의 IT 성숙도를 명확하게 이해하고 있어야 한다. 이러한 이해가 있어야만 IT 인프라와 프로세스를 어떻게 변경해야 S+S 채택으로 얻을 수 있는 비용 절감 또는 ROI(투자 수익률) 극대화와 같은 이점을 실현할 수 있는지 결정할 수 있다.

    그림 3은 IT 성숙도("Enterprise Architecture as Strategy"에 근거한 성숙도 모델1)에 따른 다양한 수준에서 S+S 채택의 용이성을 나타낸 것으로, 조직 성숙도를 판단하지 않으면 예측된 ROI가 부정확할 수도 있다는 것을 보여준다.

    Posted by 장현춘

    예정대로 미국시간 4월 12일자로 .NET Framework 4와 Visual Studio 2010이 정식 출시되었다.

    .NET Framework 4는 아래 링크에서 다운로드 받을 수 있다.
    http://www.microsoft.com/downloads/details.aspx?FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992&displaylang=en

    .NET Framework 4 Client Profile을 원할 경우 아래 링크에서 다운로드 받을 수 있다.
    http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=e5ad0459-cbcc-4b4f-97b6-fb17111cf544

    MSDN 구독자들은 아래 링크에서 Visual Studio 2010을 다운로드 받을 수 있다.
    http://msdn.microsoft.com/en-us/subscriptions/default.aspx

    Visual Studio 2010의 각 에디션 별 특징이나 비교자료, 평가판 다운로드 관련한 정보는 아래 링크에서 확인할 수 있다.
    http://www.microsoft.com/visualstudio/ko-kr

    Visual Studio 2010에서 달라진 점에 대해서 잘 정리된 MSDN 매거진 아티클도 살펴볼 만하다.
    http://msdn.microsoft.com/en-us/magazine/ee336135.aspx

    참고로 Silverlight 4는 이번주 목요일 4월 15일에 정식 출시될 예정이다.

    Posted by 장현춘

    image엔터프라이즈 소셜 컴퓨팅에 관한 아키텍처 저널 19권의 두번째 번역물 리뷰를 마치고 여러분의 피드백을 기대하며 올린다.

    이 글은 크게 전반부와 후반부로 나누어 올렸으며 전반부는 아래에서 찾을 수 있다.

    엔터프라이즈 소셜 컴퓨팅 #1/2

    전반부와 후반부를 합치고 영어 원문과 근접한 형태의 문단 배치를 갖는 PDF 버전은 작업이 끝나는 대로 다운로드 받을 수 있도록 공개할 예정이다.

    두번째 번역물은 솔루션 프레임웍부터 시작된다.
    많은 피드백을 기원하며…

    --------------------------------------------------------------------

    그림 2. 소셜 컴퓨팅 솔루션 프레임웍
    aa699425_art4fig2(en-us,MSDN_10)

    솔루션 프레임워크

    Microsoft Office SharePoint Server(MOSS) 2007에서는 위에서 간략히 설명한 소셜 컴퓨팅 비즈니스 요구를 충족할 수 있는 플랫폼 및 솔루션 프레임워크를 제공한다. 소비자 중심적인 솔루션 프레임워크에는 방화벽 외부에 있는 애플리케이션, 서비스 및 사용자도 물론 포함되지만 여기에서는 기업의 사무실 내에서 지원할 프레임워크에 대해서만 다루도록 한다. 다음 그림에서 간단히 살펴볼 수 있다(그림 2).

    LOB(업무용) 시스템
    기업 LOB(업무용) 시스템의 데이터를 MOSS 2007과 같은 엔터프라이즈 플랫폼에 제공해야 할 경우가 있는데, 이러한 데이터로는 고객 관리 정보(CRM), 재무 및 회계 데이터, 영업 정보 등을 들수 있다. SharePoint 플랫폼에 설계되어 있는 주요 비즈니스 프로세스 및 워크플로에서는 성공적인 수행을 위해 이러한 LOB 데이터에 의존한다.

    엔터프라이즈 생산성 서비스
    이러한 서비스는 약한 소셜 소프트웨어 및 강력한 소셜 소프트웨어 모두에 공통적으로 적용될 수 있는 많은 기능을 포함하고 있으며, 조직에서 소프트웨어에 대한 장단기 투자를 구체화할 수 있는 강력한 엔터프라이즈 플랫폼을 선택했을 경우에 핵심적인 장점으로 부각된다. MOSS 2007 서비스에는 다음과 같은 기능이 포함되어 있다.

    • EMM(엔터프라이즈 메타데이터 관리): 플랫폼의 다양한 기능에서 활용할 수 있는 회사의 메타데이터를 중앙에서 관리 및 유지
    • ECM(엔터프라이즈 컨텐츠 관리): 컨텐츠 및 자산 관리, EMM과의 통합으로 컨텐츠 설명 및 분류, 규정 준수 및 보존 정책 아키텍처, 컨텐츠 자산 및 메타데이터를 Microsoft Office 2007 제품군과 같은 생산성 애플리케이션에 통합
    • WCM(웹 컨텐츠 관리): 웹 기반 컨텐츠 관리, 재사용 가능하고 현지화된 컨텐츠 관리, 컨텐츠 준비 및 복제, 웹 기반 컨텐츠로 문서 변환, 주요 UI 및 브랜딩 자산 작성 및 유지 관리
    • BPM(비즈니스 프로세스 관리): SharePoint Designer 2007 워크플로 및 사용자가 개발한 WF(Windows Workflow Foundation) 솔루션을 통해 워크플로를 자동화하여 비즈니스 프로세스를 관리
    • BI(비즈니스 인텔리전스): Excel 서비스, Excel 웹 액세스, KPI(핵심 성과 지표) 등
    • LOB 통합: Excel 서비스에서 제공하는 비즈니스 인텔리전스 데이터를 표시하는 BDC(비즈니스 데이터 카탈로그)를 통해 LOB 시스템을 통합
    • 엔터프라이즈 검색: 플랫폼 외부의 파일 공유 및 데이터베이스에 저장된 컨텐츠, LOB 데이터, 프로필 및 검색 컨텐츠에 대한 검색 기능
    • 사용자 프로필: 프로필 데이터, 관계도 및 관계, 프로필과 연결된 개인 관리 자산, 통합 통신(UC), 현재 상태(Presence) 및 Active Directory 통합
    • 포털 프레임워크: 위의 기능에 대한 사용자 인터페이스를 오케스트레이션하고 제공하도록 설계된 핵심 서비스로, 전자 메일 알림, RSS 피드, Outlook 2007 및 Excel 2007과 같은 Microsoft Office 2007 제품에 대한 연결 등의 기능을 제공하고, 다양한 인증, 권한 부여 및 사용 권한 모델을 제공

    그림 3. 협업 레코드 관리: 홈 페이지
    aa699425_art4fig3(en-us,MSDN_10)

    엔터프라이즈 소셜 컴퓨팅 기능
    MOSS 2007에서는 핵심 생산성 서비스 기반으로 구축되는, 즉시 사용 가능한 여러 소셜 컴퓨팅 기능을 제공하여 기업으로 하여금 다음과 같은 사항을 계획할 때 비교적 소규모 투자로 이러한 기능을 사용할 수 있도록 한다.

    • 블로그: 사용자는 즉시 사용 가능한 (out-of-the-box) 기능을 통해 블로그를 만들고, Microsoft Word 2007 및 Windows Live Writer와 같은 웹 인터페이스와 도구를 통해 글을 게시하고, 범주 및 메타데이터를 관리할 수 있다. 또한 게시물에 의견을 추가할 수도 있다. SharePoint의 블로그 기능 개선 사항으로는 Community Kit for SharePoint의 Enhanced Blog Edition을 들 수 있다.
    • 위키(Wikis): 사용자가 위키 페이지를 빠르게 작성하고 스텁 (stub) 페이지를 만들어 향후 추가 컨텐츠가 필요한 위치를 표시하고, 시간이 지남에 따라 컨텐츠를 편집 및 버전 관리하여 구조화되지 않은 풍부한 지식 저장소를 만들 수 있도록 한다. SharePoint의 위키 기능 개선 사항으로는 Community Kit for SharePoint의 Enhanced Wiki Edition이 있다.
    • 포럼 및 토론 게시판: 사용자가 온라인으로 토론 주제를 게시하고 답변할 수 있는 기능이다. Microsoft Exchange와 통합됨으로써 사용자가 전자 메일 기반의 토론 그룹을 계속해서 사용할 수 있고, 엔터프라이즈 검색 결과에 토론 내용을 인덱싱하고 표시할 수 있도록 토론 스레드의 사본을 온라인으로 저장할 수도 있다.
    • 소셜 코어(Social Core): 내 사이트 (MySite) 기능을 사용하면 사용자가 프로필 뿐만 아니라, 기업내 동료들의 사교적 관계 및 조직 측면에서의 계층도를 만들고 유지 관리할 수 있다. 또한 MOSS에서는 현재 상태(Presence) 외에도 소셜 네트워크에 속한 동료의 활동에 대한 알림 표시 기능을 제공한다.
    • 분석(Analytics): MOSS에서는 즉시 사용 가능한 사용 현황 분석과 이벤트 로깅 기능을 제공한다.

    엔터프라이즈 소셜 컴퓨팅 클라이언트
    MOSS는 주로 웹 브라우저 클라이언트를 통해 접근할 수 있지만 Microsoft Office 2007 생산성 제품군과 다양하게 통합되어 있어 모바일 인터페이스를 통해서도 접근할 수 있다. MOSS에는 웹 서비스도 포함되어 있어 다른 애플리케이션에서 이 웹 서비스를 호출하여 사용자에게 유용한 데이터를 통합, 처리 및 표시할 수 있다. 가장 좋은 예로는 MOSS 데이터를 사용자 지정한 형태로 보여주는 Vista 가젯을 들 수 있다.

    그림 4. 협업 레코드 관리: Outlook 2007에 문서 라이브러리 연결
    aa699425_art4fig4(en-us,MSDN_10)

    기업내 소셜 컴퓨팅의 사례

    다음 사례는 기업내의 플랫폼 기능과 소셜 컴퓨팅 기능을 모두 보여준다. 처음 두 사례는 “약한” 소셜 소프트웨어 환경에 보다 적합한 솔루션을 보여주고 나머지 사례는 “강력한” 소셜 소프트웨어 환경에 적합한 솔루션을 보여 준다.

    그림 5. 협업 레코드 관리: 오프라인으로 문서 편집
    aa699425_art4fig5(en-us,MSDN_10) 

    협업 레코드 관리
    이 솔루션은 각 분야 전문가들(subject matter experts)이 지리적으로 분산되어 있는 조직에서 MOSS의 협업 기능을 사용하여 여러 개의 브리핑 문서를 서로 보다 쉽게 공유하는 방법을 보여준다(그림 3, 4, 5). 이 사례에서는 소비자 사이트에서 제공되는 기능과 같은 것은 보여 주지 않지만, 사용자들이 이미 서로 잘 알고 긴밀하게 함께 작업을 수행하는 “약한” 소셜 시나리오 측면에서 MOSS와 같은 엔터프라이즈 플랫폼이 제공할 수 있는 강력한 기능을 보여 준다. 또한 이 사례는 작업자들이 특별한 비즈니스 요구를 충족하기 위해 신속하게 작성할 수 있는 “임시 애플리케이션(provisional application)”의 좋은 예이기도 하다. 특히 이 솔루션은 다음과 같은 기능을 수행한다.

    • 오프라인으로 탐색 및 편집할 수 있도록 SharePoint 문서 라이브러리를 Microsoft Outlook 2007에 연결한다.
    • 문서 라이브러리를 사용자 지정 뷰로 제공하므로 미리 정의된 기준에 따라 그룹화된 정보 또는 뷰를 빠르게 검색할 수 있다.
    • Groove 2007 작업 영역을 SharePoint 문서 라이브러리에 연결하여 사용자가 미리 선택한 인터페이스에서 관련 정보를 사용할 수 있다.
    • RSS 피드를 통해 주요 문서 메타데이터 및 설명을 사용할 수 있다.
    • SharePoint Designer 2007 워크플로를 활용하여 사용자가 프로젝트 Brief 서식 파일을 완전히 채우지 않아도 Brief에 대해 “빠른 제출 (Quick Submit)”을 수행할 수 있다. 사용자는 필요에 따라 모바일 인터페이스에서도 “빠른 제출” 기능을 사용할 수 있다.

    그림 6. 수직 산업 및 역할별로 필터링한 콜 센터 질문
    aa699425_art4fig6(en-us,MSDN_10)

    그림 7. 콜 센터 등급 드릴다운
    aa699425_art4fig7(en-us,MSDN_10)

    콜 센터 질문 관리
    이 솔루션은 내부의 영업 전문가로 구성된 소규모 팀에 제공되었는데, 이 팀의 영업 활동에는 회사의 최고위 임원(C-level executive)들이 포함되어 있다(그림 6, 7). 이 팀은 영업 관련 전화상담에 사용하는 질문 스크립트들을 Microsoft Word 및 Excel로 관리하고 있는데, MOSS 2007을 사용하여 팀 구성원이 질문의 효용성에 점수을 매기고 개인적인 의견을 제공할 수 있는 방법을 찾아 왔다. MOSS가 제공하는 나열 메커니즘은 가장 효용성이 높은 질문으로 점수가 매겨진 질문 항목이 질문 목록의 “맨 위에 위치”되도록 하여 질문 항목들이 보다 효과적으로 사용될 수 있도록 한다.

    그림 8. 소셜 검색: 결과 인터페이스
    aa699425_art4fig8(en-us,MSDN_10)

    그림 9. 소셜 검색: 검색 결과에 의견 추가
    aa699425_art4fig9(en-us,MSDN_10)

    소셜 검색: Silverlight 검색 애플리케이션
    이 소셜 검색 애플리케이션은 MOSS의 엔터프라이즈 검색 기능을 개선할 수 있는 방법을 보여 주기 위한 프로토타입으로 설계되었다(그림 8, 9). MOSS 엔터프라이즈 검색 카탈로그는 다른 검색 소스 및 소셜 검색 기능으로 보완되었다.

    • 애플리케이션 UI는 Silverlight의 풍부한 시각화 및 UI 기능을 사용할 수 있도록 Silverlight로 작성되었으며, Silverlight 플러그 인을 사용하지 않는 사용자를 위해 표준 ASP.NET 버전을 개발했다.
    • 이 솔루션에는 여러 개의 검색 카탈로그를 하나의 마스터 검색 인덱스로 통합한 웹 서비스를 사용하는데, 이 웹 서비스는 기본 제공이 아닌 별도로 개발되었다.
    • 이 솔루션에는 소비자 소셜 검색과 책갈피 기능 영역에 공통으로 사용되는 소셜 기능이 도입되었다. 사용자는 검색 결과에 등급을 매기고, 검색 결과에 의견을 추가하며, 즐겨 찾는 검색 및 링크를 저장하고, 자신의 링크를 사용자가 생성한 컨텐츠의 카탈로그로 전송할 수 있다.

    그림 10. PKS: 홈 페이지 기능
    aa699425_art4fig10(en-us,MSDN_10)

    그림 11. PKS 포드캐스트 다운로드 및 세부 정보 페이지
    aa699425_art4fig11(en-us,MSDN_10)

    엔터프라이즈 소셜 미디어: Podcasting Kit for SharePoint
    PKS(Podcasting Kit for SharePoint)는 SharePoint 플랫폼에서 사용할 수 있는 “강력한” 소셜 컴퓨팅 환경의 가장 좋은 예 중 하나다(그림 10, 11). 솔루션 액셀러레이터로 설계된 PKS를 사용하면 기업에서 포드캐스트 및 일반적인 소셜 컴퓨팅 기능(등급 매기기, 의견 추가, 즐겨찾기, 다운로드 통계, 사용자 프로필, 맞춤 탐색, 모바일 인터페이스, 분류/태깅)을 사용하여 조직 내에서 지식을 관리 및 통합할 수 있다. PKS는 Public License에 따라 소스 코드와 함께 배포되며 MOSS 2007을 이미 사용 중인 경우에는 무료로 사용할 수 있다.

    참조

    1 엔터프라이즈 요구에 대한 이 표현은 2007 Strategic Architect Forum에서 발표된 Scott Jamison의 프레젠테이션에서 차용했다. 이러한 요구는 지금도 여전히 유효하며 현재의 세계 경제를 고려할 때 보다 빠르게 나타날 가능성이 있다.
    2 Salkowitz, 2008년, pp. 85-88
    3 2008년 6월에 열린 Enterprise 2.0 Conference에서 발표자로 등장한 CIA의 Don Burke 및 Sean Dennehy는 CIA에서 Intellipedia를 배포 및 채택한 내용에 대해 발표했고, Shawn Dahlen 및 Christopher Keohane은 Lockheed Martin의 소셜 소프트웨어 플랫폼을 데모로 보여 주었다.
    4 군대의 호스트 컴퓨터에서 거의 30,000개에 달하는 맬웨어를 발견한 Jeffrey Sorenson 중장의 예를 참조하라.
    5 Facebook에서 엔터프라이즈에 대한 Mark Zuckerberg의 의견을 참조하라. Mark Zuckerberg는 Facebook은 엔터프라이즈 애플리케이션이 아니지만 누군가 엔터프라이즈 소셜 네트워크 애플리케이션을 개발하면 큰 돈을 벌 수 있을 거라고 말한다.
    6 Nikos Drakos, 2008년

    참고 문헌

    Nikos Drakos, A. B. (2008). Tutorial: Social Context, Not Technology, Definies
    Social Software. Gartner.
    Salkowitz, R. (2008). Generation Blend. Hoboken, New Jersey: John Wiley & Sons, Inc.
    Tapscott, D. (2008). Grown Up Digital. New York, New York: McGraw Hill.

    작성자 정보

    Kendrick Efta는 Allyis의 공동 창업자이자 수석 컨설턴트이다. 10년 이상 엔터프라이즈 솔루션을 개념화, 설계 및 구축한 경력이 있는 Ken은 Allyis의 혁신 및 사고의 리더십을 이끌고 있으며 고객에게 전략적 통찰 및 방향을 제공하는 업무를 담당하고 있다. Allyis를 공동 창업하기 전에는 시애틀 지역의 기업 다수를 대상으로 기술 컨설턴트로 활약했다. Ken은 Allyis의 공동 창업자인 Richard Law와 Ethan Yarbrough와 함께 Western Washington University로부터 첫 번째 “올해의 젊은 동문 상”(Young Alumnus of the Year)을 받았다.

    이 주제에 대한 내용 더 보기

    • Microsoft 제품을 통해 소셜 컴퓨팅을 비즈니스에 맞게 최대로 활용하는 방법(영문): http://www.microsoft.com/downloads/details.aspx?FamilyId=C5844123-7F31-49D4-811C-7B90E6217B1D&displaylang=en
    • Microsoft 플랫폼에서의 소셜 컴퓨팅(영문): http://www.microsoft.com/sharepoint/capabilities/collaboration/social.mspx

    Posted by 장현춘

    마이크로소프트의 클라우드 플랫폼인 Windows Azure Platform은 지난 2010년 2월 1일 전세계 21개국을 대상으로 상용 서비스를 시작했으며 여기에 해당 국가는 오스트리아, 벨기에, 캐나다, 덴마크, 핀란드, 프랑스, 독일, 아일랜드, 인도, 이탈리아, 일본, 네델란드, 뉴질랜드, 노르웨이, 포르투갈, 싱가포르, 스페인, 스웨덴, 스위스, 영국, 미국 등 21개국이었다.
    미국 기준으로 오늘 4월 9일부로 기존 21개국 이외에 추가로 20개국에 Windows Azure Platform이 정식 서비스에 들어가게 되어, 총 41개국에서 Windows Azure Platform을 사용할 수 있게된다. 제공되는 서비스로는 기존 제공되던 Windows Azure, SQL Azure 이외에 추가로  4월 9일부터 Windows Azure Platform AppFabric이 새롭게 추가로 서비스된다.

    4월 9일부로 새롭게 서비스 대상국에 포함되는 20개국은 다음과 같다.
    호주, 브라질, 칠레, 콜롬비아, 코스타리카, 키프로스, 체코, 그리스, 홍콩, 헝가리, 이스라엘, 룩셈부르크, 말레이지아, 멕시코, 페루, 필리핀, 폴란드, 프에르토리코, 루마니아, 트리니다드토바고 등 20개국이다.
    안타깝게도 이번 서비스 확대 대상국에도 한국은 제외되었다.

    Windows Azure Platform 사용 요금은 서비스 대상 국가 41개국에 동일하지 않다. 각 나라별 각 서비스별 이용 요금은 여기에서 비교해볼 수 있다. 참고로 상용 서비스 이후 현재 Windows Azure Platform를 이용하는 고객들 목록은 여기서 확인할 수 있다.

    .NET Framework 4가 4월 12일에 정식 출시가 되는데, 지난 MIX 2010에서 밝힌 것 처럼 .NET 4 정식 출시 90일 이내에 Windows Azure에서 지원할 예정이다. 이에 대한 대비 차원에서 현재 Windows Azure의 OS 빌드는 .NET 4 RC까지 올렸다고 한다.

    Posted by 장현춘

    마이크로소프트의 대표적인 개발자 및 IT Pro를 위한 온라인 행사로 자리잡은 TechDays 올 봄 세션들이 오픈한지 2주정도 되었다. 올해는 예전과 다르게 올 한해 주목해야할 IT Trend를 선정하고 이것과 연계하여 행사의 트랙과 세션을 기획하였다. 그 어느때보다도 세션 구성에 공을 들여 IT Trend와의 연관성 및 일관성을 유지하려 노력하였다.

       

    트랙은 크게 개발자 트랙과 IT Pro 트랙으로 구분하고 각 트랙별로 세분화된 서브 트랙및 관련 세션들을 배치하였다. 개발자 트랙의 서브 트랙으로는 개발플랫폼, 클라우드 컴퓨팅, 모바일 및 임베디드, UX 및 3 Screens, 웹 플랫폼 등이 있고, IT Pro 서브 트랙으로는 협업 플랫폼, 통합 보안 환경, 클라우드 컴퓨팅, 데이터베이스 등이 있다. 아래는 개발자 트랙과 IT Trend의 연관 관계를 표시한 것이다.

    공개한 바와 같이 다음주 월요일인 4월 12일에 .NET Framework 4 및 Visual Studio 2010이 정식 출시된다. 카운트다운은 이미 시작되었다. 하여 이와 관련하여 TechDays에서 준비한 세션을 한번쯤 둘러보는 것이 필요할 것 같아서 관련 정보를 뽑아 보았다.

    [ Visual Studio 2010 ] Atlas of the Visual Studio 2010

    [ Visual Studio 2010 ] Visual Studio 2010과 .NET Framework 4.0의 새로운 기능

    [ Visual Studio 2010 ] Dynamic(for example, these four examples)

    [ Visual Studio 2010 ] Visual Studio 2010에서의 SharePoint 2010 개발-REST

    [ Visual Studio 2010 ] Visual Studio 2010 ALM & Visual Studio TFS 2010 1

    [ Visual Studio 2010 ] Visual Studio 2010 ALM & Visual Studio TFS 2010 2

    [ Visual Studio 2010 ] .NET Framework 4.0 Managed Extensibility Framework

    [ Visual Studio 2010 ] RValue Reference와 lambda 완전 이해

    [ Visual Studio 2010 ] Compute Shader와의 만남

    [ Visual Studio 2010 ] Visual Studio 2010 Beta 2 살펴보기

    [ Visual Studio 2010 ] Visual Studio 2010 Beta2 IDE

    [ Visual Studio 2010 ] Visual Studio 2010에서의 Agile Development 적용 (코드 리뷰, 단위 테스트)

    [ Visual Studio 2010 ] Debugger Enhancements and Improvements in VS10

    [ Visual Studio 2010 ] Visual C++ 10에서 병렬 프로그래밍 하기

    [ Visual Studio 2010 ] Basic of directx11 programming.

    [ Visual Studio 2010 ] New Features in APS.NET 4.0

    [ Visual Studio 2010 ] Microsoft Silverlight 4 Overview

    [ Visual Studio 2010 ] Visual Studio 2010 & WPF 4.0

    [ Visual Studio 2010 ] Visual Studio 2010에서의 SharePoint 2010 Development

    [ Visual Studio 2010 ] Azure로 시작하는 클라우드 애플리케이션 개발

    [ .NET ] 실버라이트 4로 비즈니스 앱 개발하기

    [ ALM ] 더욱 편리해지고 더욱 효과적인 ALM

    [ ALM ] 요구사항 관리를 통해 고객과 개발팀 소통하기

    [ ALM ] 형상관리를 통한 애플리케이션 신뢰성 높이기

    [ ALM ] 쉽고 편리한 팀 커뮤니케이션 및 프로젝트 모니터링

    이번 TechDays에도 푸짐한 경품이 준비되어 있어 IT Trend도 살펴보고 신기술도 익히고 더불어 평소 필요했던 소품을 장만하는 기회로 삼으면 좋을 듯 하다.

    Posted by 장현춘

    약 4년전 마이크로소프트 본사에서는 아키텍처 저널에 대한 한글 버전을 포함하여 다양한 언어 번역본도 함께 제공했었지만, 전 세계 다양한 언어에 맞추어 제공하기엔 비용이 만만치 않았다. 하여 중도에 한글 버전이 제공되지 않기에 이르렀고, 올해 한국마이크로소프트 차원에서 새롭게 한글 번역판을 제공하고자 시도중이다. 현재 23권까지 나와 있는 아키텍처 저널 중에서 최근 것 위주로, 그리고 내용의 가치를 가려서 시장에서 원하는 내용 위주로 선별하여 번역물을 제공할 예정이다. 현재 외부 전문가를 통해 서너개의 아키텍처 저널 아티클이 동시에 번역되고 있으며 이를 내부에서 리뷰한 후, 본 블로그에 일정 분량씩 게시하여 피드백을 받아 최종 수정을 거친 후, 완성된 아티클들은 PDF로 변환하여 다운로드 받을 수 있게 제공할 예정이다.

    먼저 아키텍처 저널 19권에 수록되어 있는 Kendrick Efta의 Enterprise Social Computing의 한글 번역물을 리뷰 과정에 맞추어 두 번에 걸쳐 게시할 예정이다.

    많은 분들의 피드백을 기대하며...

    --------------------------------------------------------------------------

    엔터프라이즈 소셜 컴퓨팅 (영어 원문은 여기)

    작성자: Kendrick Efta

    요약
    오늘날 기업 내에서 흔히 볼 수 있는 핵심적인 비즈니스 요구와 애플리케이션 추세를 고려할 때 Microsoft Office SharePoint Server 2007은 기업이 소규모로 시작하여 소비자 중심 소셜 컴퓨팅 기술의 효과를 방화벽 내에서 재현할 수 있는 훌륭한 도구이다. MOSS를 사용하면 소규모의 “약한” 소셜 컴퓨팅을 지원할 뿐만 아니라 “강력한” 소셜 컴퓨팅 시나리오로 확장하여 여러 지역에 광범위하게 분산되어 있는 다수의 사용자를 연결하고 조직 내에서 집단 지성(collective intelligence) 을 발휘할 수 있다. 성공 사례가 하나, 둘 나타나고 사례 연구가 윤곽을 드러내면서 조직은 고객, 파트너, 외부 커뮤니티와 관련된 소셜 컴퓨팅 투자를 계획하게 된다. 조직은 비즈니스 의사 결정자와 IT 전문가 간의 관계를 긴밀하게 유지하여 SharePoint 플랫폼에서 더욱 다양한 도구 집합을 채택하거나 개발하는 방법을 모색할 수도 있다. SharePoint 플랫폼에서는 방화벽 내부와 외부 모두에서 소셜 컴퓨팅을 사용할 수 있다.

    소개
    웹 2.0 단계의 인터넷의 특징은, 정적이고 이미 생성되어 있는 웹 컨텐츠 중심의 에코시스템으로부터 사용자의 참여와 홍보를 통해 활기찬 커뮤니티가 되는 애플리케이션 및 서비스 에코시스템으로의 근본적인 전환이 이루어진다는 점이다. 이러한 새로운 서비스와 애플리케이션은 사용자에게 다양하면서도 공동 작업이 가능하고 사교적인 환경을 제공하므로 집단 지성 즉 “대중의 지혜”가 생성되도록 촉진할 수 있고, 사용자가 문제를 해결하고 의견 및 인식을 형성하며 커뮤니티와 상호 작용하는 방법을 발전시킬 수 있다. 이러한 사용자 경험과 소셜 컴퓨팅 기능의 효과가 웹 2.0 기술의 특징이다.
    이러한 전환은 소비자 웹 애플리케이션 및 서비스에 가장 극적인 영향을 미쳐 왔음에도 불구하고, 많은 비즈니스 및 기업 입장에서는 여전히 웹 2.0 소비자 및 소셜 웹의 효과를 조직의 사무실 내에서 최대로 재현하는 방법에 대해 고심하고 있다.
    기업에는 소셜 애플리케이션 및 서비스를 성공적으로 배포하기 위해 고려하고 해결해야 하는 여러 가지 고유한 요구와 과제가 있다. 그리고, “약한” 소셜 소프트웨어 환경과 “강력한” 소셜 소프트웨어 환경의 개념 구분은 특히 기업 내의 사회적 구조 및 규범과 관련되어 있기 때문에 기업이 성장하고 규모를 키워감에 따라 비즈니스 가치를 공고히하면서 소셜 컴퓨팅에 대한 점진적 투자 계획을 세우는데 유용하다. 마지막으로, Microsoft Office SharePoint Server 2007과 같은 플랫폼에 대한 투자를 통해 기업은 “작게 시작”하여 플랫폼의 각 요소를 시험해가면서 기업의 요구를 가장 잘 충족시킬 수 있는 것을 선정하고, 이를 기업 전략적인 측면에서의 요구사항을 충족시킬 수 있는 입증된 서비스와 애플리케이션으로 “확장”할 수 있다.

    기업의 비즈니스 요구
    많은 기업은 엔터프라이즈 플랫폼 및 소셜 소프트웨어를 평가할 때 고려할 만한 비즈니스 요구에 대한 공통 패턴을 보여준다. 이러한 요구는 엔터프라이즈 플랫폼 및 소셜 소프트웨어가 “애플리케이션의 대세(Application Megatrends)”1 (그림 1)임을 분명히 보여 준다.

    • 민첩성(Agility): 몇 시간 또는 며칠 만에(몇 주 또는 몇 개월 단위가 아니라) 구성하여 즉시성 비즈니스 요구를 만족시킬 수 있는 애플리케이션이다. 이러한 애플리케이션의 비즈니스 요구는 많은 경우에 전술적인 수준에서 식별되고 관리되며, 비즈니스 요구가 더 이상 존재하지 않게 되면 폐기하거나 사용 중지할 수 있기 때문에 “임시 애플리케이션(provisional applications)”으로 불리기도 한다. 역설적으로, 이러한 임시 애플리케이션은 규모가 크고 보다 포괄적인 솔루션에 대한 투자 수익률(ROI)을 보여줄 수 있기 때문에 POC(개념 증명)로 활용할 수도 있다.
    • 사용 편의성(Usaility): 사용자에게 이미 익숙한 인터페이스를 통해 기능 및 정보를 제공한다. 예를 들어 사용자가 근무 시간의 대부분을 Microsoft Outlook 2007을 이용하는 경우 사용자는 Outlook 인터페이스 내에서 주요 기능과 정보에 접근할 수 있어야 한다. 그뿐 아니라, 소셜 컴퓨팅 정보를 전달할 수 있는 유비쿼터스 채널의 필요성이 점점 증가하고 있다. 이러한 유비쿼터스 채널은 모바일 인터페이스, 데스크톱 인터넷 애플리케이션 또는 리치 인터넷 애플리케이션(예: Silverlight 또는 Flash)의 형태가 될 수 있다.
    • “롱 테일” 비즈니스 요구 (Long Tail Needs): 소규모 회사 또는 대규모 조직 내의 작은 팀은 대부분 자신에게 특화된 애플리케이션을 구축할 여유가 없기 때문에 여전히 매우 개성이 강한 비즈니스 요구를 충족할 수 없다. 이러한 기업의 IT 조직은 기업 전체의 대규모 요구는 해결할 수 있지만, 일반적으로 개별적인 요구 사항이 있는 소규모 프로젝트는 구현할 시간이나 예산이 없다.
    • 강력해진 접근성(Empowered Access): 경영진이나 임원뿐만 아니라 모든 사용자가 더 나은 결정을 내릴 수 있도록 돕는 소프트웨어 성능이다. 강력해진 접근성은 기업내 정보의 민주화로 표현할 수 있다. 또는 단순하게 표현하여 사용자 역할에 관계없이 현명한 판단과 조치를 취할 수 있도록 플랫폼의 기능을 활용하는 것이라고 할 수 있다.

    그림 1: 인구통계 및 근무환경 변화의 영향을 받는 비즈니스 요구

    또한, 기업이 위에서 언급한 비즈니스 요구를 인지하고 반응하는 방식에 영향을 줄 수 있는 “수평적” 사회 변화도 있다.

    • 노동자 인구 통계(Worker demographics): 1977년부터 1997년까지 태어난 8천 1백만 명의 어린이들(Tapscott, 2008년, p. 16)(“Y 세대” 또는 “밀레니엄 세대”라고도 함)이 대거 노동 인구로 진입하기 시작했다. 이 노동자들은 기술과 함께 성장했고 근무지에서도 사생활에서와 마찬가지로 기술 및 소셜 컴퓨팅의 혁신적인 사용법을 채택하고 찾아내려 한다. 반대로 1946부터 1964년 사이에 태어난 7천 7백만 명의 “베이비 붐 세대” 노동자들(Tapscott, 2008년, p. 16)은 은퇴 연령에 가까워져 노동 인구에서 빠져나가기 시작한다. 이 세대의 노동자들은 기술을 폭넓게 활용하지는 않는다는 인식이 있지만 이들은 방대한 지식과 경험을 가지고 있다는 공감대가 있다. 소셜 컴퓨팅 기술은 이들이 은퇴하기 전에 지적 자산을 기록하고 공유할 수 있는 훌륭한 방법이 될 수 있다.2
    • 차세대 근무환경(Next-generation workplaces): 기업은 점점 종래의 근무환경 인프라 및 기대를 탈피해 나가고 있다. 이러한 현상으로는 재택 근무, 조직의 모든 계층 구조에 있는 동료와의 원격 공동 작업, 버추얼 팀제 구조, 고객 및 파트너와의 관계 관리 방식 변화, 그리고 경제적 상황이 불안정함에 따라 “임시직(Gig Economy)”에 종사하는 프로젝트 프리랜서 및 컨설턴트의 비율 증가 등을 꼽을 수 있다.
    • 소비자 기반 소셜 컴퓨팅 사용 사례(Comsumer-based social computing use cases): 많은 노동자가 소셜 컴퓨팅에 적극적, 효율적으로 참여하고 있고, 소비자 기반 도구를 회사 내에서 활용할 수 있으며, 또 활용해야 한다는 기대가 커졌다. 최근에는 소비자 모델을 기반으로 기업내에 소셜 컴퓨팅을 배포하여 널리 알려진 성공 사례3 가 나타나고 있다. 이러한 성공 사례는 기업 사무실 내에서 소셜 컴퓨팅을 채택하여 소비자 기반 기술의 긍정적인 효과를 재현하고 회사의 비즈니스 요구를 이행할 수 있는 방법에 대한 활발한 논의를 불러일으켰다.

    기업의 당면과제
    대부분의 노동자는 소비자용 소셜 컴퓨팅 기술을 통해 생산성을 향상시키고 집단 지성을 발휘할 준비가 되어 있지만, 문제는 그러한 도구의 배포 및 유지 관리를 담당하는 IT 부서에 있다. IT 부서 입장에서는 보안이 뛰어나고 제어가 가능하며 회사 정책에 위배되지 않으면서도 관리가 용이한 소위 기업용 도구를 필요로 한다. 이러한 거버넌스 영역에 대한 고민은 매우 현실적이다. 맬웨어 감염 시스템4으로 인해 지적 재산이 누출되어 생산성이 손상된 예를 많이 볼 수 있다. 또한, 소비자 지향적인 소셜 컴퓨팅 서비스는 대부분 현재 기업 서비스5 전용으로 사용할 수 있도록 조정할 계획이 없으므로 기업이 사무실 내에서 소비자 웹의 효과를 재현하려 할 때는 고려해야 할 핵심적인 사항 몇 가지 있다.

    • 소셜 컴퓨팅 솔루션의 채택 및 배포에서 성공의 열쇠는 대체로 사용자에게 달려 있다. 즉, 사용자들의 관계, 공동 작업 방식, 의사 소통 방식, 사용자들이 사용하는 업무 프로세스에 초점을 맞춰야한다. 일반적으로 기술 자체는 솔루션에서 그보다 훨씬 작은 부분을 차지한다. 기업내 직원들의 요구를 이해하면 기술을 통해 그러한 요구를 충족할 가능성이 크게 높아지고 사용자가 기술에 대해 잘 알게 되어 기술의 이점을 잘 활용하게 될 가능성도 그만큼 커진다.
    • “약한” 소셜 컴퓨팅 시나리오와 “강력한” 소셜 컴퓨팅 시나리오를 모두 지원하는 엔터프라이즈 플랫폼에 대해 알아볼 필요가 있다. 최근의 Gartner 보고서6에는 “약한” 소셜 컴퓨팅과 “강력한” 소셜 컴퓨팅간의 차이점이 설명되어 있다. 모든 공동 작업 기술은 어느 정도 사회적 특성을 띄고 있지만 “약한” 소셜 소프트웨어는 개인간에 존재하는 기존의 연결 및 사회적 상호 작용을 보완할 수 있다 (전자 메일, 문서 공동 작업, 인스턴트 메시징). “강력한” 소셜 소프트웨어는 다소 느슨한 사회적 연결장치를 통해 다수의 개인 간 상호 작용을 촉진한다 (Facebook, Digg, LinkedIn, SlideShare, Twitter). 이 차이를 통해 조직은 약한 소셜 소프트웨어와 강력한 소셜 소프트웨어 사이의 연결선상에서 비즈니스 요구를 식별할 수 있다. 그러면 이러한 요구에 대해 조직내 사용자와의 토론을 계획하고, 이 사용자들이 소셜 컴퓨팅 기술에 대한 투자를 계획하도록 할 수 있게 된다.
    • 너무 크게 시작하지 마라. 지금 현재 가지고 있는 플랫폼 (“약한” 소셜 소프트웨어)을 이용하여 시작하되, 점차 소셜 컴퓨팅(즉, “강력한” 소셜 소프트웨어)이 비즈니스 요구를 충족시킬 수 있다는 것을 증명하도록 하라.
    • 고객, 파트너, 기타 소비자 지향적인 커뮤니티 및 서비스를 참여시킬 수 있도록 소셜 컴퓨팅에 대한 장기 투자를 계획하라.
    • 거버넌스 요구는 시간에 따라 변화하므로 필요에 따라 거버넌스 및 규정 준수에 대한 접근 방식 및 기능을 점진적으로 발전시켜 나가라.

    (… 다음에 Solution Framework부터 이어서 ...)

    Posted by 장현춘

    클라우드상의 관계형 데이터베이스 서비스인 SQL Azure가 올 6월까지 업데이트 일정을 발표했다. SQL Azure는 마이크로소프트 SQL Server를 클라우드로 확장한 것으로 비지니스 도메인에 따라서 때로는 클라우드로, 때로는 로컬 데이터베이스를 사용할 수 있는 유연함을 제공하고 있다. SQL Azure 발표된 시점부터 많은 피드백이 있었고, 그 중 일부가 이번 업데이트를 통해 구현되었다.  아래는 서비스 업데이트 일정을 보여준다.

    추가될 기능에는 다음과 같다.

    1. 50 GB 데이터베이스  (SU3)
    SQL Azure가 처음 공개될 당시부터 논란이 되었던 용량 제한 이슈를 어느정도 풀어줄 것으로 기대한다. 현재 1GB 스탠다드 버전과 10GB 비지니스 버전의 두 가지만 제공하고 있어서, 좀 더 큰 용량을 제공해달라는 피드백이 많았는데, 서비스 업데이트 3 시점에 맞추어 50GB 짜리 서비스가 제공될 예정이다.

    2. SQL Azure OData 서비스 (Incubation)
    MIX 키노트에서 시연한 것처럼 SQL Azure에서 곧바로 OData 프로토콜 형태로 서비스를 노출시킬 수 있다. OData는 REST 기반의 통신 기법으로 JSON, Atompub을 데이터포맷으로 쓰는 표준을 지향하는 통신 기법이라 할 수 있다. 현재 incubation 상태이며, SQL Azure Lab을 통해 사용해볼 수 있다.

    3. 프로젝트 "휴스턴" (SU3)
    지난 PDC09에서 소개되었던 클라우드 기반 데이터베이스 개발 도구인 "Houston"이 서비스 업데이트 3 시점에 맞추어 추가될 예정이다. 프로젝트 휴스턴은 리본바, Object Explorer 등을 갖춘 Silverlight 기반의 데이터베이스 도구로서 클라우드 상에서 동작한다. 프로젝트 휴스턴에 관한 좀 더 상세한 소개 및 데모는 PDC 세션을 참고하시길..

    4. MARS (Multiple Active Result Sets) 지원 (SU2)
    하나의 커넥션에 대해 다수의 Result Set을 열어 작업할 수 있는 기능을 서비스 업데이트 2 시기에 맞추어 지원한다는 방침이다.

    5. Spatial type 지원 (SU3)
    SQL Server 2008부터 지원하기 시작한 GEOMETRY/GEOGRAPHY 데이터 타입을 SQL Azure에서도 사용할 수 있게된다. GPS 관련된 시장이 커지고 지도를 이용한 서비스가 확산됨에 따라 관심을 끌게 될 것으로 보인다.

    참고로, Windows Azure Platform AppFabric이 4월 9일을 시작으로 상용 서비스에 들어간다. 물론 현재 우리나라는 Windows Azure Platform 자체가 상용 서비스 대상 국가에서 제외되었긴 하지만, 전 세계적으로 Windows Azure Platform AppFabric 서비스는 상용화 서비스에 들어간다. AppFabric에 대해 테스트를 해보고 관련된 피드백을 전달할 수 있는 공간으로 AppFabric Lab이 있다.

    Windows Azure Platform에 대한 좀 더 많은 정보는 공식 싸이트인 http://azure.com을 방문하시길..

    Posted by 장현춘

    마이크로소프트가 격월로 발간하는 아키텍처 저널이 23호가 모습을 드러냈다. 마이크로소프트 직원 뿐만 아니라, 현업의 아키텍처 관련 전문가들로부터 기고받은 글을 싣고 있는 아키텍처 저널은 누구나 무료로 PDF 버전을 다운로드 받을 수 있다. 신청 방법은 여기를 참고...

    이번 호는 "Architecture Modeling and Processes”라는 주제로 다음과 같이 총 7편의 아티클을 담고 있다. 이번 23호 아키텍처 저널 PDF 버전 다운로드는 여기.

     

     

    아키텍처 저널을 한글로 번역하여 제공하기 위한 논의가 마이크로소프트 내부에서 진행되고 있다. 비용 문제가 있어서 꼭 필요하다고 판단되는 아티클을 우선적으로 선별하여 주기적으로 번역된 글을 제공할 예정이다. 

    Posted by 장현춘