KR100885147B1 - 문서에 관한 작업을 수행하는 시스템 - Google Patents

문서에 관한 작업을 수행하는 시스템 Download PDF

Info

Publication number
KR100885147B1
KR100885147B1 KR1020020021426A KR20020021426A KR100885147B1 KR 100885147 B1 KR100885147 B1 KR 100885147B1 KR 1020020021426 A KR1020020021426 A KR 1020020021426A KR 20020021426 A KR20020021426 A KR 20020021426A KR 100885147 B1 KR100885147 B1 KR 100885147B1
Authority
KR
South Korea
Prior art keywords
document
state
attributes
states
job
Prior art date
Application number
KR1020020021426A
Other languages
English (en)
Other versions
KR20020086227A (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 KR20020086227A publication Critical patent/KR20020086227A/ko
Application granted granted Critical
Publication of KR100885147B1 publication Critical patent/KR100885147B1/ko

Links

Images

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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1267Job repository, e.g. non-scheduled jobs, delay printing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Facsimiles In General (AREA)

Abstract

스캐너, 프린터 및 제어기를 구비하는 문서에 관한 작업을 수행하는 시스템. 제어기는, 작업을 수신하는 클라이언트 모듈들, 하나의 작업을 다수의 하위작업으로 분할하는 분할기 모듈, 하위작업들을 수행하는 작업자 모듈 및 중앙저장영역을 구비한다. 문서는 중앙 저장 영역에 문서모델에 따라 저장된다. 문서모델에 따라, 문서에 상태가 배정된다. 상태는 속성값들로 이루어진다. 작업을 수행하기 위해선, 문서가 소스 상태로부터 타겟 상태로 변환되어야 한다. 특정 실시예에서, 소스 상태 및 타겟 상태의 상이한 값들을 갖는 속성들을 식별하여 이 속성들에 따라 동작하는 작업자 모듈들을 선택함으로써 분할이 수행된다.
문서에 관한 작업, 스캐너, 프린터, 속성

Description

문서에 관한 작업을 수행하는 시스템 {SYSTEM FOR CARRYING OUT JOBS ON DOCUMENTS}
도 1 은 시스템의 구조도.
도 2 는 정보판의 구성요소들에 대한 클래스도.
도 3 은 문서모델에 대한 클래스도.
도 4 는 작업에 포함된 객체들을 나타내는 객체도.
도 5 는 하위작업들로 작업을 분할하는 방법을 나타낸 도면.
※도면의 주요부분에 대한 부호의 설명※
1 : 시스템 2 : 제어기
3 : 그래픽 단말기 4 : 스캐너 엔진
5 : 프린터 엔진 6 : 정보판
7 : 클라이언트 8 : 작업자
9 : 작업흐름 관리모듈 110 : 스케쥴러
111 : 분할기
본 발명은, 입력 문서로부터 타겟 문서를 협동하여 생성하는 변환유닛들을 구비하는 문서에 관한 작업을 수행하는 시스템, 및 이런 시스템의 사용법에 관한 것이다.
요즘은, 필요한 작업을 수행하기 위해 문서에 특정 작업을 각각 수행하는 모듈들을 구비하는 문서에 관한 작업을 수행하는 문서처리 시스템의 구조가 공지되어 있다. 예를 들면, 복사 작업을 수행하기 위해선, 원문을 스캐너 모듈로 스캔하고, 그 결과의 비트맵들을 이미지 처리 모듈로 확대/축소, 회전, 및 이미지를 향상시킨 후, 다시 프린팅 모듈로 전송하여 원하는 원문의 복사본들을 생산한다. 이런 작업들을 수행하기 위해 해야 할 이용가능한 작업 모듈들에 대한 분할은, 시스템에 내재하는 지식 (knowledge) 에 기초하여 수행된다. 이런 지식은 모듈들의 내외적 종속성과 관련이 있다. 또한, 그런 구조는 작업들이 형성되는 방법에 대한 확고한 전제들에 따라 이루어진다. 그 결과, 시스템이 경직된다. 이로 인해, 그런 시스템에 새로운 기능을 제공하는 경우에 심각한 제약이 된다.
본 발명의 목적은 상술한 단점들을 해결하는 것이다.
이런 목적으로, 서론에 따른 문서처리 시스템은, 콤포넌트들의 구조로서 문서 모델에 따라 문서를 저장하도록 개선된다. 콤포넌트에는 콤포넌트 상태가 배정되고, 문서에는 문서 상태가 배정되며, 문서 상태는 콤포넌트 상태들을 포함한다. 변환유닛들은 콤포넌트를 제 1 상태에서 제 2 상태로 변환하는 기능을 가지며, 문서처리 시스템은
문서가 소스 문서상태로부터 타겟 문서상태로 변환되도록, 문서의 콤포넌트들을 변환할 수 있는 변환유닛들의 방향그래프 (digraph) 를 구성하는 수단; 및
변환유닛들의 방향그래프에 따라 변환유닛들에 의한 콤포넌트들의 프로세싱을 관리하는 수단을 더 구비한다.
이로써, 새로운 요구사항들에 대처하기 위해, 용이하게 개조되고 확장되는 융통성 있는 시스템이 이루어진다.
유리한 실시예에서, 변환유닛은 비용 속성을 가지며, 방향그래프를 구성하는 수단은 방향그래프 내에 포함된 변환유닛들의 비용 속성들에 기초하여 방향그래프의 총비용을 계산하는 수단을 가지며, 변환유닛들의 방향그래프를 구성하는 수단은 최소의 총비용을 갖는 방향그래프를 반환하는 수단을 갖는다.
변환유닛들의 비용 속성들을 조작함으로써, 작업의 프로세싱에 어떤 변환유닛들을 관여시킬지에 영향을 줄 수 있다. 이런 식으로, 변환유닛들 간의 최적의 로드 (load) 분산을 달성할 수 있다.
본 발명에 따른 다른 실시예에서, 문서처리 시스템은 문서 및 이 문서에 수행할 작업을 입력하는 클라이언트들을 구비하며,
방향그래프를 구성하는 수단은, 소스 문서를 구성하는 콤포넌트들의 상태를 결정하는 단계, 타겟 문서를 구성하는 콤포넌트들의 상태를 결정하는 단계;
변환되어야 하는 속성들을 식별하는 단계, 이 식별된 속성들 중 하나 이상의 속성을 변환하는 변환유닛들을 식별하는 단계, 얻어지는 상태들의 세트를 결정하는 단계, 얻어지는 상태들의 세트와 타겟 문서를 구성하는 콤포넌트들의 상태와 비교하는 단계; 및
비교가 충족될 때까지, 변환되어야 하는 속성들을 식별하는 단계, 변환유닛들을 식별하는 단계 및 비교하는 단계를 반복한 후, 얻어지는 변환유닛들의 방향그래프를 반환하는 단계를 수행한다.
이로써, 포함될 변환유닛들의 결정에 대하여 신속히 수렴하는 프로세스가 이루어진다.
첨부한 도면들을 참조하여 본 발명을 상세히 설명한다.
구조
도 1 은 시스템 (1) 의 개략적 구조를 나타낸다. 시스템은, 제어기 (2) 를 구비하며, 이 제어기는 이용자와의 상호작용을 위한 그래픽 단말기 (3), 스캐너 엔진 (4) 및 프린터 엔진 (5) 에 접속된다. 제어기는 정보판 (6), 다수의 클라이언트 (7), 다수의 변환유닛 또는 '작업자' (8), 및 작업흐름 관리모듈 (9) 을 구비한다. 정보판은, 글로벌 환경설정 및 상태 정보 뿐만 아니라, 시스템이 해야 할 일을 나타내는 선택적으로 지속되는 객체들의 중앙 저장실이다. 정보판은, 제어기의 다른 모듈들간에 공유되는 모든 정보를 포함한다. 모듈들은 서로 통신하지 않는다. 각각의 모듈은 정보판의 정보와 상호작용하며, 정보판의 정보를 갱신한다. 이로써, 모듈들간의 유연한 결합이 가능하며, 불필요한 종속성을 피할 수 있어, 고도의 모듈화를 달성할 수 있다. 이런 식으로, 명확한 부분들에 대한 수정만으로 여분의 콤포넌트를 추가할 수 있다. 클라이언트들은 외부로부터 작업을 접수하여, 그 작업을 정보판 내에 올리고, 그 작업의 상태에 대한 정보를 외부에 반환한다. 이 작업들은 클라이언트 작업이라 불리는 객체들로서 구현된다. 작업자는 작업을 실행하기 위해 여러 동작들을 수행한다. 또한, 작업자 작업이라 불리는 객체들로 그런 동작들을 설명하겠다. 작업흐름 관리 모듈은 제어기능을 수행한다. 스케쥴러 (110) 는, 작업 실행의 초기화 및 제어와 같은 시스템의 동적 측면을 제어하고, 분할기 (111) 는 클라이언트 작업을 작업자 작업으로 분할한다.
정보판
정보판은 단일 작업자 또는 단일 클라이언트의 범위보다 더 넓은 범위의 모든 정보를 보관하는 일을 하는 중앙 데이터 저장수단이다. 이런 정보로는, 작업의 기술, 문서, 엔진 상태정보, 환경설정 등을 포함한다. 도 2 는, 정보판 내의 특정 인스턴스에 상주하는 객체들에 대한 관계를 나타내는 클래스도이다.
다수의 클래스는 클래스 리스트로부터 상속된다. 작업 의뢰 (submission) 및 제어 계층의 최고 레벨인 이용자 요청에 대해, 요청리스트가 포함된다. 이 요청리스트는, 시스템 내의 모든 요청에 대한 참조를 나타낸다. 시스템작업리스트는 시스템 내의 모든 작업의 리스트이다. 이 시스템작업리스트는, 분할 후 파생되는 하위작업들 뿐만 아니라 이용자-정의 클라이언트 작업을 모두 포함한다. 신규 클라이언트 작업이 추가되면, 그 작업은 시스템작업리스트에 올려진 후, 스케쥴러에 의해 분할기의 큐 (queue) 에 올려진다. 분할 후, 분할기는 새로이 생성된 하위작업들을 시스템작업리스트에 올린다. 그런 동작이 스케쥴러에 통지된 후, 스케쥴러는 하부작업들을 적절한 큐 또는 리스트로 스케쥴링한다. 클래스도의 우측은 작업 모듈 (작업자/클라이언트/분할기) 에 관련된 모든 클래스를 나타낸다. 모듈리스트는 정보판 내의 모든 모듈 객체에 대한 참조를 포함한다. 각각의 작업 처리 모듈에는 모듈 객체가 부속되며, 이 모듈 객체는 작업큐, 환경설정 및 공급물 (예를 들어, 용지 트레이의 내용물) 과 같이, 이 모듈에 속하는 다른 모든 정보 객체에 대한 객체 참조일 뿐만 아니라 그의 상태도 명시한다. 따라서, 도 2 에서, 각각의 클라이언트 및 작업자는 모듈 객체로 나타내지며, 모듈 객체는 그 모듈에 속하는 작업큐에 대한 참조를 갖는다. 작업큐에서, 모든 활성 (처리중이거나 자동개시를 위해 대기중인) 작업들은 프로세싱 순서에 따라 정렬된다.
정보판은 신규 작업 및 정보 변경에 대한 신청 (subscription) 및 통지 메커니즘을 구비한다. 클라이언트는 이들 변경을 신청할 수 있고, 이런 식으로 문서 및 작업자 상태를 모니터할 수 있다.
클라이언트
클라이언트는 이용자에 의해 입력된 작업을 접수한다. 클라이언트는 작업을 시스템작업리스트에 올린다. 작업이 여러 개의 하위작업으로 분할되면, 클라이언트는 모든 하위작업들의 상태를 개별적으로 판독할 수 있다. 이용자에 의해 입력된 요청은 요청리스트에 올려진다. 클라이언트는 전체 작업의 상태를 변경할 수도 있다. 그런 후, 이런 변경이 모든 하위작업에 적용된다. 클라이언트 모듈의 예로는, 로컬 이용자 인터페이스 모듈 및 네트워크 작업 의뢰 모듈이 있다.
분할기
분할기 모듈은 하위작업들을 생성하는 일을 담당하며, 이들 하위작업들이 모여 이용자가 요구한 작업을 구성한다. 분할기는 정보판 상에 있는 분할기큐라 불리는 자신의 작업큐에 접근할 수 있으며, 이 큐에 올려진 순서대로 작업 분할을 개시한다. 분할동작의 결과로서, 분할기는 한 세트의 하위작업을 생성한다. 분할기는 그 하위작업들을 시스템작업리스트에 올린다. 그 작업의 초기 단계들이 독립적이어서 병렬로 수행될 수 있는 경우, 분할기는 그 초기단계들에 대해 하나 이상의 작업자 작업을 생성한다. 분할기는 정보판에 저장된 표에서 이용가능한 작업자들에 관한 정보를 참조한다.
스케쥴러
스케쥴러는 모든 작업들을 작업자에 배정하는 일을 한다. 분할기에 의해 생성된 작업자 작업들은, 클라이언트 작업들을 수행하는데 필요한 기지의 동작들을 실행하기 위해 이용가능한 작업자들에게 배정된다. 각각의 작업자에 대하여, 작업자 작업들이 큐에 올려진다. 스케쥴러는, 작업을 큐에 올리거나 큐에서 작업을 제거하는 일을 하는 유일한 콤포넌트이다. 클라이언트 작업의 속성 및 여기서 유래한 작업자 작업의 속성, 작업자가 작업자 작업을 더 수용할 수 있는지의 여부, 및 동일한 작업자 형태의 다중 인스턴스들의 이용가능성을 고려하여 배정이 이루어진다. 또한, 스케쥴러는, 시스템이 상태를 변경하는 특별한 상황에서 적당한 작업자 작업들을 보류하거나 취소하는 일도 한다. 스케쥴러는 작업이 처리되는 순서에 대해 결정한다. 그러나, 스케쥴러에 대한 전략이 정보판에 명시될 수 있다. 이런 세팅은 이용자에 의해 설정될 수 있다. 스케쥴러는 전체 작업에 대한 스케쥴링 속성을 하위작업들에 대한 스케쥴링 속성으로 전환시킨다.
작업자
작업자는, 물리적인 장치들, 즉 스캐너 또는 프린터에 접속되는 소프트웨어 계층이거나, 포스트스트립트 파일을 리핑 (ripping) 하는 것과 같이, 특정 작업을 수행하는 소프트웨어 모듈이다. 큐 내의 순서는 작업자가 결과를 생산해야 하는 순서이다. 또한, 각각의 작업자는 정보판 상에 작업자 상태 객체를 가지고 있으며, 이 작업자 상태 객체는 그의 글로벌 상태를 판독하거나 기록하는데 사용된다. 상태로는, 대기상태 (idle), 동작상태, 보류상태 및 보류미결상태가 있다. 큐의 방법으로는, 리스트의 특정위치로의 작업자 작업 추가, 및 리스트로부터의 작업자 작업의 제거가 있다. 작업자 작업의 상태로는, 생성, 배정, 활성, 완료, 실패, 취소 및 중지상태가 있다.
하위작업이 준비되면, 그 하위작업은 준비상태로 큐 내에 상주한다. 작업자는 큐에 작업을 추가하거나 제거하는 일은 하지 않는다.
정보판 내에서 어떤 정보에 의해 명시되는 이용자 요청에 따라 작업이 중단되거나 보류되어야 하는 경우, 작업자는 그에 응답해야 한다. 작업자는 그런 요청을 적절히 처리한다. 작업이 보류되거나 중단되면, 작업자는 하위작업의 상태를 변경한다.
작업자의 인스턴스들로는, 번역기 모듈, 스캔 모듈 및 프린트 모듈이 있다.
작업자 작업은, 작업자에 의해 수행될 동작의 기술, 정보판으로부터 가져올 입력 객체들에 대한 참조 및 작업자에 의해 생산될 출력 객체들에 대한 참조를 포함한다.
문서모델
문서는 문서모델에 따라 시스템에 저장된다. 도 3 을 참조하여, 문서모델을 설명한다. 문서모델은, 다수의 관련 콤포넌트를 포함한다. 콤포넌트 형태들로는, 예를 들면, 이미지, 캐리어 및 프레임이 있다. 원문으로부터 문서를 복사하는 경우, 원문과 그의 사본은 동일한 이미지시퀀스 내에서 동일한 이미지들을 공유한다. 예를 들어, 소책자, 및 동일 문서의 단순 버젼은, 외형은 다르지만 동일한 이미지 시퀀스 및 동일한 이미지들을 공유한다. 이것이, 동적 모델의 출발점으로 여겨지는 부분이다. 원문에 이미지를 첨가한다는 것은, 해당 사본에도 그 동일 이미지를 첨가해야 한다는 것을 의미한다. 예를 들면, 입력 트레이에서 다음 원문이 검출되는 경우이다.
상술한 바에 기초하여, 문서는 연속적인 캐리어들 상의 이미지들의 시퀀스로서 간주하며, 여기는 캐리어는 용지 또는 비트맵 파일이 될 수 있다. 따라서, 기본 문서 객체들은, 캐리어, 이미지 및 관련캐리어이미지이다. 후자의 객체는 캐리어와 이미지를 관련시키는 방법을 규정한다.
상이한 레벨에는 상이한 속성이 존재한다. 문서 레벨에서는, 전체 문서에 관한 속성을 이용할 수 있다. 이 속성들은, 예를 들면, 작업티켓파서, 작업티켓 생성기 및 PDL-번역기에 의해 이용된다. PDL-번역기는 이 레벨의 문서를 이미지 및 캐리어 레벨로 변환할 수 있다. 이미지 및 캐리어 레벨에서, 이미지 및 캐리어는 단일 객체들에 의해 제공된다. 기본 스캐너가 특히, 이 레벨에서 작업한다. 또한, 이 레벨의 동작들은, 단일 이미지 객체마다 통지 메커니즘에 의해 동기되어, 최대생산성 및 최소 응답시간이 달성된다.
작업모델
작업이란, 생성되어야 할 타겟문서를 지칭한다. 타겟문서는, 타겟문서를 생성하는데 필요한 이미지들의 시퀀스를 전달하는 소스문서에 대한 참조를 포함한다. 이들 참조, 또는 타겟문서와 그의 소스문서간의 이미지 시퀀스 관계가, 동적 모델의 기초를 형성한다.
또한, 작업 요구사항을 수용하기 위해, 문서모델에는, 동일 문서모델에 포함된, 있는 그대로의 실제 문서 뿐만 아니라, 문서레서피 및 문서명세가 표현될 수도 있다. 문서레서피는 예상되는 결과의 초기 기술을 포함하며, 이 기술은 실제의 소스문서와는 무관하다. 문서명세는, 문서의 정확한 외형을 기술하며, 제조해야 할 것을 정확히 명시한다. 이런 문서의 모든 양상을 하나의 동일한 트리 내에 수용하기 위해, 이미지 및 캐리어 객체에 대한 존재속성이 추가된다. 이 존재속성은, 이용가능한 데이터가 속하는 양상을 나타내기 위해, '레서피', '명세' 및 '실제'의 값을 갖는다. 이것이 가능한 이유는, 어떤 순간에도 작업자들에 대하여, 문서의 각각의 파트는 단 하나의 해당 상태를 가지기 때문이다.
클라이언트작업은, 클라이언트가 공식화한 대로 소스문서로부터 타겟문서를 생성하는 순서를 나타낸다. 이런 작업은 작업자 작업들로 분할되어, 다양한 작업자들에 의해 처리된다. 도 4 는 클라이언트작업, 작업자 작업들 및 관련 문서들간의 관계를 나타낸다.
동적 양태
본 발명에 따른 문서모델로 인해, 소스문서로부터 타겟문서에 이르는 프로세싱에 있어 본질적으로 상이한 단계들에 있는 콤포넌트들을 동시에 수용할 수 있다.
소스문서와 타겟문서간의 관계는 단지 이미지시퀀스 관계일 뿐이다. 타겟 문서명세 내의 개개의 이미지들은 소스문서 내의 개개의 이미지들과 관련을 갖는다.
또한, 이는 클라이언트 작업에 기초하여 분할기에 의해 규정된 클라이언트 작업들로 인해, 중간문서들이 존재하는 단계들에 대해서도 적용된다. 무언가로부터 무엇을 제조해야 하는지를 판단하기 위해선, 소스이미지들은 타겟이미지들과 관련되어야 하며, 역의 경우도 성립해야 한다. 문서를 복사하기 위해선, 단일 용지 또는 비트맵으로부터, 다른 단일 용지 또는 비트맵으로의 경로를 찾아야 한다. 스캔이나 프린트에 대한 모든 속성은, 그 경로를 형성하는 객체들 내에서 발견할 수 있다. 이들 경로는, 제 1 상태의 이미지들 및 문서의 시퀀스로부터 제 2 상태의 이미지들 및 문서의 시퀀스로의 필수적 변환들에 기초하여 발견한다. 소스이미지와 타겟이미지을 관련시키기 위해서는, 모든 이미지가 국부적으로 규정된 시퀀스 번호를 가져야 한다. 그런 후, 소스이미지를 타겟이미지에 관련시키기 위해서, 동일한 시퀀스 번호를 갖는 고유의 타겟이미지가 생성되어야 한다.
실제의 이미지를 소스문서에 첨가한 후, 동일한 이미지 인덱스를 갖는 고유의 타겟이미지가 성공적으로 생성되면, 그 타겟이미지는 특정 상태를 갖게 된다. 특정 상태로의 변경으로 인해, 예를 들면, 타겟 용지를 신청하는 프린트 작업자가 트리거된다.
작업자들은, 문서의 다양한 콤포넌트들에 조작한다. 스캔 작업자는 문서를 검출하여, 문서레서피에 따라 소스실제문서를 갱신한다. 프린트 작업자는, 완료기로의 용지공급 순서에 따라 프린트 명령들을 프린터에 전송한다. 이미지를 조작하는 이미지조작작업자의 기본적인 동작으로는, 복사, 붙이기/오려내기, 명암제어 및 확대/축소 동작이 있다. 실제로, 작업자는 다양한 콤포넌트들의 속성을 변경한다. 예를 들어, 확대/축소는 크기 속성을 조작하고, 명암제어는 OD (광학밀도; Optical Density) 속성을 조작한다. 또한, 작업자는 콤포넌트들이 서로에 대해 구조적으로 연관되는 방법도 변경한다. 이런 정보는 구조속성들로서 제공된다. 예를 들면, 캐리어 플렉서티 (plexity), 캐리어 상의 프레임 갯수, 프레임 환경설정 및 용지 유형의 수가 있다. 이런 방법으로, 한 콤포넌트나 전체로서의 문서의 실제 상태가 속성들에 의해 규정된다. 작업자가 속성을 변경할 때, 문서의 상태가 변경된다는 점에서, 작업은 상태천이의 집합으로 간주될 수 있다.
상태를 추출하기 위해, 시스템은 문서레서피에 관련된 모든 이미지를 검색할 수 있다. 각각의 이미지에 대하여, 연결 프레임에 대한 포인터를 구할 수 있고, 그 프레임에는 캐리어가 연결되어 있으며, 그 캐리어에는 기본문서가 연결되어 있어서, 이 객체들 각각에 대하여, 속성값들을 검색할 수 있다. 구조 속성들은, 문서의 객체들 중 하나에 의해 구할 수 있다.
복사작업을 예로 들어, 작업의 동적프로세싱 전반을 설명한다. 로컬 이용자 인터페이스에서, 이용자는 신규의 복사 작업을 규정한다. 이용자는 원문을 ADF 상에 올려놓고, 시작버튼을 누른다. 스캐너는 그 문서를 스캔하고, 프린터는 소요의 사본수를 프린트한다. 복사작업은, 시스템작업리스트가 스케쥴러에 통지함으로써 트리거된다. 이에 대응하여, 스케쥴러는 신규 작업을 선택하고, 자신을 복사작업에 종속시킴으로써, 작업변경 여부를 통지받는다. 그런 후, 스케쥴러는 분할기큐에 복사작업을 추가한다. 분할기는 분할기큐의 변경에 따라 통지를 수신하여 복사작업을 선택한다. 분할기는 복사작업의 세팅을 판독하여, 복사작업을 두 개의 기본작업, 즉 스캔작업 및 프린트작업으로 분할한다. 이 두 작업은 (합성) 복사작업에 추가된다. 두 작업은 시스템작업리스트에 올려진다. 스캔작업 및 프린트작업이 추가되었기 때문에, 시스템작업리스트는 스케쥴러에 통지한다.
먼저, 스케쥴러는 스캔작업을 선택하고 자신을 종속시킨 후, 예를 들어, 우선권과 같은 그 작업의 속성들에 기초하여 스캔큐 내의 특정위치에 그 작업을 배치한다. 이제는, 스캔큐가 스캔모듈에 통지한다. 프린트작업에 대해서도 이와 동일하게 실행된다.
두 개의 병렬동작, 즉 스캔동작 및 프린트동작이 개시된다.
스캔동작은 스캔큐의 통지에 의해 개시된다. 그런 후, 스캔모듈은 스캔작업을 선택하고 자신을 종속시킨다. 그런 후, 스캔모듈은 작업상태를 '처리중'으로 설정한다. 스케쥴러는 종속된 상태이므로 이 통지를 수신하지만, 스케쥴러와 관련된 변경이 아니므로, 통지를 무시한다. 그런 후, 스캐너는 세팅을 판독하여 작업을 실행한다. 준비가 되면, 스캔모듈은 작업상태를 '준비'로 설정하고, 자신을 작업종속 리스트로부터 제거한다. 이제, 스캔모듈은 더 이상 작업과는 아무런 관계도 갖지 않으며, 스캔큐로부터의 통지를 기다리는 대기상태로 복귀한다. 준비상태로의 작업상태 변경은 스케쥴러에 통지되고, 스케쥴러는 스캔큐로부터 스캔작업을 제거한다. 제 2 동작은, 프린트 프로세스이다. 프린트큐에 의한 프린트 모듈로의 통지에 의해 프린트작업이 개시된다. 프린트작업은 스캔작업과 유사하게 실행된다. 현재 두 작업이 준비상태이므로, 스케쥴러는 시스템작업리스트로부터 스캔작업 및 프린트작업 뿐만 아니라 복사작업도 제거하여, 그 작업들의 종속성을 제거한다. 그 결과, 준비상태를 갖는 두 작업은 요청에 의해서만 참조된다.
분할 방법
도 5 를 참조하여 분할방법을 설명한다. 클라이언트 모듈이 클라이언트 작업을 수신한다. 그 클라이언트 작업이 시스템작업리스트에 올려진다. 스케쥴러는 그 클라이언트 작업을 시스템작업리스트로부터 분할기큐로 올린다. 단계 1 에서, 자신의 큐에 작업이 존재함을 통지받은 후, 분할기는 큐에서 작업을 가져온다. 단계 2 에서는, 문서모델로부터 소스상태 및 타겟상태를 추출한다. 각각의 상태는 속성값들의 시퀀스로서 나타낸다. 단계 3 에서, 소스상태 및 타겟상태를 비교하여, 상이한 값을 갖는 속성들을 식별한다. 단계 4 에서, 각각의 입력영역에 대해 하나 이상의 출력범위가 주어지고, 작업자는 입력영역을 주어진 출력범위로 변환할 수 있는 표로부터, 변환되어야 하는 속성들을 변환시킬 수 있는 작업자들을 식별한다. 표 1 은 그런 표의 일례이다. 단계 5 에서, 각각의 작업자에 대해 신규상태를 계산한다. 각각의 신규상태는 조사상태 큐에 저장된다. 단계 6 에서, 이 상태를 타겟상태와 비교한다. 두 상태가 동일하면 (예), 작업자들의 경로가 식별된다. 두 상태가 상이하면, 단계 3 에서 분할방법이 계속되고, 여기서 조사상태 큐로부터 가져온 상태와 타겟상태를 비교하여 상이한 속성들을 식별한다. 이 방법의 실행과정에서, 상태를 나타내는 노드 (node) 및 작업자를 나타내는 에지 (edge) 를 구비하고 시작노드는 소스상태를 나타내는 방향그래프가 형성된다. 노드가 타겟상태에 도달하는 순간, 경로가 발견된다. 조사상태를 저장하는 큐를 사용하는 경우, 선폭 (breadth first) 접근법을 사용한다. 다른 실시예에서는, 조사상태를 저장하는 스택을 사용할 수 있다. 이 경우에는, 선깊이 (depth first) 접근법을 사용한다.
특정 실시예에서는, 각각의 작업자가 가산 비용 속성을 갖는다. 분할방법의 실행과정에서 구해진 각각의 상태에 대하여, 누적 비용을 계산하여 해당 노드에 대해 저장한다. 이미 도달한 노드에 또 다른 경로를 경유하여 재도달한 경우, 누적 비용을 비교하여 가장 높은 누적비용에 해당하는 도착에지를 그래프에서 제거한다. 타겟노드에 도달하는 순간, 타겟노드에서 출발하여 그래프를 역추적함으로써 경로를 재구성할 수 있다.
이하, 표 1 및 표 2 를 참조하여 분할방법을 상세한 예를 들어 설명한다. 이 예는 10 부의 복사본을 만드는 복사작업을 고려한 예이다. 표 1 은 작업자 표를 나타내며, 이 표에서 속성에 대한 가능한 변환영역을 참조할 수 있고, 이 변환을 담당하는 작업자가 주어져 있다.
[표 1]
Figure 112007027153728-pat00009
삭제
표 2 에는, 소스상태 영역 및 타겟상태 영역이 주어져 있다. 속성 loc, N 및 dir 이 변환되어야 한다. 따라서, 이들 속성을 변환할 수 있는 작업자들을 표에서 선택한다. 그 결과, 스캐너 작업자가 그 식별된 속성들을 변환할 수 있음을 알 수 있다.
다음으로, 스캐너 작업자가 그 상태영역을 신규상태영역으로 변환하는 방법이 계산된다. 이는 도면에 나타나 있다. 이 상태영역을 타겟영역과 비교한다. 두 상태가 아직 서로 일치하지 않는다. 타겟상태의 속성과 상이한 속성들을 결정한다. 그리고, 표에서 이들 속성을 조작할 수 있는 작업자를 찾는다.
[표 2]
상태
Figure 112007027153728-pat00010
이들 속성을 변환할 수 있는 작업자는 프린터 작업자이다. 그래서, 그 경로의 다음에 프린터 작업자를 선택한다. 프린터 작업자의 변환으로 타겟상태에 도달한다. 따라서, 분할기에 의해 필요한 작업자들의 경로가 발견된다. 이들 작업자의 하위작업을 공식화하여 정보판의 시스템작업리스트에 올린다.
또한, 이 방법은, 이용가능한 소스상태가 하나 이상인 경우에도 적용된다. 예를 들면, 분리된 이미지파일에 있는 로고와 문서를 결합해야 하는 경우이다.
또한, 이 방법은, 하위작업들이 병렬로 처리되는 경우에도 적용된다. 이런 경우에, 경로는 단순한 하위작업들의 시퀀스가 아닌, 방향그래프 (digraph) 의 형태를 갖는다.
이상 설명한 바와 같이, 본 발명에 의하면, 용이하게 개조되고 확장되어 새로운 요구사항들에 대처할 수 있는 융통성 있는 시스템, 및 변환유닛들 간의 최적의 로드 분산을 달성할 수 있다.

Claims (4)

  1. 문서들에 관한 작업을 수행하는 시스템으로서,
    상기 작업을 수행하기 위해 소스문서로부터 타겟문서를 협동하여 생성하는 변환유닛들을 구비하며,
    문서는, 콤포넌트들의 구조로서의 문서모델에 따라 저장되고;
    콤포넌트에는 콤포넌트 상태가 배정되고, 문서에는 문서 상태가 배정되고, 상기 문서 상태는 콤포넌트 상태들을 포함하고;
    상기 변환유닛들은 콤포넌트를 제 1 상태로부터 제 2 상태로 변환하는 기능을 갖는 것을 특징으로 하며,
    상기 문서가 소스문서 상태로부터 타겟문서 상태로 변환되도록 문서의 콤포넌트들을 변환할 수 있는 변환유닛들의 방향그래프를 구성하는 수단; 및
    상기 변환유닛들의 방향그래프에 따라 변환유닛들에 의한 콤포넌트들의 프로세싱을 관리하는 수단을 더 구비하는 것을 특징으로 하는 시스템.
  2. 제 1 항에 있어서,
    상기 변환유닛은 한 세트의 입력상태 및 한 세트의 출력상태에 의해 특징지워지며,
    에지는 변환유닛을 나타내며 노드는 콤포넌트의 상태를 나타내는 변환유닛들의 방향그래프를 구성하는 상기 수단은, 각 노드에 대한 상태 세트들을 처리하는 것을 특징으로 하는 시스템.
  3. 제 1 항에 있어서,
    상기 변환유닛은 비용속성을 가지며,
    상기 방향그래프를 구성하는 상기 수단은, 상기 방향그래프 내에 포함된 변환유닛들의 비용속성들에 기초하여 방향그래프의 총비용을 계산하는 수단, 및 최소의 총비용을 갖는 방향그래프를 반환하는 수단을 갖는 것을 특징으로 하는 시스템.
  4. 제 1 항에 있어서,
    상기 시스템은 문서, 및 상기 문서 상에서 수행될 작업을 입력하는 클라이언트들을 구비하며,
    상기 방향그래프를 구성하는 상기 수단은,
    상기 소스 문서를 구성하는 콤포넌트들의 상태를 결정하는 단계;
    상기 타겟 문서를 구성하는 콤포넌트들의 상태를 결정하는 단계;
    변환되어야 하는 속성들을 식별하는 단계;
    상기 식별된 속성들 중 하나 이상의 속성을 변환하는 변환유닛들을 식별하는 단계;
    상기 얻어지는 상태들의 세트를 결정하는 단계;
    상기 얻어지는 상태들의 세트와 상기 타겟 문서를 구성하는 콤포넌트들의 상태와 비교하는 단계;
    비교가 충족될 때까지, 변환되어야 하는 속성들을 식별하는 단계, 변환유닛들을 식별하는 단계 및 비교하는 단계를 반복하는 단계; 및
    변환유닛들의 상기 얻어지는 방향그래프를 반환하는 단계를 수행하는 것을 특징으로 하는 시스템.
KR1020020021426A 2001-05-11 2002-04-19 문서에 관한 작업을 수행하는 시스템 KR100885147B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01201731 2001-05-11
EP01201731.5 2001-05-11

Publications (2)

Publication Number Publication Date
KR20020086227A KR20020086227A (ko) 2002-11-18
KR100885147B1 true KR100885147B1 (ko) 2009-02-23

Family

ID=8180285

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020021426A KR100885147B1 (ko) 2001-05-11 2002-04-19 문서에 관한 작업을 수행하는 시스템

Country Status (4)

Country Link
US (1) US7154624B2 (ko)
JP (1) JP2003036148A (ko)
KR (1) KR100885147B1 (ko)
TW (1) TW533370B (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050195425A1 (en) * 2004-01-24 2005-09-08 Bridges Amanda K. Email confirmation for specified task at print device
CN101197044B (zh) * 2006-12-06 2011-02-02 鸿富锦精密工业(深圳)有限公司 图像合成系统及方法
JP5359693B2 (ja) 2009-08-28 2013-12-04 コニカミノルタ株式会社 画像形成装置および画像形成方法
US9507546B2 (en) * 2015-02-26 2016-11-29 Konica Minolta Laboratory U.S.A., Inc. Method for producing packages of printed materials by generating and executing a job set containing multiple linked sub-jobs

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5878196A (en) * 1996-03-27 1999-03-02 Fuji Xerox Co., Ltd. Printer control system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5995721A (en) 1996-10-18 1999-11-30 Xerox Corporation Distributed printing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5878196A (en) * 1996-03-27 1999-03-02 Fuji Xerox Co., Ltd. Printer control system

Also Published As

Publication number Publication date
KR20020086227A (ko) 2002-11-18
JP2003036148A (ja) 2003-02-07
US20030058468A1 (en) 2003-03-27
TW533370B (en) 2003-05-21
US7154624B2 (en) 2006-12-26

Similar Documents

Publication Publication Date Title
JP3932875B2 (ja) 印刷制御方法および印刷システム
US5170340A (en) System state controller for electronic image processing systems
EP0478338B1 (en) Control process for electronic image processing systems
US5243518A (en) Document services architecture
CN103279310A (zh) 信息处理装置及信息处理方法
US20070112441A1 (en) Modular layer for abstracting peripheral hardware characteristics
KR100675371B1 (ko) 화상형성장치 및 화상형성장치의 작업처리순서 제어방법
CN101459750A (zh) 信息处理设备、信息处理方法以及存储介质
JP6897136B2 (ja) 情報処理装置及びプログラム
US7107283B2 (en) Relational job queue
JPH09226212A (ja) 電子的画像処理装置におけるコントローラの動作方法
JP2010219788A (ja) 情報処理装置及びその制御方法
US7502129B2 (en) Image transmission apparatus and control method
KR100885147B1 (ko) 문서에 관한 작업을 수행하는 시스템
JP2018018260A (ja) 情報処理装置、画像形成装置及びプログラム
JP2006215853A (ja) ワークフロー支援システム
CN104572596A (zh) 光栅化处理方法、处理装置和处理系统
CN104796570B (zh) 图像形成系统中的通信控制方法、以及图像形成系统
EP1256872A1 (en) System for carrying out jobs on documents
JP2016149062A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2012126024A (ja) 印刷ジョブ処理装置、印刷ジョブ処理装置用プログラム、および印刷ジョブ処理方法
JP2006121577A (ja) 画像形成装置及び画像形成システム
JP2005149154A (ja) 印刷制御装置、印刷装置、印刷制御方法、印刷制御プログラム、および印刷制御プログラムを記録したコンピュータ読み取り可能な記録媒体
JPH03122715A (ja) プリンタ選択装置
JP2003274110A (ja) 画像処理システム、画像処理方法および画像処理プログラム

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: 20120213

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee