메인 컨텐츠로 가기

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

엔터프라이즈 전문 지식 위치 시스템 빌드하기, Part 1: 전문 지식 위치 패러다임 및 참조 아키텍처 유도하기

SOA 패턴 적용하기

Murali Vridhachalam, IT아키텍트, IBM
Murali Vridhachalam은 오픈 그룹 인증 IT 아키텍트이며 1994년 이후로 IBM에 재직 중이다. 그는 IBM 내에서 몇 가지의 엔터프라이즈 애플리케이션들을 설계하고 배치한 경험이 있다. 현재 그의 관심사는 서비스로서 소프트웨어와 서비스 도메인으로서의 플랫폼인 아키텍팅 솔루션이다. 그는 IBM의 광범위한 엔터프라이즈 소프트웨어 제품을 사용하여 혁신적인 솔루션을 개발하는 것을 목표로 하는 소프트웨어 엔지니어 팀을 기술적으로 이끌고 있다

요약:  모든 규모의 엔터프라이즈들은 비즈니스 문제를 해결하거나, 영업 기회를 지원하거나 간단한 문제를 답변하는 데 도움을 주기 위해 해당 엔터프라이즈 내에서 전문가들을 활용해야 합니다. 이 기사에서는 엔터프라이즈 전문 지식 위치에 대해 참조 아키텍처를 유도하기 위해 SOA 패턴을 적용하는 방법에 대해 학습합니다. 기사의 part 2에서는 솔루션 아키텍처, 데이터 모델 및 핵심적인 아키텍처의 의사결정을 논의할 것입니다.

이 연재 자세히 보기

원문 게재일:  2010 년 11 월 02 일 번역 게재일:  2011 년 5 월 24 일
난이도: 중급 원문:  보기 PDF:  A4 and Letter (576KB | 22 pages)Get Adobe® Reader®
페이지뷰:  1299 회
의견:  


소개

엔터프라이즈 내에서의 전문 지식 위치에 대한 솔루션은 일반적으로 비즈니스 그 자체만큼이나 다양한 전문 지식 주제에 대해 비즈니스 전반에 걸쳐서 전문가들의 전체론적인 관점을 제공할 때에 매우 효율적이다. 전사적 전문 지식 위치 시스템에 몇 가지의 핵심 부문들이 있다. 이는 다음과 같다.

  • 전문 지식 주제의 분류 - 대개 다양한 비즈니스 부분들에서 작성되고 폭소노미 접근방식을 사용하여 증가된 전문 지식 주제들의 분류체계는 전문 지식 주제가 현재의 내용이며, 대중적인 전문 지식 주제들도 정확하게 표현되도록 보장한다.
  • 전문 지식의 레벨, 지원할 의무 및 가시성의 범위에 따른 전문가의 식별(예: 전사적, 커뮤니티 또는 그룹 등) - 다양한 전문 지식 레벨이 있으며, 그림 1 및 그림 2와 같이 전문가들은 대개 주어진 전문 지식 주제에 대한 전문 지식 레벨 중 하나로 식별되고 가시화된다.
  • 전문가의 지명 - 전문가들은 주어진 전문 주제에 대해 스스로 지명하거나 비즈니스에서 지명될 수 있다.
  • 전문가들과의 연결 메소드 - 전문가들의 위치가 확인되면 동기식 또는 비동기식으로 연결될 수 있다. 일반 사용자들은 전문가들과 대화를 하거나(인스턴트 메시지) 시스템에 질문을 제출할 수 있으며, 그 질문은 전문가 그룹이나 한 명의 전문가에게 경로 지정될 수 있다.
  • 전문가 식별에 대한 소셜 미디어의 영향 - 대중들과 수행하는 비즈니스의 다양한 측면을 위한 모든 규모의 엔터프라이즈들이 소셜 미디어를 널리 채택하는 과정에서 소셜 미디어의 핵심적인 사용 중 하나는 엔터프라이즈 내부 및 외부적으로 소셜 미디어에서 그들의 활동이나 명성을 기반으로 하는 잠재적인 전문가들의 식별이다. 예를 들어, 클라우드 컴퓨팅에 대해 광범위하게 블로그하는 사람은 실제로 클라우드 컴퓨팅 분야의 전문가일 수 있다.
  • 전문가들의 평판 시스템 - 다른 사람들을 지원하는 전문가들의 지속적인 참여를 고취하기 위해 전문 지식 위치 시스템은 대중적인 전문가들을 식별하는 방법과 일반 사용자들과 전문가들 사이의 상호작용을 위한 평가 메커니즘을 제공해야 한다. 중요한 점은 구현이 그 엔터프라이즈의 개인정보 보호정책 가이드라인을 준수해야 한다는 것이다.

그림 1. 전문 지식 레벨
전문 지식 레벨

그림 2. 전문 지식 위치 헌신 레벨
전문 지식 위치 헌신 레벨

상위 레벨 요구사항

엔터프라이즈 전문 지식 위치 시스템의 요구사항은 엔터프라이즈 전반에 걸쳐서 다양한 비즈니스 이해당사자들로부터 식별된다. 소개 섹션에서 나열한 핵심 부문 이외에도 다음 내용들은 전문 지식 위치 시스템이 반드시 구현해야 하는 상위 레벨 요구사항들이다.

  • REQ-01: 일반적인 사용자 인터페이스 및 경험 - 일반 사용자, 전문가 및 관리자들에게 웹 애플리케이션의 형태로 일반적인 사용자 인터페이스와 경험을 제공한다. 하지만 전문가들과 전문가 등록에 대한 정보를 수집하는 기능은 다른 인트라넷 사이트에서 사용 가능하게 되어야 한다. 웹 애플리케이션은 모바일 장치를 통해 액세스 가능해야 한다.

  • REQ-02: 전문 지식 분류체계 - 비즈니스는 비즈니스의 다양한 부분들, 예를 들어, 영업, 마케팅, 재무 등에서부터 엔터프라이즈 전반에 걸쳐 일반 사용자들에게 전문가들을 노출하려는 목표가 있다. 이러한 영역들은 해당 영역의 다양한 전문 지식 주제들을 표현하는 특정 분류체계를 활용할 수 있다.

  • REQ-03: 분류체계 관리 프로세스 자동화 - 비즈니스는 외부 마스터 데이터 소스로부터 가져온 전문 지식 분류체계의 동기화를 자동화하려는 목표가 있다. 그 프로세스는 분류체계로부터 삭제된 전문 지식 주제들을 고려해야 할 것이며, 시스템은 그 변경을 분류체계 관리자들에게 알리고 이러한 전문 지식 주제 분야의 전문가들에게도 알린다.

  • REQ-04: 향상된 협업 - 더 풍부한 정보의 시의 적절한 지원, 사회적 협업(태깅)을 통한 개선된 검색 및 보고를 활용하도록 일반 사용자, 전문가 및 관리자들 사이에 향상된 협업 기능을 제공한다. 실시간 상호작용 및 비동기식의 질문과 답변 상호작용이 일반 사용자와 전문가 사이에 필요하다. 기능은 상호작용 평가의 측면에서 전문가들에게 피드백을 제시하도록 제공되어야 한다.

  • REQ-05: 서비스에 액세스하는 다중 인트라넷 클라이언트와 외부 클라이언트 사용 - 여러 서비스 이용자들, 예를 들어, 웹 애플리케이션 프리젠테이션 계층, 인트라넷 웹 페이지, 외부 웹 패이지, 모바일 장치 등은 다중 바인딩을 통해 전문 지식 위치 서비스에 액세스해야 할 것이다. 전문 지식 위치 시스템은 이러한 클라이언트들이 이러한 서비스에 액세스하도록 허용해야 한다.

  • REQ-06: 서비스 재사용 - 다른 시스템에서부터 다시 사용될 수 있는 서비스를 식별한다.

  • REQ-07: 표준 및 일반적인 미들웨어 채택 - 권장되는 배치 인프라 미들웨어 및 툴링의 선택을 포함하여 업계 표준 기술을 채택한다.

  • REQ-08: 안전하고 믿을 수 있는 방식으로 내부 및 외부 클라이언트에 액세스 제공 - 내부 및 외부 클라이언트에게 안전하고 믿을 수 있는 방식으로 외부 액세스로의 솔루션 인프라를 노출하지 않고 전문 지식 위치 서비스에 액세스를 제공한다.

  • REQ-09: 연결 도메인 사이에 유연한 통신 - 전문 지식 위치 연결 도메인은 엔터프라이즈 외부의 서비스 이용자들이 전문 지식 위치 시스템 내에서 느슨하게 커플링되는 방식으로 서비스에 액세스할 수 있도록 보장하는 외부 연결 도메인과 원활히 통합해야 한다. 메시지 변환과 다중 프로토콜에 대한 지원이 제공되어야 한다.

  • REQ-10: 서비스 이용자들에게 변경의 영향 최소화 - 전문 지식 발견 서비스로의 변경이나 전문 지식 위치 시스템의 인프라 면에서의 변경으로 서비스 이용자들에게 중단이 발생하거나 중단된 상태가 유지되는 것을 방지해야 한다.

  • REQ-11: API를 통해 서비스 이용자가 데이터에 액세스 사용 - 인트라넷과 외부 사이트의 웹 페이지들은 전문 지식 분류체계, 전문가들 및 질문과 답변의 지식 기반에 대한 데이터가 들어있는 관계형 데이터베이스에 저장된 정보를 표시해야 할 것이다. 관계형 데이터베이스의 데이터는 분석을 통해 풍부해질 수 있으며, 서비스 이용자들이 이 데이터에 액세스해야 할 것이다.

  • REQ-12: 다양한 데이터 세트에 이용자가 실시간으로 액세스 사용 - 전문 지식 발견 시스템은 데이터 소스의 다양한 세트에 저장되는 전문 지식 정보에 액세스해야 한다. 시스템은 IBM 내에서 사회적 활동에 따라 추천된 전문가들을 검색하도록 이러한 소스에 실시간 액세스가 필요하다. 쿼리는 5초 이내에 처리되어야 한다.

  • REQ-13: 인증 - 사용자가 웹 애플리케이션이나 다른 클라이언트로부터 전문 지식 위치 서비스와 상호작용할 때에 그 ID를 인증하고 확인할 필요성이 있다. 솔루션은 인증 서비스를 제공하기 위해 필요하다.

  • REQ-14: 권한 부여 - 시스템에서는 사용자가 사용자 또는 시스템의 ID를 기반으로 허용된 정보에 액세스 권한을 갖도록 보장해야 한다. 권한 부여는 큰 덩어리로 나누는 서비스 기반 권한 부여(서비스 컴포넌트)를 포함하여 잘게 쪼개는 서비스 레벨 데이터 액세스 제어에 이르기까지 많은 컴포넌트들에 필요할 수 있다.

  • REQ-15: 워크플로우에 대한 인적 상호작용 합병 - 전문 지식 영역 설정, 분류체계 설정 및 전문가 서명의 승인을 지원하는 강력한 인적 워크플로우가 구현되어야 한다.

  • REQ-16: 데이터의 마스터 관리를 제공하는 구현 서비스 - 시스템은 전문 지식 데이터 통합을 집행하는 서비스를 구현해야 한다. 시스템은 일관성 및 데이터 품질 면에서 개선되어야 하며 데이터가 정확하도록 보장해야 한다.

서비스 지향 아키텍처 패턴

SOA를 정의하는 아키텍처 스타일은 설명, 구현과 바인딩 사이에 나타나는 우려들을 분리하기 때문에 새 비즈니스 변화와 기회에 대응하여 전례 없는 유연성을 제공하는 느슨하게 커플링된 비즈니스 맞춤 서비스를 작성하기 위한 패턴 세트와 가이드라인을 설명한다. SOA 패턴을 통해 SOA 관점에서부터 전체적인 솔루션의 이해가 간소화된다. SOA 패턴과 우수 사례를 적용하면 더 쉽게 각 솔루션 조각의 영향을 이해할 수 있고 솔루션의 채택 측면에서 단계적으로 도움을 준다. 아래의 표는 엔터프라이즈 전문 지식 위치(Expert Location) 시스템의 요구사항과 관련된 SOA 시작점과 관련된 SOA 패턴을 보여준다.

SOA 시작점 / 규율SOA 시나리오SOA 패턴
인력 시작점상호작용 및 협업풍부한 웹 기반 애플리케이션
서비스서비스 온더글래스(services on the glass) 호출하기
정보 시작점IaaS(Information as a Service scenario)마스터 데이터 관리
비즈니스 인텔리전스
통합
연결 시작점서비스 연결 SOA 시나리오내부 연결
Enterprise Service Bus
SOA 디자인 시작점SOA 디자인 시나리오서비스 디자인용 SOMA
SOA 보안, 거버넌스 및 관리 규율SOA 보안 및 관리 시나리오서비스 보안
SOA 거버넌스 시나리오SOA 거버넌스
엔드투엔드 서비스 관리

풍부한 웹 기반 애플리케이션 SOA 패턴

이 패턴은 클래식 또는 심플 클라이언트에 대해 AJAX 클라이언트들의 값 제안을 실례로 보여주며, 성능 및 응답 면에서의 이점들도 포함된다.

  • 기술적 문제: 사용자들 사이의 협업과 공유를 활용하고 웹 인터페이스 응답 속도도 높이는 사용자 인터페이스를 제공한다. 일반 사용자가 전문가들을 검색하거나 찾거나 지식 기반을 검색하면, 결과는 전체 페이지를 새로 고치지 않고도 업데이트되어야 한다.
  • 이 패턴을 적용하는 방법: 전문 지식 위치 솔루션은 AJAX 기반 사용자 인터페이스를 사용할 것이다. 이러한 인터페이스는 예를 들어, 시스템과의 사용자 상호작용 도중에 동적으로 내용을 로드하는 데 사용된다. 내용 새로 고치기를 제공하려면 변경된 내용만 새로 고쳐지고 전체 페이지는 새로 고쳐지지 않는다.

    그림 3. 풍부한 웹 기반 애플리케이션 SOA 시나리오
    이미지의 대체 텍스트

  • 채택시 비즈니스 가치: 일반 사용자, 전문가 및 관리자들은 더 빠른 사용자 인터페이스 응답 시간으로 더 효율적으로 작업할 수 있다. 이로 인해 향상된 사용자 경험이 나타난다.

서비스 온더글래스(services-on-the-glass) 호출하기 SOA 패턴

서비스 온더글래스(services-on-the-glass) 호출하기 패턴은 하나의 위치에서부터 이질적인 애플리케이션에 액세스하도록 일반적인 사용자 인터페이스와 경험을 제공하는 방법을 설명한다.

  • 기술적 문제: 직원 사회적 활동을 기반으로 하는 전문 지식 정보는 여러 애플리케이션에서 사용 가능하며, 이러한 정보는 일반 사용자들이 등록된 전문가 뿐만 아니라 사회적 활동을 기반으로 추천된 전문가들까지 신속하게 찾도록 통합되어야 한다.
  • 이 패턴을 적용하는 방법: 제안된 솔루션은 웹 기반 인터페이스를 통해 통합된 기능을 제공하여 일반 사용자들이 전문가를 검색할 수 있다. 이 솔루션은 일반적인 채널 독립적인 서비스들이 프론트 엔드로서의 역할을 담당할 수 있는 오픈 인터페이스를 제공할 것이다. 인트라넷 사이트에 표시되는 위젯은 컨텍스트에 따라 반응하는 방식으로 전문가들을 등록할 수 있고, 이러한 정보는 웹 애플리케이션으로부터 일반 사용자들에 사용 가능하게 될 것이다.

    그림 4. 서비스 온더글래스(services-on-the-glass) 호출하기 SOA 시나리오
    서비스 온더글래스(services-on-the-glass) 호출하기 SOA 시나리오

  • 채택시 비즈니스 가치: 제시된 솔루션은 웹 애플리케이션을 사용하는 모든 일반 사용자들 뿐만 아니라 컨텍스트에 반응하는 방식으로 전문가들이 표시될 수 있고 일반 사용자들이 전문가로 신청할 수 있는 인트라넷 사이트의 모든 사용자들에게 생산성 증가를 제공할 것이다. 이로 인해 전문가 등록의 장애물이 엄청나게 줄어든다.

마스터 데이터 관리 SOA 패턴

마스터 데이터 관리 패턴은 전문 지식 정보가 여러 소스에 존재할 수 있으므로 참조 소스가 될 수 있는 단일하고 명확한 마스터 소스로 전문 지식 분류체계와 외부 소스로부터의 전문 지식 키워드를 조정하는 방법을 예를 들어 설명한다.

  • 기술적 문제: 전문 지식 분류체계 및 전문 지식 키워드는 대개 여러 이기종 시스템에 걸쳐서 배포된다. 이러한 소스의 정보는 다양한 형식으로 존재하며, 몇 가지 배치 프로그램들은 정기적으로 그 정보를 동기화할 필요성이 있다.
  • 이 패턴을 적용하는 방법: 제시된 솔루션은 중앙 집중식 마스터 데이터 관리(MDM) 관계형 데이터베이스 저장소를 통합하여 전문 지식 분류체계와 전문 지식 키워드의 일관된 세트를 저장한다. MDM 저장소는 초기에 ETL(추출 / 변환 / 로드) 패턴을 사용하여 입력된다. 서비스를 사용하는 MDM의 데이터는 정기적으로 외부 소스로부터 동기화된다. 정보는 서비스를 통해 다른 시스템의 MDM에서도 추출된다.

    그림 5. 마스터 데이터 관리 SOA 시나리오
    마스터 데이터 관리 SOA 시나리오

  • 채택시 비즈니스 가치: 제시된 솔루션은 마스터 데이터 관리(Master Data Management) 패턴을 채택하여 전문 지식 분류체계에서 비일관성을 제거할 수 있다. 이는 또한 정확한 실시간 전문가 정보를 다른 시스템에 제공하도록 배치된다.

비즈니스 인텔리전스 SOA 패턴

비즈니스 인텔리전스 패턴은 전문가 등록을 대상으로 정보를 갖춘 결정을 내리도록 추천된 전문가들을 기반으로 하는 전문 지식 분류체계, 전문가 등록, 지식 기반 및 사회적 활동에 관한 정보를 사용하는 방법을 설명한다.

  • 기술적 문제: 전문 지식 발견 솔루션은 서로 다른 비즈니스 단위에 걸쳐 전문가 등록 면에서 전문가 등록 패턴과 차이를 이해하는 심도있는 지능형 분석 및 보고를 제공하는 기능이 필요하다. 솔루션은 전문가들이 받는 질문을 분석하는 기능도 제공해야 한다.
  • 이 패턴을 적용하는 방법:

    그림 6. 비즈니스 인텔리전스 SOA 시나리오
    비즈니스 인텔리전스 SOA 시나리오

  • 채택시 비즈니스 가치: 이 아키텍처는 엔터프라이즈에 걸쳐서 비즈니스 사용자를 활용하여 전문가 등록 면에서 비판적인 차이를 확인하고, 받는 질문들의 유형에 대한 지능형 보고를 얻고, 비즈니스 사용자들이 전문가 등록을 대상으로 결정을 내리도록 도와준다.

내부 연결 SOA 패턴

내부 연결은 조직 내에서 여러 내부 클라이언트들이 전문 지식 발견 서비스에 액세스할 수 있는 방법을 설명한다.

  • 기술적 문제: 전문 지식 위치 서비스들은 브라우저, 모바일 장치, 포털 등과 같이 서로 다른 환경에서부터 액세스되어야 할 필요성이 있다. 이러한 환경들은 서비스에 액세스하는 다중 프로토콜을 사용하게 된다. 하지만 개발자들은 새 환경이 서비스에 액세스하려고 할 때마다 코드를 쓰거나 변경하지 않아도 된다.
  • 이 패턴을 적용하는 방법: 전문 지식 위치 아키텍처는 SCA(Service Component Architecture) 구현을 추가한다. SCA(Service Component Architecture)는 SOA의 표준으로 부상하였고, SCA의 약속은 개발자들이 비즈니스 로직 개발에만 집중해야 할 것이며, SCA는 컴포넌트를 호출하기 위한 단일 프로그래밍 모델을 제공한다는 것이다. 또한 SCA는 하나의 컴포넌트가 여러 구성 가능한 바인딩을 가지도록 허용한다.

    그림 7. 내부 연결 SOA 시나리오
    내부 연결 SOA 시나리오

  • 채택시 비즈니스 가치: 이 솔루션은 SCA(Service Component Architecture)를 통한 내부 연결을 채택하여 서비스에 액세스하는 새 클라이언트에 적응하도록 위치가 더 훌륭하게 지정된다. 개발자들이 비즈니스 로직을 한 번 쓰고 인프라 로직을 우려할 필요 없이 다양한 여러 클라이언트에서 액세스하도록 사용한다.

Enterprise Service Bus SOA 패턴

포괄적인 SOA에 필요한 다양한 상호작용 패턴(예: 요청/응답, 발행/구독, 이벤트)을 전체적으로 지원하기 위해서 Enterprise Service Bus는 하나의 인프라에서 세 가지 주요 엔터프라이즈 통합(Enterprise Integration) 스타일, 즉, 서비스 지향 아키텍처, 메시지 구동형 아키텍처 및 이벤트 구동형 아키텍처를 지원해야 한다.

  • 기술적 문제: 전문 지식 위치 시스템이 외부 클라이언트와 통합되어야 할 것이므로 다음 내용이 필요하다.
    • 위치 투명성 제공 및 서비스 대체 지원
    • 이기종 환경에서 통합 지원 및 서비스 대체 지원.
    • 특정 서비스 프로토콜과 구현에서부터 애플리케이션 코드를 분리하여 SOA 원칙 지원
    • 서비스 주소 지정 및 이름 지정에 대한 제어 지점.
  • 이 패턴을 적용하는 방법: ESB 아키텍처는 느슨한 커플링, 기본 경로 지정을 위해 많은 수의 외부 클라이언트에 간편하게 통합하고 적응하도록 아키텍처로 도입되었다. ESB는 다른 프로토콜에 대한 지원 및 시스템과 외부 클라이언트 사이에 메시지 양식의 교환을 제공한다.

    그림 8. Enterprise Service Bus SOA 시나리오
    ESB SOA 시나리오

  • 채택시 비즈니스 가치: 시스템은 ESB를 채택하여 외부 클라이언트와의 통합 스타일 면에서 변경에 적응하도록 위치가 더 훌륭하게 지정된다. 시스템은 특수 통합 요구사항이 발생하는 대로 이에 대응하는 기능을 보유할 것이다. ESB도 외부 클라이언트에서부터 전문 지식 위치 서비스의 커플링을 해제한다.

프로세스 자동화 SOA 패턴

프로세스 자동화 패턴은 자동화된 인적 태스크의 통합을 포함하여 워크플로우를 자동화하는 방법의 문제를 다룬다. 이는 또한 여러 애플리케이션들과 백엔드 저장소에 걸쳐서 통합을 자동화하는 기능을 다룬다.

  • 기술적 문제: 전문가들이 전문 지식 주제에 등록하고 이러한 전문 지식 주제를 관리자가 변경하는 경우 전문가들에게 알려야 한다. 외부 소스로부터의 전문 지식 분류체계는 정기적으로 동기화되어야 한다. 게다가 글로벌 엔터프라이즈의 경우 개인정보 보호정책 준수 관련 프로세스들이 국가에 따라 다를 수 있으며 구현은 이러한 변화를 처리해야 한다. 지원하는 전문가들을 인식해야 하고 기존 직원 인식 프로세스와 통합되어야 한다. 엔터프라이즈 영업 프로세스들은 '사전 영업' 운영 도중에 엔터프라이즈 내에서 선택적으로 전문가들을 활용하는 요구사항이 있다.
  • 이 패턴을 적용하는 방법: 제시된 솔루션은 전문 지식 분류체계 관리에 대한 프로세스를 사용하며, 이는 더 효율적이며 전문 지식 위치 요구사항들에 더 맞게 조정되었다. 전문 지식 주제(등록된 전문가들 관련)가 변경되면 전문가들은 자동으로 알림을 받고 영향을 받는 전문 지식 영역의 관리자들은 웹 애플리케이션을 통해 변경의 영향을 모니터할 수 있다. 관리자들은 전문 지식 분류체계 동기화의 상태에 대한 알림도 받게 될 것이다. 또한 이 솔루션은 기존 직원 인식 프로그램 및 영업 시스템과 인터페이스된다.

    그림 9. 프로세스 자동화 SOA 시나리오
    프로세스 자동화 SOA 시나리오

  • 채택시 비즈니스 가치: 전문가들은 전문 지식 주제 면에서 변경에 대한 알림을 자동으로 받게 된다. 관리자들은 전문 지식 영역에 변경과 영향을 모니터하도록 알림을 받아 운영의 효율성을 확보하게 된다. 개인정보 보호정책이 준수되고, 전문가들은 지속적인 전문가 참여로 지원되는 공헌으로 인식되며, 영업 기회를 지원하는 시의 적절한 전문가 식별도 완수된다.

서비스 보안 SOA 패턴

서비스 보안 패턴은 권한 부여, 메시지 보안 및 액세스 제어에 대한 엔드포인트의 여러 세트에 걸쳐서 특히, 보안 정책/구성에서 보안 관리 측면을 다룬다.

  • 기술적 문제: 제시된 솔루션은 서비스 요청자와 제공자들과의 상호작용의 모든 엔드포인트에 걸쳐 통합된 중앙 집중식 SOA 보안 정책 관리가 필요하다. 이 솔루션은 ID를 효율적으로 관리해야 하며, 이 ID 정보는 요청 플로우 전반에 걸쳐 사용 가능해야 한다. 현재는 데이터 암호화에 대한 요구사항들은 없다.
  • 이 패턴을 적용하는 방법: 제안된 솔루션은 Java 보안, LDAP, 방화벽 보안(외부 서비스 이용자용) 및 웹 기반 보안이 결합된 연합 보안 프레임워크를 채택한다. 인증의 집행은 엔터프라이즈 디렉토리 서비스로 관리된다. 액세스 제어에 관련하여 사용자들은(일반 사용자, 전문가 및 관리자) 그들의 역할에 허용된 기능에만 액세스 권한을 가진다. SCA 구현은 서비스 레벨 또는 컴포넌트(서비스의 그룹화) 레벨에서 역할 기반 액세스 제어를 지원한다.
  • 채택시 비즈니스 가치: 제안된 솔루션은 연합된 보안 접근방식을 채택하여 서비스 엔드투엔드를 안전하게 지키고, 백엔드 시스템으로의 액세스를 제어하며 엔터프라이즈의 보안 정책을 준수할 수 있다.

서비스 거버넌스 SOA 패턴

SOA 거버넌스 패턴은 새 서비스 작성의 규제, 서비스 재사용화 추가 획득, 표준 및 우수 사례 집행, 서비스 변경 관리 및 서비스 버전 제어가 포함된다.

  • 기술적 문제: 다른 애플리케이션과의 통합이 필요할 것이며, 통신 프로토콜을 기반으로 하는 열린 표준이 필요하다. 이외에도 서비스가 여러 클라이언트로부터 액세스될 것이므로 비즈니스 서비스의 ID 및 스펙에 대한 거버넌스가 필요하다.
  • 이 패턴을 적용하는 방법: 거버넌스 정책은 내부 및 외부 클라이언트에서 아무 서비스에나 액세스에 대한 보안 인증 정책을 집행하는 데 사용된다. 또한 다양한 서비스 이용자들이 액세스해야 하는 서비스들의 ID 및 스펙에 대한 거버넌스가 있다. SOMA는 서비스들의 ID, 스펙 및 인식에 사용된다.
  • 채택시 비즈니스 가치: 서비스 재사용으로 감소된 비용은 SOA 거버넌스 채택의 주요 이점이며, 중복 서비스들이 작성되지 않으며 더 많은 서비스들이 우수 사례와 업계 표준에 따르는 데 다시 사용된다.

서비스 디자인용 SOMA

SOMA 메소드는 대상 비즈니스 프로세스를 사용하도록 SOA의 디자인 및 구축에 사용되는 분석 및 디자인 메소드이다. SOMA는 서비스, 컴포넌트 및 플로우들의 ID, 스펙 및 인식을 통해 이를 달성한다. SOMA에 대한 정보의 링크는 참조 섹션을 참조하자.


서비스 식별

서비스 식별 단계의 목표는 엔터프라이즈 전문 지식 위치(Enterprise Expertise Location)에 의미가 있는 후보 서비스의 초기 세트 및 그와 연관된 작업들을 작성하는 것이다. 서비스 식별의 핵심 입력에는 다음 사항들이 포함된다.

  • 유스 케이스 시나리오, 시스템 유스 케이스 및 사용자 필요 모델(참조 섹션 참조)
  • 재사용될 수 있는 기존 시스템으로부터의 서비스

전문 지식 위치 시스템을 빌드하기 위해 도메인 분해(Domain Decomposition) 및 기존 자산(Existing Asset) 분석 기술이 서비스를 식별하는 데 사용된다. 비즈니스의 성과를 평가하는 메트릭이 전문 지식 위치를 위해 정의되지 않았기 때문에 목표 서비스 모델링은 사용되지 않는다.

  • 도메인 분해 - 도메인 분해를 통해 전문 지식 위치 비즈니스 도메인은 주요 기능 영역과 서브시스템들로 분해된다. 다음 레벨에서 기능 영역들은 더 나아가 프로세스, 서브 프로세스 및 상위 레벨 비즈니스 유스 케이스로 분해된다.
  • 기존 자산 분석 - 기존 자산 분석의 기본 목표는 현재 솔루션에서부터 애플리케이션 모듈의 재사용을 극대화하는 것이다. 기존 서비스가 사용 가능한지 여부를 결정하는 기존 자산 분석을 식별하기 위해 상향식 접근방식을 취할 수 있다.

서비스 목록

다음 주요 서비스들은 엔터프라이즈 전문 지식 위치 시스템의 요구사항을 충족하도록 식별된다. 아래 나열된 서비스들은 더 나아가 SOAM의 서비스 스펙 및 서비스 인식 단계 도중에 잘게 쪼개진 서비스들로 분해될 수 있다. 이는 이 기사의 Part 2에서 논의될 예정이다.

#서비스 이름서비스 설명
1전문 지식 분류전문 지식 영역 주제의 분류는 엔터프라이즈 표준 분류체계로 시작하여 비즈니스 관리되거나 사용자 기반으로 작성될 수 있다. 사회적 태깅과 폭소노미를 통해 분류될 수 있다.
2전문가 신청전문가 신청 서비스는 전문 지식 분류(분류체계)에서 전문 지식 주제들로 비즈니스 관리되거나(비즈니스 지명됨) 전문가들이 선택할(스스로 지명됨) 수 있다. 또한 지원의 전문 지식 레벨 및 헌신은 이 서비스로 처리된다. 전문 지식 주제의 늘어나는 어휘를 사용하여 본인 스스로를 설명하는 전문가의 기능. 이는 검색 서비스를 활용한다.
3가용성 관리전문가들이 가용성을 지정하도록 사용하며, 시스템을 지원할 수 있는 다른 전문 지식들을 일반 사용자들이 식별하도록 사용한다.
4관리된 상호작용일반 사용자로부터 질문에 응답하는 용도로 일반 사용자들과 전문가들 사이에 동기(대화) 및 비동기(이메일, 웹 UI) 상호작용. 상호작용에 대한 피드백도 이 서비스로 관리된다.
5지식 채취전문가들은 상호작용으로부터 지식을 채취하고 지식 기반을 풍성하게 만드는 기능이 있어야 한다.
6발행/구독전문가에 대한 정보 뿐만 아니라 일반 사용자들이 "시청하는" 전문 지식 주제에 대해 전문가가 신청할 때에 일반 사용자에게 알리는 기능도 다른 인트라넷 사이트에 표시되어야 한다.
7검색일반 사용자가 그들의 필요(전문 지식 주제, 태그, 순위 지정, 전문가 가용성, 비즈니스 위치, 이동할 의향 등)에 따라 전문가를 결정하는 기능
8위임동료 지원의 경우 전문가는 또 다른 전문가에게 응답하는 기능을 위임할 수 있어야 한다. 관리의 경우에 전문 지식 영역 관리자들은 다른 사람들에게 권한을 위임할 수 있다.
9분석전문가 등록 및 지식 기반에 따른 비즈니스 통찰과 지능형 분석을 제공하는 서비스.
10보고전문가들과 관리자들은 질문과 답변, 태그 및 전문가 영역 관리에 관련된 다양한 보고서들을 보는 기능을 가진다.
11데이터 액세스 일반 사용자, 관리자 및 전문가들은 다른 인트라넷이나 외부 포털에서부터 데이터에 액세스해야 할 수 있다.
12브로드캐스트일반 사용자들은 질문을 브로드캐스트 모드로 많은 전문가들과 통신할 수 있다.

참조 아키텍처

SOA 패턴, SOA 참조 아키텍처에 대해 발행된 OASIS 안내문 및 전문 지식 위치 시스템의 성공한 구현들에서부터 솔루션 아키텍처를 사용하여, 그림 10과 같이 참조 아키텍처가 작성되었다.

네 가지의 안내 원칙은 다음과 같다.

  • 기술 중립성은 특정 기술로부터의 독립성을 가리키며, 이는 SOA 기반 시스템에 내재하는 원칙들이 이를 전달하는 데 사용되는 특정 기술보다 오래 지속되는 잠재력이 있기 때문이다.
  • 절약은 가능한 복잡도를 방지하며 필요한 컴포넌트와 관계의 수를 최소화하는 디자인의 경제성을 가리킨다.
  • 우려의 분리는 개별 이해당사자 또는 이해당사자 집합이 각각의 관심 영역만 직접적으로 다루는 이러한 모델들만 보는 방식으로 아키텍처의 모델들을 깨끗하게 묘사하는 기능을 가리킨다. 이는 대체로 모델의 느슨한 커플링을 가리킨다.
  • 적용성은 관련 있는 것을 가리킨다. 아키텍처는 가능한 한 SOA 기반 시스템의 많은 패싯들과 애플리케이션들에 관련이 있다.

그림 10. 엔터프라이즈 전문 지식 위치 참조 아키텍처
엔터프라이즈 전문 지식 위치 참조 아키텍처

결론

전문 지식 위치 시스템은 많은 엔터프라이즈 내에서 전략적이 되어가고 있다. 이 기사에서는 SOA 패턴이 전문 지식 위치 시스템 요구사항에 적용하는 방법과 참조 아키텍처가 파생되는 방법에 대해 배웠다. 기사의 Part 2에서는 솔루션 아키텍처, 데이터 모델, 구현 기술 및 아키텍처의 의사결정을 논의할 것이다.


감사의 인사

저자는 다음의 사람들에게 감사의 말을 전한다.

  • 전문 지식 위치 서비스의 식별과 관련된 작업의 John Bosma와 Vicky Griffiths-Fisher.
  • 전문 지식 위치 헌신 레벨과 관련된 작업의 Michael Ticknor와 Vicky Griffiths-Fisher.
  • IBM 내에서 전문 지식 위치 솔루션에 대한 통찰력과 공헌의 John Bosma, Galina Grunin, Michael Ticknor, Erich Walls 및 Sandy Yarchin.

참고자료

교육

제품 및 기술 얻기

  • 자신에게 가장한 적합한 방법으로 IBM 제품을 평가해 보자. 시험판 제품을 다운로드하거나, 온라인으로 제품을 사용해 보거나, 클라우드 환경에서 제품을 사용하거나, SOA Sandbox에서 SOA(Service Oriented Architecture)를 효과적으로 구현하는 방법을 배울 수 있다.

토론

  • My developerWorks 커뮤니티에 참여하자. 개발자가 운영하고 있는 블로그, 포럼, 그룹 및 위키를 살펴보면서 다른 developerWorks 사용자와 의견을 나눌 수 있다.

필자소개

Murali Vridhachalam은 오픈 그룹 인증 IT 아키텍트이며 1994년 이후로 IBM에 재직 중이다. 그는 IBM 내에서 몇 가지의 엔터프라이즈 애플리케이션들을 설계하고 배치한 경험이 있다. 현재 그의 관심사는 서비스로서 소프트웨어와 서비스 도메인으로서의 플랫폼인 아키텍팅 솔루션이다. 그는 IBM의 광범위한 엔터프라이즈 소프트웨어 제품을 사용하여 혁신적인 솔루션을 개발하는 것을 목표로 하는 소프트웨어 엔지니어 팀을 기술적으로 이끌고 있다

잘못된 도움말 신고

부정사용 신고

감사합니다. 이 항목은 운영자가 관심을 표시했습니다.


잘못된 도움말 신고

부정사용 신고

제출실패 신고. 나중에 다시 실행해주세요.


디벨로퍼웍스 로그인


IBM ID가 필요하세요?
IBM ID를 잊으셨습니까?


비밀번호를 잊으셨습니까?
비밀번호 변경

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

화면상에 보여지는 닉네임을 정하세요.

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

3개의 &이나 대쉬를 포함해주시고 31글자내로 제한해주세요.


developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


아티클 순위

의견

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=20
Zone=SOA와 웹서비스
ArticleID=660103
ArticleTitle=엔터프라이즈 전문 지식 위치 시스템 빌드하기, Part 1: 전문 지식 위치 패러다임 및 참조 아키텍처 유도하기
publish-date=11022010
author1-email=mural@us.ibm.com
author1-email-cc=

태그

Help
검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오.

태그를 더 많이 보거나 적게 보기 위해 슬라이더 막대를 사용하십시오.

인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다.

내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.

검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오. 인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다. 내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.