KR100388928B1 - 선택된 애플리케이션 데이터를 설명하는 주석을 생성 및표시하는 방법 및 툴 - Google Patents

선택된 애플리케이션 데이터를 설명하는 주석을 생성 및표시하는 방법 및 툴 Download PDF

Info

Publication number
KR100388928B1
KR100388928B1 KR10-2001-7000670A KR20017000670A KR100388928B1 KR 100388928 B1 KR100388928 B1 KR 100388928B1 KR 20017000670 A KR20017000670 A KR 20017000670A KR 100388928 B1 KR100388928 B1 KR 100388928B1
Authority
KR
South Korea
Prior art keywords
value
data
component
application
user
Prior art date
Application number
KR10-2001-7000670A
Other languages
English (en)
Other versions
KR20010071926A (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 KR20010071926A publication Critical patent/KR20010071926A/ko
Application granted granted Critical
Publication of KR100388928B1 publication Critical patent/KR100388928B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems

Abstract

소프트웨어 컴퍼넌트 세트, 시스템 및 방법은 애플리케이션 데이터값에 관한 값에 대한 해석 정보를 데이터 처리 시스템의 사용자에게 제공한다. 상기 방법은 애플리케이션 컴퍼넌트의 데이터값 세트의 사용자 선택에 응답해서, 상기 선택된 데이터값에 대응하는 값에 대한 해석 정보를 생성하는 단계와; 그 세트내의 데이터값과 관련된 표시 스크린 영역으로 입력 장치 포인터를 연속 이동시키는 것에 응답해서, 상기 해석 정보를 데이터 처리 시스템에 연결된 출력 장치를 경유해서 사용자에 표시하는 단계를 포함한다. 처리 컴퍼넌트 세트로부터 사용자에 의해 선택가능한 처리 컴퍼넌트는 결과를 생성하도록 상기 처리 동작을 데이터 세트상에서 수행하고, 그후 그 결과에 대응하는 값에 대한 해석 정보를 생성함에 의해 수행되는 동작 모두의 사용자 선택 및 애플리케이션 데이터 세트에 응답한다. 해석 정보를 사용자에게 표시하는 것은 애플리케이션-지정된 버블 헬프에 대한 종래 기술과 같이, GUI에서 플라이오버 텍스트 박스를 사용한다.

Description

선택된 애플리케이션 데이터를 설명하는 주석을 생성 및 표시하는 방법 및 툴{METHOD AND TOOL FOR GENERATING AND DISPLAYING A DESCRIPTIVE ANNOTATION OF SELECTED APPLICATION DATA}
컴퓨터의 사용자 상호동작을 컴퓨터로써 가이드하는 공지된 메카니즘은 '버블 헬프'('툴 팁스' 및 '호버(Hover) 헬프'로 또한 공지된)이다. '버블 헬프' 메카니즘은 툴 바 그래픽에 표시된 기능을 설명하거나 사용자로 하여금 어떤 데이터를 엔트리 필드에 들어가게 하는 것을 설명하는 바와 같이 인터페이스 메카니즘을 설명하는 텍스트 라벨을 사용자에게 표시함에 의해 사용자 상호동작을 돕는다. 버블 헬프 메카니즘을 경유해서 표시된 설명 텍스트는 애플리케이션 프로그램에 지정되고 그 프로그램내에 실장되는 정보의 정적(靜的) 피쓰이다. 특정한 아이콘, 필드 또는 다른 스크린 엘레먼트와 관련되는 텍스트는 각 그래픽 또는 다른 스크린 엘레먼트에 근접해서 이동되는 입력 장치 포인터에 응답해서 관련된 아이콘 또는 엘레먼트 옆에 표시된다.
다른 공지된 형태의 헬프 시스템에는 애플리케이션으로 지정되고 애플리케이션내로부터 헬프를 요청하는 것에 응답해서 현재 동작하는 애플리케이션의 일부에 관련되는 지정되어 기형성된 헬프 정보를 사용자에게 표시하는 기능을 갖는 문맥에 민감한 온라인 사용자 가이드를 포함한다. 애플리케이션의 여러 부분 또는 애플리케이션내의 스크린 위치는 헬프 요청시 관련되는 헬프 텍스트로 포인트하는 그들과 관련된 라벨을 갖는다.
상기 다양한 사용자 안내 메카니즘은 기능을 설명하거나 데이터의 해석을 돕는 것보다 오히려 사용자에게 어떤 동작이 필요하다는 것을 설명하게 된다. 그들이 사용자에게 제공한 정보는 애플리케이션에 대해 기형성되고(즉, 애플리케이션의 활성 부분 또는 지정된 아이콘 또는 필드에 대해 기형성된) 통상적으로 애플리케이션에 의해 관리된 데이터의 해석에 아무런 헬프를 제공하지 못한다.
스프레드시트 애플리케이션 프로그램은 헬프하는 툴에 데이터 분석을 제공하나, 지원된 분석 형태는 스프레드시트 애플리케이션에 지정될뿐만 아니라 사용자가 실행을 예측하고 같은 방법(예를 들어, 데이터값의 모든 컬럼에 대한 총계를 계산하거나 선택된 퍼센티지를 그 총계에 부가하거나, 테이블에서 기형성된 엘레먼트 세트의 그래픽 표시를 발생시키는 방법)으로 항시 실행되는 처리 형태로 지정된다. 스프레드시트내의 툴이 패턴, 경향 및 예외를 발견하도록 선택된 데이터 세트를 조사하는 등의 계획안된 유연성 데이터 해석 동작에는 알맞지 않다.
국제 특허 출원 제 PCT/GB9502286호(공개 제 WO96/39655호)는 표시된 데이터의 해석을 돕는 것을 향상시킨 것을 개시하며, 그 출원은 본 출원의 양수인에게 양도되고 본원에서 참고문헌으로 된다. WO96/39655는 객체 모델을 개시하고 거기에서 동작이 그 동작을 정의하는 객체 클래스의 선택가능한 인스턴스로서(방법 및 특성으로서) 실행된다. 동작은 다수의 애플리케이션 프로그램(스프레드시트, 워드 프로세서, 웹 브라우저, 데이터베이스를 포함하는)에 의해 관리된 선택된 데이터 세트에 인가될 수 있다. 각 오퍼레이터 객체의 알고리즘은 오퍼레이터 객체와 인터페이스할 수 있는 모든 애플리케이션프로그램에 의해 공유되어 독립적으로 실행가능하다.
WO96/39655에 개시된 동작이 표시 선택된 데이터 세트를 가시적으로 사용하는 해석 동작을 포함한다. 하나의 예는 각 값이 선택된 데이터 세트에 대한 평균 이상 또는 이하인지를 코드가 표시하는 숫자 데이터값의 애플리케이션 테이블의 엘레먼트에 대한 색깔 코드의 애플리케이션이다. 다른 예는 데이터 값의 랭킹을 크기 순서로 표시하는 색깔 코드를 사용한다. 다른 예의 동작은 색깔 코딩에 의해 숫자 데이터내의 포지티브 및 네가티브 경향을 식별한다. 문자 데이터에서, 하나의 동작 예는 철자 확인 동작에 의해 인식되지 못하는 워드를 강조하는 철자 확인 동작이다.
WO96/39655는 알고리즘과 인터페이스하기위해 동작되는 다수의 다른 애플리케이션프로그램중 어느 하나에 의해 관리되는 선택된 세트상에서 독립적으로 실행가능한 알고리즘에 의해 수행되는 데이터-발생 동작을 개시한다. 부가 데이터를 발생하도록 선택된 애플리케이션-관리된 데이터를 처리하는 동작 예는 합계, 산술 평균 및 표준 편차 계산 동작이다. 부가적으로 개시된 동작 예는 선택된 데이터 값의크기를 그래픽 표시로 발생시키는 것을 포함한다.
WO96/39655는 사용자에게 데이터내의 패턴, 경향 및 예외를 인식하기위해 매우 도움되는 메카니즘을 개시하고, 다른 애플리케이션의 데이터에 인가될 수 있는 일반적인 객체를 경유해서 동작을 실행함에 의해 다수의 다른 애플리케이션 프로그램내의 기능을 복제할 필요성을 없애지만, 그것은 그래프 또는 색깔 코드 또는 다른 인가된 강조로부터 식별될 수 있는 것을 넘어선 데이터의 값에 대한 해석에 대한 지원을 제공하지 못한다.
본 발명은 컴퓨터 표시 장치상에 표시된 데이터의 해석을 가시적으로 돕는 방법 및 툴에 관한 것이다.
본 발명의 양호한 실시예는 첨부 도면을 참고로 예에 의해 더 상세하게 설명된다.
도 1는 제 1실시예에 따라 본 발명을 실시하는 소프트웨어 컴퍼넌트를 포함하는 데이터 처리 시스템의 개략적인 도시도.
도 2는 도 1에 도시된 실시예를 실행하는 컴퍼넌트의 더 상세화된 도시도.
도 3는 제 1실시예에 따라 본 발명을 사용하는 동안 이벤트 시퀀스의 도시도.
도 4a 및 4b는 데이터 값을 선택된 값 세트의 평균과 비교하는 동작용으로예시된 컴퓨터 표시 스크린 영상의 도시도이고, 각 영상은 각 현재의 마우스 포인터 위치에서 데이터값에 관련된 주석 박스를 포함한다.
도 5는 데이터 값을 그 행의 제 1값과 비교하는 동작용으로 부가 예시된 표시 스크린 영상의 도시도이고, 현재의 마우스 포인터 위치에서 데이터값에 관련된 주석 박스를 포함한다.
도 6은 데이터 값을 그 행의 이전값과 비교하는 동작용으로 부가 예시된 표시 스크린 영상의 도시도이고, 현재의 마우스 포인터 위치에서 데이터값에 관련된 주석 박스를 포함한다.
도 7은 고정값보다 큰 값을 식별하는 동작용으로 부가 예시된 표시 스크린 영상의 도시도이고, 현재의 마우스 포인터 위치에서 데이터값에 관련된 주석 박스를 포함한다.
도 8은 본 발명의 실시예에 따른 SmartMarker 알고리즘에 관련되는 인터페이스 및 자바 클래스의 도시도.
도 9는 본 발명의 실시예에 따른 애플리케이션 컴퍼넌트에 관련되는 인터페이스 및 클래스의 도시도.
도 10은 본 발명의 실시예에 따른 값, 값 세트 및 결과에 관련되는 인터페이스 및 클래스의 도시도.
도 11a 및 11b는 본 발명의 실시예에 따른 SmartMarker 및 팔레드 Java Beans에 관련되는 인터페이스 및 클래스의 도시도.
본 발명은 데이터의 값에 대한 해석을 데이터 처리 시스템의 사용자에게 표시하는 메카니즘 및 방법을 제공한다.
본 발명의 하나의 특징에 따라, 데이터의 값에 대한 해석을 데이터 처리 시스템의 사용자에게 제공하는 메카니즘이 제공되고, 수행되는 동작의 사용자 선택 및 애플리케이션 컴퍼넌트의 데이터값 세트의 사용자 선택에 응답해서 결과를 발생시키도록 선택된 데이터값 세트를 처리하는 하나 이상의 처리 컴퍼넌트를 포함하고; 상기 하나 이상의 처리 컴퍼넌트는 상기 발생된 결과에 대응하는 값에 대한 해석 정보를 발생시키고, 상기 해석 정보를 사용자에게 표시하기 위해 애플리케이션 컴퍼넌트에 제공한다.
특정한 처리 동작을 데이터 값 세트상에서 수행하고, 그 데이터 값 세트를 처리하고 값에 대한 해석 정보를 발생시키는 논리는 객체 지향성 데이터 처리 환경에서 각 처리 객체 또는 연관된 객체 세트내에서 캡슐화된다. (처리 동작 예는 데이터 값 세트에 대한 평균이고 그후에 각 값을 평균과 비교하고 각 값의 관계를 설명하는 정보를 평균으로 발생시킨다.
애플리케이션 컴퍼넌트는 상기 처리 객체 또는 객체 세트와 인터페이스하기위해 사용된 제 2객체를 구비한다. 본 발명의 양호한 실시예에 따라, 처리 객체 클래스는 동작을 애플리케이션 컴퍼넌트 데이터상에서 수행하고 값에 대한 해석 정보를 애플리케이션 컴퍼넌트로 제공하는 방법을 제공한다. 그러므로, 각 처리 객체는 일반적인 객체와 인터페이스하도록 사용되는 다수의 애플리케이션 컴퍼넌트중 어느 하나로부터 선택된 데이터를 처리하는 처리 객체 클래스의 인스턴스이다. 애플리케이션 컴퍼넌트는 해석 정보를 사용자에게 표시하게 된다. 그것은 단일 애플리케이션에 대해 지정해서 기록되고 그 애플리케이션의 시퀀스적인 코드내에 설치되고 그것으로 제한되는 통상적인 종래 기술의 해석 동작으로부터 구별된다. 종래 기술의 해석 동작은 애플리케이션내의 기형성된 데이터 엘레먼트 세트로도 제한될 수 있다.
상기 문맥의 "애플리케이션 컴퍼넌트"는 컴퍼넌트 프로그래밍 환경으로 제한되지 않으며 그 데이터 값을 처리 컴퍼넌트 또는 부분에 제공하고 그 복귀된 해석 정보를 수신할 수 있는 애플리케이션 프로그램 또는 애플리케이션 프로그램 또는 애플릿의 일부일 수 있다. 컴퍼넌트의 예는 엔트리 필드 및 버튼 등의 미세하게 그레인된(grained) 컴퍼넌트로부터 그리드, 테이블 및 계통도 등의 매체로 그레인된 컴퍼넌트를 통해 차트 및 스프레드시트 등의 더 복잡한 컴퍼넌트까지를 범위로 한다.
데이터 값의 "세트"는 단일값 또는 복수의 값일 수 있다. 양호한 실시예의 해석 정보가 지정해서 선택된 데이터 값과 선택된 데이터 세트의 다른 값 또는 절대 참조값과의 관계를 설명하고, 상기 관계는 선택된 데이터 세트를 처리하는 논리에 의해 결정된다. 해석 정보는 그것을 선택하도록 지정된 데이터값에 매우 근접해서 이동되는 입력 장치 포인트에 응답해서 데이터 값의 세트의 선택 다음에 데이터 처리 시스템에 연결된 표시 장치상에서 사용자에게 표시된다.
해석 정보가 예를 들어, '버블 헬프'용으로 공지된 표시 메카니즘을 사용해서 일시적으로 표시된 '플라이오버' 숫자 문자식 텍스트 또는 상태 라인 메시지로서 표시될 수 있다. 값에 대한 데이터 해석 정보를 표시하기위해 '버블 헬프' 메카니즘을 사용하는 것은 종래 기술에서 공지되지 않았다. 선택된 값의 관계로부터 값 세트 또는 참조값으로의 해석에 의한 정보가 발생되고 그 해석에 의한 정보의 표시는 공지되지 않았다.
처리 객체에 의해 선택된 데이터의 처리는 수행되는 동작 및 데이터 값 또는 수행되는 값 모두의 선택에 응답해서 동적으로 수행된다. 처리 동작 및 현재의 선택된 데이터 값 모두에 따르는 결과를 갖는 동적 처리는 마우스 포인터 위치에 응답해서 미리 정해져서 저장된 정보 피쓰를 간단히 검색하는 종래 기술의 헬프 기능으로부터 구별된다. 다수의 애플리케이션 컴퍼넌트중 하나로부터 선택된 데이터에 대해 동적으로 발생된 값에 대한 해석 결과를 공급하는 것은 종래 기술과 비교해 데이터 해석의 유연성 및 유용성 모두에서 개선점으로 된다.
본 발명의 일실시예에 따라, 일반적인 처리 객체에 의한 애플리케이션 데이터의 동적 처리는 데이터값의 선택된 세트의 각 값을 선택된 세트의 다른 데이터값 또는 참조값과 비교하고 그후에 각 값에 대한 그 계산 결과에 대응하는 주석 정보를 발생시킨다. 계산의 숫자 결과를 처리 객체에 의해 저장되는 관련된 텍스트와 결합함에 의해(계산 결과 및 연관된 텍스트를 템플릿(template)에 할당하는) 숫자 문자식 텍스트 스트링은 소정의 동작용으로 발생될 수 있다. 선택된 세트내의 데이터 값에 대한 스트링의 예는:
"N는 행 평균 M의 10%이내이고"
여기서 N는 선택된 데이터 값이고 M가 선택된 데이터 세트의 각 행의 계산된 평균이고, "행 평균의 10%이내인" 표현은 값(M 및 N)을 비교하고 그 비교 결과를 대응해서 저장된 텍스트 스트링을 갖는 다수의 결과 카테고리중 하나로 맵핑함에 의해 선택되는 텍스트이다. 데이터 값상에서 수행되는 각 계산 결과는 각기 다른 텍스트를 갖는 복수의 다른 결과 카테고리중 하나와 정합된다. 출력 스트링에 포함되는 텍스트는 해석에 의한 정보이다.
다른 동작 및 다른 실시예에서, 텍스트는 그 값, 선택된 값 세트 및 참조값으로 알고리즘적으로 인출될 수 있는 스트링을 포함하도록 세트된다.
부가적인 대안으로서, 해석에 의한 주석 정보는 계산 결과를 키로써 사용하는 데이터베이스 조견 동작에 의해 데이터베이스로 발생될 수 있어서 표시용 정보를 얻는다.
텍스트 스트링을 대신해서, 해석에 의한 주석 정보는 음성 클립 또는 다른 매체 컴퍼넌트 또는 그 컴퍼넌트들의 결합일 수 있고, 주석 정보는 현재의 데이터 값 및 현재의 처리 동작에 관계하는 해석에 의한 정보이다. 그러므로, 정보를 사용자에게 "표시하는 것"은 음성 클립 또는 비디오 클립을 플레이하거나 플라이오버 텍스트 박스를 스크린상에 표시하는 것을 의미하거나 다른 정보 표시 방법을 의미한다.
본 발명의 제 2특징에 따른 방법은 애플리케이션 데이터값에 관련하는 값에 관한 해석에 의한 정보를 데이터 처리 시스템의 사용자에게 제공하고, 상기 방법은, 애플리케이션 컴퍼넌트의 데이터값 세트의 사용자 선택에 응답해서, 상기 선택된 데이터값에 대응하는 값에 대한 해석 정보를 발생하는 단계와; 상기 선택된 데이터값내의 데이터값과 관련된 표시 스크린 영역으로 입력 장치 포인터를 이동시키는 것에 응답해서, 상기 해석 정보를 데이터 처리 시스템에 연결된 출력 장치를 경유해서 사용자에 표시하는 단계를 포함한다.
본 발명의 부가적인 특징에 따른 방법은 애플리케이션 컴퍼넌트의 데이터값에 관련한 값에 대한 해석 정보를 데이터 처리 시스템의 사용자에게 제공하고, 상기 방법은, 수행되는 동작의 사용자 선택 및 애플리케이션 컴퍼넌트의 데이터값 세트의 사용자 선택에 응답해서, 결과를 발생하도록 선택된 데이터값 세트를 처리하는 단계와; 상기 발생된 결과에 대응하는 값에 대한 해석 정보를 발생하는 단계와; 상기 해석 정보를 사용자 표시용 애플리케이션 컴퍼넌트에 제공한다.
본 발명의 일실시예에 따른 방법은, 수행되는 동작의 사용자 선택; 처리되는 데이터 세트의 사용자 선택; 그 세트내의 각 데이터값을 그 세트내의 다른 데이터값을 참조하거나 참조값과 비교함에 의해 처리하는 것, 및 각 값에 대한 다른 값 또는 참조값과의 관계를 표시하는 주석 스트링의 발생; 그 세트내의 특정한 데이터값의 사용자 선택(마우스 근접과 같은); 그 특정하게 선택된 값에 관한 주석 스트링의 액세싱 및 주석 스트링을 표시하는 바와 같은 시퀀스를 포함한다. 양호한 실시예에서, 그 선택된 값 세트의 처리 및 값에 대한 해석 주석 스트링의 발생은 주석 스트링 세트를 애플리케이션 컴퍼넌트로 복귀시키는 일반적인 처리 객체에 의해 수행된다. 그후에 특정한 주석 스트링은 마우스 포인터 위치설정에 의해 특정한 데이터값의 사용자 선택에 응답해서 애플리케이션 컴퍼넌트에 의해 표시된다.
일실시예에 따라, 본 발명에 따른 메카니즘 및 방법은 데이터 처리 시스템의 동작을 제어하는 소프트웨어 컴퍼넌트 세트로써 실행된다. 소프트웨어 컴퍼넌트는 컴퓨터로 판독가능한 저장 매체상에 기록되는 컴퓨터 프로그램 코드를 구비하는 컴퓨터 프로그램 제품내에 제공될 수 있다. 본 발명은 인터넷 또는 인트라넷 브라우저내에서 또는 가시적인 빌더(builder) 등의 애플리케이션 개발 툴키트내에서 실시될 수 있다.
본 발명의 부가적인 특징에 따라, 본 발명은, 데이터를 표시하는 연결된 표시 장치를 갖는 데이터 처리 시스템에서 사용하는 소프트웨어 컴퍼넌트 세트와, 그 시스템에 연결된 입력 장치로부터 수신된 신호에 응답해서 그 표시 장치상에 표시되는 데이터 아이템 세트를 사용자로 하여금 선택할 수 있도록 그 표시 장치상에 표시된 포인터를 이동시키는 입력 제어기와, 선택된 데이터 아이템 세트상에서 선택된 동작을 수행하는 처리 수단을 구비하고, 상기 컴퍼넌트 세트는 데이터값에 대한 해석을 데이터 처리 시스템의 사용자에게 제공하는 메카니즘을 구비하고, 또한, 본 발명은, 표시 장치상에 데이터를 표시하기위해 사용된 하나 이상의 애플리케이션 컴퍼넌트와; 수행되는 동작의 사용자 선택 및 애플리케이션 컴퍼넌트의 데이터 값 세트의 사용자 선택에 응답해서 결과를 발생하도록 선택된 데이터값 세트를 처리하는 하나 이상의 처리 컴퍼넌트를 포함하고, 상기 하나 이상의 처리 컴퍼넌트는, 상기 발생된 결과에 대응하는 값에 대한 해석 정보를 발생시키고, 상기 해석 정보를 사용자 표시용 애플리케이션 컴퍼넌트에 제공하는 수단과; 상기 하나 이상의 애플리케이션 컴퍼넌트 및 상기 하나 이상의 처리 컴퍼넌트간에 통신을 가능하게 하는 연결 컴퍼넌트를 갖는다.
시스템 컴퍼넌트
도 1은 본 발명을 실시하는 데이터 처리 시스템을 예시하는 개략적인 블록도이다. 마우스(10) 및 키보드(20)는 입력 제어기(40)를 경유해서 데이터 처리 시스템(30)에 연결된 입력 장치이다. 데이터 처리 시스템에서 작동하는 소프트웨어 애플리케이션 컴퍼넌트(70)는 그래픽 사용자 인터페이스를 사용하여 그 데이터값을 표시 장치(50)에 표시한다. 예를 들어, 숫자 데이터값을 포함하는 행 및 열의 그리드 배열을 표시하는 스프레드시트이거나, 구성안된 텍스트를 표시하는 워드 프로세서이거나, 정보를 사용자에게 표시하는 다른 애플리케이션일 수 있다. 애플리케이션 컴퍼넌트 및 그 애플리케이션 컴퍼넌트에 의해 관리된 데이터를 저장하는 메모리는 데이터 처리 시스템내의 하드 디스크 드라이브이거나 그 시스템에 연결된 외부 저장 장치이다.
본 발명의 양호한 실시예에서, 애플리케이션 컴퍼넌트(70)는 Java 프로그래밍 언어로 기록되는 자체-포함된 소프트웨어 컴퍼넌트 객체인 Java Beans과 같은 컴퍼넌트 실장 블록으로 구성되고, 다른 Java Beans과 결합되어, 자바 버츄얼 머신(Java Virtual Machine ; JVM)의 지원으로 컴퓨터를 작동시킬 때, 작업을 수행한다. 자바 애플리케이션 프로그램 및 애플릿은 공지된 기술로서 웹 브라우저내의 자바 버츄얼 머신 또는 다른 자바 작동 시간 환경내의 객체 세트로써 실행한다. 정적 방법을 다른 객체와 연관된 클래스에서 불러냄에 의해 동일한 JVM내의 객체들이 서로 연결된다. 정적 방법은 클래스의 인스턴스보다 오히려 클래스와 연관된 방법이다.
데이터 처리 시스템은 그 내부에 설치된 다수의 소프트웨어 애플리케이션 컴퍼넌트(70)를 가질 수 있고, 다수의 시스템이 표시 제어기(60)를 경유해서 표시 장치(50)상에서 데이터를 사용자에게 표시한다. 표시 제어기는 공지되어 있듯이 주변 표시 장치에 데이터를 통과시키기 위해 사용되는 하드웨어 및 운용 체계 소프트웨어 컴퍼넌트를 포함한다.
사용자는 표시된 데이터를 관리하는 애플리케이션 컴퍼넌트와 상호작용해서 그 데이터를 조종한다. 입력 제어기 컴퍼넌트(40)는 입력 장치의 신호에 응답해서 표시 장치(50)상의 포인터 위치를 제어하여, 애플리케이션 컴퍼넌트는 마우스 청취자(listener) 인터페이스를 실행시켜서 데이터 아이템의 선택을 식별 및 해석한다. 공지되었듯이, 상기 문맥의 인터페이스는 방법 세트로된 추상적으로 명명된 한정이다. 이 한정은 각 방법에 대한 명칭, 복귀 형태 및 서명을 포함하나 이 방법의 실행은 인터페이스를 실행시키는 클래스에 한정된다. 인터페이스를 실행하는 것으로 그 자체를 표명하는 클래스는 그 인터페이스의 각 방법을 실행시켜야한다. 그럼으로써, 하나의 클래스가 실행되었던 인터페이스의 명칭을 질의함으로써 다른 클래스에 의해 간단히 제공된 기능을 결정할 수 있다는 것을 의미한다.
종래에는, 애플리케이션 프로그램에 의해 표시된 데이터상에 수행될 수 있었던 처리 동작이 애플리케이션 프로그램의 순차 코드내의 루틴 세트로써 실행된다. 그러나, 그것은 객체 지향성 환경을 지원하도록 데이터 처리 시스템의 동작 시스템 또는 자바 버츄얼 머신과 같은 그 컴퍼넌트들중 하나에 대해서는 공지되고, 분리된 객체로써 실행되는 복수의 처리 동작에 대해서는 공지되고, 각 객체는 방법 및 특성 세트로써 동작 형태를 정의하는 특정한 클래스의 인스턴스이다.
SmartMarker 설계
본 발명의 양호한 실시예에 따라, SmartMarker로써 공지된 처리 동작 세트는 "보이지 않는(invisible)" Java Beans(100, 130, 110, 140, 120, 150)로써 실행된다. "보이지 않는"의 의미는, 객체가 애플리케이션설계 시간에서 분리된 그래픽 엘레먼트 또는 "아이콘"으로 표시되지만 분리된 스크린 아이콘에 의해 보다 표시 장치상에 표시된 팔레트내의 메뉴에 의해 작동 시간에 표시되는 것을 의미한다. 상기 팔레트(80)는 같은 JVM(90)내에서 동작하는 "보이지 않는" Java Beans으로써 스스로 실행된다. 그러므로, SmartMarker 동작 선택 팔레트 Java Beans(80)은 사용자로 하여금 작동 시간에 목록으로부터 마우스(10)를 사용해서 SmartMarker 동작 Java Beans(100, 110, 120)을 선택한다. SmartMarker 팔레트 객체(80)는 마우스 이벤트에 응답해서 선택을 식별한다. 팔레트를 사용함으로써 SmartMarker 동작의 작동 시간 표시가 최소의 스크린 크기를 차지하게 하고 SmartMarker 동작이 서로 개념적으로 관련되며 관련안된 동작에서 구별된다는 것을 단말 사용자에게 표시한다. GUI 및 각종의 대체물내의 아이템 선택용 상기 메카니즘은 공지 기술이다.
특정한 애플리케이션 프로그램 또는 애플릿내에 포함되는 애플리케이션 설계자에 의해 SmartMarker 동작 Java Beans은 선택된다. Java Beans는 설계 시간에 가시적으로 조종될 수 있다(예를 들어, 아이콘을 작업공간으로 드래깅하고 특성을 세트하는 것). 설계자는 가시적인 빌더(builder) 툴(Lotus BeanMachine(TM)등과 같은)을 사용해서 선택된 SmartMarker 동작 Java Beans 및 다른 자바 컴퍼넌트로부터 및그 컴퍼넌트와 연관된 객체상에 방법을 불러냄으로써 프로그램적으로 애플리케이션 프로그램(160)을 어셈블링한다. 공지된 기술로서, Java Beans는 가시적인 빌더로 하여금 그들에 대한 정보를 얻을 수 있게 하는 인터페이스를 실행시키고 가시적인 빌더는 통신용 Java Beans을 연결하는 메카닉을 조정함에 의해 자바 애플리케이션 어셈블리를 매우 단순화시킨다. 표준 자바의 정적 방법을 사용하여 객체들간의 통신을 설정한다(JVM내에는 객체들만이 있으므로).
각 SmartMarker는 SmartMarker로 동작가능한 애플리케이션Java Beans에 의해 공급된 데이터값 세트를 처리하고 결과 세트를 계산하는 특정한 데이터 해석 동작 또는 데이터 발생 동작용이다. 그 결과는 후술하듯이 예를 들어, 색깔 및/또는 주석에 강조를 둘 수 있다. 예를 들어, Average SmartMarker는 선택된 세트내의 애플리케이션 데이터값이 평균 이상, 평균에 가깝게 또는 그 이하인지를 결정하고 강조를 둔 색깔을 선택하여 그 값을 상기 카테고리에 인가하고/하거나 개별적인 값을 해석하는 주석 스트링을 발생시키는 반면에, Trend SmartMarker는 값이 이전값보다 높거나 낮은 지를 계산하고 그후 색깔을 선택하고/하거나 주석 결과를 발생시켜서 상기 계산 결과를 반영한다.
SmartMarker 동작을 정의하는 논리는 SmartMarker Java Beans(100, 110, 120)과 연관된 SmartMarker 알고리즘 객체(130, 140, 150)에서 코드화된다. SmartMarker Java Beans은 팔레트 Java Beans(80)내의 단일 SmartMarker를 표시한다. 각 Java Beans은 명칭 및 알고리즘 명칭을 포함하는 다수의 특성을 갖는다. 상기 알고리즘 명칭 특성은 SmartMarker Java Beans와 관련되는 알고리즘 객체의 클래스 명칭을 정의한다. SmartMarker Java Beans의 초기화동안, 상기 클래스 명칭은, 사용자가 SmartMarker Java Beans를 선택하고 값 세트를 선택할 때, 나중에 실행되는 알고리즘 객체의 인스턴스를 구성하기위해 사용된다.
알고리즘 객체(130, 140, 150)는 인터페이스가 SmartMarker 연결부(170)('애플리케이션설계' 하에서 하기 설명되는)에 의해 알고리즘을 불러내는 방법 세트를 정의하는 SmartMarker 인터페이스알고리즘을 실행시킨다.
관련된 SmartMarker 객체로부터 분리된 객체로서 SmartMarker 알고리즘을 실행하는 것에 의해 다른 특성을 갖는 소정의 SmartMarker가 다른 해석 결과를 발생시키는 같은 SmartMarker 알고리즘 객체를 사용할 수 있게 된다. 그럼에도 불구하고, 많은 SmartMarker 알고리즘 객체는 단일 SmartMarker 객체와 단지 관련된다(그리고 본 발명의 대체 실시예에서 SmartMarker 및 상기 동작용 SmartMarker 알고리즘이 단일 객체로서 실행될 수 있다).
알고리즘인터페이스를 실행시키기위해, 알고리즘 객체는:
○ 방법 getSmartMarkerAttribute()을 실행시켜서 SmartMarker 동작 모델의 나머지 부분이 현재의 SmartMarker(사용자 인터페이스에 표시된 처리 선택의 방향 세트 등의 그 상세한 특성 또는 속성)에 대한 정보를 검출할 수 있게 되고;
○ 방법 calculateResults()을 실행시켜서:
- 애플리케이션컴퍼넌트 Java Beans에 의해 공급되는 선택된 값 세트를 포함하는 값 세트를 수락하고;
- 그 값 세트로부터 특정한 데이터 분할의 값 객체를 인출하고(그 분할은 애플리케이션데이터값의 표내의 행, 열 또는 블록이고, 상기 분할은 현재의 SmartMarker의 특성내의 처리 방향 선택에 의해 결정됨);
- 결과 세트를 발생시키도록 상기 인출된 값을 계산하고;
○ 그후에 선택적으로, 알고리즘 객체는 값 객체의 일부 또는 전부에서 방법을 불러들여 관련된 강조색 결과를 세트하고/하거나 값 객체의 일부 또는 전부에서 방법을 불러들여 관련된 주석 결과를 세트한다. 상기 setEmphasis and setAnnotation 방법은 알고리즘(Value, ValuePartition, 및 AlgorithmValueSet)으로 통과된 값 또는 값 세트를 표시하는 클래스용 베이스 클래스인 클래스 ValueBase내에서 실행되고, 알고리즘으로 하여금 특정한 값 또는 값 세트상에서 결과를 세트한다. 알고리즘이 방법 calculateResults의 실행을 완료했을 때, 다음의 방법이 애플리케이션에서 불러들여진다(상기 방법은 위임(mandatory) 애플리케이션 인터페이스SmartMarkerEnabler및 선택 애플리케이션 인터페이스EmphasisColor Annotation에서 정의된다.
SmartMarkerEnabler. startResults
결과 세트를 공급했다는 것을 애플리케이션에게 통지한다. 통상적으로 애플리케이션에 의해 실행되어 알고리즘을 갖는 종래의 상호동작에 의해 인가된 색깔을 클리어하는 등의 하우스키핑 작업을 초기화한다.
EmphasisColor. applyEmphasisColor
ValueBase. setEmphasis를 불러내는 알고리즘에 공급된 각 값에 대해 한 번 불러내어진다. 통상적으로 애플리케이션에 의해 실행되어 그 결과에서 지정된 색깔을 그 결과에서 값 키에 의해 식별된 값과 관련시킨다. 그후에 상기 색깔은 연속 호출에 의해 트리거된 리페인트(repaint) 동작에 의해 SmartMarkEnabler. endResults로 표시된다.
Annotation. applyAnnotation
ValueBase. setEmphasis를 불러내는 알고리즘에 공급된 각 값에 대해 한 번 불러내어진다. 통상적으로 애플리케이션에 의해 실행되어 그 결과에서 지정된 주석 스트링을 그 결과에서 값 키에 의해 식별된 값과 관련시킨다. 각 주석 스트링은 연속 마우스 접근에 응답해서 관련된 값으로 연속적으로 표시된다.
SmartMarkerEnabler. endResults
모든 결과를 보냈다는 것을 애플리케이션에게 알린다. 통상적으로 애플리케이션에 의해 실행되어 강조 결과에서 지정된 색깔을 사용해서 데이터의 리페인팅을 초기화한다.
SmartMarker 알고리즘 객체에서 방법을 불러낼 뿐 아니라 주석 및 강조 색깔을 세팅하는 방법을 실행하고, 각 SmartMarker 객체(100, 110, 120)는 그 명칭을 포함하는 특성 세트, 및 다음의 것을 포함하는 다수의 옵션을 갖는다.
상기에서 다음의 것은,
○ 분석되는 선택된 데이터 세트의 분할 형태(예를 들어, 단일값, 행, 열, 어래이),
○ 인가되는 강조 색깔 세트, 예를 들어, 적색, 황색 및 녹색,
○ 강조 색깔을 해석하기위해 키로서 사용된 텍스트 스트링 세트(즉, 각 텍스트 스트링이 가능한 결과의 하나의 카테고리에 인가될 수 있음),
도 8 내지 11는 시스템의 다른 컴퍼넌트에 관련되는 각 인터페이스에 대한 방법 세트의 목록이다.
그러므로, SmartMarker 알고리즘은 클라이언트 애플리케이션 컴퍼넌트에 의해 공급된 값으로 동작하고 SmartMarker 객체에 의해 사용되는 그 값과 관련되는 계산된 결과 세트를 복귀하여 애플리케이션 컴퍼넌트로 복귀되는 해석 주석 스트링을 발생시킨다.
알고리즘내에서, 각 공급된 값이 클래스 Value의 인스턴스에 의해 표시된다. 클래스 Value은 클라이언트 애플리케이션으로 하여금 값의 소스를 인식할 수 있는 실제값 및 키(행 및 열 번호 등) 모두를 포함한다. 값은 각 분할부를 행, 열 또는 블록으로 표시하는 분할부들로 그룹화된다. 값 분할부가 클래스 ValueSet의 인스턴스에 의해 표시된 단일 값 세트로 그룹화된다.
알고리즘은 색깔을 포함하는 몇몇의 결과 형태 및 주석을 복귀할 수 있다. 값의 결과를 복귀시키기위해, 알고리즘은 클래스 Value의 인스턴스에서 알맞은 방법을 불러낸다. 분할부의 모든 값에 대한 결과를 복귀시키기위해, 알고리즘은 클래스 ValuePartition의 인스턴스에서 알맞은 방법을 불러낸다. 모든 값에 대한 결과를 복귀시키기위해, 알고리즘은 클래스 ValueSet의 인스턴스에서 알맞은 방법을 불러낸다.
주석 스트링을 발생시키는 각 방법은:
Value. setAnnotation(String annotation)
ValuePartition. setAnnotation(String annotation)
Valueset. setAnnotation(String annotation)
통상적인 동작에서, SmartMarker 객체는 다음에 애플리케이션을 저장하는 선택된 세트에서 모든 값의 결과를 복귀시킨다. 다음에 개별적인 데이터 값에 대한 주석 스트링의 표시는 마우스 포인터의 이동에 의해 연속적인 데이터 값을 선택해야하므로 애플리케이션 컴퍼넌트 데이터 그리드에 관련되는 셀을 입힌다.
주석 스트링의 세팅은 SmartMarker 알고리즘에 의해 수행되는 각 숫자로된 계산 결과를 현재의 SmartMarker 동작에 특정되는 형성된 결과 카테고리 세트중 하나에 맵핑하는 것을 구비한다. 각 카테고리는 SmartMarker 객체의 특성으로서 유지되는 관련된 텍스트 스트링을 갖는다. setAnnotation 방법은 그 식별된 카테고리의 텍스트를 숫자로된 계산 결과와 결합하는 텍스트 스트링을 발생시키는 것을 포함한다. 상기 발생의 예는 '동작 예' 하에서 아래서 설명된다.
애플리케이션설계
도 2에서, 애플리케이션 컴퍼넌트 Java Beans(70)은 SmartMarker 연결부(170)(즉, 애플리케이션 컴퍼넌트는 클래스 SmartMarkerConnection의 인스턴스를 발생시킴)을 설정하고 SmartMarker와 관련된 다수의 자바 인터페이스(71)를 실행함에 의해 SmartMarker를 지원할 수 있게 된다. 연결부(170)는 애플리케이션으로 하여금 SmartMarker 팔레트 Java Beans(80) 및 SmartMarker Java Beans(100, 110, 120) 및 그 팔레트내의 그것과 연관된 SmartMarker 알고리즘 Java Beans(130, 140, 150)과 협력하게 할 수 있다. 클래스 SmartMarkerConnection의 인스턴스를 생성함에 의해 애플리케이션은 연결을 설정한다. 시동시, 애플리케이션 컴퍼넌트는 연결 객체에서 방법 SmartMarkerConnection. makeConnection을 불러낸다. 종료시, 그것은 방법 SmartMarkerConnection. severConnection을 불러낸다.
애플리케이션은 또한 연결부(170)를 사용하여 그 자체 및 선택된 SmartMarker와 관련된 알고리즘간의 데이터 흐름 및 결과를 조정한다. SmartMarker가 팔레트에서 선택될 때마다, 연결부는 방법 SmartMarkEnabler. setValueset을 불러내서 값 세트를 제공하고 애플리케이션은 연속해서 선택된 값을 값 세트로 설치할 수 있다. 애플리케이션이 방법 ValueSet,setComplete를 불러낼 때, 연결부는 값 세트를 알고리즘으로 보내고, 알고리즘에 의해 처리를 초기화하고, 알고리즘에 의해 계산된 결과 세트를 복귀시킨다. 상기 결과는 SmartMarkerEnabler. startResults, EmphasisColor. applyEmphasisColor, Annotation. applyAnnotation 및 SmartMarkerEnabler. endResults로의 호출을 통해 애플리케이션에 복귀된다. applyEmphasisColor 또는 applyAnnotation으로의 상기 각 호출은 단일 결과 객체를 애플리케이션으로 통과시킨다. 상기 결과 객체는 실제 결과 및 키 정보 모두를 포함하고, 키 정보에 의해 애플리케이션은 값 세트에서 애플리케이션에 의해 이미 저장된 값에 그 결과를 상호관련시킬 수 있다.
방법 SmartMarkerConnection. makeConnection을 호출함에 의해, 애플리케이션은 청취자로서의 그 자체를 팔레트의 SmartMarker를 열고 닫는 사용자 등과 같은 SmartMarker에 관련된 이벤트에 레지스터한다. 예를 들어, 청취자로서 레지스터함에 의해, 애플리케이션은, 사용자가 팔레트의 SmartMarker를 닫을 때마다, 그것이방법 SmartMarkerEnabler. smartMarkerClosed로 호출을 수신하는 것을 확정한다.
애플리케이션 컴퍼넌트(70)는 SmartMarker 처리 동작 Java Beans(100, 110, 120)과 상호동작하는 인터페이스를 실행시키는 "보이는" Java Beans으로써 실행된다. 특히, SmartMarker 컴퍼넌트 세트의 멤버와 상호동작하도록, 애플리케이션 컴퍼넌트(70)는 다음의 자바 인터페이스를 실행시킨다.
MouseListener
MouseMotionListener
ComponentListener
SmartMarkerEnabler
Annotation
EmphasisColor
인터페이스MouseListener는 컴퍼넌트로 하여금 마우스 클릭에 관련된 이벤트를 청취하고 그 이벤트에 응답할 수 있게 하는 표준 자바 AWT 인터페이스이다. 상기 이벤트는 마우스를 누르고, 해제하고, 클릭하는 것을 포함하고, 마우스 포인터는 컴퍼넌트의 스크린 영역으로 들어가고, 마우스 포인터는 나간다.
인터페이스MouseMotionListener는 컴퍼넌트로 하여금 마우스 이동에 관련된 이벤트를 청취하고 그 이벤트에 응답할 수 있게 하는 표준 자바 AWT 인터페이스이다. 상기 이벤트는 마우스를 이동하고, 드래그하는 것을 포함한다.
이벤트 청취자는 자바 1. 1 AWT에서 발생된 표준 설계 특성이고, 당업자에의해 넓게 사용되고 이해된다(예를 들어, 선 마이크로시스템즈사의 자바 개발 키트 문서화 패키지 java. awt. event의 설명을 참조하시오).
인터페이스ComponentListener는 컴퍼넌트로 하여금 크기를 바꾸는 등의 그 특성의 변화를 식별하게하는 표준 자바 인터페이스이다.
인터페이스SmartMarkerEnabler는 SmartMarker로 동작가능한 애플리케이션을 실행시키는 방법 세트를 정의한다. 상기 방법에 의해 애플리케이션은 SmartMarker 값 세트(애플리케이션 컴퍼넌트 및 선택된 SmartMarker간에 변화되는 값을 수집하는 컨테이너임)를 얻을 수 있고, 커서 및 마킹 색깔 등의 속성에 대한 정보를 획득할 수 있고, SmartMarker의 상태 및 결과의 유용성에 관련된 통지를 수신할 수 있다. SmartMarker 연결 컴퍼넌트(170)는 상기 인터페이스에서의 방법을 불러내서 SmartMarker를 애플리케이션과 협력할 수 있게 한다.
SmartMarkerEnabler에서 그 방법을 실행시키도록, 애플리케이션은,
○ 그 선택 모델(72)을 확장해서, SmartMarker Java Beans(100)이 SmartMarker 팔레트 Java Beans(80)에서 선택되었다면, 사용자에 의해 선택 된 값은 값 세트에 부가되고 값 세트는 완전히 마킹되어 선택된 SmartMarker Java Beans과 관련된 알고리즘(130)에 사용할 수 있게 된다.
○ 그 데이터 표시기(73)를 확장해서, 모든 결과가 SmartMarker로부터 수신되 었다는 것을 통지 받을 때, 데이터 표시기는 리페인트되어 그 결과를 반영한 다.
인터페이스EmphasisColor는 애플리케이션으로 하여금 SmartMarker에 의해 복귀된 단색 결과를 인가할 수 있게 하는 하나의 방법을 정의한다. SmartMarker 연결부는선택된 SmartMarker와 관련된 알고리즘에 의해 계산된 각 색깔 결과에 대해 한번씩 그 방법을 불러낸다. 각 호출은 값 키 및 색깔을 지정한다. 상기 방법을 실행시키도록, 애플리케이션은 그 지정된 색깔을 통상적으로 사용하여 그 지정된 값 키에 의해 식별된 값을 리페인트한다.
인터페이스Annotation은 애플리케이션으로 하여금 SmartMarker에 의해 복귀된 세트로부터 하나의 주석 결과를 인가하게 할 수 있는 단일 방법 applyAnnotation을 정의한다. SmartMarker 연결부(170)는 선택된 SmartMarker와 관련된 알고리즘에 의해 계산된 각 주석 결과에 대해 한번씩 상기 방법을 불러낸다. 각 호출은 값, 키 및 주석 스트링(또는 주석 형태)를 지정한다:
value : 이것은 처리 프로그램에 이미 공급된 값을 나타낸다. 값 클래스는 실제값과 행 및 열 또는 키 번호 등의 키 모두를 포함한다. 클라이언트 애플리케이션은 value내의 키 또는 원래의 키(아래를 참조)를 사용하여 결과를 값에 상호참조시킨다.
nativekey : 이것은 처리 프로그램에 이미 공급된 원래의 키를 표시한다. 원래의 키는 클라이언트 애플리케이션에 의미있는 객체 참조이다. 그것은 클래스 value에서 정의된 키에 대한 종래의 대체물로서 제공된다. 애플리케이션의 예가 그리드로 배열된 데이터를 갖고 각 셀이 개별적인 객체로서 모델링되는 데서, 원래의 키가 셀 클래스의 인스턴스로 불리운다.
annotation : 이것은 마우스 포인터가 특정값을 초과할 때 표시되는 실제 스트링이다.
주석 동작을 지원하는 클라이언트 애플리케이션 프로그램은 사용되어 SmartMarker 객체로부터 값에 대한 해석 결과를 수신하고, 애플리케이션에서 관리된 데이터값과 관련해서 주석 스트링 결과를 메모리에 세이브하고, 그후 연속해서 데이터값으로의 마우스 포인터 근접에 응답해서 공지된 버블 헬프 메카니즘(Bubble Help mechanism)을 사용해서 해석 결과를 표시한다. 마우스 근접은 지정된 값 키를 사용해서 마우스 청취자 인터페이스(74)를 실행시키는 방법에 의해 검출된다.
마우스 포인터가 선택된 데이터값 세트내에 있는 애플리케이션 데이터를 포함하는 새로운 셀로 들어갈 때마다 applySmartMarkerAnnotation 방법은 호출되는 데, 왜냐하면 애플리케이션이 마우스 이동 이벤트에 대한 청취자이기 때문이다. 애플리케이션은 호출로써 보내진 키를 사용하여 대응하는 데이터값을 식별하고 애플리케이션의 스크린내에서(예를 들어, 텍스트의 테이블 또는 시퀀스내에서) 그 위치 정보를 얻은 후, 그 식별된 위치에 인접한 '플라이오버(flyover)' 텍스트 박스내에 주석 스트링을 표시한다.
상호동작 시퀀스
본 발명을 실시하는 방법 단계의 시퀀스는 도 3을 참조로 현재 설명된다. 첫째로, SmartMarker로 동작가능한 애플리케이션 컴퍼넌트(70)를 개시할 때, 그것은 클래스 SmartMarkerConnection의 인스턴스를 생성한다. 그후에 애플리케이션 컴퍼넌트는 호출 SmartMarkerConnection. makeConnection을 생성시킨다. 다음에, 연결부는 애플리케이션에서 SmartMarkerEnabler. setValueSet를 불러내서 애플리케이션을 빈값 세트 컨테이너로 통과시킨다.
다음에, 사용자는 SmartMarker 팔레트(80)과 상호동작하여 동작 목록으로부터 수행되는 동작을 선택한다. 상기 선택에서는 표준 키보드 또는 마우스 선택 기술이 사용된다. 연결부는 애플리케이션에서 SmartMarkerEnabler. set MarkingColour을 불러내서 사용자 선택을 식별하기위해 사용하는 마킹 색깔(그 선택된 SmartMarker 객체의 특성으로부터 얻어진)을 지정한다. 팔레트 목록 SmartMarker 동작은 도 4a, 4b, 5, 6, 7에서 도시된다. 팔레트 객체는 입력 장치 선택의 통지를 수신하고, 그 동작을 선택되었다는 것을 식별하고, 다음에, 세트된 마킹 색깔을 사용해서 동작의 목록 엔트리의 배경을 가림으로써 동작 선택의 가시적인 표시를 인가한다. 그런 점에서 사용자는 SmartMarker 동작의 디폴트 특성을 수락할 수 있거나 방향 또는 키 탭을 선택할 수 있어서 특성을 수정한다. 방향 탭은 처리되는 분할 형태(행, 열 또는 블럭)의 선택 및 처리 순서(좌측에서 우측으로, 상부에서 하부로 등)의 선택을 팔레트를 경유해서 나타낸다. 키 탭은 현재의 결과 카테고리 및 그 연관된 텍스트의 목록을 나타낸다.
바라는 처리 동작을 선택했으면, 사용자는 입력 제어 수단(40)의 제어하에서 마우스 포인터를 이동시킬 수 있다. 마우스 포인터는 애플리케이션 컴퍼넌트(70)에 의해 관리된 데이터를 표시하는 스크린상의 윈도우로 들어갈 때, 입력 제어 수단은 데이터값의 교환용 그 값 세트 컨테이너에 액세스하는 애플리케이션 컴퍼넌트(70)에 통지한다. 애플리케이션은 ValueSet. Clear를 호출하여 값 세트로부터 모든 값을 제거한다. 애플리케이션의 윈도우로 들어가면, 다음에, 사용자는 행, 열 또는블록 등과 같은, 그 윈도우에서 표시된, 데이터 세트를 선택할 수 있고 애플리케이션은 ValueSet. addxxxValue를 호출하여 선택된 값을 값 세트에 부가한다. 마우스 등과 같은 마우스를 사용해서 데이터 아이템을 사용자가 선택하는 기술은 공지 기술이다. 예를 들어, 제 1데이터 아이템(개시점)으로 마우스 포인터를 이동시키고 좌측 마우스 버튼을 누른후, 그 포인터는 스크린을 경유해서 버튼을 해제할 때의 최종값(종료점)으로 이동된다. 마우스 이동의 개시점 및 종료점에 의해 정의된 스크린 영역내의 데이터 값 모두는 선택된다. 애플리케이션 컴퍼넌트는 마우스 이벤트에 응답하도록 표준 자바 인터페이스 MouseListener 및 MouseMotionListener를 실행시키고, 선택을 식별하고 그후에 데이터 값의 선택된 세트를 값 세트로서 저장하는 방법을 포함한다. 애플리케이션의 선택 모델은 이미 지정된 마킹 색깔을 사용한다. 선택된 값 모두가 값 세트로 부가되었을 때, 애플리케이션은 ValueSet. setComplete를 호출함에 의해 완전하게 값 세트를 플래그한다. 그것은 SmartMarker의 알고리즘에 의해 처리될 준비를 하고 있는 값 세트를 마크하고, 그 처리를 초기화한다.
SmartMarker의 알고리즘 객체는 애플리케이션 컴퍼넌트로부터 값 세트를 수신하고 현재의 SmartMarker(그 상세한 특성을 얻는)에 대한 정보를 검색한다. 그후에, 알고리즘 객체는 방법 Algorithm. calculateResults을 실행시킨다. 상기 Algorithm. calculateResults 방법은 값 세트로부터 값 객체를 인출하고 그후에 값 세트의 값 객체에서 값에 대해 계산 세트를 수행시키고, 즉 값 세트에서 데이터 값에 대해 필요한 데이터 해석 및/또는 데이터 발생 동작을 수행한다. 상기 계산의 특성은 SmartMarker의 목적에 따라 변화한다. 그후에 SmartMarker 알고리즘에 의해 실행된 Algorithm. calculateResults 방법은 주석 결과를 요구하는 각 값에서 방법 ValueBase. setAnnotation을 호출하여 그 값에 대해 주석을 세트하고, 색깔 변화를 요구하는 각 값에 대해 ValueBase. setEmphasis를 호출하여 상기 설명했듯이 상기 계산 결과에 대응하는 강조 색깔을 세트한다.
그후에, 연결부는 SmartMarker 객체에 의해 세트되는 강조 색깔 코드 및 주석 스트링을 애플리케이션 컴퍼넌트로 복귀시키고('SmartMarker 설계' 및 '애플리케이션 설계' 하에서 상기 설명했듯이), 색깔 코드 및 주석 스트링의 결합은 각 데이터 값에 대해 애플리케이션 컴퍼넌트에 의해 수신된 결과의 집적된 세트를 구비한다.
연결부는 SmartMarkerEnabler. startResults를 호출하고 애플리케이션은 이전의 상호동작에 의해 인가된 결과를 SmartMarker로써 클리어한다. 그후에, SmartMarker 연결부(170)는 SmartMarker 알고리즘이 ValueBase. setEmphasis를 호출하는 각 값에 대해 한번씩 EmphasisColor. applyEmphasisColor를 호출한다. EmphasisColor. applyEmphasisColor의 애플리케이션 컴퍼넌트내의 실행은 각 데이터 값(행 및 열 그리드 위치에 의해 참조되는)과 관련해서 그 복귀된 색깔을 세이브한다. 연결부는 알고리즘 객체가 ValueBase. setAnnotation을 호출하는 각 값에 대해 Annotation. applyAnnotation를 또한 호출한다. 애플리케이션 컴퍼넌트내의 Annotation. applyAnnotationResult의 실행은 주석 스트링을 세이브한다. 다음에, 연결부 컴퍼넌트는 SmartMarkerEnabler. endResults를 호출한다.
강조 색깔을 그리드의 각 데이터 값 셀의 배경에 인가함에 의해 즉, 종래의 연결 호출에 의해 세이브된 색깔을 사용해서 값을 EmphasisColor. applyEmphasisColor로 리페인트함에 의해, 클라이언트 애플리케이션 컴퍼넌트는 그 사용자 인터페이스를 통해 강조 결과를 표시한다. 도 4a 내지 7에서, 다른 색깔은 데이터 값 셀의 다른 해칭에 의해 표시된다. 값을 연관되어 저장된 주석 결과 스트링으로써 오버레이(overlay)하도록 마우스 포인터를 이동시키는 사용자에 응답해서 플라이오버 텍스트를 도시함에 의해, 및 그 값을 마우스 위치설정에 의해 선택할 때, 방법 Annotation. applyAnnotation를 각 값에 대해 한번씩 호출함에 의해, 애플리케이션 컴퍼넌트 Java Beans(70)은 복귀된 주석 결과를 부가해서 표시한다. SmartMarker 객체는 차트 등의 다른 데이터를 부가해서 표시할 수 있다.
애플리케이션이 종료할 때, 그것은 SmartMarkerConnection. severConnection을 호출한다.
동작 예
이전에 언급했듯이, 다수의 다른 처리 동작은 선택된 세트의 각 값에 대해 그 값이 그 세트의 평균 이상 또는 이하인지를 계산하고 그후에 따라서 그 값을 마킹하거나 데이터 값 세트의 랭킹을 식별 및 표시하는 등의 해석 동작을 포함하면서 SmartMarker로써 실행될 수 있다.
WO96/39655(본원에서 참고 문서로 됨)에서는 해석 동작을 설명하는 데, 그 해석 동작에서 색깔 코드 또는 다른 강조는 애플리케이션 프로그램내의 데이터 셀의 선택된 세트의 개별적인 데이터 셀에 인가된다. 색깔 또는 다른 인가된 강조는 각 값의 관계를 그 세트의 다른 값으로 표시한다. 예를 들어, 랭크 동작은 데이터 값의 순서를 그 크기로 결정하고, 동작 결과는 그 선택된 세트에서 각 데이터 값을 포함하는 셀의 배경에 대해 청색을 다른 색 농도로 사용함에 의해 사용자에게 표시되고, 그 농도의 최대값은 가장 진한 청색 배경을 갖는다. WO96/39655에서는 많은 강조 형태가 배경색에 대한 대체물로써 가능하다는 것을 설명하고 있다.
랭크 동작을 실행하도록, 처리 프로그램은 그 세트의 모든 값을 서로 비교하거나, 각각을 일반적인 값과 비교하여 크기로 랭킹을 결정하고, 그후 알맞은 색 농도 또는 다른 강조를 선택하여 상대값을 표시하도록 각 값을 인가한다. WO96/39655는 값을 퍼센타일(percentile) 대역에 할당함에 의해 그것을 실행하는 것을 개시하고 있으며, 설정된 대역의 모든 값이 각 색 농도를 설정한다. 그러므로, 계산은 각 값에 대해 실제 랭킹을 결정하나 그것은 간단하며 쉽게 해석된 형태로 사용자에게 표시된다.
어떤 환경에서, 매우 쉽게 해석가능한 색깔 코딩으로써 표시되는 것에 부가해서 또는 대신해서 개별적인 값의 랭킹에서 실제 위치를 확정하는 것이 사용자에게 매우 바람직하다. 예를 들어, 사용자는 선택된 값이 선택된 값의 세트의 상부 10%내에 있거나 그것이 50개 값중에서 3번째로 랭크되는 것을 확정하길 바란다.
본 발명에서는 그 확정을 사용자에게 제공하는 것을 가능하게 한다. 특히, WO96/39655에서 설명된 것에 대한 해석 및 데이터 발생 동작의 실행에 대한 대안적인 메카니즘이 제공된다. 그 새로운 메카니즘은 값에 대한 데이터 해석 정보를 컴퓨터 사용자에게 표시할 수 있다. 즉, 애플리케이션 프로그램에 의해 인가되는 요구된 강조의 식별을 애플리케이션 컴퍼넌트에 보내는 것에 대한 대체 또는 부가로써, 본 발명에 따라 SmartMarker 처리 컴퍼넌트는 주석 스트링을 애플리케이션 컴퍼넌트에 제공하는 방법을 포함하고, 그 주석 스트링은 특정하게 선택된 값의 관계를 선택된 데이터 세트의 특정한 분할부내의 다른 값으로 설명한다. 그후에, 애플리케이션 컴퍼넌트는 그 값을 포함하는 셀을 통한 마우스 포인터의 이동에 의해 선택 등과 같은 각 데이터 값의 사용자 선택에 응답해서 주석 스트링을 표시한다.
상기 설명된 랭크 동작과 관련해서, 개별적으로 선택된 값과 나란히 표시용 애플리케이션 컴퍼넌트로 복귀될 수 있는 주석 스트링은 "세트에서 값의 상부 10%내" 및 "세트에서 값의 하부 10%내" 등과 같은 색깔 코드에 표시되는 바와 같은 정보를 간단히 워드로 형성시킨 스트링이다. 대안적으로, 스트링은 더 상세화되고 "행에서 3번째로 링크된 즉 최고 아래의 25개"와 같은 색깔 또는 다른 강조를 인가함에 의해 표시될 수 없는 숫자 정보를 설정한다.
다른 예로서, 도 4a는 그래픽 사용자 인터페이스를 통해 데이터를 표시하는 동작 선택 팔레트(80) 및 스프레드시트 애플리케이션(70)을 도시한다. 스프레드시트 애플리케이션(70)은 선택된 데이터 세트(180)의 선택된 구획에 대한 산술 평균을 결정하고 개별적인 값을 이 평균에 비교하는 평균 SmartMarker 동작의 실행에 따라 해석 결과를 표시한다. 이 비교에 따른 수치 결과는 다수의 카테고리중 하나에 할당된다. 이 카테고리들은 예를 들어, 3개의 카테고리, 즉, "평균보다 큰", 평균의 10%내", 및 평균보다 적은" 이 될 수 있다. 각 카테고리는 주석 텍스트 스트링내로의 삽입을 위해 저장되는 관련 대응 텍스트를 갖는다.
선택된 데이터 세트의 행이 평균 "M"을 갖고, 선택된 세트내의 개별적인 값 "N"이 특정한 구획(팔레트(80)의 "방향" 탭을 선택함에 의해 SmartMarker의 속성에서 특정되는 바와 같이, 데이터 값의 행, 열 또는 블록인 "구획 1")의 계산된 평균보다 "deltaString"만큼 큰 것으로 판단되면, 평균 SmartMarker 알고리즘은 처음에 2개의 중간 결과 M 및 deltaString을 리턴하고, 이 경우에는 값 N에 대한 중간 결과는 "더 큰" 카테고리로 맵핑된다. 이어서, 주석 스트링이 setAnnotation 메소드에 의해 생성된다. 이 주석 스트링은 다음과 같이 중간 결과 M 및 deltaString 및 "더 큰" 결과 카테고리와 관련된 저장 텍스트를 사용한다.
주석 = "N는 M(분할 평균)보다 deltaString 만큼 크다"
이어서, 상기 주석 스트링은 데이터값을 얻은 애플리케이션 컴퍼넌트로 리턴된다. 주석 텍스트 스트링은 선택된 데이터값 세트내의 각 값마다 리턴되는 것이 바람직하고, 애플리케이션 프로그램에 의해 이 스트링들이 저장된다.
도 4a에서, 마우스 포인터 위치(십자 표시로 도시됨)에 의해 값 7210이 선택되고, 평균 SmartMarker에 의해 선택된 애플리케이션 데이터값의 행에서 계산된 평균과 비교되어 주석 스트링(190)을 발생시킨다, 즉,
"7210.0은 6361. 2(행 평균)보다 848. 8만큼 크다."
애플리케이션은 데이터 값 7210의 마우스 포인터 선택에 응답해서 상기 스트링을 표시한다. 도 4a의 예에서 도시된 평균 SmartMarker는 또한 주석 스트링 세트 및 상기 언급된 다른 카테고리를 표시하는 선택된 강조 색깔 시리즈를 스프레드시트 애플리케이션 컴퍼넌트(70)에 리턴한다. 애플리케이션은 선택된 데이터값의 블록에 대한 강조 색깔을 스크린상에 표시한다. 강조 색깔은 행에서 개별적인 데이터값 및 다른 값간의 같은 비교 결과 및 같은 카테고리를 사용해서 얻어진다. 그러나, 다른 결과 카테고리와 관련된 텍스트를 사용해서 주석 스트링을 발생시키는 대신에, 강조 동작은 결과 카테고리와 관련된 색깔을 얻고 그것을 표시용 애플리케이션 컴퍼넌트로 리턴한다.
도 4b는 선택된 데이터 세트의 같은 분할부내의 다른 데이터값 - 평균 SmartMarker에 의해 그것의 생성을 따르는 애플리케이션 컴퍼넌트에 의해 저장되었고 표시되는 다른 주석 스트링 - 에 마우스 포인터를 이동시키는 작용을 도시한다.
그러므로, 평균 동작용 강조 색깔을 인가하는 방법은 선택된 결과 세트의 지정된 분할부의 가시적으로 직관적인 카테고리를 제공하고 주석 정보를 표시하는 방법은 사용자 해석을 어시스트하고 정신적인 계산으로부터 사용자를 세이브하는 보충 정보를 제공한다.
그러므로, 주석 동작은 단일 처리 컴퍼넌트에 의해 실행되는 강조를 인가한 동작과 관련해서 제공될 수 있고, 클라이언트 애플리케이션 컴퍼넌트에 의해 공급된 데이터 값을 처리하고 그 발생된 결과를 애플리케이션 컴퍼넌트에 복귀시킨다. 대안적으로, 주석은 강조와 무관하게 실행될 수 있다.
도 5에는 제 3예가 도시된다. 그것은 행, 컬럼 또는 블록에서 각 값을 제 1값과 비교하는 비교 동작을 표시한다(그 분할부가 SmartMarker의 '방향' 특성에 의해 결정된다). 값 7210을 통한 마우스 포인터의 위치설정은 마우스 이벤트용 청취자인 애플리케이션 컴퍼넌트에 의해 식별되었다. 애플리케이션 컴퍼넌트는 상기 데이터값에서 applyAnnotation 방법을 불러내어 그 저장된 주석 스트링을 표시한다. 상기 비교 SmartMarker 동작을 선택하고 데이터 세트를 선택하는 것에 응답해서 SmartMarker 객체에 의해 발생되고 애플리케이션 컴퍼넌트에 의해 저장되는 주석 스트링은 다음의 형태이다. 즉,
주석 = "N는 N1(분할에서 첫 번째)보다 deltaString만큼 크다"
여기서 deltaString이 상기 경우에 현재 선택된 값(N)으로부터 행(N1)에서 제 1값을 감산하는 결과이다. 분할부는 현재 선택된 값을 포함하는 선택된 데이터 세트의 행이다. 강조 색깔은 각 값이 행에서 제 1값 이상 또는 이하인지를 표시한다.
도 6은 선택된 세트의 각 값을 분할부의 이전값과 비교하는 Trend 동작을 나타낸다(상기 경우에, 좌측에서 우측의 순서로된 행). 강조 색깔은 선택된 값 세트의 행에서의 각 값이 이전값보다 적거나 큰지를 표시하고, 주석 결과는 2개값간의 차를 설명하는 문자 숫자식 해석 정보를 구비한다. 그것은 데이터내에서 경향의 해석을 돕는 데 매우 유용할 수 있다.
도 7은 선택된 세트의 각 값을 특정한 참조값과 비교하고 그 참조값보다 더 큰 그 결과만을 강조하는 대안적인 SmartMarker 동작을 도시한다. 상기 동작에서,데이터값은 블록으로서 선택되었고 숫자로된 중간 계산 결과가 슷자이고 그 숫자에 의해 각 개별적인 값은 참조값을 초과한다. SmartMarker는 포지티브 결과를 "더 큰" 카테고리로 할당하고 그 도면의 예에서 도시한 바와 같은 주석 스트링을 발생시킨다. 상기 예에서, 강조 색깔은 참조값과 비교될 때 네가티브 결과를 갖는 데이터값으로 인가되지 못하여, 사용자에 대한 프리젠테이션을 단순화시킨다. 대안적으로, 값 세트를 선택하는 사용자에게 생각나도록 모든 값을 마크하는 것과 다른 강조 색깔을 포지티브 및 네가티브 결과로 인가하는 것이 가능하다.
부가적인 동작이 각 행 또는 열에서 모든 값의 총계를 표시하도록 주석을 사용하는 총계 SmartMarker를 포함한다(예를 들어, "행 총계 327"). 그것은 현재의 동작 및 선택된 세트의 현재 데이터값에 관련되는 유용한 해석 정보를 제공하는 주석의 예이고 그것은 강조 색깔과 독립해서 실행된다.
WordCount SmartMarker는 주석을 사용하여 텍스트의 선택된 블록에서 워드의 카운트(예를 들어, "123 워드" 등)를 표시한다.
통계 분석 SmartMarker 및 차트 발생기 SmartMarker는 해석에 의한 (interpretative) 주석에 대해 이로울 수 있는 데이터 발생기 SmartMarker 동작의 예이다.
다수의 다른 동작이 본 발명에 따라 방법 및 메카니즘을 사용해서 실행될 수 있음이 당업자에게는 명백하다. 어떤 경우에 해석 정보의 표시가 값에 대한 강조를 인가함과 함께 결과의 카테고리를 표시하도록 실행되면 사용자에게는 매우 도움이 될 수 있으나, 다른 경우에 값에 대한 해석 정보의 표시는 부가적인 강조없이 플라이오버 텍스트 또는 다른 매체로써 실행되면 매우 도움된다. 값에 대한 해석 정보는 다수의 형태로 이루어지고 심지어 상기에서 상세히 설명된 텍스트 스트링의 스크린 표시에 대한 대체물로서 다른 매체 형태를 경유해서 표시된다.
양호한 실시예에 따라 SmartMarker에 의해 사용된 알고리즘은 모든 동작가능한 애플리케이션에 의해 공유되어 독립적으로 실행가능하다. 그로 인해 클라이언트 애플리케이션이 소량의 일반화된 SmartMarker 동작가능 코드만을 필요로 한다. 그후에 SmartMarker 객체는 강화되고 부가적인 SmartMarker는 그들을 사용하는 애플리케이션을 변경하지 않고 제공될 수 있다. 공유된 SmartMarker을 통해 분석을 제공하는 것은 애플리케이션 컴퍼넌트의 전체 풋프린트(footprint)를 감소시키고, 복제를 방지하고 다른 애플리케이션을 통해 더 큰 일관성(consistency)을 가질 수 있다. 상기 모델은 워드 프로세서, 그룹웨어 및 데이터베이스 등의 비-분석 애플리케이션 컴퍼넌트에 분석 가능을 실제로 부가하게 한다.

Claims (28)

  1. 표시 장치상의 입력 장치 포인터를 이동시키는 입력 장치로부터의 신호에 응답하는 입력 제어기를 갖는 데이터 처리 시스템의 사용자에게 값에 대한 데이터 해석 정보를 제공하는 컴퍼넌트 세트로서,
    데이터값을 데이터 처리 시스템 사용자에게 표시하는 애플리케이션 컴퍼넌트와;
    수행될 동작에 대한 사용자 선택 및 상기 애플리케이션 컴퍼넌트의 데이터값 세트에 대한 사용자 선택에 응답하여,
    (a) 상기 선택된 데이터 값 세트에 대해 상기 선택된 처리 동작을 수행하여 결과를 생성하고,
    (b) 상기 생성된 결과에 대응하는 값에 대한 해석 정보를 생성하고,
    (c) 상기 값에 대한 해석 정보를 사용자에게 표시하기 위해 상기 애플리케이션 컴퍼넌트에 제공하는 처리 컴퍼넌트를 포함하고,
    상기 애플리케이션 컴퍼넌트는
    상기 입력 장치 포인터의 위치에 응답하고 상기 생성된 해석 정보 제공에 후속하여,
    (d) 상기 선택된 세트 중 특정 데이터 값을 표시하는 표시 영역으로 입력 장치 포인터가 이동하는 것에 응답하여, 상기 특정된 데이터 값을 식별하고,
    (e) 데이터 처리 시스템에 연결된 표시 장치상에서 상기 특정된 데이터 값에 대해 생성된 상기 값에 대한 해석 정보를 사용자에게 표시하는 것인
    컴퍼넌트 세트.
  2. 제1항에 있어서, 상기 처리 컴퍼넌트는 상기 선택된 세트의 각 데이터값을 그 세트의 다른 값 또는 참조값과 비교하고 각 값 및 그 세트의 상기 다른 값 또는 참조값간의 관계를 표시하는 각 값에 대한 결과를 생성하는 논리를 포함하고, 값에 대한 해석 정보를 생성하는 상기 수단이 채용되어 상기 관계를 설명하는 정보를 생성하는 것인 컴퍼넌트 세트.
  3. 제2항에 있어서, 상기 처리 컴퍼넌트는 상기 선택된 데이터값 세트의 지정해서 선택된 데이터값을 선택된 세트의 미리형성된 분할부내의 나머지 데이터값과 비교하는 논리를 포함하고, 그 분할부가 지정해서 선택된 데이터값을 포함하는 것인 컴퍼넌트 세트.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 애플리케이션 컴퍼넌트는 그 생성된 값에 대한 해석 정보를 플라이오버 숫자 문자식 텍스트로서 표시하는 방법을 포함하는 것인 컴퍼넌트 세트.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 애플리케이션 컴퍼넌트는 그 생성된 값에 대한 해석 정보를 상태 라인 메시지내의 숫자 문자식 텍스트로서 표시하는 방법을 채용하는 것인 컴퍼넌트 세트.
  6. 제4항에 있어서, 숫자 문자식 값에 대한 해석 텍스트가 애플리케이션 컴퍼넌트의 데이터값의 선택된 세트를 처리하는 그 생성된 결과를 상기 생성된 결과의 결과 카테고리에 대응할 때 미리형성되는 저장된 설명 텍스트와 결합함에 의해 생성되는 것인 컴퍼넌트 세트.
  7. 제 1항 내지 제 3항 중 어느 한 항에 있어서, 상기 값에 대한 해석 정보를 생성하는 방법을 채용한 객체를 객체 지향성 처리 환경내에 제공하도록 실증할 수 있는 처리 객체 클래스를 각기 구비하는 복수의 처리 컴퍼넌트를 포함하고, 상기 객체가 처리 객체와 인터페이스하기 위해 적응된 부가적인 객체를 구비하는 애플리케이션 컴퍼넌트와 인터페이스하기위해 적응되어 데이터값이 애플리케이션 컴퍼넌트로부터 처리 객체로 제공될 수 있고 해석 정보가 처리 객체로부터 각 애플리케이션 컴퍼넌트로 복귀될 수 있는 것인 컴퍼넌트 세트.
  8. 제7항에 있어서, 상기 애플리케이션 컴퍼넌트 및 처리 객체간에 애플리케이션 데이터의 흐름, 처리 결과 및 해석 정보를 관리하는 연결 객체를 제공하도록 실증가능한 연결 클래스를 포함하고 있는 것인 컴퍼넌트 세트.
  9. 제7항에 있어서, 각 처리 객체가 제어기 객체 및 연관된 알고리즘 객체를 구비하고, 상기 제어기 객체가 알고리즘 객체를 호출하도록 적응된 후 선택된 데이터값상에서 계산을 수행하여 결과를 생성하고 상기 결과를 사용해서 값에 대한 해석 정보를 생성하도록 적응되는 것인 컴퍼넌트 세트.
  10. 제7항에 있어서, 상기 처리 객체 클래스 각각이 하나 이상의 Java Beans를 구비하는 것인 컴퍼넌트 세트.
  11. 제1항에 있어서, 상기 값에 대한 해석 정보의 생성이 선택된 데이터값을 데이터베이스 조견 동작을 제어하는 입력 파라미터로서 사용해서 데이터베이스 조견 동작을 초기화하는 단계를 구비하는 것인 컴퍼넌트 세트.
  12. 제1항에 있어서, 상기 처리 컴퍼넌트는 선택된 세트의 각 데이터값을 그 세트의 다른 값 또는 참조값과 비교하고 각 값 및 그 세트의 상기 다른 값 또는 참조값간의 관계를 표시하는 각 값에 대한 결과를 생성하는 논리를 포함하고, 값에 대한 해석 정보의 생성이 상기 생성된 결과를 데이터베이스 조견 동작용 입력 파라미터로서 사용하도록 적응되어 상기 생성된 결과에 대응하는 해석 정보를 얻는 것인 컴퍼넌트 세트.
  13. 제 1항 내지 제 3항 중 어느 한 항에 있어서, 상기 생성된 값에 대한 해석 정보가 오디오 클립을 포함하는 것인 컴퍼넌트 세트.
  14. 애플리케이션 컴퍼넌트의 데이터값에 관련하는 값에 대한 해석 정보를 데이터 처리 시스템의 사용자에게 제공하는 방법으로서,
    수행될 동작에 대한 사용자 선택 및 애플리케이션 컴퍼넌트의 데이터값 세트에 대한 사용자 선택에 응답하여, 상기 선택된 동작에 따라 상기 선택된 데이터값 세트를 처리하여 결과를 생성하는 단계와;
    상기 생성된 결과에 대응하는 값에 대한 해석 정보를 생생하는 단계와;
    상기 값에 대한 해석 정보를 사용자 표시용 애플리케이션 컴퍼넌트에 제공하는 단계와;
    상기 선택된 세트 중 특정 데이터 값을 표시하는 표시 영역으로 입력 장치 포인터가 이동하는 것에 응답하여, 사용자가 선택한 상기 특정된 데이터 값을 식별하는 단계와;
    데이터 처리 시스템에 연결된 표시 장치상에서 상기 특정된 데이터 값에 대해 생성된 상기 값에 대한 해석 정보를 사용자에게 표시하는 단계를 포함하는 것인 방법.
  15. 제14항에 있어서, 선택된 데이터값 세트의 상기 처리는 선택된 세트의 각 데이터값을 그 세트의 다른 값 또는 참조값과 비교하는 단계와, 각 값 및 그 세트의 상기 다른 값 또는 참조값간의 관계를 표시하는 각 값에 대한 결과를 생성하는 단계와, 상기 관계를 설명하는 값에 대한 해석 정보를 생성하는 단계를 구비하는 것인 방법.
  16. 제14항 또는 제15항에 있어서, 값에 대한 해석 정보의 생성은 상기 선택된 데이터값 세트 각각에 대한 주석 스트링의 생성을 포함하고 각기 생성된 주석 스트링이 각 데이터값 및 상기 세트의 나머지 데이터값간에 나타나는 것인 방법.
  17. 입력 장치 포인터 및 연결된 표시 장치를 갖는 데이터 처리 시스템의 사용자에게 값에 대한 해석 정보를 제공하는 컴퍼넌트 세트를 포함하는 컴퓨터 프로그램 코드가 기록된 컴퓨터 판독 가능한 기록 매체에 있어서,
    상기 컴퓨터 프로그램 코드는
    데이터값을 데이터 처리 시스템 사용자에게 표시하는 애플리케이션 프로그램 코드 컴퍼넌트와;
    수행될 동작에 대한 사용자 선택 및 상기 애플리케이션 프로그램 코드 컴퍼넌트의 데이터값 세트에 대한 사용자 선택에 응답하여,
    (a) 상기 선택된 데이터 값 세트에 대해 상기 선택된 처리 동작을 수행하여 결과를 생성하고,
    (b) 상기 생성된 결과에 대응하는 값에 대한 해석 정보를 생성하고,
    (c) 상기 값에 대한 해석 정보를 사용자에게 표시하기 위해 상기 애플리케이션 프로그램 코드 컴퍼넌트에 제공하는 처리 프로그램 코드 컴퍼넌트를 포함하고,
    상기 애플리케이션 프로그램 코드 컴퍼넌트는
    상기 입력 장치 포인터의 위치에 응답하고 상기 생성된 해석 정보 제공에 후속하여,
    (d) 상기 선택된 세트 중 특정 데이터 값을 표시하는 표시 영역으로 입력 장치 포인터가 이동하는 것에 응답하여, 상기 특정된 데이터 값을 식별하고,
    (e) 데이터 처리 시스템에 연결된 표시 장치상에서 상기 특정된 데이터 값에 대해 생성된 상기 값에 대한 해석 정보를 사용자에게 표시하는 것인
    컴퓨터 판독 가능한 기록 매체.
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
KR10-2001-7000670A 1998-07-24 1999-07-21 선택된 애플리케이션 데이터를 설명하는 주석을 생성 및표시하는 방법 및 툴 KR100388928B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9816098.9 1998-07-24
GB9816098A GB2340008A (en) 1998-07-24 1998-07-24 Method and tool for generating and displayin a descriptive annotation of selec ted application data

Publications (2)

Publication Number Publication Date
KR20010071926A KR20010071926A (ko) 2001-07-31
KR100388928B1 true KR100388928B1 (ko) 2003-06-25

Family

ID=10836075

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-7000670A KR100388928B1 (ko) 1998-07-24 1999-07-21 선택된 애플리케이션 데이터를 설명하는 주석을 생성 및표시하는 방법 및 툴

Country Status (11)

Country Link
US (1) US6335738B1 (ko)
EP (1) EP1099162B1 (ko)
JP (1) JP2002521746A (ko)
KR (1) KR100388928B1 (ko)
CN (1) CN100414496C (ko)
AT (1) ATE254776T1 (ko)
DE (1) DE69912958D1 (ko)
GB (1) GB2340008A (ko)
PL (1) PL345626A1 (ko)
TW (1) TW424198B (ko)
WO (1) WO2000005647A1 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6717589B1 (en) * 1999-03-17 2004-04-06 Palm Source, Inc. Computerized help system with modal and non-modal modes
GB2366893B (en) * 2000-09-08 2004-06-16 Roke Manor Research Improvements in or relating to word processor systems or the like
WO2002046921A1 (fr) * 2000-12-08 2002-06-13 Fujitsu Limited Procede et dispositif pour l'analyse de sequences
CA2388150A1 (en) * 2002-05-29 2003-11-29 Ibm Canada Limited-Ibm Canada Limitee Toggleable widget for a user interface
US20040100498A1 (en) * 2002-11-21 2004-05-27 International Business Machines Corporation Annotating received world wide web/internet document pages without changing the hypertext markup language content of the pages
US7392267B2 (en) * 2002-12-04 2008-06-24 International Business Machines Corporation Annotation validity using partial checksums
US7676739B2 (en) * 2003-11-26 2010-03-09 International Business Machines Corporation Methods and apparatus for knowledge base assisted annotation
JP2005242683A (ja) * 2004-02-26 2005-09-08 Mitsubishi Electric Corp コンピュータを用いたプログラム作成装置
US20060104276A1 (en) * 2004-11-18 2006-05-18 International Business Machines Corporation Dynamic hover text for HTML table cells
US7562342B2 (en) * 2004-12-02 2009-07-14 International Business Machines Corporation Method and apparatus for incrementally processing program annotations
US7962847B2 (en) * 2005-10-20 2011-06-14 International Business Machines Corporation Method for providing dynamic process step annotations
US20070097398A1 (en) * 2005-10-27 2007-05-03 Walton Andrew C Provision and use of device images that are associated with one or more relationships specifying how to navigate between the images
US20070274300A1 (en) * 2006-05-04 2007-11-29 Microsoft Corporation Hover to call
CN100452056C (zh) * 2007-06-25 2009-01-14 威盛电子股份有限公司 解析存储器内容的系统及方法
US20090049375A1 (en) * 2007-08-18 2009-02-19 Talario, Llc Selective processing of information from a digital copy of a document for data entry
US9563877B2 (en) * 2008-03-11 2017-02-07 Microsoft Technology Licensing, Llc Customizable controls provided by a messaging application for performing selected actions
WO2011014569A1 (en) * 2009-07-28 2011-02-03 Etxtbk, Llc Systems and methods for distributing electronic content
KR101783049B1 (ko) * 2010-05-13 2017-09-28 인터내셔널 비지네스 머신즈 코포레이션 맞춤식 유저 인터페이스들을 위한 유저 도움 정보를 생성하는 방법 및 장치
US9317861B2 (en) 2011-03-30 2016-04-19 Information Resources, Inc. View-independent annotation of commercial data
US20120317518A1 (en) * 2011-06-07 2012-12-13 Sap Ag Generating treemaps based on graphical selections
US8832588B1 (en) * 2011-06-30 2014-09-09 Microstrategy Incorporated Context-inclusive magnifying area
CN103309668B (zh) * 2013-06-17 2017-07-25 深圳Tcl新技术有限公司 应用程序未截获异常的处理方法及装置
EP2902857B1 (de) * 2014-01-29 2018-12-19 Siemens Aktiengesellschaft Verfahren zur Bereitstellung von Funktionen innerhalb eines industriellen Automatisierungssystems und industrielles Automatisierungsystem
US10078314B2 (en) 2014-01-29 2018-09-18 Siemens Aktiengesellschaft Method for providing functions within an industrial automation system, and industrial automation system
US11029836B2 (en) * 2016-03-25 2021-06-08 Microsoft Technology Licensing, Llc Cross-platform interactivity architecture
KR102106098B1 (ko) * 2016-07-28 2020-04-29 주식회사 케이티 도움말 제공 장치 및 방법
US10146758B1 (en) 2016-09-30 2018-12-04 Amazon Technologies, Inc. Distributed moderation and dynamic display of content annotations
US10445422B2 (en) * 2018-02-09 2019-10-15 Microsoft Technology Licensing, Llc Identification of sets and manipulation of set data in productivity applications
US10776619B2 (en) 2018-09-27 2020-09-15 The Toronto-Dominion Bank Systems and methods for augmenting a displayed document

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287448A (en) * 1989-05-04 1994-02-15 Apple Computer, Inc. Method and apparatus for providing help information to users of computers
US5428733A (en) * 1991-12-16 1995-06-27 Apple Computer, Inc. Method of calculating dimensions and positioning of rectangular balloons
US5434965A (en) * 1992-12-23 1995-07-18 Taligent, Inc. Balloon help system
GB2301758A (en) * 1995-06-03 1996-12-11 Ibm Icon driven data processing system
US6138130A (en) * 1995-12-08 2000-10-24 Inventure Technologies, Inc. System and method for processing data in an electronic spreadsheet in accordance with a data type
US5924077A (en) * 1995-12-29 1999-07-13 Sapient Solutions, Llc Computer based system for monitoring and processing data collected at the point of sale of goods and services
US6055548A (en) * 1996-06-03 2000-04-25 Microsoft Corporation Computerized spreadsheet with auto-calculator

Also Published As

Publication number Publication date
ATE254776T1 (de) 2003-12-15
CN100414496C (zh) 2008-08-27
KR20010071926A (ko) 2001-07-31
PL345626A1 (en) 2002-01-02
TW424198B (en) 2001-03-01
EP1099162A1 (en) 2001-05-16
DE69912958D1 (de) 2003-12-24
GB2340008A (en) 2000-02-09
GB9816098D0 (en) 1998-09-23
WO2000005647A1 (en) 2000-02-03
CN1310819A (zh) 2001-08-29
US6335738B1 (en) 2002-01-01
EP1099162B1 (en) 2003-11-19
JP2002521746A (ja) 2002-07-16

Similar Documents

Publication Publication Date Title
KR100388928B1 (ko) 선택된 애플리케이션 데이터를 설명하는 주석을 생성 및표시하는 방법 및 툴
JP3014284B2 (ja) ダイアログ・ボックスの表示方法及びシステム
EP0342838A2 (en) User interface for a data input
US5297250A (en) Method of generating interfaces for use applications that are displayable on the screen of a data processing system, and apparatus for performing the method
US9092122B2 (en) Method and system for generating a control system user interface
US5892512A (en) Selection of operations in a computer system
US5339433A (en) Symbol browsing in an object-oriented development system
US8413116B2 (en) Method of dynamically linking objects operated on by a computational system
US6252593B1 (en) Assisting controls in a windowing environment
EP0597316A2 (en) Computer simulation system and method for specifying the behavior of graphical operator interfaces
US6246403B1 (en) Method and apparatus for generating a graphical user interface
JPH07134765A (ja) データのグラフ表示の方法
US20030071860A1 (en) System and method for managing graphical components
US20030081007A1 (en) Object oriented explorer type environment
Koivunen et al. HutWindows: an improved architecture for a user interface management system
JP3492014B2 (ja) データ入出力方法及び計算機装置
JPH0652278A (ja) データ処理システム及び値選択方法
JP3177235B2 (ja) データ出力装置
JP3168762B2 (ja) 対話処理システム
Berlage et al. Framework for Graphical User Interfaces
Kress et al. Fast system design using GUIs
JPH02263227A (ja) 表示制御装置
Ziegler Direct manipulation techniques for the human-computer interface
JPH04315255A (ja) データ処理システム用ワークベンチ/ツールボックスインターフェース
Whalen Linked, Interactive Views of Linked Data

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
FPAY Annual fee payment

Payment date: 20060522

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee