KR101013233B1 - 의미적 그리고 기능적 관계에 따라 포털 페이지상의포틀릿의 자동적 배치를 위한 시스템 - Google Patents

의미적 그리고 기능적 관계에 따라 포털 페이지상의포틀릿의 자동적 배치를 위한 시스템 Download PDF

Info

Publication number
KR101013233B1
KR101013233B1 KR1020060116944A KR20060116944A KR101013233B1 KR 101013233 B1 KR101013233 B1 KR 101013233B1 KR 1020060116944 A KR1020060116944 A KR 1020060116944A KR 20060116944 A KR20060116944 A KR 20060116944A KR 101013233 B1 KR101013233 B1 KR 101013233B1
Authority
KR
South Korea
Prior art keywords
portlets
portal
content structure
portlet
data mining
Prior art date
Application number
KR1020060116944A
Other languages
English (en)
Other versions
KR20070062408A (ko
Inventor
티모 쿠스마울
닥터. 안드레아스 아르닝
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20070062408A publication Critical patent/KR20070062408A/ko
Application granted granted Critical
Publication of KR101013233B1 publication Critical patent/KR101013233B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application of database or data structure, e.g. distributed, multimedia, or image

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 네트워크 컴퓨팅 분야에 관한 것으로, 좀더 구체적으로는 포털 페이지의 계층적 구조와 포털을 통해 엑세스가능한 웹 컨텐츠를 엑세스하기 위한 포틀릿을 포함하는 웹 포털을 설계하기 위한 방법 및 시스템에 관한 것이다. 일반적으로 큰 기업들의 포털은 많은 수, 예를 들면 수천 페이지 및 포틀릿을 포함한다. 수동적 관리는 시간-소모와, 에러가 일어나기 쉬우며 따라서 고비용이라는 점에서 비효율적이다. 이러한 결점들을 극복하기 위하여, 향상된 포털 컨텐츠 구조를 자동적으로 계산(430)하고 제안(440)하기 위해 포틀릿 디스크립션 및/또는 포틀릿 마크업의 마이닝(420)을 수행하는 본 발명에 따른 포털이 제안된다. 이것은 포틀릿간의 관계를 잘 반영하는, 유저에게 친숙한 컨텐츠 구조를 제공하는데 도움이 된다.
웹 포털, 포털 페이지, 컨텐츠 구조, 포틀릿

Description

의미적 그리고 기능적 관계에 따라 포털 페이지상의 포틀릿의 자동적 배치를 위한 시스템{System for Automatic Arrangement of Portlets on Portal Pages According to Semantical and Functional Relationship}
도 1은 종래 포털 서버의 구조적 요소를 나타내며, 인터랙션 라인을 포함하는 개략도이다.
도 2는 계층적 트리 구조에 배치된 페이지(원) 및 포틀릿(사각형)을 포함하는 개략적, 대표적 포털 구조를 나타낸다.
도 3의 왼쪽은 종래 샘플 포털상의 한 페이지를 나타내고, 오른쪽은 포틀릿을 확대한 것이다.
도 4는 특정 실시예에서 구현되는 기능적 요소를 나타내며, 특정 실시예에 따른 본 발명의 방법의 제어 흐름을 개략적으로 나타낸다.
도 5는 본 발명의 특정 실시예에서 구현되는 구조 요소를 나타내는, 특정 실시예에 따른 포털 서버의 개략적 블럭도를 나타낸다.
도 6내지 11은 본 발명의 방법에서 수행되는 마이닝 기능내에서 포틀릿의 클러스터링을 수행하는 도중의 후속하는 스테이지가 각각 다른 클러스터 구조를 나태낸다.
본 발명은 네트워크 컴퓨팅 분야에 관한 것으로, 좀더 구체적으로는 포털 페이지의 계층적 구조와 포털을 통해 엑세스가능한 웹 컨텐츠 또는 기업 컨텐츠를 엑세스하기 위한 포틀릿을 포함하는 웹 포털 또는 기업 포털을 설계하기 위한 방법 및 시스템에 관한 것이다.
도 1은 종래 웹 포털을 구현하는 포털 서버상의 개략적 시스템을 제공한다.
IBM WebSphere Portal 또는 Jetspeed2 Enterprise Portal(www.Portals.apache.org/jetspeed-2/Portal-design.html)과 같은 종래 포털은 복잡한 기능성으로 네트워크 서버, 예를 들면 웹 서버(100)상에 구현되며, 이러한 네트워크 서버중 가장 중요한 요소는 유저 인증(105), 상태 관리(110), 프래그먼트의 통합(115), 보통이 웹 페이지 컨텍스트내로 포틀릿을 셋팅하기 위한 포틀릿 컨테이너 소프트웨어(135) 각각에 대한 다수의 API(130) 각각과 함께 각각의 페이지(125)에 제공되는 다수의 포틀릿(120), 그리고 포털 저장 리소스(140)를 위한 로직 요소들이다. 이러한 로직 요소들은 필요한 단일 요소들간에 데이터가 교환될 수 있게 동작할 수 있도록 연결된다. 이것은 도 1에 단순히 도시되어 있다. 좀더 자세히, 도 1의 웹 서버의 포털 엔진은 하위의 포털 모델(150)과 안전 셋팅, 유저 역할, 사용자화(customization) 셋팅, 디바이스 능력들과 같은 포털 정보에 근거하여 포틀릿(120)의 통합(aggregation)을 구현한다. 주어진 페이지내에서, 포털은 자동적으로 포털 모델에 근거하여 네비게이션 요소들의 적절한 세트를 생성한다. 포털 엔진은 통합동안 필요에 따라 포틀릿을 호출하고 포틀릿을 만들기 위한 요청의 수를 줄이기 위해 캐싱을 이용한다. 종래 IBM WebSphere Portal은 Java Portlet API(어플리케이션 프로그래밍 인터페이스)와 같은 표준들을 채택한다. 이것은 또한 WSRP 표준을 통한 원격 포틀릿의 사용을 지원한다.
포틀릿 컨테이너(135)는 모든 포틀릿(120)을 위한 단일 제어 요소이며, 이들 포틀릿 각각에 존재하는 코드의 실행을 제어할 수 있다. 이것은 특히 포틀릿에 대한 런타임 환경과 이벤트 관리, 포틀릿-상호(inter-portlets) 메시징, 포틀릿 인스턴스 및 구성 데이터에 대한 엑세스를 위한 기능을 제공한다. 포털 리소스(140)는 특히 포틀릿(120) 그 자신과 프레그먼트의 통합의 형식으로 통합되는 페이지(125)이다. 포털 데이터베이스(128)은 포틀릿 디스크립션(description)을 저장하고, 이것은 포틀릿 네임, 포틀릿 디스크립션, 포틀릿 제목, 포틀릿 소제목, 키워드와 같은 일부 특성들을 피쳐링하는 상세한 포틀릿 디스크립션에 있으며, 포틀릿 인터액션 인터페이스 디스크립션은 종종 WSDL 문서 형식으로 저장된다. 포털 데이터베이스는 또한 포털 컨텐츠 구조, 즉 포털 페이지의 계층적 구조 -이것은 다시 내재된 페이지들을 포함할 수 있음- 와 포틀릿을 저장한다. 이러한 데이터는 관계 테이블(relational tables)과 같은 종래 기술에 근거하여 적절한 표시로 데이터베이스내에 저장된다.
전술한 통합 로직(115)은 페이지를 수집하기 위해 필요한 모든 단계들을 포함한다. 일반적으로, 이러한 단계들은 스토리지로부터 컨텐츠 구조를 로드하고, 이것을 트래버스(traverse)하고 그 출력을 얻기 위해 구조내에 참조되는 인스턴스를 콜하며, 단일 페이지로 수집된다. 컨텐츠 구조는 예를 들면, 관리자(administrator) 또는 유저에 의한 포틀릿 사용자화를 통해 정의될 수 있으며 데이터베이스내에 또는 예를 들면 스크립팅, xml 임포트(import) 등의 다른 방식들로 저장된다.
그래픽 유저 인터페이스 요소(160)가 주어진 다수의 페이지의 레이아웃을 수동적으로 제어하기 위해 제공된다. 이 인터페이스(160)에 의해 포털 관리자는 웹 페이지의 시각적 표현을 제어할 수 있다. 특히, 관리자는 주어진 웹 페이지에서 다른 포틀릿 다음 위치에 어떤 포털이 주어질지 결정할 수 있다.
본 발명의 특징과 비교하여, 포털 후방의 구조가 도 2의 여행자 정보 포털 예에 의해 설명된다. 이러한 종래 포털은 포털 페이지의 계층적 구조(200)로 구성된다(201 내지 210의 써클과, 이것은 내재된 페이지들을 다시 포함할 수 있음, 포틀릿 211 내지 217을 참조). 이러한 구조는 일반적으로 본 명세서에서 "컨텐츠 구조(content structure)"로 언급된다. 물론, 포틀릿(211 내지 217)은 동일 계층 레벨에서 하나의 위치(도 2에 도시된 것과 같이)로 제한되지 않으며, 임의의 다른 레벨에 분배될 수 있다.
좀더 자세히, 도 2 및 3을 참조하여, 페이지(201)는 포털의 홈페이지이다. 홈페이지(210)는 특히 페이지(202, 203, 204)로 이끄는 그래픽 요소인 3개의 링크를 포함한다. 페이지(202)는 다시 페이지(207 및 208)로 이끄는 링크를 포함하는 페이지(205)로 이끄는 또 다른 링크를 포함한다. 유사한 구조가 페이지(206, 209, 210)로 이끄는 페이지(204)에 대해 반복된다. 유사한 구조가 페이지(203) 밑에 추 가될 수 있으며, 본 명세서에서는 도면의 명확성을 위해 생략되었다. 이 예에서, 페이지(207)는 포틀릿(211, 212)을 포함한다. 포틀릿(211)은 열차 스케줄을 보여주며 포틀릿(212)은 유저가 온라인 티켓을 사고싶을 때 유저를 가이드하는 포틀릿이다. 페이지(208) 아래에 렌트카와 관련된 포틀릿(213)이 제공된다. 또한 페이지(208)아래에서, 여행 계획 포틀릿(214)이 제공된다. 또한, 페이지(209) 아래에는 비행기 예약 포틀릿(215)과 뉴스 포틀릿(216)이 제공된다. 마지막으로 페이지(206)아래에는 전화번호부 포틀릿(217)을 포함하는 다른 페이지(210)가 제공된다.
종래 기술에서, 간단한 방식으로 도 2에서 대표적으로 설명된 포털 컨텐츠 구조는 도 1의 인터페이스(160)을 이용하여 포털 관리자와 유저에 의해 수동적으로 정의된다. 관리자는 "열차 스케줄" 포틀릿(211)을 포함하는 페이지(207)를 편집한다. 종래 기술에서는 일반적으로 컨텐츠 구조를 구성하기 위한 지원 시스템이 존재하지 않는다.
도 2에 주어진 컨텐츠 구조는 단순히 나왔지만, 당업자라면 포털의 웹 페이지상의 포틀릿을 구성하는 업무는 포틀릿의 수와 트리의 깊이가 증가할 수록 더이상 사소한 일이 아니다.
전형적으로 큰 기업의 포털은 많은 수, 예를 들면 수천 페이지 및 포틀릿을 포함한다. 기업 포털의 복잡성으로 인해, 수동적 관리는 시간-소모와, 에러가 일어나기 쉬우며 따라서 고비용이라는 점에서 비효율적이다. 또한, 복잡한 포털에서 인간 관리자가 포틀릿간의 기능적 그리고 의미적 관계의 전체 셋트를 캡쳐한다는 것은 불가능하다; 따라서 매우 자주 관리자는 포털을 방문하는 유저가 서로 밀접한 관계에 있는 포틀릿을 쉽게 찾도록, 모든 포틀릿을 적절하게 배치할 수 없게 될 것이다.
다른 페이지들에 걸쳐 퍼져있는 상호-연관된 포틀릿의 복잡한 배치를 포함하는 포틀릿의 불적절한 배치는 복잡한 컨텐츠 구조와 어려운 네비게이션을 초래한다. 이것은 유저가 2 이상의 기능적으로 연관된 포틀릿과 작업하기 위해 페이지들간을 너무 많이 스위치해야 한다는 점에서 포털의 사용성과 유저의 생산성을 악화시킨다. 또한, 유저는 포터상의 방문을 완전히 끝내지 못하고 종료할 위험을 갖는데, 이는 예를 들면 트리에서 2 페이지 높은곳에서 호출을 위해 대기하고 있는 일부 관련된 포틀릿을 유저가 인식하지 못한다는 사실 때문이다.
따라서, 복잡한 네비게이션 구조에서 추가적인 도움 지원 및 유저 트레이닝이 요구 또는 적어도 추천된다는 것을 알 수 있다.
본 발명의 목적은 포털을 통해 엑세스 가능한 웹 컨텐츠에 엑세스하기 위한 포털 페이지 및 포틀릿의 계층적 구조를 포함하는 웹 포털을 설계하기 위한 개선된 방법 및 시스템을 제공하는 것이다.
본 발명의 이러한 목적은 첨부된 독립항들에 기술된 특징들에 의해 달성된다. 본 발명의 또 다른 이점 및 실시예들이 각각 종속항들에 기재된다.
간단하게, 본 발명에 따른 포털은 향상된 포털 컨텐츠 구조를 자동적으로 계산하고 제안하기 위해 포틀릿 마크업 및/또는 포틀릿 디스크립션의 수집을 수행한다. 이것은 포틀릿간의 관계를 잘 반영하는 유저에게 친숙한(user-friendly) 컨텐 츠를 제공하는데 도움을 준다. 이것은 하나의 동일한 페이지상에 근접한 상호-관련된 포틀릿들을 배치하는 일을 포함하며, 따라서 포틀릿을 더 잘 통합한다. 이것은 관련된 포틀릿의 좀더 통합된 뷰(view)를 제공하여 네비게이션 활동의 수(특히 페이지 변경)를 줄이는 것에 의해 유저 경험 및 생산성을 향상시킨다.
마이닝(mining)은 포틀릿간의 의미적 및 기능적 유사성을 나타낸다. 마이닝 기능의 결과는 그룹화된 포틀릿의 다소 압축된 형식이다. 그룹은 포틀릿이 그들사이에 상호-관계를 포함한다는 특성에 의해 특징되어진다. 상호관계의 근접함의 정도는 하나 이상의 기초 파라미터에 의해 프리셋(preset)된다. 이들 그룹은 현재 취할 수 있고 미리-존재하는 컨텐츠 구조를 더 좋게 구성하기 위해 수동적으로 개선될 수 있고 편집될 수도 있다.
포털 서버에서 본 발명의 가장 폭넓은 측면에 따라, 포털 페이지 및 포틀릿의 계층적 구조를 포함하는 웹 포털내에 포틀릿을 배치하기 위한 방법이 개시되며, 이하의 단계에 의해 특징되어 진다;
a) 포틀릿 마크업 및/또는 포틀릿 디스크립션 및/또는 상기 포털상에 존재하는 포틀릿들의 포틀릿 인터랙션 디스크립션으로부터, 바람직하게는 상기 포털과 관련된 데이터베이스로부터 또는 상기 포틀릿에 대한 요청으로부터 상기 포틀릿들에 연관된 데이터 마이닝 입력 데이터(data mining input data)를 검색(retrieving)하는 단계와, b) 상기 데이터 마이닝 입력 데이터에 데이터 마이닝 기능을 수행하는 단계 -상기 기능을 수행하는 것에 의해 상기 포틀릿들간의 각자의 의미적 및/또는 각자의 기능적 유사성을 나타내는 데이터 마이닝 결과(data mining result)가 초래 됨- , c) 상기 데이터 마이닝 결과로부터 새로운 컨텐츠 구조 -상기 새로운 컨텐츠 구조는 상기 페이지상에 의미적으로 그리고 기능적으로 유사한 포틀릿을 배치함- 를 계산하는 단계와, d)상기 새로운 컨텐츠 구조로 새로운 페이지를 제공하는 단계. 또다른 이점으로, 계산된 포틀릿의 배치가 새로운 웹 포털 버전에 대한 기본 버전으로 승인된다면 포틀릿 배치 소프트웨어는 관리자 피드백을 수신하는 단계를 구현할 수 있다.
또한, 마이닝은 바람직하게는 연관된 포틀릿의 클러스터링을 수행하는 것을 포함한다.
또 다른 이점으로, 포틀릿 배치 소프트웨어는 상기 제공된 웹 페이지 구조상에 수정(correction)을 수동적으로 수행하는 것을 포함하는 관리자 피드백을 수신하는 단계를 구현할 수 있다.
또한, 새로운 포틀릿 배치를 계산하는 단계는 현재 포틀릿 배치에서의 시작과 반복(iteration)에 근거한다.
또한, 새로운 포틀릿 배치를 계산하는 단계는 새로운 포틀릿이 페이지상에 인스톨되는 경우에 수행된다.
이에 따라, 이하의 이점들이 얻어질 수 있다;
먼저, 포틀릿의 개선된 통합 및 단순화된 네비게이션으로 인해 포털 유저가 이익을 얻는다. 두번째로, 포털 관리자가 컨텐츠 구조의 수동적 구성을 할 필요가 없다.
이하에서는 본 발명의 바람직한 실시예에 대해 도면들, 특히 도 4 및 5를 참조하여 좀더 자세히 설명될 것이다.
도 5는 포틀릿의 반-자동(semi-automated) 배치를 구현하기 위해 제공되는 제어 블럭(180)이 존재한다는 점에서 기본적으로 도 1과 다르다. 좀더 구체적으로, 이 로직은 필요로 하는 한에서 포털 데이터베이스(128), 포털(120)에 엑세스하기 위해 그리고 유저 인터페이스(160)에 연결하기 위해 모든 연관 인터페이스를 포함한다.
이 로직(180)은 도 4의 방식에 의해 설명되는 이하의 방법을 구현한다.
도 4의 410 블럭으로 표시된 단계들의 준비 블럭에서, 데이터 마이닝 입력 데이터가 검색된다. 바람직한 데이터 소스는 포털 데이터베이스(128)이다. 바람직하게는, 이하의 입력 데이터가 수집된다: 포틀릿 네임, 포틀릿 디스크립션, 포틀릿 제목, 포틀릿 소제목, 그리고 키워드와 같은 일부 특성들을 피쳐링하는 포틀릿 디스크립션; 종종 WSDL 문서 형식으로 저장되는 포틀릿 인터랙션 인터페이스 디스크립션, 또는 포틀릿 마크업 예를 들면, HTML 프레그먼트, 선택적으로 HTML 및 JSP 소스 파일.
또 다른 데이터 소스는 포틀릿 그 자체이다: 따라서 데이터는 포틀릿으로부터 요청될 수 있다, 예를 들면 전술한 포틀릿 배치 제어(180)는 포틀릿 컨테이너를 통해 포틀릿을 호출하는 것에 의해 포틀릿으로부터 마크업을 요청한다.
410 단계의 끝에서 후속하는 데이터 마이닝 단계(420)를 위한 모든 연관 입력 데이터가 존재한다.
블럭(420)에서 데이터 마이닝이 전술한 단계 410에서 수집된 입력 데이터에 근거하여 이뤄진다.
이 블럭(420)에서, 종래 데이터 마이닝 기술이 적용될 수 있다. 이러한 데이터 마이닝 기능은 현재 데이터에 적용되는 종래 클러스터링 알고리즘을 포함하고 관련된 프틀릿의 클러스터의 계층을 리턴하는 것을 포함한다. 후속 단계 430에서, 클러스터 계층은 컨텐츠 구조에 매핑된다.
간단히, 클러스터링은 클러스터 세트를 리턴한다, 즉 모든 클러스터 세트는 모든 포틀릿의 기능이다. 당업자라면 클러스터링이 객체(object) 세트를 유사 객체의 클래스에 그룹핑하는 프로세스임을 알 것이다. 클러스터링의 중점은 개별적 객체들간 그리고 클러스터들간의 유사성(또는 비유사성)의 정도를 결정하는 것이며, 이것은 거리 값(distance value)으로 표현된다.
본 발명의 바람직한 알고리즘은 유사 클러스터들끼리 반복적으로 합쳐지는 응집적인 계층적 클러스터링 기술을 이용한다. 이것은 도 4의 단계 422내지 428에 나타나 있고 이하에서 더욱 상세히 설명된다.
단계 422: 각각의 포틀릿을 클러스터에 할당하는 것으로 본 알고리즘이 시작하는데, N 개의 포틀릿(N은 임의의 실제적인 수, 예를 들면 200, 500, 100 등등)이 있다면, 초기에 N개의 클러스터가 존재하게 되며 각각은 오직 하나의 포틀릿을 포함한다. 클러스터 쌍 각각에 대해, 클러스터 쌍간의 거리(이하에서 더욱 자세히 설명됨)는 그들이 포함하는 포틀릿간의 거리와 동일하다.
단계 424: 여기서, 가장 가까운(가장 유사한) 클러스터 쌍이 결정된다. 그다 음, 이들은 단일 클러스터로 병합되고, 이에 따라 클러스터의 수가 줄어든다(N-1).
단계 426: 그 다음 새로운 클러스터와 각각의 이전 클러스터들간의 거리가 계산된다.
그 다음
"거리 값이 미리-결정된 임계 거리 T를 초과하는가?" 루프 조건(loop condition)(428)이 실행되고 거리 값이 미리-결정된 임계 거리 T를 초과할 때까지 단계 424 및 426이 반복된다, 즉 루프가 계속되고 그룹 멤버로서 점점 더 많은 포틀릿을 포함하기 위해 클러스터는 단계 424의 또 다른 반복에서 병합될 수 있는 더 이상의 유사 클러스터(유저-정의 거리 T에 따라)가 존재하지 않을 때까지 병합된다. 값 T는 유저에 의해 선택되고, 이것에 의해 두 클러스터의 유사성이 무엇이며 두 클러스터들간의 병합이 이뤄지지 않게 지정하는 것을 허용한다.
설명의 목적으로, 루프를 종료시키는 체크가 루프의 마지막(적어도 한번의 반복 이후)에서 이뤄지는데; 바람직하게는, 실제 어플리케이션에서, 이 테스트는 반복이 없는(즉, 병합이 전혀 발생하지 않는 경우를 허용)것을 허용하는, 루프의 시작에서 이뤄져야만한다.
마이닝 기능의 마지막 결과는 따라서 일반적으로 감소된 개수의 클러스터들이며, 각각의 클러스터는 다수의 상호-연관된 포틀릿을 포함한다.
그 다음 단계 430에서 새로운 컨텐츠 구조가 마이닝 결과로부터 계산된다. 도 2를 참조하여, 도 2에서 주어진 트리 구조가 리드래프트된다(redrafted). 이 트리에 근거하여 리드래프트된 새로운 포털 구조가 계산되며 추가적 단계는 단일 페 이지상에 가장 깊게-상호연관된 포틀릿들을 배치하는 것으로 수행된다. 새롭고, 아직 정리되지 않은 페이지 레이아웃에 결합된 이러한 새로운 트리 구조는 단계440에서 관리 유저(Amdinistration User)에 디스플레이되고 포털 페이지들이 어떻게 더 좋게 기능할 수 있는지에 대한 기본 제공으로서 제안된다.
또한, 선택적으로 관리자는 도 1의 인터페이스(160)로 몇가지 개인적 다시-리드래프트(re-redraft)를 수행할 수 있고 이러한 새로운 우선권에 따라 리드래프트를 위한 프로그램을 시작할 수 있다. 이에 따라 프로그램에 대한 피드백이 단계 450에서 이뤄진다.
이하에서, 본 발명에 적용되는 거리 계산이 좀더 자세히 설명된다:
두 포틀릿 A, B 사이의 거리 d(A, B)는 포틀릿 특성간의 거리에 근거한다, 즉, 포틀릿 A와 B의 포틀릿 디스크립션 및 포틀릿 마크업에 근거한다. 특성 쌍들간의 거리를 계산하기 위해 종래 텍스트 프로세싱 및 텍스트 마이닝 방법이 이용되는데 예를 들면 "TF-IDF 웨이팅(weighting)"으로 불리는 코사인 유사성 측정(Cosine Similarity Measure)이 있으며, Ricardo A. Baeza-Yates, Berthier Ribeiro-Neto, Modern Information Retrieval, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1999를 참조한다.
검색 단어의 출현 횟수(TF)가 단어-지정 검색능력과 관련되어 검토되고, 단어의 역 문서 회수(inverse document frequency:IDF)로서 측정된다. 본 발명에 적용되는, 전술한 특성들은 이와 같은 단어로서 사용될 수 있다. 상기 참조문헌에서 언급되는 문서(document)는 본 명세서에서 사용되는 데이터 마이닝을 위한 적절한 데이터 소스의 전체에 대응한다.
포틀릿 거리를 기초로 하여, 상호-클러스터 거리가 정의된다. 두 클러스터 X, Y간의 거리 D(X, Y)는 X 및 Y내의 포틀릿 쌍들의 거리 값들을 통합하는 것에 의해 계산되는데, 예를 들면 완전 연결법(complete linkage method)에서 통합은 2 클러스터내의 포틀릿 쌍들간의 모든 거리중 최대치를 계산하는 것으로 수행된다:
D(X, Y) = max{ d(A, B) 포틀릿 A는 클러스터 X내에 그리고 포틀릿 B는 클러스터 Y내에}
클러스터가 2이상의 포틀릿을 포함한다면, 개별적으로 계산이 이뤄진다.
선택적으로, 평균 거리가 계산될 수 있다. 2 클러스터내의 포틀릿 쌍들간의 모든 거리의 평균을 계산하는 것에 의해 통합이 수행된다:
D(X, Y) = avg { d(A, B) 포틀릿 A는 클러스터 X내에 그리고 포틀릿 B는 클러스터 Y내에}
또한, 바람직하게는 클러스터 거리 값 계산은 너무 큰 페이지를 초래할 수 있는 너무 큰(oversized) 클러스터를 방지하기 위해 발견적 방법(heuristic)을 넣을 수 있다. 그 예는 단일 페이지상의 포틀릿의 수를 미리-지정된 최대수(예를 들면, 6 또는 8)로 제한하는 것이다.
또한, 체크(check)가 두 클러스터의 결합이 너무 크게 될 수 있다고 지시하는 경우, 상기 알고리즘에 이용되는 클러스터 거리 계산은 상호-클러스터 거리를 증가시키기 위해 변경될 수 있다. 상기 체크는 2 파라미터의 정의에 근거한다:
파라미터 임계치1(parameter threshold1)은 하나의 클러스터내의 포틀릿 수 를 제한한다.
파라미터 임계치2(parameter threshold2)는 클러스터에 대응하는 페이지의 크기를 제한한다. 페이지는 주어진 클러스터에 포함된 포틀릿의 마크업으로부터 통합된다.
따라서 변경된 거리 D 계산 알고리즘은 다음과 같이 설명된다; 슈도코드(pseudocode)가 괄호안에 붙여진다:
먼저, 하나는 클러스터 X에 다른 하나는 클러스터 Y에 있는, 두 포틀릿간의 거리 D가 다음과 같이 결정된다:
D = aggregation { d(A, B) 포틀릿 A는 클러스터 X내에 그리고 포틀릿 B는 클러스터 Y내에};
그 다음, 어떤 포틀릿들이 클러스터 X 4 Y (X 와 Y의 병합)에 할당되는지 결정된다.
그 다음, 체크가 이뤄진다: 포틀릿의 수가 미리-지정된 임계치보다 큰 경우(#포틀릿들>임계치1), 계산된 거리 D는 미리지정된 인크리먼트(increment)에 의해 증가된다;
(D = D + increment; Return D)
그 다음 X 4 Y내의 포틀릿들의 포틀릿 프리뷰 마크업이 검색된다;
그 다음 포틀릿 프리뷰 마크업의 통합이 수행되고, 그에 따라 페이지 프리뷰가 야기된다;
그 다음, 또 다른 체크가 수행된다: 페이지의 요구된 크기가 모든 포틀릿의 마크업을 디스플레이하기에 너무 큰 경우, 즉 미리지정된 임계치2보다 큰 경우, 계산된 거리 D는 인크리먼트되며, 예를 들면:
(if size(page preview) > threshold2
D = D + increment; Return D)
당업자라면 또 다른 변화들을 찾을 수 있을 것이다.
너무 큰 페이지들을 완전히 방지하기 위해, 파라미터 "인크리먼트(increment)"은 적어도 미리지정된 임계치 T(threshold T)에 셋팅된다.
클러스터링으로부터 새로운 컨텐츠 구조를 계산하는 단계 430은 다음과 같이 구현될 수 있다:
먼저, 클러스터 계층이 페이지 계층에 매핑되며, 따라서 페이지와 하나의 클러스터간의 일대일 매핑(bijective mapping)이 이뤄진다. 따라서 페이지-ID는 클러스터-ID에 대응한다. 이것은 각각의 포틀릿을 페이지에 매핑하는 것을 허용한다.
단계 430의 결과는 새로운 컨텐츠 구조 모델이며, 따라서, 변경된 도 2의 표현이 얻어질 수 있다.
마지막으로, 포털 컨텐츠 구조가 컨텐츠 구조 모델 결과에 따라 변경된다. 이것은 컨텐츠 구조를 데이터베이스(예를 들면, 관계 테이블)내에 저장되기 위해 적절한 표현으로 변환시키고 이러한 표현을 포털 데이터베이스에 기록하는 것으로 실현된다. 후속 포털 요청은 이러한 새로운 컨텐츠 구조에 기초하여 처리될 것이다.
이것은 새로운 페이지를 생성하고, 안쓰이는 페이지는 제거하고 포틀릿을 페 이지에 할당하는 것을 포함할 수 있다.
다음으로, 포틀릿의 자동 배치에 대한 예제가 도 6 내지 11을 참조하여 설명되며, 오직 포틀릿 제목 및 포틀릿 키워드만이 데이터 마이닝 입력으로 이용된다. 또한, 명확성을 높이기 위해 매우 단순화된 거리 계산이 이용된다.
포틀릿 A 및 B가 적어도 2개의 공통 키워드를 갖는다면 거리 d는 1과 같다: d(A, B) = 1
이와 달리, 포틀릿 A 및 B가 적어도 1개의 공통 키워드를 갖는다면 거리 d는 3과 같다: d(A, B) = 3
이것도 아니면 d는 5와 같다: d(A, B) = 5
도 6으로부터:
d(열차 스케줄, 여행 계획) = 1, (공통 키워드가: "여행", "시간"이므로)
d(열차 스케줄, 열차 티켓) = 3 (공통 키워드: "여행")
d(열차 스케줄, 전화번호부) = 5 (공통 키워드가 없음)
전술한 연결 거리 계산은 산출한다:
D(X, Y) = max { d(A, B) 포틀릿 A는 클러스터 X내에 그리고 포틀릿 B는 클러스터 Y내에}.
각각의 포틀릿에 대해 프로그램 요소는 페이지의 퍼센티지로서 포틀릿 윈도우의 크기를 지시한다(즉, 스크린 크기). 따라서, 예를 들면 열차 스케줄 포틀릿은 페이지의 50%를 요하고, 동일 페이상에 다른 포틀릿을 위해 50%을 남겨둔다.
너무 큰 페이지를 방지하기 위해, 인크리먼트는 다음과 같이 정해진다:
increment = max(D) + 1 = 6, 즉 모든 포틀릿 거리 값보다 높다
계층적 클러스터링 알고리즘은 도 6에 주어진 클러스터 구조로 시작할 것이다. 도 6에서 7개의 시작 클러스터들이 존재하고, 이들은 도 2로부터의 포틀릿 211 내지 217과 동일하다. 도 6에서 포틀릿 211 내지 217 각각에 주어진 키워드는 전술한 데이터 마이닝 데이터 소스로부터 추출되고, 이 예에서는 포틀릿 디스크립션, 포틀릿의 인터랙션 인터페이스 디스크립션 그리고 포틀릿의 마크업이다. 또한, 페이지의 일부로 나타난 포틀릿 크기의 추가적 지시가 각각의 포틀릿에 대해 만들어진다. 예를 들면 열차 스케줄 포틀릿(211)은 스크린의 50%의 크기를 갖는다.
각각의 반복에 대해 단계 422 내지 428의 시퀀스(도 4 참조)가 계속된다. 시작 실행에서의 단계 422 또는 첫번째 반복은 도 6에 주어진 클러스터 구조를 산출한다: 각각의 포틀릿은 단일 클러스터와 연관된다, 즉 클러스터의 수와 포틀릿의 수는 동일하다. 그 다음 단계 424에서 가장 근접한 클러스터가 발견되고 병합된다. 이 단계는 전술한 거리 계산의 도움으로 수행된다. 이것은 도 7에 주어진 클러스터 구조를 산출한다. 여기서, 포틀릿(211, 214)은 위에서 계산된 것과 같이 2개의 공통 키워드("여행" 및 "시간")를 가지므로 그들의 거리가 1이기 때문에 병합된다.
그 다음, 단계 426이 수행되는데, 각각의 클러스터와 병합된 클러스터간의 거리가 계산된다. 단계 428에서 임의의 유사한 클러스터가 존재하는지 체크된다. 여기서, 클러스터 거리 계산은 위에서 주어진 것과 같이 수행된다. 단계 428에서 개별적 결정은 유사한 클러스터의 존재를 산출한다. 따라서, 2 번째 반복에 진입하 기 위해 "예" 브랜치에 의해 단계 424로 되돌아간다. 2번째 반복은 열차 티켓 클러스터(212)와 렌트카 클러스터(213)가 유사한 것을 발견하고 이들은 병합된다. 그 다음 도 4에 주어진 알고리즘에 따라 다음 반복이 진입된다.
3번째 반복에 대해, 도 9가 상응한다: 프로그램 요소는 클러스터(71)와 "비행기 예약" 포틀릿(215)간의 거리를 계산한다:
D(cluster 71, flight booking) = 1 + increment = 1 + 6 =7.
이 계산은 완전한 페이지를 디스플레이하기 위해 이용되어야만 하는 스크린의 100%보다 큰 것을 피하기 위해 크기 제한이 인크리먼트를 포함한다는 가정하에 이뤄진다. 여기에서, 포틀릿(211 및 214)이 페이지의 80%를 요하고 이것은 추가적으로 스크린의 30% 크기를 갖는 비행기 예약 포틀릿(215)을 통합하기에는 너무 많다. 따라서, 페이지의 110%의 전체 크기는 전술한 거리 계산에 인크리먼트가 더해지도록 하는 결과를 초래한다. 이러한 크기 제한은 포틀릿(215)과 클러스터(71)간의 거리를 증가시킨다.
다음으로, 클러스터(72)와 포틀릿(215)간의 거리가 1로 계산된다, 즉 D( cluster 72, portlet 215) = 1. 또한, 다른 거리가 계산된다: D (portlet 215, portlet 21) = 5;
D (portlet 215, portlet 217) = 5. 포틀렛(215)은 가장 근접한 거리를 갖는 클러스터와 병합되므로, 포틀릿(215)은 클러스터(72)와 결합될 것이다.
도 10은 4번째 반복으로부터 나타난 다음 클러스터 구조를 도시한다. 이 반복에서 포틀릿(216)과 포틀릿(217)은 클러스터(73)를 산출하기 위해 병합된다. 이 들은 공통 키워드를 갖지 않는 포틀릿들이다.
여기에서, 더 이상의 클러스터들이 병합될 수 없다, 각각의 병합 오퍼레이션이 과도한 페이지(스크린의 100% 보다 크게 소모)를 생성할 것이기 때문이다. 그러나, 자동적으로 생성된 새로운 포틀릿과 같이 그 각각이 클러스터 멤버들로의 링크 셋트를 포함하고, 그 각각이 클러스터 멤버로부터 키워드를 물려받는 새롭게 생성되는 클러스터가 고려될 수 있다. 그리고 프로그램 요소는 알고리즘을 이번에는 생성된 클러스터들상에서 다시 런할 수 있다. 그러나, 이번에는 절차는 도 11에 도시된 것과 같은 2 레벨 구조를 얻는, 한 단계 이후에 종료될 수도 있다: 새로운 클러스터(74)는 클러스터(71, 72, 73)를 멤버로 갖는다.
본 방법은 폭넓게 변할 수 있다. 예를 들면, 상호-관계, 특히 특정 포틀릿의 입력/출력 의존관계를 반영하기 위해 포틀릿 인터랙션 팩터(Portlet interaction factor)가 도입될 수 있다.
이것을 위해 클러스터링 알고리즘은 특정 포틀릿이 인터랙트될 수 있다는 사실을 인식하기 위해 변경된다. 이것은 포틀릿 인터랙션 인터페이스 디스크립션(WSDL 문서) 및 포틀릿 마크업의 분석을 통해 이뤄진다. 이러한 사전-분석으로부터, 인터랙팅 포틀릿들의 하나 이상의 세트가 포틀릿의 전체 풀(pool)로부터 추출된다. 다른 세트들은 일반적으로 공통 포틀릿을 공유하지 않을 것이다.
인터랙션이 결정되면 그 다음 이 사실은 포틀릿들에 대한 거리 값을 계산할 때 계산의 (인터랙션) 파라미터로서의 입력이된다. 이것은 2 포틀릿에 대한 "인터랙션 팩터(interaction factor)"를 계산하는 알고리즘에 의해 완성된다. 포틀릿 x 가 포틀릿 y에 의해 알려진 특성들을 처리할 수 있다면, 이 알고리즘은 중간 값(neutral value)으로 시작하여 포틀릿 x와 포틀릿 y간의 인터랙션 팩터(IFAC)를 인크리먼트시킨다. 이것은 이 알고리즘이 인터랙션 오퍼레이션을 참조하는 JSP 태그(tags)를 포함하는 포틀릿 y의 마크업과 포틀릿 x의 인터페이스 디스크립션간의 인터랙션 매칭을 수행하는 것을 의미한다.
이 알고리즘은 이하의 단계들의 시퀀스에 근거할 수 있다:
IFAC = 1
Xin = { x ┃특성 x 는 포틀릿 X의 인터랙션 인터페이스 디스크립션내의 입력 특성으로 참조됨}
Xout = { x ┃특성 x 는 포틀릿 X의 인터랙션 인터페이스 디스크립션내의 출력 특성으로 참조됨}
Yin = { y ┃특성 y 는 포틀릿 Y의 인터랙션 인터페이스 디스크립션 또는 마크업내의 입력 특성으로 참조됨}
Yout = { y ┃특성 y 는 포틀릿 Y의 인터랙션 인터페이스 디스크립션 또는 마크업내의 출력 특성으로 참조됨}
iff 0 <> { Xin ∩Yout } then IFAC = IFAC + increment
iff 0 <> { Xout∩ Yin } then IFAC = IFAC + increment
예를 들면, 두 포틀릿 A 및 B, 인크리먼트 = 2:
A 와 B 가 인터랙트하지 않음: IFAC = 1
A 가 B 로부터 특성들을 수신: IFAC = 3
B 가 A 로부터 특성들을 수신: IFAC = 3
A 는 B 로부터 수신, B 는 A 로부터 수신: IFAC = 1 + 2 + 2 =5
거리 값은 상호적으로 인터랙션 팩터에 따름.
또 다른 실시예에서, 새로운 컨텐츠 구조가 포털 데이터베이스(128)(도 1)내에 분리되어 저장된다, 즉 현재 컨텐츠 구조가 변경되지 않는다. 통합 요소(115)는 포털 유저가 포털에 로그온할 때 또는 유저가 페이지를 요청할 때 체크를 수행하기 위해 변경된다. 체크는 요청된 페이지의 새로운 컨텐츠 구조가 현재 컨텐츠 구조와 비교했을 때 변경되었는지 여부를 테스트한다. 이 테스트가 "변경(modified)"을 산출하면, 통합 요소(115)는 현재 컨텐츠 구조와 새로운 컨텐츠 구조간의 차이점을 계산하고 변화에 따라 현재 컨텐츠 구조를 선택적으로 조화시키기 위한 활동들을 준비하고 페이지 마크업에 이러한 활동들을 호출시키기 위한 링크를 삽입한다. 따라서, 유저에게는 페이지 구조를 개선시킬 수 있는 링크가 제공되는데, 예를 들면 의미론적으로 또는 기능적으로 관련된 포틀릿들을 페이지에 부가하는 것이다. 유저가 대응 링크를 호출할 때 현재 컨텐츠 구조는 변경된다. 이 실시예에서 유저는 컨텐츠 구조에 대한 어떤 변경도 완전히 제어한다.
이것은 이하와 같이 구현될 수 있다:
클라이언트에 의해 비롯된 요청의 프로세싱중, 첫번째 단계는 클라이언트에 의해 요청된 페이지의 페이지 확인(identification)을 얻는 것이다. 이 페이지는 종래 기술들을 이용하여 처리된다.
그 다음 프로그램 요소(180)는 종래 기술을 이용하여 페이지의 현재 컨텐츠 구조를 검색한다. 그 다음 포털 데이터베이스로부터 새로운 컨텐츠 구조를 검색한다. 그 다음 현재 컨텐츠 구조와 새로운 컨텐츠 구조를 비교한다.
새로운 컨텐츠 구조에만 포함되는 모든 포틀릿에 대해, 이하의 과정이 계속된다:
먼저, 프로그램 요소는 현재 페이지, 새로운 포틀릿 그리고 활동 타입의 확인을 포함하는 URL을 생성한다, 즉 "포틀릿 부가(add portlet)". URL 생성은 종래 기술을 통해 수행된다.
현재 컨텐츠 구조에만 포함되는 모든 포틀릿에 대해, 이하의 과정이 계속된다:
먼저, 현재 페이지, 대응하는 포틀릿 및 활동 타입의 확인을 포함하는 URL을 생성한다, 즉 "포틀릿 제거(remove portlet)". 여기서 또는 URL 생성은 종래 기술에 의해 수행된다.
그 다음 클라이언트로 리턴되는 마크업에 URL을 포함한다.
클라이언트는 상기 URL들을 포털에 낼 수 있다. 포털은 상기 URL에 포함된 활동들 처리하기 위해 종래 기술들을 이용할 것이다, 즉 지정된 포틀릿을 부가하거나 또는 포틀릿을 제거하거나.
당업자라면 전술한 실시예들은 특정 과정들과 본 발명의 방법을 설명하기 위 해 주어진 대표적인 단계들의 제안된 시퀀스를 나타낸다는 것을 알 수 있을 것이다. 따라서, 이러한 예들은 단계들의 순서, 단계들 사이의 병렬화(parallelization) 정도, 단일 단계 구현의 세부사항, 데이터가 저장되는 형식, 포틀릿의 그룹핑 방식 등과 같은 다양한 측면들에 변경이 가능하며 각각의 또 다른 실시예들이 얻어질 수 있다는 것을 이해할 수 있을 것이다.
본 발명은 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합에서 구체화될 수 있다. 본 발명에 따른 포틀릿 배치 툴이 하나의 컴퓨터 시스템에서 집중화된 방식에서 또는 다른 요소들이 여러가지 상호연결된 컴퓨터 시스템에 퍼져있는 분배 방식에서 구체화될 수 있다. 본 명세서에 설명된 상기 방법들을 실행하기 위해 적응된 임의의 컴퓨터 시스템 또는 다른 장치 종류가 적합하다. 전형적인 하드웨어 및 소프트웨어의 조합은 본 명세서에서 설명된 상기 방법들을 실행하도록 로딩되어 실행될 때 컴퓨터 시스템을 제어하는 컴퓨터 프로그램을 갖는 범용 컴퓨터 시스템일 수 있다.
본 발명은 본 명세서에 설명된 상기 방법들의 구현을 가능하게 하는 모든 특징을 포함하며 컴퓨터 시스템내에서 로딩될 때 이러한 방법들을 실행시킬 수 있는 컴퓨터 프로그램 제품에 내장될 수 있다.
본 컨텍스트내의 컴퓨터 프로그램 수단 또는 컴퓨터 프로그램은 정보 처리 능력을 갖는 시스템이 바로 또는 a) 다른 언어, 코드 또는 표기로 변환되거나 b) 다른 매체형식내에서 재생산된 후에 특정 기능을 수행하도록 야기시키기 위한 명령어 셋트의 임의의 표현(임의의 언어, 코드 또는 표기(notation))을 의미한다.
이에 따라, 이하의 이점들이 얻어질 수 있다;
먼저, 포틀릿의 개선된 통합 및 단순화된 네비게이션으로 인해 포털 유저가 이익을 얻는다. 두번째로, 포털 관리자가 컨텐츠 구조의 수동적 구성을 할 필요가 없다.

Claims (15)

  1. 포털 페이지들 및 포틀릿들의 계층적 컨텐츠 구조에 근거하여 웹 포털에서 포틀릿들을 배치하기 위해 컴퓨터에 의해 구현되는 방법에 있어서,
    상기 포틀릿들과 관련된 데이터 마이닝 입력 데이터(data mining input data)를 검색하는 단계와,
    상기 데이터 마이닝 입력 데이터상에 데이터 마이닝 기능을 수행하는 단계 -상기 데이터 마이닝 기능은 상기 포틀릿들 사이의 각각의 유사성을 나타내는 데이터 마이닝 결과(data mining result)를 야기하며, 상기 유사성은 상기 포틀릿들 사이의 입력/출력 의존관계를 반영하는 적어도 하나의 인터랙션 팩터(interaction factor)를 포함하며, 상기 데이터 마이닝 기능은 상기 포틀릿들 사이의 유사성을 상기 포틀릿들 사이의 거리로 표현하고 상기 포틀릿들 중 연관된 것들이 함께 클러스터링되도록 상기 포틀릿들 사이의 거리에 근거하여 상기 포틀릿들을 다수의 클러스터들로 클러스터링하는 것을 포함하며, 다른 클러스터들에 존재하는 포틀릿 쌍들 사이의 거리 계산에 근거하여 클러스터 상호간의 거리들이 계산됨- 와,
    상기 데이터 마이닝 결과로부터 새로운 계층적 컨텐츠 구조를 계산하는 단계 -상기 새로운 계층적 컨텐츠 구조는 의미적으로 그리고 기능적으로 유사한 포틀릿들을 서로 근접시켜 배치하며, 상기 새로운 계층적 컨텐츠 구조는 상기 웹 포털내의 웹 페이지들의 계층 및 상기 웹 페이지들내에 포함된 포틀릿들을 기술하며(describe), 상기 새로운 계층적 컨텐츠 구조는 포털 데이터베이스에 저장됨- 와,
    상기 다수의 클러스터들내의 상기 포틀릿들이 새로운 웹 페이지들내에 포함되도록 상기 새로운 계층적 컨텐츠 구조에 근거하여 새로운 웹 페이지들을 상기 웹 포털에 제공하는 단계
    를 포함하는, 포틀릿 배치를 위한 컴퓨터 구현 방법.
  2. 제1항에 있어서,
    관리자 피드백을 수신하는 단계를 더 포함하며,
    상기 관리자 피드백은 상기 웹 포털에 제공된 상기 새로운 웹 페이지들이 새로운 웹 포털 버전을 위한 기본 버전으로 승인되었는지 여부를 표시하는, 포틀릿 배치를 위한 컴퓨터 구현 방법.
  3. 제1항에 있어서,
    상기 데이터 마이닝 기능은 연관된 포틀릿 A, B를 클러스터 X, Y로 클러스터링하는 것을 포함하며, 포틀릿 A는 클러스터 X내에 그리고 포틀릿 B는 클러스터 Y내에 있는, 포틀릿 배치를 위한 컴퓨터 구현 방법.
  4. 제1항에 있어서,
    상기 웹 포털에 제공된 상기 새로운 웹 페이지들상에 수동적인 수정(correction)을 가하는 것을 포함하는 관리자 피드백을 수신하는 단계를 더 포함하는, 포틀릿 배치를 위한 컴퓨터 구현 방법.
  5. 제1항에 있어서,
    상기 새로운 계층적 컨텐츠 구조를 계산하는 단계는 현재 포틀릿 배치에서의 시작과 반복(iteration)에 근거하는, 포틀릿 배치를 위한 컴퓨터 구현 방법.
  6. 제1항에 있어서,
    상기 새로운 계층적 컨텐츠 구조를 계산하는 단계는 새로운 포틀릿이 페이지상에 인스톨되는 경우에 수행되는, 포틀릿 배치를 위한 컴퓨터 구현 방법.
  7. 제1항에 있어서,
    현재 계층적 컨텐츠 구조와는 별개로 상기 새로운 계층적 컨텐츠 구조를 저장하는 단계와,
    미리지정된 유저 활동에 대응하여, 새로운 계층적 컨텐츠 구조로 현재 계층적 컨텐츠 구조를 변경하는 것에 대한 결정을 수행하는 단계와,
    상기 변경에 따라 현재 계층적 컨텐츠 구조를 선택적으로 적응시키기(adapting) 위해 유저 입력 제어를 제공하는 단계
    를 더 포함하는, 포틀릿 배치를 위한 컴퓨터 구현 방법.
  8. 적어도 하나의 프로세서 및 컴퓨터 판독가능 저장매체를 포함하는 시스템에 있어서,
    상기 컴퓨터 판독가능 저장매체는 포털 페이지들 및 포틀릿들의 계층적 컨텐츠 구조에 근거하여 웹 포털에서 포틀릿들을 배치하기 위한 프로그램 코드를 가지며,
    상기 프로그램 코드는,
    상기 포틀릿들과 관련된 데이터 마이닝 입력 데이터(data mining input data)를 검색하기 위한 프로그램 코드와,
    상기 데이터 마이닝 입력 데이터상에 데이터 마이닝 기능을 수행하기 위한 프로그램 코드 -상기 데이터 마이닝 기능은 상기 포틀릿들 사이의 각각의 유사성을 나타내는 데이터 마이닝 결과(data mining result)를 야기하며, 상기 유사성은 상기 포틀릿들 사이의 입력/출력 의존관계를 반영하는 적어도 하나의 인터랙션 팩터(interaction factor)를 포함하며, 상기 데이터 마이닝 기능은 상기 포틀릿들 사이의 유사성을 상기 포틀릿들 사이의 거리로 표현하고 상기 포틀릿들 중 연관된 것들이 함께 클러스터링되도록 상기 포틀릿들 사이의 거리에 근거하여 상기 포틀릿들을 다수의 클러스터들로 클러스터링하는 것을 포함하며, 다른 클러스터들에 존재하는 포틀릿 쌍들 사이의 거리 계산에 근거하여 클러스터 상호간의 거리들이 계산됨- 와,
    상기 데이터 마이닝 결과로부터 새로운 계층적 컨텐츠 구조를 계산하기 위한 프로그램 코드 -상기 새로운 계층적 컨텐츠 구조는 의미적으로 그리고 기능적으로 유사한 포틀릿들을 서로 근접시켜 배치하며, 상기 새로운 계층적 컨텐츠 구조는 상기 웹 포털내의 웹 페이지들의 계층 및 상기 웹 페이지들내에 포함된 포틀릿들을 기술하며(describe), 상기 새로운 계층적 컨텐츠 구조는 포털 데이터베이스에 저장됨- 와,
    상기 다수의 클러스터들내의 상기 포틀릿들이 새로운 웹 페이지들내에 포함되도록 상기 새로운 계층적 컨텐츠 구조에 근거하여 새로운 웹 페이지들을 상기 웹 포털에 제공하기 위한 프로그램 코드를 포함하는, 시스템.
  9. 포털 페이지들 및 포틀릿들의 계층적 컨텐츠 구조에 근거하여 웹 포털에서 포틀릿들을 배치하기 위한 프로그램 코드를 포함하는 컴퓨터 판독가능 저장매체에 있어서,
    상기 프로그램 코드는,
    상기 포틀릿들과 관련된 데이터 마이닝 입력 데이터(data mining input data)를 검색하기 위한 프로그램 코드와,
    상기 데이터 마이닝 입력 데이터상에 데이터 마이닝 기능을 수행하기 위한 프로그램 코드 -상기 데이터 마이닝 기능은 상기 포틀릿들 사이의 각각의 유사성을 나타내는 데이터 마이닝 결과(data mining result)를 야기하며, 상기 유사성은 상기 포틀릿들 사이의 입력/출력 의존관계를 반영하는 적어도 하나의 인터랙션 팩터(interaction factor)를 포함하며, 상기 데이터 마이닝 기능은 상기 포틀릿들 사이의 유사성을 상기 포틀릿들 사이의 거리로 표현하고 상기 포틀릿들 중 연관된 것들이 함께 클러스터링되도록 상기 포틀릿들 사이의 거리에 근거하여 상기 포틀릿들을 다수의 클러스터들로 클러스터링하는 것을 포함하며, 다른 클러스터들에 존재하는 포틀릿 쌍들 사이의 거리 계산에 근거하여 클러스터 상호간의 거리들이 계산됨- 와,
    상기 데이터 마이닝 결과로부터 새로운 계층적 컨텐츠 구조를 계산하기 위한 프로그램 코드 -상기 새로운 계층적 컨텐츠 구조는 의미적으로 그리고 기능적으로 유사한 포틀릿들을 서로 근접시켜 배치하며, 상기 새로운 계층적 컨텐츠 구조는 상기 웹 포털내의 웹 페이지들의 계층 및 상기 웹 페이지들내에 포함된 포틀릿들을 기술하며(describe), 상기 새로운 계층적 컨텐츠 구조는 포털 데이터베이스에 저장됨- 와,
    상기 다수의 클러스터들내의 상기 포틀릿들이 새로운 웹 페이지들내에 포함되도록 상기 새로운 계층적 컨텐츠 구조에 근거하여 새로운 웹 페이지들을 상기 웹 포털에 제공하기 위한 프로그램 코드를 포함하는, 컴퓨터 판독가능 저장매체.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
KR1020060116944A 2005-12-12 2006-11-24 의미적 그리고 기능적 관계에 따라 포털 페이지상의포틀릿의 자동적 배치를 위한 시스템 KR101013233B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05111949.3 2005-12-12
EP05111949 2005-12-12

Publications (2)

Publication Number Publication Date
KR20070062408A KR20070062408A (ko) 2007-06-15
KR101013233B1 true KR101013233B1 (ko) 2011-02-08

Family

ID=38140709

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060116944A KR101013233B1 (ko) 2005-12-12 2006-11-24 의미적 그리고 기능적 관계에 따라 포털 페이지상의포틀릿의 자동적 배치를 위한 시스템

Country Status (4)

Country Link
US (2) US7653659B2 (ko)
JP (1) JP4848259B2 (ko)
KR (1) KR101013233B1 (ko)
CN (1) CN1983269B (ko)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7376900B2 (en) * 2004-09-30 2008-05-20 International Business Machines Corporation Method and system to control operation of a portlet
WO2006094208A1 (en) * 2005-03-03 2006-09-08 Thomson Global Resources Integrated system, tools, and methods for designing automated business process applications
US9082316B2 (en) * 2006-02-14 2015-07-14 Goalscape Software Gmbh Method and system for strategy development and resource management for achieving a goal
EP2069972A1 (en) 2006-09-12 2009-06-17 International Business Machines Corporation System and method for dynamic context-sensitive integration of content into a web portal application
CN101188623B (zh) * 2006-11-20 2011-02-02 国际商业机器公司 用于动态绑定门户组件的方法和系统
US20080201645A1 (en) * 2007-02-21 2008-08-21 Francis Arthur R Method and Apparatus for Deploying Portlets in Portal Pages Based on Social Networking
US7849157B2 (en) * 2007-05-23 2010-12-07 Oracle International Corporation System and method for consumer entitlements in portal services
US20090158166A1 (en) * 2007-12-14 2009-06-18 Dewar Ami H Method, system, and computer program product for automatic rearrangement of modules based on user interaction
US8677370B2 (en) * 2008-06-17 2014-03-18 International Business Machines Corporation Generating resource consumption control limits
US8010659B2 (en) * 2008-09-24 2011-08-30 International Business Machines Corporation Executing resource consumption control limits
US8271472B2 (en) * 2009-02-17 2012-09-18 International Business Machines Corporation System and method for exposing both portal and web content within a single search collection
US10235462B2 (en) 2009-09-16 2019-03-19 International Business Machines Corporation Analyzing an interaction history to generate a customized webpage
JP5424122B2 (ja) * 2010-03-08 2014-02-26 日本電気株式会社 ポートレット処理システム、ポータルサーバ及びポータルシステム
CN102200907A (zh) * 2010-03-24 2011-09-28 深圳市金蝶中间件有限公司 一种门户应用程序的个性化配置方法及装置
US8271883B2 (en) * 2010-06-30 2012-09-18 Alcatel Lucent Intelligent auto-creation of new portlets
US20120005629A1 (en) * 2010-06-30 2012-01-05 Alcatel-Lucent Canada Inc. Tightly coupled lists and forms for creating/viewing/editing data
KR101270070B1 (ko) * 2012-02-23 2013-05-31 삼성에스디에스 주식회사 커뮤니티 서비스 제공장치 및 방법
US9659095B2 (en) * 2012-03-04 2017-05-23 International Business Machines Corporation Managing search-engine-optimization content in web pages
US9323728B2 (en) * 2012-03-16 2016-04-26 International Business Machines Corporation Coordinating the management of the layout and design of portal pages with the management of its associated web content
US9165150B2 (en) 2013-02-19 2015-10-20 Symantec Corporation Application and device control in a virtualized environment
CN104253790B (zh) 2013-06-27 2018-08-28 国际商业机器公司 规范化页面流的方法和设备
CN103384276A (zh) * 2013-07-22 2013-11-06 海南电网公司 企业信息门户系统
CN103399769A (zh) * 2013-08-02 2013-11-20 昆明能讯科技有限责任公司 组件加载系统
US10891423B2 (en) * 2014-03-20 2021-01-12 International Business Machines Corporation Portlet display on portable computing devices
GB2532030A (en) 2014-11-05 2016-05-11 Ibm Method and facility for user navigation in a target portal
US9798875B2 (en) * 2015-02-03 2017-10-24 Easy Solutions Enterprises Corp. Systems and methods for detecting and addressing HTML-modifying malware

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030033138A1 (en) 2001-07-26 2003-02-13 Srinivas Bangalore Method for partitioning a data set into frequency vectors for clustering
WO2004031985A2 (en) 2002-10-04 2004-04-15 International Business Machines Corporation Method and apparatus for enabling associated portlets of a web portal to collaborate for synchronized content display
US20040255301A1 (en) 2003-06-13 2004-12-16 Andrzej Turski Context association schema for computer system architecture
US6836773B2 (en) 2000-09-28 2004-12-28 Oracle International Corporation Enterprise web mining system and method

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5627764A (en) * 1991-10-04 1997-05-06 Banyan Systems, Inc. Automatic electronic messaging system with feedback and work flow administration
US5544256A (en) * 1993-10-22 1996-08-06 International Business Machines Corporation Automated defect classification system
US6598054B2 (en) * 1999-01-26 2003-07-22 Xerox Corporation System and method for clustering data objects in a collection
CN1260540A (zh) * 2000-01-26 2000-07-19 舒东风 预设实名互联网站的方法
EP1170674A3 (en) * 2000-07-07 2002-04-17 LION Bioscience AG Method and apparatus for ordering electronic data
US6961731B2 (en) * 2000-11-15 2005-11-01 Kooltorch, L.L.C. Apparatus and method for organizing and/or presenting data
US6694307B2 (en) * 2001-03-07 2004-02-17 Netvention System for collecting specific information from several sources of unstructured digitized data
ATE413744T1 (de) * 2001-03-30 2008-11-15 Nokia Corp Methode zur konfiguration eines netwerkes durch definieren von clustern
US20030237094A1 (en) * 2002-06-24 2003-12-25 Koninklijke Philips Electronics N.V. Method to compare various initial cluster sets to determine the best initial set for clustering a set of TV shows
US7523174B2 (en) * 2002-10-15 2009-04-21 International Business Machines Corporation Dynamic portal assembly
US7386611B2 (en) * 2002-12-10 2008-06-10 International Business Machines Corporation Apparatus and methods for co-location and offloading of web site traffic based on traffic pattern recognition
US20040199584A1 (en) * 2003-03-05 2004-10-07 Evan Kirshenbaum Method and system for customized configuration of an appearance of a website for a user
JP2005092443A (ja) * 2003-09-16 2005-04-07 Mitsubishi Research Institute Inc クラスター分析装置およびクラスター分析方法
JP4526261B2 (ja) * 2003-11-14 2010-08-18 株式会社リコー ポータルページ生成方法、ウェブサーバ、および、プログラム
US20050137939A1 (en) * 2003-12-19 2005-06-23 Palo Alto Research Center Incorporated Server-based keyword advertisement management
JP2005316897A (ja) * 2004-04-30 2005-11-10 Nippon Telegr & Teleph Corp <Ntt> 視覚的分類方法及び装置及びプログラム及び視覚的分類プログラムを格納した記憶媒体
US7890327B2 (en) * 2004-06-28 2011-02-15 International Business Machines Corporation Framework for extracting multiple-resolution semantics in composite media content analysis
US7600027B2 (en) * 2004-09-16 2009-10-06 International Business Machines Corporation Managing multiple sessions for a user of a portal
US20070094595A1 (en) * 2005-10-18 2007-04-26 Heck Mathew W Survey portal system and method of use

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6836773B2 (en) 2000-09-28 2004-12-28 Oracle International Corporation Enterprise web mining system and method
US20030033138A1 (en) 2001-07-26 2003-02-13 Srinivas Bangalore Method for partitioning a data set into frequency vectors for clustering
WO2004031985A2 (en) 2002-10-04 2004-04-15 International Business Machines Corporation Method and apparatus for enabling associated portlets of a web portal to collaborate for synchronized content display
US20040255301A1 (en) 2003-06-13 2004-12-16 Andrzej Turski Context association schema for computer system architecture

Also Published As

Publication number Publication date
JP2007164789A (ja) 2007-06-28
US20070136329A1 (en) 2007-06-14
US7653659B2 (en) 2010-01-26
CN1983269B (zh) 2010-06-16
JP4848259B2 (ja) 2011-12-28
US8108395B2 (en) 2012-01-31
US20100217777A1 (en) 2010-08-26
KR20070062408A (ko) 2007-06-15
CN1983269A (zh) 2007-06-20

Similar Documents

Publication Publication Date Title
KR101013233B1 (ko) 의미적 그리고 기능적 관계에 따라 포털 페이지상의포틀릿의 자동적 배치를 위한 시스템
US8037409B2 (en) Method for learning portal content model enhancements
US8700682B2 (en) Systems, methods and articles for template based generation of markup documents to access back office systems
KR101255363B1 (ko) 네트워크 양식들에 대한 데이터 구동 액션
RU2501078C2 (ru) Ранжирование результатов поиска с использованием расстояния редактирования и информации о документе
CN101454779B (zh) 基于搜索的应用开发框架
US8402034B2 (en) Using a dynamically-generated content-level newsworthiness rating to provide content recommendations
Frischmuth et al. Ontowiki–an authoring, publication and visualization interface for the data web
US20140188845A1 (en) Interoperable shared query based on heterogeneous data sources
US20100036828A1 (en) Content analysis simulator for improving site findability in information retrieval systems
US9286362B2 (en) System and method to customize metadata for different users running on the same infrastructure
CN106294695A (zh) 一种面向实时大数据搜索引擎的实现方法
US20070067714A1 (en) Modularized web page editing system and method thereof
CN103262106A (zh) 管理来自结构化和非结构化数据源的内容
WO2004023341A1 (ja) 検索処理システム、その検索サーバ、クライアント、検索処理方法、プログラム、及び記録媒体
Bonifati et al. Building multi-device, content-centric applications using WebML and the W3I3 Tool Suite
US10114617B2 (en) Rapid visualization rendering package for statistical programming language
Khalid et al. Crawling ajax-based web applications: Evolution and state-of-the-art
Ayuba et al. Evaluation of page response time between partial and full rendering in a web-based catalog system
KR20160129548A (ko) 맞춤형 국가 연구개발 정보 제공을 위한 시스템 및 방법
Netti Interactive guided online/off-line search using google api and json
Du et al. Intelligent Resume Retrieval Based on Lucence.
RU2546058C1 (ru) Способ формирования реляционного описания синтаксиса команды
Moro et al. A version model for supporting adaptation of web pages
CN115841102A (zh) 动态数据报表的生成方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee