KR102412088B1 - 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치 - Google Patents

상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치 Download PDF

Info

Publication number
KR102412088B1
KR102412088B1 KR1020210151950A KR20210151950A KR102412088B1 KR 102412088 B1 KR102412088 B1 KR 102412088B1 KR 1020210151950 A KR1020210151950 A KR 1020210151950A KR 20210151950 A KR20210151950 A KR 20210151950A KR 102412088 B1 KR102412088 B1 KR 102412088B1
Authority
KR
South Korea
Prior art keywords
progress
job
status
change
registration
Prior art date
Application number
KR1020210151950A
Other languages
English (en)
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 (주) 바우디움
Priority to KR1020210151950A priority Critical patent/KR102412088B1/ko
Application granted granted Critical
Publication of KR102412088B1 publication Critical patent/KR102412088B1/ko
Priority to PCT/KR2022/009134 priority patent/WO2023080380A1/ko

Links

Images

Classifications

    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Abstract

본 개시서에는 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치가 개시된다. 구체적으로, 본 개시서의 일 실시 예에 의하면, 작업의 등록을 요청하는 신호인 작업 등록 요청에 응하여, 컴퓨팅 장치가, 상기 작업의 명칭 및 상기 작업의 진행 상황을 포함하는 정보인 작업 정보를 생성하고, 표적 진행 상황으로 상기 작업의 진행 상황의 변경을 요청하는 신호인 작업 진행 상황 변경 요청이 획득되면, 요청된 상기 진행 상황의 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것인지 여부를 상태 기계로써 판정하며, 상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되면, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신한다.

Description

상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치{METHOD FOR MANAGING THE PROGRESS OF TASKS BY STATE MACHINE, AND APPARATUS USING THE SAME}
본 개시서에는 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치가 개시된다. 구체적으로, 본 개시서의 일 실시 예에 의하면, 작업의 등록을 요청하는 신호인 작업 등록 요청에 응하여, 컴퓨팅 장치가, 상기 작업의 명칭 및 상기 작업의 진행 상황을 포함하는 정보인 작업 정보를 생성하고, 표적 진행 상황으로 상기 작업의 진행 상황의 변경을 요청하는 신호인 작업 진행 상황 변경 요청이 획득되면, 요청된 상기 진행 상황의 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것인지 여부를 상태 기계로써 판정하며, 상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되면, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신한다.
일정 관리 또는 작업 관리에 관한 소프트웨어의 발달에 힘입어, 일정 또는 개별 작업의 진행 상황을 체계적으로 관리하는 기술들도 발전하고 있다.
그러나 현재까지는 사용자가 미리 입력한 작업마다 사용자 인터페이스 요소, 특히, 체크박스(checkbox)를 표시하고, 그 체크의 유무에 따라 해당 작업의 등록(입력) 또는 완료만을 나타내는 기술적 사상은 광범위하게 활용되고 있다.
그러나 이는, 작업의 등록과 완료 사이의 특정 시점에서 그 작업을 수행하기를 바라는 '예약' 상태, 해당 작업이 현재 수행 중인 '진행 중' 상태, 해당 작업을 철회한 '취소' 상태, 사정 변경으로 '연기'한 상태 등 여러 상태를 간편하게 나타내지 못하는 한계점이 있었다.
US 2016-0077911 A1
따라서 본 개시서에서는 전술한 종래 기술의 한계를 넘어, 작업의 등록과 완료 사이의 작업의 다양한 상태들의 설정과 표시가 간편하게 가능하면서도 상태 기계를 적용하여 상태 사이에서 규칙에 따른 전이(transition)를 가능하게 하는 작업 진행 상황 관리 방법 및 이를 이용한 장치를 제공하는 것을 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한 본 발명의 특징적인 구성은 하기와 같다.
본 개시서의 일 태양에 따르면, 상태 기계에 의하여 작업(task)의 진행 상황(progression)을 관리하는 방법이 제공되는바, 그 방법은, 작업의 등록을 요청하는 신호인 작업 등록 요청에 응하여, 컴퓨팅 장치가, 상기 작업의 명칭 및 상기 작업의 진행 상황을 포함하는 정보인 작업 정보를 생성하는 단계로서, 상기 진행 상황은, 진행 상황 세트로부터 선택되되 상기 진행 상황 세트는 등록(registered) 및 완료(completed)를 포함하고, 예약(reserved), 진행 중(in progress), 취소(cancelled) 및 연기(postponed) 중 적어도 하나를 더 포함하며, 상기 작업 정보의 생성 시에는 등록으로 초기화되는, 작업 정보 생성 단계; 표적 진행 상황으로 상기 작업의 진행 상황의 변경을 요청하는 신호인 작업 진행 상황 변경 요청이 획득되면, 상기 컴퓨팅 장치가, 요청된 상기 진행 상황의 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것인지 여부를 상기 상태 기계로써 판정하는 작업 진행 상황 변경 검증 단계; 및 상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되면, 상기 컴퓨팅 장치가, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신하는 작업 진행 상황 갱신 단계를 포함한다.
바람직하게, 상기 상태 기계는, 기준 진행 상황과 상기 기준 진행 상황으로부터의 변경이 허용되는 다음 진행 상황의 쌍들의 집합인, {(등록, 완료), (등록, 예약), (등록, 진행 중), (등록, 취소), (예약, 진행 중), (예약, 취소), (예약, 연기), (진행 중, 완료), (진행 중, 취소), (진행 중, 연기), (취소, 등록), (연기, 등록)}로 정의되는 유한 상태 기계이다.
유리하게, 상기 작업 정보 생성 단계는, 소정의 제1 사용자 인터페이스를 제공함으로써 상기 컴퓨팅 장치 또는 상기 컴퓨팅 장치에 연동되는 타 장치인 단말로부터 상기 작업의 명칭을 포함하는 상기 작업 등록 요청을 획득하는 단계를 더 포함한다.
바람직하게, 상기 작업 진행 상황 변경 검증 단계는, 소정의 제2 사용자 인터페이스를 제공함으로써 상기 컴퓨팅 장치 또는 상기 컴퓨팅 장치에 연동되는 타 장치인 단말로부터 상기 작업의 현재의 진행 상황에서 상기 표적 진행 상황으로의 상기 작업 진행 상황 변경 요청을 획득하는 단계를 더 포함한다.
더 바람직하게, 상기 제2 사용자 인터페이스 상에 상기 작업의 현재 진행 상황으로부터의 변경이 허용되는 하나 이상의 후보 진행 상황들을 제공함으로써, 제공된 상기 후보 진행 상황들 중에서 상기 표적 진행 상황이 선택되도록 지원한다.
더욱 더 바람직하게, 상기 제2 사용자 인터페이스에는 상기 작업의 진행 상황의 명칭 및 상기 진행 상황에 대응하는 이미지 표시가 제공된다.
더더욱 바람직하게, 상기 제2 사용자 인터페이스에 상기 진행 상황에 대응하는 설명 텍스트가 제공되거나, 상기 제2 사용자 인터페이스에 대한 소정의 조작에 대한 응답으로서 상기 제2 사용자 인터페이스 상에 상기 진행 상황에 대응하는 상기 설명 텍스트가 표시된다.
유리하게, 상기 방법은, 상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되지 않으면, 소정의 제3 사용자 인터페이스를 제공함으로써 상기 컴퓨팅 장치 또는 상기 컴퓨팅 장치에 연동되는 타 장치인 단말로부터 상기 표적 진행 상황으로의 변경을 강제할 것인지 여부를 획득하고, 상기 변경이 강제되면, 상기 컴퓨팅 장치가, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신하는 작업 진행 상황 강제 갱신 단계를 더 포함한다.
본 발명의 다른 태양에 따르면, 본 발명에 따른 방법들을 수행하도록 구현된 명령어들(instructions)을 포함하는 컴퓨터 프로그램도 제공된다. 예를 들어, 그러한 컴퓨터 프로그램은 기계 판독 가능한 비일시적 기록 매체에 저장될 수 있다.
본 발명의 또 다른 태양에 따르면, 상태 기계에 의하여 작업의 진행 상황을 관리하는 컴퓨팅 장치가 제공되는바, 그 컴퓨팅 장치는, 작업의 등록을 요청하는 신호인 작업 등록 요청을 획득하는 통신부; 및 상기 작업 등록 요청에 응하여, 상기 작업의 명칭 및 상기 작업의 진행 상황을 포함하는 정보인 작업 정보를 생성하는 작업 정보 생성 프로세스, 상기 통신부를 통하여 표적 진행 상황으로 상기 작업의 진행 상황의 변경을 요청하는 신호인 작업 진행 상황 변경 요청이 획득되면, 요청된 상기 진행 상황의 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것인지 여부를 상기 상태 기계로써 판정하는 작업 진행 상황 변경 검증 프로세스, 및 상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되면, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신하는 작업 진행 상황 갱신 프로세스를 수행하는 프로세서를 포함한다.
본 발명에 의하면, 작업의 등록과 완료 사이의 작업의 다양한 상태들의 설정과 표시가 제공되어 사용자의 편의성이 향상되는 효과가 있다.
본 발명의 실시 예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시 예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 사람(이하 "통상의 기술자"라 함)은 별개의 발명에 이를 정도의 노력 없이 이 도면들에 기초하여 다른 도면들을 얻을 수 있다.
도 1은 본 개시서에 따라 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법(이하 "작업 진행 상황 관리 방법"이라 함)을 수행하는 컴퓨팅 장치의 예시적 구성을 개략적으로 도시한 개념도이다.
도 2는 본 개시서에 따른 작업 진행 상황 관리 방법을 수행하는 컴퓨팅 장치의 하드웨어 또는 소프트웨어 구성요소를 도시한 예시적 블록도이다.
도 3은 본 개시서에 따른 작업 진행 상황 관리 방법의 일 실시 예를 도시한 흐름도이다.
도 4는 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에 따라 제공된 제1 사용자 인터페이스를 예시적으로 나타낸 도면이다.
도 5는 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에 따라 제공된 제2 사용자 인터페이스를 예시적으로 나타낸 도면이다.
도 6은 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에서 작업의 진행 상황에 대응하는 이미지 표시의 예시를 나타낸 도면이다.
도 7은 본 개시서에 따른 작업 진행 상황 관리 방법에 이용되는 상태 기계의 예시적 블록도이다.
도 8은 도 5에 예시된 제2 사용자 인터페이스에서 표시된, 진행 상황에 대응하는 설명 텍스트를 예시적으로 나타낸 도면이다.
도 9는 도 5에 예시된 제2 사용자 인터페이스에서 작업의 진행 상황을 변경할 수 있도록 제공되는 대안을 예시적으로 나타낸 도면이다.
도 10은 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에 따라 제공된 제3 사용자 인터페이스를 예시적으로 나타낸 도면이다.
도 11은 본 개시서의 작업 진행 상황 관리 방법에서 이용되는 진행 상황 세트를 사용자화하기 위하여 제공되는 제4 사용자 인터페이스를 예시적으로 나타낸 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명의 목적들, 기술적 해법들 및 장점들을 분명하게 하기 위하여 본 발명이 실시될 수 있는 특정 실시 예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시 예는 통상의 기술자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
실시 예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시 예들은 특정한 개시형태로 한정되는 것이 아니며, 본 개시서의 범위는 기술적 사상에 포함되는 변경, 균등물 또는 대체물을 포함한다.
"제1" 또는 "제2" 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 하는바, 어떠한 순서도 시사하고 있지 않기 때문이다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 개시서에서, "포함하다" 또는 "가지다" 등의 용어는 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 개시서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
더욱이 본 발명은 본 개시서에 표시된 실시 예들의 모든 가능한 조합들을 망라한다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시 예에 관련하여 본 발명의 사상 및 범위를 벗어나지 않으면서 다른 실시 예로 구현될 수 있다. 또한, 각각의 개시된 실시 예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 사상 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
본 개시서에서 달리 표시되거나 분명히 문맥에 모순되지 않는 한, 단수로 지칭된 항목은, 그 문맥에서 달리 요구되지 않는 한, 복수의 것을 아우른다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
이하, 통상의 기술자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시 예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 개시서에 따른 작업 진행 상황 관리 방법을 수행하는 컴퓨팅 장치의 예시적 구성을 개략적으로 도시한 개념도이다.
도 1을 참조하면, 본 개시서의 일 실시 예에 따른 컴퓨팅 장치(100)는, 통신부(110) 및 프로세서(120)를 포함하며, 상기 통신부(110)를 통하여 외부 컴퓨팅 장치(미도시)와 직간접적으로 통신할 수 있다.
구체적으로, 상기 컴퓨팅 장치(100)는, 전형적인 컴퓨터 하드웨어(예컨대, 컴퓨터, 프로세서, 메모리, 스토리지(storage), 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS; network-attached storage) 및 스토리지 영역 네트워크(SAN; storage area network)와 같은 전자 정보 스토리지 시스템)와 컴퓨터 소프트웨어(즉, 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 명령어들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다. 상기 스토리지는 하드 디스크, USB(Universal Serial Bus) 메모리와 같은 기억 장치뿐만 아니라 클라우드 서버와 같은 네트워크 연결 기반의 저장 장치의 형태를 포함할 수 있다.
이와 같은 컴퓨팅 장치의 통신부(110)는 연동되는 타 컴퓨팅 장치, 예컨대 전용의 저장소, 예컨대, 데이터베이스 서버 등과의 사이에서 요청과 응답을 송수신할 수 있는바, 일 예시로서 그러한 요청과 응답은 동일한 TCP(Transmission Control Protocol) 세션(session)에 의하여 이루어질 수 있지만, 이에 한정되지는 않는 바, 예컨대 UDP(User Datagram Protocol) 데이터그램(datagram)으로서 송수신될 수도 있을 것이다.
구체적으로, 통신부(110)는 통신 인터페이스를 포함하는 통신 모듈의 형태로 구현될 수 있다. 이를테면, 통신 인터페이스는 WLAN(Wireless LAN), WiFi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMax(World interoperability for Microwave access), HSDPA(High Speed Downlink Packet Access) 등의 무선 인터넷 인터페이스와 블루투스(Bluetooth™), RFID(Radio Frequency IDentification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra-WideBand), ZigBee, NFC(Near Field Communication) 등의 근거리 통신 인터페이스를 포함할 수 있다. 뿐만 아니라, 통신 인터페이스는 프로세서가 외부와 통신을 수행할 수 있는 모든 인터페이스(예를 들어, 버스, 유무선 인터페이스)를 나타낼 수 있다.
예를 들어, 통신부(110)는 이와 같이 적합한 통신 인터페이스를 통해 타 컴퓨팅 장치로부터 데이터를 송수신할 수 있다. 덧붙여, 넓은 의미에서 상기 통신부(110)는 명령어 또는 지시 등을 전달받기 위한 키보드, 마우스, 기타 외부 입력 장치, 인쇄 장치, 디스플레이, 기타 외부 출력 장치를 포함하거나 이들과 연동될 수 있다. 컴퓨팅 장치, 예컨대 서버, 단말 PC, 또는 휴대 단말의 사용자에게 적절한 사용자 인터페이스를 표시하여 제공함으로써 사용자와의 상호작용을 가능하게 하기 위하여, 컴퓨팅 장치(100)는 디스플레이부를 내장하거나 상기 통신부(110)를 통하여 외부의 디스플레이 장치와 연동될 수 있음이 알려져 있다. 예컨대, 그러한 디스플레이부 또는 디스플레이 장치는 터치 입력이 가능한 터치스크린일 수 있다.
또한, 컴퓨팅 장치의 프로세서(120)는 MPU(micro processing unit), CPU(central processing unit), GPU(graphics processing unit), NPU(neural processing unit) 또는 TPU(tensor processing unit), 캐시 메모리(cache memory), 데이터 버스(data bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.
이제 도 2 내지 도 11을 참조하여 본 개시서에 따른 작업 진행 상황 관리 방법을 상세히 후술하기로 한다.
도 2는 본 개시서에 따른 작업 진행 상황 관리 방법을 수행하는 컴퓨팅 장치(200)의 하드웨어 또는 소프트웨어 구성요소를 도시한 예시적 블록도이고, 도 3은 본 개시서에 따른 작업 진행 상황 관리 방법의 일 실시 예를 도시한 흐름도이다.
도 2 및 도 3을 참조하면, 우선, 본 개시서의 작업 진행 상황 관리 방법은, 작업을 등록하고자 하는 사용자의 컴퓨팅 장치(200) 또는 컴퓨팅 장치(200)에 연동하는 타 컴퓨팅 장치인 단말(300)로부터 획득된, 상기 작업의 등록을 요청하는 신호인 작업 등록 요청에 응하여, 컴퓨팅 장치(200)에 의하여 구현되는 작업 정보 생성 모듈(210)이, 상기 작업의 명칭 및 상기 작업의 진행 상황을 포함하는 정보인 작업 정보를 생성함으로써 소정의 저장소(240)로 하여금 그 생성된 작업 정보를 보유하게 하는 단계(작업 정보 생성 단계; S100)를 포함한다.
상기 진행 상황은, 진행 상황 세트로부터 선택되되 상기 진행 상황 세트는 등록(registered) 및 완료(completed)를 포함하고, 예약(reserved), 진행 중(in progress), 취소(cancelled) 및 연기(postponed) 중 적어도 하나를 더 포함하며, 상기 작업 정보의 생성 시 단계(S100)에서는 등록으로 초기화된다. 통상의 기술자는 '등록', '완료'와 같은 개별 진행 상황의 명칭은 그 개별 진행 상황의 역할과 관련하여 적절하게 지정된 것에 불과하며, 구체적으로 다른 명칭으로 대체될 수도 있는 임의적이라는 점을 이해할 수 있을 것이다.
도 4는 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에 따라 제공된 제1 사용자 인터페이스를 예시적으로 나타낸 도면이다.
작업 정보 생성 단계(S100)에서는 소정의 제1 사용자 인터페이스를 제공함으로써 컴퓨팅 장치(200) 또는 단말(300)로부터 상기 작업의 명칭을 포함하는 상기 작업 등록 요청을 획득할 수 있는바, 그 제1 사용자 인터페이스는 도 4에 예시된 바와 같다.
도 4를 참조하면, 작업의 명칭을 입력할 수 있는 텍스트 필드(text field; 410), 그 입력을 완료하고 작업 등록 요청을 촉발(trigger)할 수 있게 하는 완료 버튼(420), 상기 입력을 취소할 수 있게 하는 취소 버튼(430)이 제공되어 있다.
다시 도 2 및 도 3을 참조하면, 작업 정보 생성 단계(S100) 다음에, 본 개시서의 작업 진행 상황 관리 방법은, 상기 작업의 진행 상황을 표적 진행 상황으로 변경하는 것을 요청하는 신호인 작업 진행 상황 변경 요청이 컴퓨팅 장치(100) 또는 단말(300)로부터 획득(S210)되면, 컴퓨팅 장치(100)에 의하여 구현되는 진행 상황 변경 검증 모듈(220)이, 요청된 상기 진행 상황의 현재 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것인지 여부를 상기 상태 기계로써 판정(S220)하는 단계(작업 진행 상황 변경 검증 단계; S200)를 더 포함한다.
작업 진행 상황 변경 검증 단계(S200)에는 소정의 제2 사용자 인터페이스를 제공함으로써 컴퓨팅 장치(200) 또는 단말(300)로부터 상기 작업의 현재의 진행 상황에서 상기 표적 진행 상황으로의 상기 작업 진행 상황 변경 요청을 획득하는 단계(S210)가 더 포함될 수 있다.
도 5는 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에 따라 제공된 제2 사용자 인터페이스의 일련의 모습들(500a 내지 500d)을 예시적으로 나타낸 도면이며, 도 6은 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에서 작업의 진행 상황에 대응하는 이미지 표시(610 내지 660)의 예시를 나타낸 도면이고, 도 7은 본 개시서에 따른 작업 진행 상황 관리 방법에 이용되는 상태 기계의 예시적 블록도이다.
도 5를 참조하면, 단계(S210)에서 제2 사용자 인터페이스(500a)에는 작업의 진행 상황의 명칭(510) 및 그 작업의 진행 상황에 대응하는 이미지 표시(520a)가 제공될 수 있다. 도 6에는, '등록'에 대응하는 이미지 표시(610), '완료'에 대응하는 이미지 표시(620), '예약'에 대응하는 이미지 표시(630), '진행 중'에 대응하는 이미지 표시(640), '취소'에 대응하는 이미지 표시(650), 및 '연기'에 대응하는 이미지 표시(660)가 예시되어 있다.
단계(S210)에서 제2 사용자 인터페이스(500a 내지 500d) 상에 상기 작업의 현재 진행 상황(520a)으로부터의 변경이 허용되는 하나 이상의 후보 진행 상황들(520b 내지 520d)을 제공함으로써, 제공된 상기 후보 진행 상황들(520b 내지 520d) 중에서 상기 표적 진행 상황이 선택되도록 지원할 수 있다. 예를 들어, 사용자는 현재 진행 상황의 이미지 표시(520a)가 위치한 영역에 대해 반복적으로 클릭(click) 또는 탭(tab)의 조작을 가함으로써 현재의 제2 사용자 인터페이스에 표시되는 상기 표적 진행 상황(520b 내지 520d)을 선택할 수 있고, 그 표적 진행 상황의 선택을 완료하여 작업 진행 상황 변경 요청을 촉발하기 위하여 '입력 완료' 버튼(530)을 조작할 수 있다.
더 구체적으로 설명하자면, 참조부호 520a에 대한 조작이 있으면 참조부호 520b가 표시되고, 참조부호 520b에 대한 조작이 있으면 참조부호 520c가 표시되며, 참조부호 520c에 대한 조작이 있으면 참조부호 520d가 표시되고, 참조부호 520d에 대한 조작이 있으면 다시 참조부호 520a가 표시되는 식이다.
물론, 사용자는 작업 진행 상황의 변경을 철회하기 위하여 '취소' 버튼(550)을 조작할 수도 있다.
작업의 현재 진행 상황(520a)으로부터 변경이 허용되는 후보 진행 상황들(520b 내지 520d)은 상태 기계에 의하여 판정될 수 있다. 구체적으로, 상기 상태 기계는, 기준 진행 상황과 상기 기준 진행 상황으로부터의 변경이 허용되는 다음 진행 상황의 쌍들의 집합인, {(등록, 완료), (등록, 예약), (등록, 진행 중), (등록, 취소), (예약, 진행 중), (예약, 취소), (예약, 연기), (진행 중, 완료), (진행 중, 취소), (진행 중, 연기), (취소, 등록), (연기, 등록)}로 정의되는 유한 상태 기계일 수 있는바, 이는 도 6의 유향 그래프(directed graph)로 도시된 바와 같다.
이 예시적인 상태 기계에 따르면, 어느 작업의 현재의 진행 상황이 '취소'인 때에 '연기'로 변경하는 것은 허용되지 않는다. 한편, 도 5에 예시된 '제초 작업하기'라는 명칭(510)을 가진 작업과 같이 현재 진행 상황이 '진행 중'일 때에는, '완료', '연기', '취소' 중의 하나로 변경되는 것이 허용된다.
한편, 상기 진행 상황에 관한 이미지 표시 외에, 상기 진행 상황에 대응하는 설명 텍스트가 제공될 수 있다. 예를 들어, 상기 제2 사용자 인터페이스에 대한 소정의 조작에 대한 응답으로서 상기 제2 사용자 인터페이스 상에 상기 진행 상황에 대응하는 설명 텍스트가 표시될 수 있다.
도 8은 도 5에 예시된 제2 사용자 인터페이스에서 표시된, 진행 상황에 대응하는 설명 텍스트를 예시적으로 나타낸 도면이다.
도 8을 참조하면, 예컨대, '진행 중'인 진행 상황에 관한 이미지 표시(820)에 대한 소정의 조작, 예를 들어, 일정 시간 동안 마우스 포인터 또는 손가락 터치의 머무름(hovering), 마우스 오른쪽 클릭 등과 같은 다양한 조작에 응답으로서 그 진행 상황에 대응하는 설명 텍스트인 '등록된 사항 중 진행 중인 사항은 이 표시로 변경하세요.'를 표시할 수 있는바, 이는 사용자로 하여금 이미지 표시(820)에 해당하는 진행 상황의 이해를 돕는다. 이 외에도 통상의 기술자는 사용자의 조작에 응하여 특정 진행 상황의 명칭, 그 진행 상황에 관한 이미지 표시, 및 설명 텍스트를 제공하는 다양한 변형례를 상정할 수 있을 것이다.
도 9는 도 5에 예시된 제2 사용자 인터페이스에서 작업의 진행 상황을 변경할 수 있도록 제공되는 대안을 예시적으로 나타낸 도면이며, 도 10은 본 개시서의 작업 진행 상황 관리 방법의 일 실시 예에 따라 제공된 제3 사용자 인터페이스를 예시적으로 나타낸 도면이다.
앞서 도 5에 예시된 제2 사용자 인터페이스 상에서 '사용자 지정' 버튼(430)을 조작하면, 이에 응하여 컴퓨팅 장치(200) 또는 단말(300)은 도 9에 예시된 바와 같이 진행 상황 세트에 속한 모든 진행 상황의 항목들(970)을 열거할 수 있는바, 현재의 진행 상황(920)으로부터의 변경을 위한 것이므로 열거되는 진행 상황의 항목들에는 현재의 진행 상황(920)이 제외될 수 있다. 사용자는 제2 사용자 인터페이스 상의 진행 상황의 항목들(970) 중에서 임의의 것을 고르는 조작(예컨대, 클릭 또는 탭)을 행할 수 있고, 이에 따라 촉발되는 작업 진행 상황 변경 요청에 대하여 그 변경이 허용되는지 여부가 상태 기계에 의하여 판정(S220)된다.
다시 도 2 및 도 3을 참조하면, 단계(S220)에서 상기 작업의 상기 현재 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것으로 판정되면, 컴퓨팅 장치(100)에 의하여 구현되는 작업 진행 상황 갱신 모듈(230)은, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신하여 저장소(240)로 하여금 그 갱신된 진행 상황을 저장하게 하는 작업 진행 상황 갱신 단계(S300)를 수행한다.
반대로, 단계(S220)에서 상기 작업의 상기 현재 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되지 않은 것으로 판정되면, 도 10에 예시된 바와 같이, 소정의 제3 사용자 인터페이스(1000)를 제공함으로써 컴퓨팅 장치(200) 또는 단말(300)로부터 상기 표적 진행 상황으로의 변경을 강제할 것인지 여부를 획득하고, 상기 변경이 강제(S250)되면, 작업 진행 상황 갱신 모듈(230)은, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 강제로 갱신한다. 제3 사용자 인터페이스(1000)는 사용자를 환기시키기 위하여 현재 진행 상황에 해당하는 이미지 표시(1020) 및 표적 진행 상황에 해당하는 이미지 표시(1080)를 보일 수 있으며, '예' 버튼 및 '아니요' 버튼을 제공함으로써 상기 표적 진행 상황으로의 변경을 강제할 것인지 여부를 사용자로부터 입력받을 수 있다.
본 개시서를 읽은 통상의 기술자는 진행 상황 세트에 속한 진행 상황들 각각의 명칭을 등록(registered), 완료(completed), 예약(reserved), 진행 중(in progress), 취소(cancelled), 연기(postponed)가 아닌 다른 명칭으로 각각을 지칭하는 여러 변형례들을 상정할 수 있을 것이다. 그러한 변형례 중 일부는 진행 상황들의 명칭들, 진행 상황들에 대응하는 이미지들, 진행 상황들에 대한 설명 텍스트들의 변경을 가능하게 하는 사용자화(customize)를 가능하게 하는 소정의 사용자 인터페이스 요소들을 제공하는 단계를 포함할 수도 있을 것인바, 통상의 기술자는 전술한 내용에 기초하여 이를 쉽게 구현할 수 있을 것이다. 즉, 진행 상황 세트에 속한 개별 진행 상황의 명칭, 이미지, 설명 텍스트는 변경될 수 있는 것이다.
또한, 본 개시서의 일 변형례에서 '등록', '완료'를 제외한 나머지 진행 상황들은 필수적이지 않은바, 그 나머지 진행 상황들 각각을 사용할 것인지 사용하지 않을 것인지, 그 사용 여부를 변경할 수도 있다. 요컨대, 상기 진행 상황 세트도 사용자화될 수 있고, 통상의 기술자는 그러한 사용자화를 가능하게 하는 소정의 인터페이스 요소들을 제공하는 단계를 쉽게 구현할 수 있을 것인바, 도 11에 예시된 바와 같다.
이상에서 전술한 바와 같은 본 개시서의 작업 진행 상황 관리 방법에 있어서 여러 단계들 간에는 논리적으로 필연적이지 않는 한 그 선후가 뒤바뀔 수 있음이 통상의 기술자에게 이해될 것이다. 즉, 위 설명에도 불구하고 통상의 기술자는 논리적 당위성이 개입하는 경우가 아닌 이상 전술된 모든 단계들이 그 단계를 지칭하기 위해 나타낸 숫자의 대소에 관계없이 서로 바뀔 수 있음을 이해할 것이다.
또한, 작업의 생성, 작업의 진행 상황 등의 갱신 등은 1회 수행될 수도 있으나 계속적으로 사용자의 조작에 의하여 촉발됨으로써 간헐적으로 또는 반복적으로 수행될 수도 있다.
본 발명에 의하면, 작업의 등록과 완료 사이의 작업의 다양한 상태들의 설정과 표시가 제공되어 사용자의 편의성이 향상되는 효과가 있다.
이상, 본 개시서의 다양한 실시 예들에 관한 설명에 기초하여 해당 기술분야의 통상의 기술자는, 본 발명의 방법 및/또는 프로세스들, 그리고 그 단계들이 하드웨어, 소프트웨어 또는 특정 용례에 적합한 하드웨어 및 소프트웨어의 임의의 조합으로 실현될 수 있다는 점을 명확하게 이해할 수 있다.
또한, 본 개시서를 읽은 오늘날의 통상의 기술자는 컴퓨팅 장치, 단말을 통하여 제공될 수 있는 다양한 사용자 인터페이스에 익숙한바, 본 개시서에서 설명된 방법들을 이루는 개별 단계들에서 언급된 사용자 인터페이스 구성에 관한 상세한 설명의 유무에도 불구하고 통상의 기술자는 본 개시서의 방법에서 필요한 사용자의 여러 조작을 가능하게 하는 다양한 사용자 인터페이스를 쉽게 상정할 수 있을 것이다.
상기 하드웨어는 범용 컴퓨터 및/또는 전용 컴퓨팅 장치 또는 특정 컴퓨팅 장치 또는 특정 컴퓨팅 장치의 특별한 모습 또는 구성요소를 포함할 수 있다. 상기 프로세스들은 내부 및/또는 외부 메모리를 가지는, 하나 이상의 프로세서, 예컨대, 마이크로프로세서, 컨트롤러, 예컨대, 마이크로컨트롤러, 임베디드 마이크로컨트롤러, 마이크로컴퓨터, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 예컨대, 프로그래머블 디지털 신호 프로세서 또는 기타 프로그래머블 장치에 의하여 실현될 수 있다. 게다가, 혹은 대안으로서, 상기 프로세스들은 주문형 집적회로(application specific integrated circuit; ASIC), 프로그래머블 게이트 어레이(programmable gate array), 예컨대, FPGA(field programmable gate array), PLU(programmable logic unit) 혹은 프로그래머블 어레이 로직(Programmable Array Logic; PAL) 또는 기타 명령어(instruction)를 실행하고 응답할 수 있는 임의의 다른 장치, 전자 신호들을 처리하기 위해 구성될 수 있는 임의의 다른 장치 또는 장치들의 조합으로 실시될 수 있다. 처리 장치는 운영 체제 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령어(instruction; 인스트럭션), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치에 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령어 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 기계 판독 가능 기록 매체에 저장될 수 있다.
더욱이 본 발명의 기술적 해법의 대상물 또는 선행 기술들에 기여하는 부분들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 기계 판독 가능 매체에 기록될 수 있다. 기계 판독 가능 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기계 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 실시 예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 기계 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD, Blu-ray와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 전술한 장치들 중 어느 하나뿐만 아니라 프로세서, 프로세서 아키텍처 또는 상이한 하드웨어 및 소프트웨어의 조합들의 이종 조합, 또는 다른 어떤 프로그램 명령어들을 실행할 수 있는 기계 상에서 실행되기 위하여 저장 및 컴파일 또는 인터프리트될 수 있는, C와 같은 구조적 프로그래밍 언어, C++ 같은 객체지향적 프로그래밍 언어 또는 고급 또는 저급 프로그래밍 언어(어셈블리어, 하드웨어 기술 언어들 및 데이터베이스 프로그래밍 언어 및 기술들)를 사용하여 만들어질 수 있는 바, 기계어 코드, 바이트코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 이에 포함된다.
따라서 본 발명에 따른 일 태양에서는, 앞서 설명된 방법 및 그 조합들이 하나 이상의 컴퓨팅 장치들에 의하여 수행될 때, 그 방법 및 방법의 조합들이 각 단계들을 수행하는 실행 가능한 코드로서 실시될 수 있다. 다른 일 태양에서는, 상기 방법은 상기 단계들을 수행하는 시스템들로서 실시될 수 있고, 방법들은 장치들에 걸쳐 여러 가지 방법으로 분산되거나 모든 기능들이 하나의 전용, 독립형 장치 또는 다른 하드웨어에 통합될 수 있다. 또 다른 일 태양에서는, 위에서 설명한 프로세스들과 연관된 단계들을 수행하는 수단들은 앞서 설명한 임의의 하드웨어 및/또는 소프트웨어를 포함할 수 있다. 그러한 모든 순차 결합 및 조합들은 본 개시서의 범위 내에 속하도록 의도된 것이다.
예를 들어, 상기된 하드웨어 장치는 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. 상기 하드웨어 장치는, 프로그램 명령어를 저장하기 위한 ROM/RAM 등과 같은 메모리와 결합되고 상기 메모리에 저장된 명령어들을 실행하도록 구성되는 MPU, CPU, GPU, TPU와 같은 프로세서를 포함할 수 있으며, 외부 장치와 신호를 주고받을 수 있는 통신부를 포함할 수 있다. 덧붙여, 상기 하드웨어 장치는 개발자들에 의하여 작성된 명령어들을 전달받기 위한 키보드, 마우스, 기타 외부 입력 장치를 포함할 수 있다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시 예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시 예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 사람이라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니되며, 본 개시서에 첨부된 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그와 같이 균등하게 또는 등가적으로 변형된 것에는, 예컨대 본 발명에 따른 방법을 실시한 것과 동일한 결과를 낼 수 있는, 논리적으로 동치(logically equivalent)인 방법이 포함될 것인 바, 본 발명의 진의 및 범위는 전술한 예시들에 의하여 제한되어서는 아니되며, 법률에 의하여 허용 가능한 가장 넓은 의미로 이해되어야 한다.

Claims (14)

  1. 상태 기계에 의하여 작업(task)의 진행 상황(progression)을 관리하는 방법에 있어서,
    작업의 등록을 요청하는 신호인 작업 등록 요청에 응하여, 컴퓨팅 장치가, 상기 작업의 명칭 및 상기 작업의 진행 상황을 포함하는 정보인 작업 정보를 생성하는 단계로서, 상기 진행 상황은, 진행 상황 세트로부터 선택되되 상기 진행 상황 세트는 등록(registered) 및 완료(completed)를 포함하고, 예약(reserved), 진행 중(in progress), 취소(cancelled) 및 연기(postponed) 중 적어도 하나를 더 포함하며, 상기 작업 정보의 생성 시에는 등록으로 초기화되는, 작업 정보 생성 단계;
    표적 진행 상황으로 상기 작업의 진행 상황의 변경을 요청하는 신호인 작업 진행 상황 변경 요청이 획득되면, 상기 컴퓨팅 장치가, 요청된 상기 진행 상황의 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것인지 여부를 상기 상태 기계로써 판정하는 작업 진행 상황 변경 검증 단계; 및
    상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되면, 상기 컴퓨팅 장치가, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신하는 작업 진행 상황 갱신 단계
    를 포함하고,
    상기 상태 기계는, 기준 진행 상황과 상기 기준 진행 상황으로부터의 변경이 허용되는 다음 진행 상황의 쌍들의 집합으로 정의되는 유한 상태 기계이며,
    상기 작업 진행 상황 변경 검증 단계는,
    상기 쌍들의 집합에 상기 현재의 진행 상황과 상기 표적 진행 상황의 쌍이 포함되면 상기 변경이 허용되는 것으로 판정되는 것을 특징으로 하고,
    상기 작업 진행 상황 변경 검증 단계는,
    소정의 제2 사용자 인터페이스를 제공함으로써 상기 컴퓨팅 장치 또는 상기 컴퓨팅 장치에 연동되는 타 장치인 단말로부터 상기 작업의 현재의 진행 상황에서 상기 표적 진행 상황으로의 상기 작업 진행 상황 변경 요청을 획득하는 단계를 더 포함하며,
    상기 제2 사용자 인터페이스 상에 상기 작업의 현재 진행 상황으로부터의 변경이 허용되는 하나 이상의 후보 진행 상황들을 제공함으로써, 제공된 상기 후보 진행 상황들 중에서 상기 표적 진행 상황이 선택되도록 지원하는, 작업 진행 상황 관리 방법.
  2. 제1항에 있어서,
    상기 상태 기계는, 기준 진행 상황과 상기 기준 진행 상황으로부터의 변경이 허용되는 다음 진행 상황의 쌍들의 집합인, {(등록, 완료), (등록, 예약), (등록, 진행 중), (등록, 취소), (예약, 진행 중), (예약, 취소), (예약, 연기), (진행 중, 완료), (진행 중, 취소), (진행 중, 연기), (취소, 등록), (연기, 등록)}로 정의되는 유한 상태 기계인, 작업 진행 상황 관리 방법.
  3. 제1항에 있어서,
    상기 작업 정보 생성 단계는,
    소정의 제1 사용자 인터페이스를 제공함으로써 상기 컴퓨팅 장치 또는 상기 컴퓨팅 장치에 연동되는 타 장치인 단말로부터 상기 작업의 명칭을 포함하는 상기 작업 등록 요청을 획득하는 단계를 더 포함하는, 작업 진행 상황 관리 방법.
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 제2 사용자 인터페이스에는 상기 작업의 진행 상황의 명칭 및 상기 진행 상황에 대응하는 이미지 표시가 제공되는, 작업 진행 상황 관리 방법.
  7. 제6항에 있어서,
    상기 제2 사용자 인터페이스에 상기 진행 상황에 대응하는 설명 텍스트가 제공되거나, 상기 제2 사용자 인터페이스에 대한 소정의 조작에 대한 응답으로서 상기 제2 사용자 인터페이스 상에 상기 진행 상황에 대응하는 상기 설명 텍스트가 표시되는, 작업 진행 상황 관리 방법.
  8. 제1항에 있어서,
    상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되지 않으면, 소정의 제3 사용자 인터페이스를 제공함으로써 상기 컴퓨팅 장치 또는 상기 컴퓨팅 장치에 연동되는 타 장치인 단말로부터 상기 표적 진행 상황으로의 변경을 강제할 것인지 여부를 획득하고, 상기 변경이 강제되면, 상기 컴퓨팅 장치가, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신하는 작업 진행 상황 강제 갱신 단계
    를 더 포함하는, 작업 진행 상황 관리 방법.
  9. 컴퓨팅 장치로 하여금, 제1항 내지 제3항 및 제6항 내지 제8항 중 어느 한 항의 방법을 수행하도록 구현된 명령어(instructions)를 포함하는, 기계 판독 가능한 기록 매체에 저장된, 컴퓨터 프로그램.
  10. 상태 기계에 의하여 작업(task)의 진행 상황(progression)을 관리하는 컴퓨팅 장치에 있어서,
    작업의 등록을 요청하는 신호인 작업 등록 요청을 획득하는 통신부; 및
    상기 작업 등록 요청에 응하여, 상기 작업의 명칭 및 상기 작업의 진행 상황을 포함하는 정보인 작업 정보를 생성하는 프로세스로서, 상기 진행 상황은, 진행 상황 세트로부터 선택되되 상기 진행 상황 세트는 등록(registered) 및 완료(completed)를 포함하고, 예약(reserved), 진행 중(in progress), 취소(cancelled) 및 연기(postponed) 중 적어도 하나를 더 포함하며, 상기 작업 정보의 생성 시에는 등록으로 초기화되는, 작업 정보 생성 프로세스, 상기 통신부를 통하여 표적 진행 상황으로 상기 작업의 진행 상황의 변경을 요청하는 신호인 작업 진행 상황 변경 요청이 획득되면, 요청된 상기 진행 상황의 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되는 것인지 여부를 상기 상태 기계로써 판정하는 작업 진행 상황 변경 검증 프로세스, 및 상기 작업의 상기 현재의 진행 상황에서 상기 표적 진행 상황으로의 변경이 허용되면, 상기 작업의 진행 상황을 상기 표적 진행 상황으로 갱신하는 작업 진행 상황 갱신 프로세스를 수행하는 프로세서
    를 포함하고,
    상기 상태 기계는, 기준 진행 상황과 상기 기준 진행 상황으로부터의 변경이 허용되는 다음 진행 상황의 쌍들의 집합으로 정의되는 유한 상태 기계이며,
    상기 작업 진행 상황 변경 검증 프로세스는,
    상기 쌍들의 집합에 상기 현재의 진행 상황과 상기 표적 진행 상황의 쌍이 포함되면 상기 변경이 허용되는 것으로 판정되는 것을 특징으로 하고,
    상기 프로세서는,
    상기 작업 진행 상황 변경 검증 프로세스에서,
    상기 통신부를 거쳐 연동되는 디스플레이 장치 또는 상기 통신부를 거쳐 연동되는 타 컴퓨팅 장치인 단말을 통하여, 소정의 제2 사용자 인터페이스를 제공함으로써 상기 통신부를 거쳐 연동되는 입력 장치 또는 상기 단말로부터 상기 작업의 현재의 진행 상황에서 상기 표적 진행 상황으로의 상기 작업 진행 상황 변경 요청을 획득하며,
    상기 작업 진행 상황 변경 검증 프로세스에서,
    상기 작업의 현재 진행 상황으로부터의 변경이 허용되는 하나 이상의 후보 진행 상황들이 상기 제2 사용자 인터페이스 상에 제공되게 함으로써, 상기 프로세서가, 제공된 상기 후보 진행 상황들 중에서 상기 표적 진행 상황이 선택되도록 지원하는, 작업 진행 상황 관리 장치.
  11. 제10항에 있어서,
    상기 상태 기계는, 기준 진행 상황과 상기 기준 진행 상황으로부터의 변경이 허용되는 다음 진행 상황의 쌍들의 집합인, {(등록, 완료), (등록, 예약), (등록, 진행 중), (등록, 취소), (예약, 진행 중), (예약, 취소), (예약, 연기), (진행 중, 완료), (진행 중, 취소), (진행 중, 연기), (취소, 등록), (연기, 등록)}로 정의되는 유한 상태 기계인, 작업 진행 상황 관리 장치.
  12. 제10항에 있어서,
    상기 프로세서는,
    상기 작업 정보 생성 프로세스에서,
    상기 통신부를 거쳐 연동되는 디스플레이 장치 또는 상기 통신부를 거쳐 연동되는 타 컴퓨팅 장치인 단말을 통하여, 소정의 제1 사용자 인터페이스를 제공함으로써 상기 통신부를 거쳐 연동되는 입력 장치 또는 상기 단말로부터 상기 작업의 명칭을 포함하는 상기 작업 등록 요청을 획득하는, 작업 진행 상황 관리 장치.
  13. 삭제
  14. 삭제
KR1020210151950A 2021-11-08 2021-11-08 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치 KR102412088B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210151950A KR102412088B1 (ko) 2021-11-08 2021-11-08 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치
PCT/KR2022/009134 WO2023080380A1 (ko) 2021-11-08 2022-06-27 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210151950A KR102412088B1 (ko) 2021-11-08 2021-11-08 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치

Publications (1)

Publication Number Publication Date
KR102412088B1 true KR102412088B1 (ko) 2022-06-22

Family

ID=82217097

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210151950A KR102412088B1 (ko) 2021-11-08 2021-11-08 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치

Country Status (2)

Country Link
KR (1) KR102412088B1 (ko)
WO (1) WO2023080380A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023080380A1 (ko) * 2021-11-08 2023-05-11 (주) 바우디움 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005085271A (ja) * 2003-09-05 2005-03-31 Fisher Rosemount Syst Inc ユーザによる修正が可能な状態遷移コンフィギュレーションデータベースを有する状態マシン機能ブロック
KR20080112420A (ko) * 2006-04-26 2008-12-24 텍사스 인스트루먼츠 인코포레이티드 복수의 프로세서/코어에 대한 테스트 및 디버그 프로시저 동안에 전력, 클럭, 및 리셋을 제어하기 위한 장치 및 방법
KR20100048299A (ko) * 2008-10-30 2010-05-11 에스케이텔레시스 주식회사 통신단말기의 스케쥴관리장치 및 방법
KR20110003126A (ko) * 2009-07-03 2011-01-11 주식회사 아이비케이시스템 액티비티 프로젝트 관리시스템을 이용한 프로젝트 관리방법
KR20120018928A (ko) * 2010-08-24 2012-03-06 엘지전자 주식회사 이동 단말기 및 이동 단말기의 위치에 기반한 스케쥴 알림 정보 제공 방법
JP2012094005A (ja) * 2010-10-27 2012-05-17 Seiko Epson Corp スケジュール管理装置
JP2015170110A (ja) * 2014-03-06 2015-09-28 株式会社インサイト スケジュール管理装置
JP5848818B2 (ja) * 2012-03-23 2016-01-27 株式会社日立製作所 運用を管理する管理システム及び方法
US20160077911A1 (en) 2014-09-15 2016-03-17 Sandisk Technologies Inc. Methods, systems, and computer readable media for address and data integrity checking in flash memory operations
KR101739216B1 (ko) * 2013-02-15 2017-05-23 애플 인크. 중앙집중식 태스크 스케줄링
KR20180020890A (ko) * 2016-08-18 2018-02-28 아이 스마트 테크놀로지스 가부시키가이샤 가동 상태 취득 장치, 제조 라인의 생산 관리 시스템 및 생산 관리 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102412088B1 (ko) * 2021-11-08 2022-06-22 (주) 바우디움 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005085271A (ja) * 2003-09-05 2005-03-31 Fisher Rosemount Syst Inc ユーザによる修正が可能な状態遷移コンフィギュレーションデータベースを有する状態マシン機能ブロック
KR20080112420A (ko) * 2006-04-26 2008-12-24 텍사스 인스트루먼츠 인코포레이티드 복수의 프로세서/코어에 대한 테스트 및 디버그 프로시저 동안에 전력, 클럭, 및 리셋을 제어하기 위한 장치 및 방법
KR20100048299A (ko) * 2008-10-30 2010-05-11 에스케이텔레시스 주식회사 통신단말기의 스케쥴관리장치 및 방법
KR20110003126A (ko) * 2009-07-03 2011-01-11 주식회사 아이비케이시스템 액티비티 프로젝트 관리시스템을 이용한 프로젝트 관리방법
KR20120018928A (ko) * 2010-08-24 2012-03-06 엘지전자 주식회사 이동 단말기 및 이동 단말기의 위치에 기반한 스케쥴 알림 정보 제공 방법
JP2012094005A (ja) * 2010-10-27 2012-05-17 Seiko Epson Corp スケジュール管理装置
JP5848818B2 (ja) * 2012-03-23 2016-01-27 株式会社日立製作所 運用を管理する管理システム及び方法
KR101739216B1 (ko) * 2013-02-15 2017-05-23 애플 인크. 중앙집중식 태스크 스케줄링
JP2015170110A (ja) * 2014-03-06 2015-09-28 株式会社インサイト スケジュール管理装置
US20160077911A1 (en) 2014-09-15 2016-03-17 Sandisk Technologies Inc. Methods, systems, and computer readable media for address and data integrity checking in flash memory operations
KR20180020890A (ko) * 2016-08-18 2018-02-28 아이 스마트 테크놀로지스 가부시키가이샤 가동 상태 취득 장치, 제조 라인의 생산 관리 시스템 및 생산 관리 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023080380A1 (ko) * 2021-11-08 2023-05-11 (주) 바우디움 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치

Also Published As

Publication number Publication date
WO2023080380A1 (ko) 2023-05-11

Similar Documents

Publication Publication Date Title
US9158522B2 (en) Behavioral extensibility for mobile applications
US10210170B2 (en) Chunk storage deduplication using graph structures
JP2022062036A (ja) 分散イベント処理システムのためのグラフ生成
KR101854975B1 (ko) 패키지 파일에 대한 기능 확장 방법 및 시스템
US10948902B2 (en) Method and system for workload balancing of a production line
KR102412088B1 (ko) 상태 기계에 의하여 작업의 진행 상황을 관리하는 방법 및 이를 이용한 장치
EP3522032B1 (en) Guided web-application generation
US11762701B2 (en) Computer system providing numeric calculations with less resource usage
CN116306396A (zh) 芯片验证方法及装置、设备和介质
KR102392223B1 (ko) 절차의 구조를 입출력하는 방법 및 이를 이용한 장치
KR102392880B1 (ko) 계층화 문서를 관리하는 방법 및 이를 이용한 장치
US20180374177A1 (en) Electronic justice citation mobile user interface method, system and apparatus
KR102385792B1 (ko) 안내 문서, 행위 문서 및 제안 문서를 관리하는 방법 및 이를 이용한 장치
KR102455543B1 (ko) 획득 가능 자원을 관리하는 방법 및 이를 이용한 장치
KR102407246B1 (ko) 구직 또는 채용을 위한 데이터의 수집을 보조하는 방법 및 이를 이용한 컴퓨팅 장치
Mecibah et al. Towards requirements engineering process for self-adaptive embedded systems
KR20190104997A (ko) 무상태 메시지 프로토콜을 위한 트랜잭션 자원
US10866936B1 (en) Model object management and storage system
CN106445487B (zh) 用于控制交互式组件的处理单元、软件以及方法
Yates et al. Implementation and performance analysis of data-mining classification algorithms on smartphones
KR102405012B1 (ko) 디스플레이 화면 상에 이벤트들의 일정 상황을 표현하는 표식을 표시하는 방법 및 이를 이용한 장치
KR20180048518A (ko) 패키지 파일에 대한 기능 확장 방법 및 시스템
US11669340B2 (en) Syncing settings across incompatible operating systems
US11675802B1 (en) Graphical user interface and flexible architecture for a rule engine
US20220105630A1 (en) Method and system for augmenting and sharing robot intelligence based on container

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant