KR20140147093A - 문서 코멘트를 이용한 공동-저작 충돌 추적 기법 - Google Patents

문서 코멘트를 이용한 공동-저작 충돌 추적 기법 Download PDF

Info

Publication number
KR20140147093A
KR20140147093A KR1020147027367A KR20147027367A KR20140147093A KR 20140147093 A KR20140147093 A KR 20140147093A KR 1020147027367 A KR1020147027367 A KR 1020147027367A KR 20147027367 A KR20147027367 A KR 20147027367A KR 20140147093 A KR20140147093 A KR 20140147093A
Authority
KR
South Korea
Prior art keywords
document
change
conflicting
user
conflict
Prior art date
Application number
KR1020147027367A
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 마이크로소프트 코포레이션
Publication of KR20140147093A publication Critical patent/KR20140147093A/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/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/197Version control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Document Processing Apparatus (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

공동-저작 충돌 해결을 관리하기 위한 코멘트 인프라구조가 제공된다. 공동-저작 동안, 복수의 사용자가 동시에 하나의 문서를 편집할 수 있거나 편집들을 하나의 문서로 병합할 수 있다. 실시예에서, 한 사용자에 의해 제출되는 변경이 이전에 제출된 변경과 충돌하는지 여부가 판정된다. 충돌이 발견된 경우, 충돌하는 변경은 문서에 코멘트로서 저장되어, 사용자가 상기 충돌을 해결할 때를 선택할 수 있게 한다. 원본 콘텐츠 및 상이한 공동-저작 편집이 나란히 디스플레이되어, 사용자는 충돌의 원하는 해결에 대하여 정보를 갖고 판정을 할 수 있다. 사용자가 공동-저작 충돌에 대한 코멘트, 답변, 또는 메시지를 남길 수 있게 하고, 공동-저작 충돌을 해결할 수 있는 최상의 방식에 대해 사용자들 간에 대화와 협업을 제공하는 추가 코멘트 기능이 제공될 수 있다.

Description

문서 코멘트를 이용한 공동-저작 충돌 추적 기법{TRACKING CO-AUTHORING CONFLICTS USING DOCUMENT COMMENTS}
문서의 공동-저작(co-authoring)을 가능하게 하는 것이 종종 복잡한 작업이 될 수 있다. 예를 들어, 둘 이상의 사용자가 문서의 동일한 부분 또는 직접 관련된 부분을 동시에 편집하는 경우, 편집이 이뤄지는 동안 충돌이 발생할 수 있다. 충돌을 해결하고 변경들을 병합하는 것이 종종 공동-저작 가능 애플리케이션(co-authoring enabled application)의 과제이다. 상기 과제는 오프라인 상태에서 공동-저작 편집이 완료될 때 악화될 수 있는데, 애플리케이션이 변경이 제출되기 전까지 복수의 사용자가 문서의 동일 부분을 편집 중임을 인지할 수 없기 때문이다.
현재, 이러한 병합 충돌을 다루거나 피하기 위한 다양한 방법이 존재한다. 예를 들어, 일부 애플리케이션이, 콘텐츠의 한 사용자의 편집 후에 저장되는, 다른 사용자의 동일 콘텐츠의 편집이 첫 번째 사용자의 충돌하는 콘텐츠를 덮어 쓰는 "마지막 저장 유지(last saved wins)" 모델을 따를 수 있다. 알려져 있다시피, 이 방법은 첫 번째 사용자에 의해 이뤄진 편집이 소실될 수 있기 때문에 바람직하지 않을 수 있다.
또 다른 예를 들면, 일부 애플리케이션은 첫 번째 사용자에 의해 만들어진 변경이 적용되고 두 번째 사용자에 의해 만들어진 동일 또는 관련 콘텐츠의 변경이 저장되지 못하게 차단되어 충돌을 피할 수 있는 "최초 저장 유지(first saved wins)" 모델을 사용할 수 있다. 알려져 있다시피, 이 방법은 사용자가 자신의 작업을 업데이트된 콘텐츠에 재적용시킬 필요가 있기 때문에 바람직하지 않을 수 있다.
또 다른 예를 들면, 일부 애플리케이션은 두 번째 사용자가 첫 번째 사용자의 변경을 유지하기를 원하는지 또는 자신 고유의 변경을 적용하기를 원하는지 결정할 수 있게 할 수 있다. 즉, 상기 두 번째 사용자는 "마지막 저장 유지" 모델을 이용할지 또는 "최초 저장 유지" 모델을 이용할지 결정할 수 있다. 이 방법의 문제점은 사용자가 종종 저장 시에 적용될 변경이 어느 것인지 결정해야 하며, 이는 하나의 사용자의 변경이 소실될 수 있는 전부 아니면 전무 시나리오(all-or-nothing scenario)일 수 있다.
또 다른 예를 들면, 일부 애플리케이션은 문서 중 또 다른 사용자에 의해 저작 또는 편집되는 중인 부분을 잠근다. 예를 들어, 제 1 사용자가 하나의 문단 또는 셀의 하나의 블록을 편집하는 중인 경우, 제 2 사용자가 동일한 섹션을 편집할 수 없다. 이 방법은 사용자가 온라인일 것을 요구하며, 종종 잠기는 영역의 크기에 따라 지장을 줄 수 있다. 예를 들어, 다른 사용자들이 동시에 그들 각자의 고유 열(column)에 데이터를 채워 넣으려 시도하는 중일 수 있을 때 스프레드시트의 전체 표가 차단될 수 있다.
알려져 있다시피, 앞서 기재된 현재의 방법들은 복수의 사용자가 그들의 변경을 병합하기 위한 편리한 방식을 제공하지 않는다. 종종, 현재의 공동-저작 방법은 하나의 사용자의 편집이 다른 사용자를 이기는 빅 해머 방식(big hammer approach)을 반영한다. 과제, 가령, 앞서 기재된 도전과제가 충돌이 발생할 때 공동-저작을 어렵게 만들 수 있으며, 이는 사용자가 공동-저작을 피하도록 만들 수 있다.
이들 그리고 그 밖의 다른 고려사항과 관련하여, 본 발명이 만들어졌다.
개요
본 발명의 실시예가 공동-저작 충돌을 추적, 병합, 및 해결하는 데 도움이 되는 충돌 코멘트를 제공함으로써 앞서 언급된 그리고 그 밖의 다른 문제를 해결한다.
실시예에 따르면, 병합 충돌이 문서의 공동-저작 동안 발생할 때, 충돌을 야기하는 사용자에 의해 만들어진 변경이 문서에 코멘트로서 캡처될 수 있다. 사용자가 충돌을 즉시 해결할 필요가 없도록 충돌이 저장될 수 있다. 사용자는 충돌을 해결할 때를 선택할 수 있다. 예를 들어, 사용자는 충돌을 즉시 해결하도록 선택하여 편집을 계속하고 충돌을 일시적으로 무시하거나, 문서를 편집하기를 중단하고 다른 작업으로 전환할 수 있다.
코멘트 인프라구조를 이용함으로써, 문서 내에서 충돌의 인라인(inline) 보기가 제공될 수 있고, 사용자로 하여금 병합 충돌을 어떻게 처리할지에 대한 결정을 일시적으로 연기할 수 있게 할 수 있다. 이로써 사용자는 추가 업데이트를 할 때 충돌 및 그 밖의 다른 변경의 맥락을 잃지 않으면서 문서의 편집을 계속할 수 있으며, 따라서 충돌을 해결하기 위해 작업 흐름이 끊기는 것을 피할 수 있다.
실시예는 협업적 충돌 해결을 제공한다. 코멘트 인프라구조를 이용함으로써, 사용자는 충돌에 대한 추가 타이핑된 코멘트를 제공할 수 있어서, 상기 충돌을 해결하는 것에 대해 다른 사용자와 대화 및 협업을 할 수 있다. 실시예는 다른 문서 독자/검토자에게 이들이 문서를 읽을 때 충돌 및 제안을 인라인으로 볼 수 있는 능력을 제공함으로써, 이들이 충돌이 해결되기 전에 충돌을 인지할 수 있게 한다.
하나 이상의 실시예의 상세사항은 첨부된 도면 및 이하의 기재에서 제공된다. 그 밖의 다른 특징 및 이점이 이하의 상세한 설명을 읽고 연관된 도면을 검토함으로써 자명해질 것이다. 이하의 상세한 설명은 설명 목적만 가지며 청구되는 발명을 제한하려는 것이 아니다.
이 개요는 이하의 상세한 설명에서 추가로 기재될 개념들의 모음을 단순화된 형태로 소개하려 제공된 것이다. 이 개요는 청구되는 발명의 핵심 특징 또는 필수 특징을 식별하려는 것이 아니며 청구되는 발명의 범위를 결정하려 보조하는 것도 아니다.
본 명세서에 포함되며 그 일부를 구성하는 첨부된 도면은 본 발명의 다양한 실시예를 도시한다. 도면에서:
도 1은 본 발명의 실시예가 실시될 수 있는 시스템 아키텍처의 단순화된 블록도이다.
도 2는 문서 코멘트를 이용한 공동-저작 충돌을 추적하기 위한 방법의 흐름도이다.
도 3은 복수의 사용자에 의해 편집되는 예시적 문서를 도시한다.
도 4는 사용자에게 제공되는 충돌의 예시적 통지를 도시한다.
도 5a는 워드 프로세싱 문서에서 충돌이 발생할 때 충돌 해결 창으로 사용자에게 디스플레이되는 예시적 충돌을 도시한다.
도 5b는 워드 프로세싱 문서에서 충돌이 발생할 때 충돌 해결 창으로 사용자에게 디스플레이되는 예시적 충돌을 도시한다.
도 6은 스프레드 문서에서 충돌이 발생할 때 충돌 해결 창으로 사용자에게 디스플레이되는 예시적 충돌을 도시한다.
도 7은 본 발명의 실시예가 실시될 수 있는 컴퓨팅 장치의 예시적 물리 요소를 도시하는 블록도이다.
도 8a 및 8b는 본 발명의 실시예가 실시될 수 있는 모바일 컴퓨팅 장치의 단순화된 블록도이다.
도 9는 본 발명의 실시예가 실시될 수 있는 분산 컴퓨팅 시스템의 단순화된 블록도이다.
앞서 간략하게 기재한 바와 같이, 본 발명의 실시예는 공동-저작 충돌을 추적, 병합, 해결하는 것을 돕기 위해 충돌 코멘트를 제공하는 것과 관련된다. 협업적 검토 프로세스에서, 둘 이상의 사용자가 문서를 액세스하고 편집하는 것이 일반적이다. 이는 공동-저작(co-authoring)이라고 일컬어질 수 있다. 종종, 복수의 사용자가 동시에 하나의 문서를 편집하거나 오프라인에서 문서를 변경하고 상기 변경을 부모 문서(parent document)와 병합시킬 수 있다. 둘 이상의 사용자가 하나의 문서 내 동일 콘텐츠 블록을 편집할 때 충돌이 발생할 수 있다.
예를 들면, 두 명의 사용자가 스프레드시트 문서에서 셀 값을 동시에 편집할 수 있다. 사용자들 중 한 명은 이 변경을 저장할 수 있다. 다른 사용자가 동일한 셀을 편집하는 중임을 모르고 있을 수 있는 나머지 사용자가 자신의 변경을 저장할 수 있으며, 결과적으로 첫 번째 사용자에 의해 이뤄진 변경을 덮어쓸 수 있다. 알려져 있다시피, 이는 첫 번째 사용자에 의해 만들어진 편집이 다른 사용자가 보고 고려하지 못한 채 소실될 가능성이 있을 수 있기 때문에 바람직하지 못한 시나리오일 수 있다.
본 발명의 실시예는 공동-저작 충돌 해결을 관리하기 위한 코멘트 인프라구조(comment infrastructure)를 제공한다. 한 문서의 공동-저작 중에 병합 충돌이 발생할 때, 첫 번째 사용자에 의해 만들어진 변경과 충돌하는 변경이 문서에서 코멘트로서 캡처될 수 있다. 이는 편집 정보를 인라인(in-line)으로 문서에 캡처하면서 문서가 저장될 수 있게 한다. 이는 두 번째 사용자가 충돌을 해결할 때에 대한 선택을 할 수 있게 한다. 예를 들어, 두 번째 사용자는 충돌을 즉시 해결하거나 편집을 계속하고 상기 충돌을 일시적으로 무시하거나, 문서를 편집하기를 멈추고 다른 작업으로 전환할 수 있다. 실시예에서, 충돌을 저장함으로써, 복수의 사용자가 충돌 문제를 해결하기 위한 최상의 방식에 대해 대화하고 협업할 수 있다. 그 밖의 다른 사용자가 충돌 및 상기 충돌을 해결할 방법에 대한 제안을 문서를 검토하는 동안 인라인으로 보는 것이 가능할 수 있다. 실시예가 기존 코멘트 인프라구조 및 문서 검토 인프라구조와 함께 활용되어 병합 충돌 코멘트를 제공하고 원본 콘텐츠와 다양한 공동-저작 편집을 나란히 제공할 수 있다. 사용자가 원하는 충돌 해결에 대해 더 알고 결정할 수 있는 데 도움을 주도록 상기 실시예가 사용될 수 있다.
다음의 상세한 설명은 첨부된 도면을 참조한다. 해당 경우, 도면 및 이하의 상세한 설명에서 동일하거나 유사한 요소를 지칭하기 위해 동일한 도면부호가 사용된다. 본 발명의 실시예가 기재될 수 있지만, 변경, 각색, 및 그 밖의 다른 구현이 가능하다. 예를 들어, 치환, 추가, 또는 수정이 도면에 도시된 요소에 이뤄질 수 있고, 본 명세서에 기재된 방법은 개시된 방법에 단계를 치환, 순서 변경, 또는 추가함으로써 수정될 수 있다. 따라서 이하의 상세한 설명은 본 발명을 한정하지 않으며, 대신, 발명의 올바른 범위는 이하의 특허청구범위에 의해 규정된다.
이제 도면을 참조하면, 유사한 도면부호가 유사한 요소를 나타내고, 다양한 실시예가 기재될 것이다. 도 1은 문서를 공동-저작하고 공동-저작 충돌 해결을 관리하기 위한 코멘트 인프라구조를 제공하기 위한 시스템을 도시한다. 도시된 바와 같이, 시스템(100)은 하나의 문서(105)의 동시 협업적 검토를 가능하게 하도록 동작하는 협업적 검토 관리자(collaborative review manager)(140)를 포함할 수 있다. 예를 들어, 상기 협업적 검토 관리자(140)는 다양한 사용자(120,122,124)에 의해 문서(105)에 이뤄지는 변경들을 동기화시키는 것을 보조할 수 있다. 하나의 실시예에 따르면, 문서(105)는 원격 위치에 위치할 수 있는 다양한 사용자에 의해 액세스될 수 있는 데이터 저장소(110)에 저장될 수 있다. 예를 들어, 상기 문서(105)는 네트워크 상에서 액세스 가능한 문서 라이브러리에 저장될 수 있다. 다양한 사용자(120,122,124)가 문서(105)를 액세스하여, 상기 문서를 검토, 변경, 및/또는 코멘트를 제공할 수 있다. 한 번에 단 한 명의 사용자만 문서를 열리게 함을 보장할 필요 없이, 사용자는 동시에 또는 상이한 때에 상기 문서를 액세스할 수 있다. 하나의 실시예에 따르면, 사용자는 편집하기 위해 문서를 로컬 컴퓨팅 장치(125)로 다운로드할 수 있다. 그 후 상기 사용자는 자신의 변경을 데이터 저장소(110)에 저장된 문서와 병합시킬 수 있다.
사용자(120,122,124)는 문서(105)에 대한 검토 및/또는 편집 능력을 제공하는 애플리케이션(130)을 포함하는 컴퓨팅 장치(125)를 통해 문서(105)를 액세스할 수 있다. 문서(105)의 디스플레이(107)는 컴퓨팅 장치(125)의 디스플레이 표면 상에 제공될 수 있다. 컴퓨팅 장치(125)는 다양한 유형의 컴퓨팅 장치, 가령, 유선 및 무선 개인용 컴퓨터, 랩톱 컴퓨터, 핸드헬드 모바일 컴퓨팅 장치, 가령, 모바일 전화기, 태블릿 유형 컴퓨터, 슬레이트(slate) 유형 컴퓨터 등 중 하나일 수 있다. 컴퓨팅 장치(125)는 리치 클라이언트 애플리케이션(rich client application)(130), 가령, MICROSOFT OFFICE 제품군 애플리케이션으로부터의 프로그램, 예컨대, 문서(105)의 구조를 편집 및 변경하기 위한 기능들의 리치 세트를 제공할 수 있는 MICROSOFT WORD를 포함할 수 있다. 컴퓨팅 장치(125)는 문서(105)를 검토하기 위한 기능의 (리치 클라이언트 애플리케이션에 비교할 때) 제한된 세트를 제공할 수 있는 씬 클라이언트 애플리케이션(thin client application)(130)을 포함할 수 있다. 예를 들어, 씬 클라이언트 애플리케이션은 문서(105)를 디스플레이하고 코멘팅 기능을 제공할 수 있는 웹 인터페이스일 수 있다. 문서에 이뤄진 편집이 사용자(120,122,124)에 의해 제출될 때, 변경이 서버 또는 문서 저장소(110)의 문서(105)에 저장될 수 있다. 실시예에 따르면, 사용자에 의해 문서(105)에 이뤄진 편집이 또 다른 사용자에 의해 제출된 편집과 충돌하는 경우, 상기 충돌이 코멘트로서 문서에 저장될 수 있다.
도 2를 참조하면, 문서 코멘트를 이용해 공동-저작 충돌을 추적하기 위한 방법(200)이 제공된다. 상기 방법(200)은 동작(205)에서 시작되고, 동작(210)으로 진행되며, 여기서 공동-저작 가능 문서(105)가 하나 이상의 사용자(120,122,124)에 의해 액세스된다. 상기 문서는 다양한 유형의 문서, 비-제한적 예를 들면, 워드 프로세싱 문서, 스프레드시트 문서, 컴퓨터 그래픽 문서, 슬라이드 프리젠테이션 등 중 하나일 수 있다. 도 1을 참조하여 기재된 바와 같이, 문서(105)는 네트워크를 통해 다양한 사용자에 의해 액세스 가능한 문서 저장소(110)에 저장될 수 있다. 복수의 사용자(120,122,124)는 컴퓨팅 장치(125) 상의 애플리케이션 프로그램(130)을 통해 문서(105)를 액세스할 수 있다.
동작(215)에서, 하나 이상의 사용자가 문서(105)를 변경할 수 있다. 예를 들고 도 3을 참조하면, 사용자 A(120) 및 사용자 B(122)가 문서(105) 내 동일 콘텐츠 블록(315)을 변경할 수 있다. 콘텐츠 블록(315)은 문서의 유형, 콘텐츠의 유형, 콘텐츠의 크기, 또는 설정에 따라, 가변 크기의 콘텐츠를 포함할 수 있다. 예를 들어, 워드 프로세싱 문서에서, 콘텐츠 블록(315)은 그래프, 문장, 단어, 표, 표의 일부분 등일 수 있다. 스프레드시트 애플리케이션에서, 콘텐츠 블록(315)은 셀, 표, 표의 일부분, 복수의 셀, 가령, 행, 열, 셀 그룹, 또는 문서(105)의 지정된 섹션일 수 있다. 도 3에 도시된 예시에서, 콘텐츠 블록(315)은 문단이다. 도 3에 도시된 바와 같이, 원본 콘텐츠 블록(305)은 문장 "The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog."을 포함한다.
도시된 바와 같이, 애플리케이션 창(310)에 문서(107)의 디스플레이가 제공되며, 여기서 사용자 A(120)는 문서에 변경(320)을 만들 수 있다. 예를 들어, 사용자 A가 콘텐츠를 삭제(가령, "lazy dog"를 삭제)하고 콘텐츠를 추가(가령, "sleeping cat")할 수 있다. 동시에, 사용자 B(122)가 동일 콘텐츠 블록(315)에 또 다른 변경(330)을 할 수 있다. 사용자 B(122)에 의한 상기 변경(330)은 사용자 A의 변경(320)과 직접 충돌할 수도 있고 충돌하지 않을 수도 있다.
도 2를 다시 참조하면, 동작(220)에서, 첫 번째 사용자, 이 예시의 경우, 사용자 A(120)가 문서(105)에 이뤄진 변경(320)을 제출(submit)한다. 예를 들어, 사용자 A는 저장 명령어(405)의 선택을 통해 변경을 제출할 수 있다. 문서(105)에 대한 변경(320)을 저장하기 위한 선택의 표시(indication)를 수신하면, 결정 동작(225)에서 제출된 변경이 또 다른 사용자(122, 124)에 의해 제출된 변경과 충돌할 수 있는지 여부에 대한 결정이 이뤄질 수 있다. 어떠한 충돌도 발견되지 않은 경우, 동작(230)에서 문서 저장소(110)에서 문서(205)가 변경(320)으로 업데이트될 수 있다.
동작(235)에서, 다음 사용자가 문서(105)에 이뤄진 변경을 제출할 수 있다. 예를 들어, 사용자 B의 변경(330)(가령,
Figure pct00001
Figure pct00002
)이 제출될 수 있다. 방법(200)은 결정 동작(225)으로 복귀하여, 제출된 변경(330)이 또 다른 사용자(120, 124)에 의해 제출된 변경(320)과 충돌할 수 있는지 여부를 결정할 수 있다. 하나의 실시예에 따르면, 결정은 제출된 변경(330)이 문서(105)에 위치하는 곳을 식별하는 것과 제출된 변경이 다른 사용자(120, 122, 124)에 의해 이전에 편집된 콘텐츠 블록(315) 내에서 이뤄졌는지 여부를 결정하는 것을 포함할 수 있다. 예를 들어, 사용자 B의 변경(330)이 사용자 A의 변경(320)과 비교되어 사용자들이 콘텐츠의 동일 부분(즉, 콘텐츠 블록(315))에 변경을 만들었을 수 있는지 여부를 결정할 수 있다.
하나의 실시예에 따르고 도 4에 도시된 바와 같이, 결정 동작(225)에서 충돌이 결정된 경우, 동작(240)에서 충돌의 통지(410)가 사용자(122)에게 제공될 수 있다. 하나의 실시예에 따르면, 다음 변경을 만드는 사용자에게 충돌 통지(410)가 제공될 수 있다. 예를 들어, 사용자 B(122)가 자신의 변경(330)을 (저장 명령어(405)의 선택을 통해) 제출하고, 동일한 콘텐츠 블록(315) 내 또 다른 변경(320)이 또 다른 사용자(120)에 의해 제출된 적 있다는 결정이 이뤄지고, 도 4에 도시된 바와 같은 대화상자(dialog)로 충돌 통지(410)가 사용자 B에게 제공될 수 있다. 또 다른 실시예에 따르면, 충돌 통지(410)가 문서(105)를 동시에 편집하고 있는 임의의 사용자(120, 122, 124)에게 제공될 수 있다.
충돌 통지(410)는 하나 이상의 선택 가능 기능을 포함할 수 있다. 예를 들어, 충돌 통지(410)가 해결 명령어(415)를 포함할 수 있고 해결 명령어의 선택에 의해 사용자(122)는 다른 사용자에 의해 이뤄진 충돌하는 변경을 볼 수 있다(경우에 따라 해결할 수도 있다). 충돌 통지(410)에서 변경 저장 명령어(420)가 제공될 수 있고, 여기서 변경 저장 명령어의 선택이 사용자(122)의 변경(330)을 문서(105) 내 코멘트로서 제출할 수 있고(동작(245)), 문서(105)는 코멘트로서의 변경으로 업데이트될 수 있다(동작(230)). 즉, 다음 사용자에 의해 이뤄진 변경(사용자 B(122))이 사용자 A(120)에 의해 이전에 제출된 변경을 덮어 쓰지 않고, 폐기되지도 않는다. 대신, 변경(330)은 충돌이 사용자(122) 또는 또 다른 사용자(120, 124)에 의해 검토되고 해결될 수 있게 하는 코멘트로서 보존된다.
또 다른 실시예에 따르면, 충돌이 결정된 경우, 문서(105)는 충돌이 발견된 콘텐츠 블록(305)의 원본 콘텐츠로 업데이트될 수 있고, 다양한 사용자(가령, 사용자 A(122) 및 사용자 B(124))에 의해 만들어진 충돌하는 변경(320, 330)이 문서에 코멘트로서 저장될 수 있다. 선택될 때 저장 동작을 취소할 수 있고 사용자(122)가 문서를 계속 편집할 수 있게 하는 취소 명령어(425)가 제공될 수 있다.
또 다른 기능이 제공될 수 있다. 하나의 실시예에 따르면, 코멘트 기능이 제공되어, 사용자(120,122,124)는 충돌을 해결할 수 있는 최상의 방식에 대해 대화와 협업을 가능하게 하는 코멘트, 코멘트에 답하기, 메시지 등을 통해 서로와 통신할 수 있다. 상기 방법은 동작(295)에서 종료한다.
도 5a를 참조하면, 문서(107)의 디스플레이 및 충돌 해결 창(conflict resolution pane)(505)과 함께 애플리케이션 윈도(310)가 도시된다. 하나의 실시예에 따르면, 충돌 해결 창(505)이 제공될 수 있고, 상기 충돌 해결 창은 또 다른 사용자에 의해 제출되는 변경과 충돌한다고 결정된 바 있는 사용자(120,122,124)에 의해 제출되는 변경(320,330)을 포함한다. 또 다른 실시예에 따르면, 충돌이 문서 디스플레이(107) 내에 인라인(in-line) 코멘트로서 디스플레이될 수 있다.
실시예에 따르면, 도 5a에 도시된 바는 충돌이 결정된 후 자동으로 디스플레이되거나 하나 이상의 충돌을 포함하는 문서(105)를 열 때 제공되는 충돌 통지(410)에서 제공되는 해결 명령어(415)의 선택 후 사용자(120,122,124)에게 디스플레이될 수 있는 것의 예시이다. 충돌 코멘트는 두 번째 사용자의 변경 제출 후 문서(105)를 업데이트하거나 액세스하는 임의의 사용자 N(124)에게 보여질 수 있다.
도시된 바와 같이, 애플리케이션 창(310)에서 문서(107)의 디스플레이가 제공될 수 있다. 충돌 해결 창(505)에서 콘텐츠 블록(315)(이 예시의 경우 문단)이 강조되고 충돌과 연관되어 나타난다. 하나의 실시예에 따르고 도 5a에 도시된 바와 같이, 충돌하는 변경(320, 330)을 포함하는 것으로 결정된 콘텐츠 블록(315)이 자신의 원본 포맷으로(즉, 어떠한 변경도 적용되지 않은 채) 디스플레이될 수 있다. 도시된 바와 같이 충돌하는 변경(320, 330)이 코멘트(510, 512)로서 디스플레이될 수 있다. 상기 코멘트는 도시된 바와 같이 충돌 해결 창으로 제공되거나, 또는 문서(107)의 디스플레이 내에 인라인 코멘트로서 나타날 수 있다. 각각의 충돌 코멘트(510, 512)는 충돌하는 변경(320,330)을 포함할 수 있고, 선택 가능한 기능 컨트롤, 가령, 사용자(124)가 변경을 수락할 수 있게 하는 수락 버튼(515) 또는 사용자가 변경을 거절할 수 있게 하는 거절 버튼(520), 및 충돌 코멘트를 취소하기 위한 취소 버튼(525)을 포함할 수 있다. 예를 들어, 충돌 코멘트(512)에 대해 수락 버튼(515)이 선택된 경우, 충돌 코멘트의 변경이 문서에서 연관된 원본 콘텐츠를 대체할 수 있다.
또 다른 실시예에 따르고 도 5b에 도시된 바와 같이, 첫 번째 사용자(120)에 의해 이전에 이뤄지고 제출된 변경(320)과 충돌하는 사용자(122)에 의해 콘텐츠(315)에 이뤄진 변경(330)이 코멘트(512)로서 디스플레이될 수 있고, 첫 번째 사용자(120)에 의해 제출된 변경(320)이 문서(107)의 업데이트된 콘텐츠에서 나타난다. 문서(107)의 업데이트된 콘텐츠(315)에 첫 번째 사용자(120)에 의해 이뤄진 변경(320)을 디스플레이하고 두 번째 사용자(122)에 의해 이뤄진 충돌하는 변경(330)을 코멘트(512)로서 제공함으로써, 사용자(120,122,124)는 첫 번째 사용자의 업데이트된 콘텐츠에 대비되어 나타나는 두 번째 사용자의 변경(들)(330)과의 충돌을 볼 수 있다. 앞서 기재되고 도 5b에 도시된 바와 같이, 콘텐츠 블록(315)은 문장일수 있다.
또 다른 기능이 제공될 수 있다. 하나의 실시예에 따르면, 사용자가 충돌에 대한 추가 코멘트를 남길 수 있게 하고, 복수의 사용자가 문제를 해결할 수 있는 최상의 방식에 대해 대화 및 협업할 수 있게 하며, 그 밖의 다른 사용자가 충돌 및 충돌이 해결되기 전에 충돌을 해결할 방식에 대한 제안을 볼 수 있게 하는 추가 코멘트 기능이 제공될 수 있다. 또 다른 실시예에 따르면, 그 밖의 다른 코멘트 기능이 제공될 수 있고, 예를 들어, 다음 충돌 코멘트로 스킵할 수 있는 능력 및 코멘트를 남기거나 문서에 충돌하는 변경을 만드는 사용자에 대한 정보를 불러올 수 있는 능력이 제공될 수 있다. 예를 들어, 두 명의 사용자가 스프레드시트 내 동일 셀에 서로 다른 판매 수치를 입력한다. 상기 사용자들 중 한 명 또는 또 다른 사용자가 충돌을 알고 나머지 사용자에게 그의 수치가 어떻게 나왔는지 물어보는 추가 코멘트를 남길 수 있다. 알다시피, 해결은 복수의 사용자가 대화하고 공동-저작 충돌을 해결할 수 있게 하는 협업적 해결 프로세스가 될 수 있다.
이제 도 6을 참조하면, 충돌을 포함하는 문서(107)(이 예시의 경우 스프레드시트)의 디스플레이가 도시된다. 이 예시에서, 콘텐츠 블록(315)은 표이며, 여기서 두 명의 사용자가 동시에 표에 변경을 만들었다. 충돌 해결 창(505)에서 변경이 이뤄진 셀이 강조되고 충돌 코멘트(510, 512)와 연관되어 나타난다. 예를 들어, 제 1 충돌 코멘트(510)가 셀 B3과 연관되고 사용자 A(120)에 의해 이뤄진 변경(320)을 나타낸다. 제 2 충돌 코멘트(512)가 셀 A11과 연관되고 사용자 B(122)에 의해 만들어진 변경(330)을 보여준다. 두 명의 사용자(120, 122)에 의해 만들어진 변경이 하나의 표(이 예시의 경우, 표는 콘텐츠 블록(315)으로 간주됨) 내에서 만들어졌기 때문에 충돌이라고 결정되었지만, 실제로 변경은 충돌이 아닐 수 있다. 이 예시에서, 충돌 코멘트(510, 512)에서의 두 변경(320, 330) 모두 다른 사용자의 변경을 덮어 쓰지 않고 수락될 수 있다.
본 명세서에서 기재된 실시예 및 기능이 다양한 컴퓨팅 시스템을 통해 동작할 수 있으며, 비-제한적 예를 들면, 데스크톱 컴퓨터 시스템, 유선 및 무선 컴퓨팅 시스템, 모바일 컴퓨팅 시스템(가령, 모바일 전화기, 넷북, 태블릿 또는 슬레이트 유형 컴퓨터, 노트북 컴퓨터 및 랩톱 컴퓨터), 핸드-헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 소비자 전자기기, 미니컴퓨터, 및 메인프레임 컴퓨터가 있다. 도 3은 협업적 검토 관리자(140)의 하나의 실시예를 실행하는 예시적 태블릿 컴퓨팅 장치(125)를 도시한다. 덧붙여, 본 명세서에 기재되는 실시예 및 기능은 분산 시스템(가령, 클라우드-기반 컴퓨팅 시스템)을 통해 동작할 수 있으며, 여기서 애플리케이션 기능, 메모리, 데이터 저장 및 불러오기 및 다양한 프로세싱 기능이 분산 컴퓨팅 네트워크, 가령, 인터넷 또는 인트라넷을 통해 서로 원격으로 동작할 수 있다. 다양한 유형의 사용자 인터페이스 및 정보가 온-보드 컴퓨팅 장치 디스플레이를 통해 또는 하나 이상의 컴퓨팅 장치와 연관된 원격 디스플레이 유닛을 통해 디스플레이될 수 있다. 예를 들어 다양한 유형의 사용자 인터페이스 및 정보가 상기 다양한 유형의 사용자 인터페이스 및 정보가 투사되는 벽면 상에 디스플레이되고 상호대화될 수 있다. 본 발명의 실시예가 실시될 수 있는 다양한 컴퓨팅 시스템과의 상호대화에는, 키스트로크 입력, 터치 스크린 입력, 음성 또는 그 밖의 다른 오디오 입력, 연관된 컴퓨팅 장치에 컴퓨팅 장치의 기능을 제어하기 위한 사용자 제스처를 캡처 및 해석하기 위한 검출(가령, 카메라) 기능부가 구비된 경우, 제스처 입력 등이 포함된다. 도 7 내지 9 및 이와 연관된 기재가 본 발명의 실시예가 실시될 수 있는 다양한 동작 환경에 대한 설명을 제공한다. 그러나 도 7 내지 9와 관련하여 도시되고 설명되는 장치 및 시스템은 예시 및 설명 목적을 가지며, 본 명세서에 기재되는 본 발명의 실시예를 실시하기 위해 사용될 수 있는 다양한 컴퓨팅 장치 구성을 제한하지 않는다.
도 7은 본 발명의 실시예가 실시될 수 있는 컴퓨팅 장치(700)의 예시적 물리 구성요소(즉, 하드웨어)를 도시하는 블록도이다. 아래에서 기재되는 상기 컴퓨팅 장치 구성요소는 앞서 기재된 컴퓨팅 장치에 적합할 수 있다. 기본 구성에서, 컴퓨팅 장치(700)는 적어도 하나의 프로세싱 유닛(702)과 시스템 메모리(704)를 포함할 수 있다. 컴퓨팅 장치의 구성 및 유형에 따라, 시스템 메모리(704)는, 비제한적으로, 휘발성 저장장치(가령, 랜덤 액세스 메모리), 비휘발성 저장장치(가령, 리드 온리 메모리), 플래시 메모리, 또는 이러한 메모리들의 임의의 조합을 포함한다. 상기 시스템 메모리(704)는 소프트웨어 애플리케이션(720), 가령, 협업적 검토 관리자(140)를 운영하기에 적합한 운영 체제(705) 및 하나 이상의 프로그램 모듈(706)을 포함할 수 있다. 예를 들어, 상기 운영 체제(705)는 컴퓨팅 장치(700)의 동작을 제어하기에 적합할 수 있다. 덧붙여, 본 발명의 실시예는 그래픽 라이브러리, 그 밖의 다른 운영 체제, 또는 임의의 그 밖의 다른 애플리케이션 프로그램과 함께 실시될 수 있으며, 임의의 특정 애플리케이션 또는 시스템에 제한되지 않는다. 이 기본 구성이 점선(708) 내 이들 구성요소로 도 7에 도시된다. 컴퓨팅 장치(700)는 추가 특징 또는 기능을 가질 수 있다. 예를 들어, 컴퓨팅 장치(700)는 추가 데이터 저장장치 장치(이동식 및/또는 비-이동식), 가령, 자기 디스크, 광학 디스크, 또는 테이프를 더 포함할 수 있다. 이러한 추가 저장장치는 도 7에 이동식 저장 장치(709) 및 비-이동식 저장 장치(710)로 도시된다.
앞서 언급된 바와 같이, 복수의 프로그램 모듈 및 데이터 파일이 시스템 메모리(704)에 저장될 수 있다. 프로세싱 유닛(702) 상에서 실행되는 동안, 상기 프로그램 모듈(706), 가령, 협업적 검토 관리자(140)가 프로세스, 가령, 방법(200)의 단계들 중 하나 이상을 포함하는 프로세스를 수행할 수 있다. 앞서 언급된 프로세스는 예시이며, 프로세싱 유닛(702)은 그 밖의 다른 프로세스를 수행할 수 있다. 본 발명의 실시예에 따라 사용될 수 있는 그 밖의 다른 프로그램 모듈은 전자 메일 및 연락처 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 데이터베이스 애플리케이션, 슬라이드 프리젠테이션 애플리케이션, 드로잉 또는 컴퓨터-보조 애플리케이션 프로그램 등을 포함할 수 있다.
덧붙여, 본 발명의 실시예는 이산 전자 요소를 포함하는 전기 회로, 로직 게이트를 포함하는 패키징된 또는 집적된 전자 칩, 마이크로프로세서를 이용하는 회로, 또는 전자 요소 또는 마이크로프로세서를 포함하는 단일 칩으로 실시될 수 있다. 예를 들어, 본 발명의 실시예는 도 7에 도시된 구성요소 각각 또는 다수가 단일 집적 회로 상에 집적될 수 있는 시스템-온-칩(SOC)을 통해 실시될 수 있다. 이러한 SOC 장치는 하나 이상의 프로세싱 유닛, 그래픽 유닛, 통신 유닛, 시스템 가상화 유닛 및 다양한 애플리케이션 기능을 포함할 수 있고 이들 모두 칩 기판 상으로 단일 집적 회로로서 집적(즉 "버닝")된다. SOC를 통해 동작할 때, 협업적 검토 관리자(140)와 관련하여 본 명세서에 기재되는 기능은 컴퓨팅 장치(700)의 그 밖의 다른 구성요소와 함께 단일 집적 회로(칩) 상에 집적되는 주문형 로직(application-specific logic)을 통해 동작할 수 있다. 본 발명의 실시예는 또한 논리적 동작, 가령, AND, OR, 및 NOT를 수행할 수 있는 그 밖의 다른 기술을 이용해 실시될 수 있으며, 비-제한적 예를 들면, 기계, 광학, 유체, 및 양자 기술이 있다. 덧붙여, 본 발명의 실시예는 범용 컴퓨터 또는 그 밖의 다른 임의의 회로 또는 시스템 내에서 실시될 수 있다.
컴퓨팅 장치(700)는 또한 하나 이상의 입력 장치(들)(712), 가령, 키보드, 마우스, 펜, 소리 입력 장치, 터치 입력 장치 등을 가질 수 있다. 상기 출력 장치(들)(714), 가령, 디스플레이, 스피커, 프린터 등이 또한 포함될 수 있다. 앞서 언급된 장치는 예시이며 그 밖의 다른 장치도 사용될 수 있다. 컴퓨팅 장치(700)는 그 밖의 다른 컴퓨팅 장치(718)와의 통신을 가능하게 하는 하나 이상의 통신 연결(716)을 포함할 수 있다. 적합한 통신 연결(716)의 비-제한적 예시로는, RF 송신기, 수신기, 및/또는 송수신기 회로, 전역 직렬 버스(USB: universal serial bus), 병렬 또는 직렬 포트, 및 적용 가능한 컴퓨터 판독형 매체와 함께 사용되기 적합한 그 밖의 다른 연결이 있다.
본 발명의 실시예는, 예를 들어, 컴퓨터 프로세스(방법), 컴퓨팅 시스템, 또는 제조 물품, 가령, 컴퓨터 프로그램 프로덕트 또는 컴퓨터 판독형 매체로 구현될 수 있다. 상기 컴퓨터 프로그램 프로덕트는 컴퓨터 시스템에 의해 판독될 수 있고 컴퓨터 프로세스를 실행하기 위한 명령의 컴퓨터 프로그램이 인코딩된 컴퓨터 저장 매체일 수 있다.
본 명세서에서 사용될 때 컴퓨터 판독형 매체라는 용어는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 정보, 가령, 컴퓨터 판독형 명령, 데이터 구조, 프로그램 모듈, 또는 그 밖의 다른 데이터의 저장을 위한 임의의 방법 또는 기법으로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함할 수 있다. 시스템 메모리(704), 이동식 저장 장치(709), 및 비이동식 저장 장치(710)는 모두 컴퓨터 저장 매체의 예시(즉, 메모리 저장장치)이다. 컴퓨터 저장 매체의 비-제한적 예를 들면, RAM, ROM, 전기 소거 리드-온리 메모리(EEPROM), 플래시 메모리 또는 그 밖의 다른 메모리 기술, CD-ROM, 디지털 다목적 디스크(DVD), 또는 그 밖의 다른 광학 저장장치, 자기 카세트, 자기 테이프, 자기 디스크 저장장치 또는 그 밖의 다른 자기 저장장치 장치, 또는 정보를 저장하기 위해 사용될 수 있고 컴퓨팅 장치(700)에 의해 액세스될 수 있는 그 밖의 다른 임의의 매체가 있다. 임의의 이러한 컴퓨터 저장 매체는 컴퓨팅 장치(700)의 일부분일 수 있다.
통신 매체는 변조된 데이터 신호, 가령, 반송파 또는 그 밖의 다른 전송 메커니즘로 컴퓨터 판독형 명령, 데이터 구조, 프로그램 모듈, 또는 그 밖의 다른 데이터에 의해 구현될 수 있으며, 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"라는 용어는 신호 내 정보를 인코딩하기 위한 방식으로 설정 또는 변경된 하나 이상의 특성을 갖는 신호를 기술한다. 비-제한적 예를 들어, 통신 매체는 유선 매체, 가령, 유선 네트워크 또는 직접 배선 연결, 및 무선 매체, 가령, 음향, 무선 주파수(RF), 적외선, 및 그 밖의 다른 무선 매체를 포함할 수 있다.
도 8a 및 8b는 본 발명의 실시예가 실시될 수 있는 모바일 컴퓨팅 장치(800), 가령, 모바일 전화기, 스마트폰, 태블릿 개인 컴퓨터, 랩톱 컴퓨터 등을 도시한다. 도 8a를 참조하면, 실시예를 구현하기 위한 예시적 모바일 컴퓨팅 장치(800)가 도시된다. 기본 구성에서, 모바일 컴퓨팅 장치(800)는 입력 요소와 출력 요소 모두를 갖는 핸드헬드 컴퓨터이다. 상기 모바일 컴퓨팅 장치(800)는 일반적으로 디스플레이(805)와 사용자가 상기 모바일 컴퓨팅 장치(800)로 정보를 입력할 수 있게 해주는 하나 이상의 입력 버튼(810)을 포함한다. 상기 모바일 컴퓨팅 장치(800)의 디스플레이(805)가 또한 입력 장치(가령, 터치 스크린 디스플레이)로서 기능할 수 있다. 포함된 경우, 선택사항적 부가 입력 요소(815)가 추가 사용자 입력을 가능하게 한다. 부가 입력 요소(815)는 회전식 스위치, 버튼, 또는 그 밖의 다른 임의의 유형의 수동 입력 요소일 수 있다. 대안적 실시예에서, 모바일 컴퓨팅 장치(800)는 더 많거나 더 적은 입력 요소를 포함할 수 있다. 예를 들어, 일부 실시예에서 디스플레이(805)는 터치 스크린이 아닐 수 있다. 또 다른 대안적 실시예에서, 모바일 컴퓨팅 장치(800)는 휴대용 전화 시스템, 가령, 셀룰러 폰이다. 모바일 컴퓨팅 장치(800)는 또한 선택사항적 키패드(835)를 더 포함할 수 있다. 선택사항적 키패드(835)는 물리적 키패드 또는 터치 스크린 디스플레이 상에서 생성되는 "소프트" 키패드일 수 있다. 다양한 실시예에서, 출력 요소는 그래픽 사용자 인터페이스(GUI)를 보여주는 디스플레이(805), 시각적 지시자(820)(가령, 발광 다이오드), 및/또는 오디오 트랜스듀서(825)(가령, 스피커)를 포함한다. 일부 실시예에서, 모바일 컴퓨팅 장치(800)는 사용자에게 촉각 피드백을 제공하기 위한 진동 트랜스듀서를 포함한다. 또 다른 실시예에서, 모바일 컴퓨팅 장치(800)는 입력 및/또는 출력 포트, 가령, 오디오 입력(가령, 마이크로폰 잭), 오디오 출력(가령, 헤드폰 잭), 및 비디오 출력(가령, HDMI 포트)를 포함하여 외부 장치로 신호를 전송하거나 외부 장치로부터 신호를 수신할 수 있다.
도 8b는 모바일 컴퓨팅 장치의 하나의 실시예의 블록도이다. 즉, 모바일 컴퓨팅 장치(800)는 일부 실시예를 구현하기 위한 시스템(즉, 아키텍처)(802)를 포함할 수 있다. 하나의 실시예에서, 시스템(802)은 하나 이상의 애플리케이션(가령, 브라우저, 전자 메일, 일정관리, 연락처 관리자, 메시징 클라이언트, 게임, 및 미디어 클라이언트/재생기)을 실행시킬 수 있는 "스마트 폰"으로 구현된다. 일부 실시예에서, 시스템(802)은 컴퓨팅 장치, 가령, 통합형 개인 디지털 보조기(PDA) 및 무선 전화기로서 일체구성된다.
하나 이상의 애플리케이션 프로그램(866)은 메모리(862)로 로딩되고 운영 체제(864) 상에 또는 운영 체제와 연관되어 실행될 수 있다. 애플리케이션 프로그램의 예시는 전화 걸기 프로그램(phone dialer program), 전자메일 프로그램, 개인 정보 관리(PIM) 프로그램, 워드 프로세싱 프로그램, 스프레드시트 프로그램, 인터넷 브라우저 프로그램, 메시징 프로그램 등을 포함한다. 또한 시스템(802)은 메모리(862) 내에 비-휘발성 저장 영역(868)을 더 포함한다. 상기 비-휘발성 저장 영역(868)은 시스템(802)이 꺼질 때 손실되어서는 안 되는 영속 정보를 저장하도록 사용될 수 있다. 애플리케이션 프로그램(866)은 비-휘발성 저장 영역(868) 내 정보, 가령, 전자메일 애플리케이션 등에 사용되는 전자메일 또는 그 밖의 다른 메시지를 사용하고 저장할 수 있다. 동기화 애플리케이션(도시되지 않음)이 또한 시스템(802) 상에 존재하고 호스트 컴퓨터 상에 있는 대응하는 동기화 애플리케이션과 대화하도록 프로그램되어 비-휘발성 저장 영역(868)에 저장된 정보를 호스트 컴퓨터에 저장된 대응하는 정보와 동기화되도록 유지할 수 있다. 알다시피, 그 밖의 다른 애플리케이션이 메모리(862)로 로딩될 수 있고 모바일 컴퓨팅 장치(800) 상에서 실행될 수 있으며, 예를 들어 본 명세서에 기재된 협업적 검토 관리자(140)가 잇다.
시스템(802)이 하나 이상의 배터리로 구현될 수 있는 전력 공급장치(870)를 가진다. 전력 공급장치(870)는 배터리를 보충하거나 재충전하는 외부 전원, 가령, AC 어댑터 또는 전력을 공급받는 도킹 크래들을 더 포함할 수 있다. 또한 상기 시스템(802)은 라디오 주파수 통신을 송신하고 수신하는 기능을 수행하는 라디오(872)를 더 포함할 수 있다. 상기 라디오(872)는 통신 사업자 또는 서비스 제공자를 통해 시스템(802)과 "외부 세계"와의 무선 연결을 촉진시킨다. 라디오(872)로의 그리고 라디오로부터의 송신이 운영 체제(864) 제어 하에서 실시된다. 다시 말하면, 라디오(872)에 의해 수신되는 통신이 운영 체제(864)를 통해 애플리케이션 프로그램(866)으로 전달될 수 있으며, 그 반대 방향으로도 전달될 수 있다.
라디오(872)에 의해 시스템(802)은 다른 컴퓨팅 장치, 가령, 네트워크를 통해 통신할 수 있다. 상기 라디오(872)는 통신 매체의 하나의 예이다. 통신 매체는 일반적으로 변조된 데이터 신호, 가령, 반송파 또는 그 밖의 다른 전송 메커니즘으로 컴퓨터 판독형 명령, 데이터 구조, 프로그램 모듈, 또는 또 다른 데이터에 의해 구현될 수 있고, 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"라는 용어는 신호 내 정보를 인코딩하기 위한 방식으로 설정 또는 변경된 하나 이상의 특성을 갖는 신호를 의미한다. 비-제한적 예를 들면, 통신 매체는 유선 매체, 가령, 유선 네트워크 또는 직접 배선된 연결, 및 무선 매체, 가령, 음향, RF, 적외선 및 그 밖의 다른 무선 매체를 포함한다. 컴퓨터 판독형 매체라는 용어는 본 명세서에서 사용될 때 저장 매체와 통신 매체 모두를 포함한다.
시스템(802)의 이러한 실시예는 시각적 통지를 제공하도록 사용될 수 있는 시각적 지시자(820)를 이용하는 통지 및/또는 오디오 트랜스듀서(825)를 통해 가청 통지를 생성하는 오디오 인터페이스(874)를 제공한다. 도시된 실시예에서, 시각적 지시자(820)는 발광 다이오드(LED)이고 오디오 트랜스듀서(825)는 스피커이다. 이들 장치는 전력 공급장치(870)와 직접 연결되어, 프로세서(860) 및 그 밖의 다른 구성요소는 배터리 전력의 보존을 위해 셧 다운될 수 있더라도, 활성화될 때 통지 메커니즘에 의해 지시되는 지속시간 동안 온(on) 상태를 유지할 수 있다. 상기 LED는 장치의 전력 온 상태를 가리키도록 사용자가 조치를 취하기 전까지 계속 온(on)상태를 유지하도록 프로그램될 수 있다. 오디오 인터페이스(874)는 가청 신호를 사용자에게 제공하고 사용자로부터 가청 신호를 수신하도록 사용된다. 예를 들어, 오디오 트랜스듀서(825)로 연결되는 것에 추가로, 또한 오디오 인터페이스(874)는 마이크로폰으로 연결되어 가청 입력을 수신, 가령, 전화 대화를 촉진시킬 수 있다. 본 발명의 실시예에 따라, 또한 마이크로폰은 이하에서 기재될 바와 같이 통지의 제어를 촉진시키기 위해 오디오 센서로서 기능할 수 있다. 상기 시스템(802)은 정지 이미지, 비디오 스트림 등을 기록하기 위해 온-보드 카메라(830)의 동작을 가능하게 하는 비디오 인터페이스(876)를 더 포함할 수 있다.
시스템(802)을 구현하는 모바일 컴퓨팅 장치(800)는 추가 특징 또는 기능을 가질 수 있다. 예를 들어, 모바일 컴퓨팅 장치(800)는 추가 데이터 저장 장치(이동식 및/또는 비이동식), 가령, 자기 디스크, 광 디스크, 또는 테이프를 더 포함할 수 있다. 이러한 추가 저장장치는 비-휘발성 저장 영역(868)으로 도 8b에 도시되어 있다. 컴퓨터 저장 매체는 정보, 가령, 컴퓨터 판독형 명령, 데이터 구조, 프로그램 모듈 또는 그 밖의 다른 데이터의 저장을 위한 임의의 방법 또는 기법으로 구현되는 휘발성 및 비휘발성, 이동식 및 비-이동식 매체를 포함할 수 있다.
모바일 컴퓨팅 장치(800)에 의해 생성 또는 캡처되고 시스템(802)을 통해 저장되는 데이터/정보가, 앞서 기재된 바와 같이 모바일 컴퓨팅 장치(800) 상에 로컬하게 저장되거나, 상기 데이터는 라디오(872)를 통해 또는 또는 모바일 컴퓨팅 장치(800)와 상기 모바일 컴퓨팅 장치(800)와 연관된 별도의 컴퓨팅 장치, 가령, 분산 컴퓨팅 네트워크, 가령 인터넷에서의 서버 컴퓨터 간의 유선 연결을 통해 장치에 의해 액세스될 수 있는 임의의 개수의 저장 매체 상에 저장될 수 있다. 알려져 있다시피, 이러한 데이터/정보는 라디오(872) 또는 분산 컴퓨팅 네트워크에 의해 모바일 컴퓨팅 장치(800)를 통해 액세스될 수 있다. 마찬가지로, 이러한 데이터/정보는 잘 알려진 데이터/정보 전송 및 저장 수단, 가령, 전자 메일 및 협업적 데이터/정보 공유 시스템에 따라 저장되고 사용되도록 컴퓨팅 장치들 간에 쉽게 전송될 수 있다.
도 9는 앞서 기재된 바와 같이 하나 이상의 클라이언트 장치로 협업적 검토 관리자(140)를 제공하기 위한 시스템의 아키텍처의 하나의 실시예를 도시한다. 상기 협업적 검토 관리자(140)에 의해 개발되거나 대화되거나 편집되는 콘텐츠가 서로 다른 통신 채널 또는 그 밖의 다른 저장 유형에 저장될 수 있다. 예를 들어, 디렉토리 서비스(922), 웹 포탈(924), 메일박스 서비스(926), 즉석 메시징 저장소(928), 또는 소셜 네트워킹 사이트(930)를 이용해 다양한 문서가 저장될 수 있다. 상기 협업적 검토 관리자(140)는 이들 유형의 시스템 등 중 임의의 것을 이용하여, 본 명세서에 기재되는 바와 같이, 코멘트를 통한 공동-저작 충돌 해결을 가능하게 할 수 있다. 서버(920)는 협업적 검토 관리자(140)를 클라이언트에게 제공할 수 있다. 한 가지 예를 들면, 서버(920)는 웹을 통해 협업적 검토 관리자(140)를 제공하는 웹 서버일 수 있다. 상기 서버(920)는 네트워크(915)를 통해 웹을 통해 클라이언트로 협업적 검토 관리자(140)를 제공할 수 있다. 예를 들어, 클라이언트 컴퓨팅 장치(918)는 컴퓨팅 장치(900)로서 구현되고 개인 컴퓨터(918a), 태블릿 컴퓨팅 장치(918b), 및/또는 모바일 컴퓨팅 장치(918c)(가령, 스마트 폰)로 구현될 수 있다. 클라이언트 컴퓨팅 장치(918)의 이들 실시예 중 임의의 것은 저장소(916)로부터 콘텐츠를 획득할 수 있다. 다양한 실시예에서, 본 발명을 구성하는 컴퓨팅 장치들 간 통신을 위해 사용되는 네트워크의 유형의 비-제한적 예를 들면, 인터넷, 인트라넷, 광역 네트워크(WAN), 로컬 영역 네트워크(LAN), 및 가상 사설 네트워크(VPN)가 있다. 본 출원에서, 네트워크는 기업 네트워크 및 클라이언트 컴퓨팅 장치가 기업 네트워크를 액세스할 때 통과하는 네트워크(즉, 클라이언트 네트워크)를 포함한다. 하나의 실시예에서, 클라이언트 네트워크는 기업 네트워크의 일부이다. 또 다른 실시예에서, 클라이언트 네트워크는 외부 가용 입력 포인트, 가령, 게이트웨이, 원격 액세스 프로토콜, 또는 공공 또는 사설 인터넷 어드레스를 통과하는 기업 네트워크를 액세스하는 별도의 네트워크이다.
본 명세서에서 제공되는 하나 이상의 실시예의 기재 및 도시가 청구되는 발명의 범위를 어떠한 식으로도 제한하거나 한정하려는 의도가 없다. 본 명세서에 제공되는 실시예, 예시 및 상세사항은 사상을 전달하고 다른 이들이 청구되는 발명의 최상의 모드를 만들고 사용하도록 하는 데 충분한 것으로 여겨진다. 청구되는 발명은 본 명세서에 제공된 임의의 실시예, 예시, 또는 상세사항에 한정되지 않는다. 조합되어 또는 개별적으로 도시 및 기재되었는지에 무관하게, 특정 특징부 세트를 갖는 실시예를 생성하기 위해 다양한 특징부(구조적 및 방법적)가 선택적으로 포함되거나 생략된 것으로 의도된다. 본 명세서의 기재 및 도시를 제공받으면, 해당 분야의 통상의 기술자라면 본 발명의 더 넓은 양태의 사상 및 상기 더 넓은 범위 내에 있는 본 명세서에서 구현되는 일반적인 발명의 개념 내에 속하는 변형, 수정, 및 대안 실시예를 생각할 수 있다.

Claims (10)

  1. 공동-저작 충돌(co-authoring conflict)을 관리하기 위한 방법으로서,
    복수의 사용자에 의한 문서에 대한 동시 액세스를 제공하는 단계,
    상기 문서에 만들어진 첫 번째 변경의 저장 지시를 수신하는 단계,
    상기 문서에 대한 상기 첫 번째 변경을 저장하는 단계,
    상기 문서에 만들어진 추가 변경의 저장 지시를 수신하는 단계,
    상기 문서에 만들어진 상기 추가 변경이 상기 문서에 만들어진 상기 첫 번째 변경과 충돌하는지 여부를 판정하는 단계, 및
    충돌이 판정된 경우, 충돌하는 변경을 상기 문서에 충돌 코멘트(conflict comment)로서 저장하는 단계를 포함하는
    공동-저작 충돌을 관리하기 위한 방법.
  2. 제1항에 있어서,
    상기 문서에 만들어진 상기 추가 변경이 상기 문서에 만들어진 상기 첫 번째 변경과 충돌하는지 여부를 판정하는 단계는 상기 추가 변경이 상기 문서에서 위치하는 곳을 식별하는 단계 및 상기 추가 변경 및 상기 첫 번째 변경이 동일한 콘텐츠 블록 내에 있는지 여부를 판정하는 단계를 포함하는
    공동-저작 충돌을 관리하기 위한 방법.
  3. 제1항에 있어서,
    상기 충돌하는 변경을 문서의 디스플레이 내에 충돌 코멘트로서 제공하는 단계를 더 포함하는
    공동-저작 충돌을 관리하기 위한 방법.
  4. 제3항에 있어서,
    충돌하는 변경을 수락하기 위한 선택 가능한 기능 컨트롤을 제공하는 단계를 더 포함하는
    공동-저작 충돌을 관리하기 위한 방법.
  5. 제4항에 있어서,
    충돌하는 변경을 수락하는 것은 원본 콘텐츠 또는 이전에 저장된 변경을 수락된 충돌하는 변경으로 대체하는 것을 포함하는
    공동-저작 충돌을 관리하기 위한 방법.
  6. 공동-저작 충돌을 관리하기 위한 시스템으로서,
    복수의 사용자에 의해 동시에 액세스될 수 있는 문서를 저장하도록 구성된 저장소(store), 및
    협업적 검토 관리자를 포함하되, 상기 협업적 검토 관리자는
    복수의 사용자에 의한 문서의 동시 액세스를 제공하며,
    상기 문서에 만들어진 첫 번째 변경의 저장 지시를 수신하고 - 상기 첫 번째 변경은 제 1 사용자에 의해 만들어짐 - ,
    상기 첫 번째 변경을 상기 문서에 저장하며,
    상기 문서에 만들어진 추가 변경의 저장 지시를 수신하고 - 상기 추가 변경은 제 2 사용자에 의해 만들어짐 - ,
    상기 변경이 상기 문서 내 위치하는 곳을 식별하며,
    상기 문서에 만들어진 상기 추가 변경과 상기 문서에 만들어진 상기 첫 번째 변경이 동일한 콘텐츠 블록 내에 위치하는지 여부를 판정하며,
    상기 문서에 만들어진 상기 추가 변경과 상기 문서에 만들어진 상기 첫 번째 변경이 동일한 콘텐츠 블록 내에 위치하는 경우, 상기 추가 변경이 충돌하는 변경이라고 판정하고,
    상기 충돌하는 변경을 상기 문서 내에 충돌 코멘트로서 저장하도록 동작하는
    공동-저작 충돌을 관리하기 위한 시스템.
  7. 제6항에 있어서,
    상기 협업적 검토 관리자는 충돌하는 변경을 상기 문서의 디스플레이 내에 충돌 코멘트로서 제공하도록 더 동작하는
    공동-저작 충돌을 관리하기 위한 시스템
  8. 제7항에 있어서,
    상기 충돌 코멘트는 변경이 수신되기 전의 원본 콘텐츠, 상기 문서에 만들어진 상기 첫 번째 변경, 및 상기 문서에 만들어진 상기 추가 변경을 포함하는,
    공동-저작 충돌을 관리하기 위한 시스템.
  9. 제8항에 있어서,
    상기 충돌 코멘트는 충돌하는 변경을 수락하기 위한 선택 가능한 기능 컨트롤을 더 포함하며, 충돌하는 변경을 수락하는 것은 원본 콘텐츠 또는 이전에 저장된 변경을 상기 수락된 충돌하는 변경으로 대체하는 것을 포함하는
    공동-저작 충돌을 관리하기 위한 시스템.
  10. 공동-저작 충돌을 관리하기 위한 컴퓨터 실행형 명령을 갖는 컴퓨터 판독형 매체로서,
    복수의 사용자에 의한 문서의 동시 액세스를 제공하는 것,
    상기 문서에 만들어지는 첫 번째 변경의 저장 지시를 수신하는 것 - 상기 첫 번째 변경은 제 1 사용자에 의해 만들어짐 - ,
    상기 문서에 대한 상기 첫 번째 변경을 저장하는 것,
    상기 문서에 만들어진 추가 변경을 저장 지시를 수신하는 것 - 상기 추가 변경은 제 2 사용자에 의해 만들어짐 - ,
    상기 추가 변경이 상기 문서 내에 위치하는 곳을 식별하는 것,
    상기 문서에 만들어진 상기 추가 변경과 상기 문서에 만들어진 상기 첫 번째 변경이 동일한 콘텐츠 블록 내에 위치하는지 여부를 판정하는 것,
    상기 문서에 만들어지는 상기 추가 변경과 상기 문서에 만들어지는 상기 첫 번째 변경이 동일한 콘텐츠 블록 내에 위치하는 경우, 상기 추가 변경이 충돌하는 변경이라고 판정하는 것,
    상기 충돌하는 변경을 상기 문서에 충돌 코멘트로서 저장하는 것,
    상기 충돌하는 변경을 상기 문서의 디스플레이에 충돌 코멘트로서 제공하는 것 - 상기 충돌 코멘트는 변경이 수신되기 전 원본 콘텐츠, 상기 문서에 만들어진 상기 첫 번째 변경, 상기 문서에 만들어진 상기 추가 변경, 및 충돌하는 변경을 수락하기 위한 선택 가능한 기능 컨트롤을 포함하고, 충돌하는 변경을 수락하는 것은 상기 원본 콘텐츠 또는 이전에 저장된 변경을 수락된 충돌하는 변경으로 대체하는 것을 포함함 - , 및
    사용자가 코멘트, 응답 또는 충돌하는 변경과 연관된 메시지를 제공할 수 있도록 하는 코멘팅 기능(commenting functionality)을 제공하는 것을 포함하는
    컴퓨터 판독형 매체.
KR1020147027367A 2012-03-30 2013-03-18 문서 코멘트를 이용한 공동-저작 충돌 추적 기법 KR20140147093A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/436,051 2012-03-30
US13/436,051 US9286597B2 (en) 2012-03-30 2012-03-30 Tracking co-authoring conflicts using document comments
PCT/US2013/032739 WO2013148382A1 (en) 2012-03-30 2013-03-18 Tracking co-authoring conflicts using document comments

Publications (1)

Publication Number Publication Date
KR20140147093A true KR20140147093A (ko) 2014-12-29

Family

ID=49236384

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147027367A KR20140147093A (ko) 2012-03-30 2013-03-18 문서 코멘트를 이용한 공동-저작 충돌 추적 기법

Country Status (7)

Country Link
US (1) US9286597B2 (ko)
EP (1) EP2831763B1 (ko)
JP (1) JP2015518206A (ko)
KR (1) KR20140147093A (ko)
CN (1) CN104221011B (ko)
TW (1) TW201346596A (ko)
WO (1) WO2013148382A1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018004025A1 (ko) * 2016-06-28 2018-01-04 주식회사 한글과컴퓨터 개체에 대한 스타일 동시 편집을 지원하는 문서 협업 장치 및 그 동작 방법
WO2018004020A1 (ko) * 2016-06-27 2018-01-04 주식회사 한글과컴퓨터 마크업 언어 기반 문서에 대한 동시 편집 정합성 검증 장치 및 방법
KR101880508B1 (ko) * 2017-04-27 2018-07-20 주식회사 한글과컴퓨터 웹 문서에서 목록 생성을 지원하는 웹 문서 편집 지원 장치 및 방법
KR101880507B1 (ko) * 2017-04-21 2018-07-20 주식회사 한글과컴퓨터 웹 문서에 삽입된 도형의 크기 조정을 지원하는 클라이언트 단말 장치 및 그 동작 방법
KR20190041627A (ko) * 2017-10-13 2019-04-23 주식회사 한글과컴퓨터 협업 시의 충돌을 방지하는 방법 및 이를 이용하는 장치

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9529785B2 (en) 2012-11-27 2016-12-27 Google Inc. Detecting relationships between edits and acting on a subset of edits
US11716392B2 (en) * 2013-04-24 2023-08-01 Blackberry Limited Updating an application at a second device based on received user input at a first device
US9436659B2 (en) * 2013-06-21 2016-09-06 3Rb Llc Transferring annotations between documents displayed side by side
US9971752B2 (en) 2013-08-19 2018-05-15 Google Llc Systems and methods for resolving privileged edits within suggested edits
US9075780B2 (en) 2013-10-01 2015-07-07 Workiva Inc. System and method for comparing objects in document revisions and displaying comparison objects
US9348803B2 (en) * 2013-10-22 2016-05-24 Google Inc. Systems and methods for providing just-in-time preview of suggestion resolutions
CN104503953A (zh) * 2013-12-31 2015-04-08 天津书生软件技术有限公司 一种文档操作同步方法及装置
US9442908B2 (en) 2014-06-16 2016-09-13 Workiva Inc. Method and computing device for facilitating review of a document
US10318618B2 (en) * 2014-06-18 2019-06-11 Microsoft Technology Licensing, Llc Consistent views of partitioned data in eventually consistent systems
US9785693B2 (en) * 2014-06-30 2017-10-10 Microsoft Technology Licensing, Llc Intelligent conflict detection and semantic expression of document edits
US9779073B2 (en) 2014-07-29 2017-10-03 Microsoft Technology Licensing, Llc Digital document change conflict resolution
US9503402B2 (en) * 2014-08-18 2016-11-22 Dropbox, Inc. Managing drafts of electronic documents across client devices
US9860308B2 (en) * 2014-11-25 2018-01-02 International Business Machines Corporation Collaborative creation of annotation training data
US10198411B2 (en) 2015-05-01 2019-02-05 Microsoft Technology Licensing, Llc Storing additional document information through change tracking
US10909080B2 (en) * 2015-05-04 2021-02-02 Microsoft Technology Licensing, Llc System and method for implementing shared document edits in real-time
US9626347B2 (en) 2015-06-08 2017-04-18 International Business Machines Corporation Managing file changes made during a review process
US10565297B2 (en) 2015-06-26 2020-02-18 Microsoft Technology Licensing, Llc. Rumored changes for real-time coauthoring
JP6547488B2 (ja) * 2015-07-24 2019-07-24 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP6537038B2 (ja) * 2015-08-06 2019-07-03 株式会社プロフィールド 情報処理装置、情報処理方法、およびプログラム
US10353926B2 (en) * 2015-11-17 2019-07-16 Microsoft Technology Licensing, Llc Unified activity service
US10489378B2 (en) * 2015-12-08 2019-11-26 Sap Se Detection and resolution of conflicts in data synchronization
US11971860B2 (en) 2015-12-28 2024-04-30 Dropbox, Inc. Embedded folder views
JP6620669B2 (ja) * 2016-05-12 2019-12-18 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
US10339211B1 (en) * 2016-05-31 2019-07-02 Google Llc Systems and methods for synchronizing comments to an electronic document across platforms
WO2018026033A1 (ko) 2016-08-04 2018-02-08 주식회사 한글과컴퓨터 문서의 동시 편집을 지원하는 문서 협업 지원 장치 및 그 동작 방법
US20180158243A1 (en) * 2016-12-02 2018-06-07 Google Inc. Collaborative manipulation of objects in virtual reality
US10223340B2 (en) * 2016-12-13 2019-03-05 Microsoft Technology Licensing, Llc Document linking in an email system
US10740553B2 (en) 2017-04-17 2020-08-11 Microsoft Technology Licensing, Llc Collaborative review workflow graph
JP6870479B2 (ja) * 2017-05-30 2021-05-12 オムロン株式会社 Hmi開発支援装置、hmi開発支援方法、および、hmi開発支援プログラム
US11048695B2 (en) * 2017-09-12 2021-06-29 Sap Se Context-aware data commenting system
US11741300B2 (en) * 2017-11-03 2023-08-29 Dropbox, Inc. Embedded spreadsheet data implementation and synchronization
US10678675B2 (en) 2017-11-14 2020-06-09 Microsoft Technology Licensing, Llc Assistive, language-agnostic debugging with multi-collaborator control
JP7073756B2 (ja) * 2018-02-02 2022-05-24 富士通株式会社 併合方法、併合装置、および併合プログラム
US11030395B2 (en) 2018-05-30 2021-06-08 Microsoft Technology Licensing, Llc Top-align comments: just-in-time highlights and automatic scrolling
CN109033057B (zh) * 2018-08-13 2023-06-02 抖音视界有限公司 内容协同编辑方法、装置、电子设备和计算机可读介质
CN111383295B (zh) * 2018-12-27 2023-10-13 珠海金山数字网络科技有限公司 一种多玩家协同在线场景编辑系统、方法及装置
CN110263286A (zh) * 2019-06-24 2019-09-20 北京字节跳动网络技术有限公司 在线协作文档的处理方法及设备
US11755583B2 (en) 2020-04-14 2023-09-12 Capital One Services, Llc Database creation using domain-specific information
JP7075689B1 (ja) * 2021-07-19 2022-05-26 株式会社BoostDraft 変更履歴統合プログラム、及び変更履歴統合システム
US11824824B2 (en) * 2021-10-28 2023-11-21 Microsoft Technology Licensing, Llc Method and system of managing and displaying comments

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006239A (en) 1996-03-15 1999-12-21 Microsoft Corporation Method and system for allowing multiple users to simultaneously edit a spreadsheet
US6067551A (en) 1997-11-14 2000-05-23 Microsoft Corporation Computer implemented method for simultaneous multi-user editing of a document
WO2002017115A2 (en) 2000-08-21 2002-02-28 Thoughtslinger Corporation Simultaneous multi-user document editing system
US20040177343A1 (en) 2002-11-04 2004-09-09 Mcvoy Lawrence W. Method and apparatus for understanding and resolving conflicts in a merge
US7904323B2 (en) * 2003-06-23 2011-03-08 Intel Corporation Multi-team immersive integrated collaboration workspace
US7593943B2 (en) 2005-01-14 2009-09-22 Microsoft Corporation Method and system for synchronizing multiple user revisions to a shared object
US7792788B2 (en) 2005-03-04 2010-09-07 Microsoft Corporation Method and system for resolving conflicts operations in a collaborative editing environment
US20070023507A1 (en) 2005-07-26 2007-02-01 Microsoft Corporation Contact data structure and management
US20070101256A1 (en) * 2005-11-01 2007-05-03 Charles Simonyi Perfect source control
CA2565847A1 (en) 2006-10-27 2008-04-27 Cognos Incorporated System and method for controlling model editing and merging
US7975223B2 (en) 2007-04-23 2011-07-05 Microsoft Corporation Move tracking with conflict resolution
US20090249224A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Simultaneous collaborative review of a document
US8352870B2 (en) * 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8417666B2 (en) 2008-06-25 2013-04-09 Microsoft Corporation Structured coauthoring
US8090681B2 (en) 2008-06-26 2012-01-03 Microsoft Corporation Resolving conflicts in content management systems
CN102934105B (zh) * 2010-04-12 2016-10-05 谷歌公司 在驻留的文字处理器中的协作光标
US8707187B2 (en) * 2010-09-16 2014-04-22 Siemens Products Product Lifecycle Management Software Inc. Concurrent document markup

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018004020A1 (ko) * 2016-06-27 2018-01-04 주식회사 한글과컴퓨터 마크업 언어 기반 문서에 대한 동시 편집 정합성 검증 장치 및 방법
US11093705B2 (en) 2016-06-27 2021-08-17 Hancom Inc. Apparatus and method of verifying simultaneous edit match for markup language-based document
WO2018004025A1 (ko) * 2016-06-28 2018-01-04 주식회사 한글과컴퓨터 개체에 대한 스타일 동시 편집을 지원하는 문서 협업 장치 및 그 동작 방법
US10489495B2 (en) 2016-06-28 2019-11-26 Hancom Inc. Document collaboration apparatus for supporting simultaneous editing of styles for objects and operating method thereof
KR101880507B1 (ko) * 2017-04-21 2018-07-20 주식회사 한글과컴퓨터 웹 문서에 삽입된 도형의 크기 조정을 지원하는 클라이언트 단말 장치 및 그 동작 방법
KR101880508B1 (ko) * 2017-04-27 2018-07-20 주식회사 한글과컴퓨터 웹 문서에서 목록 생성을 지원하는 웹 문서 편집 지원 장치 및 방법
KR20190041627A (ko) * 2017-10-13 2019-04-23 주식회사 한글과컴퓨터 협업 시의 충돌을 방지하는 방법 및 이를 이용하는 장치

Also Published As

Publication number Publication date
TW201346596A (zh) 2013-11-16
CN104221011B (zh) 2017-06-23
CN104221011A (zh) 2014-12-17
WO2013148382A1 (en) 2013-10-03
EP2831763B1 (en) 2020-02-26
EP2831763A1 (en) 2015-02-04
JP2015518206A (ja) 2015-06-25
EP2831763A4 (en) 2015-12-02
US20130262373A1 (en) 2013-10-03
US9286597B2 (en) 2016-03-15

Similar Documents

Publication Publication Date Title
KR20140147093A (ko) 문서 코멘트를 이용한 공동-저작 충돌 추적 기법
US10885268B2 (en) Showing presence of multiple authors in a spreadsheet
CN109219824B (zh) 利用用户访问权限来自动共享文档
US10466882B2 (en) Collaborative co-authoring via an electronic user interface
KR102122104B1 (ko) 웹 애플리케이션에서의 협업 통신 기법
US20190361580A1 (en) Progressive presence user interface for collaborative documents
US10635540B2 (en) Modern document save and synchronization status
US9626068B2 (en) Automated system for organizing presentation slides
US10936797B2 (en) Collaborative document editing using state-based revision
KR102362659B1 (ko) 다중 장치 환경에서의 애플리케이션/문서 협업
US10409779B2 (en) Document sharing via logical tagging
US20150281150A1 (en) Generating content items out of an electronic communication workflow
JP2017517044A (ja) 没入型ドキュメントビュー
US11137879B2 (en) Contextual conversations for a collaborative workspace environment
US10210483B2 (en) Creating recurring appointments
US20230291775A1 (en) Collaborative browsing
US20180124131A1 (en) Re-homing embedded web content via cross-iframe signaling

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination