KR20210144513A - 복수의 단말 간 콘텐츠 공유 방법 및 시스템 - Google Patents

복수의 단말 간 콘텐츠 공유 방법 및 시스템 Download PDF

Info

Publication number
KR20210144513A
KR20210144513A KR1020200081762A KR20200081762A KR20210144513A KR 20210144513 A KR20210144513 A KR 20210144513A KR 1020200081762 A KR1020200081762 A KR 1020200081762A KR 20200081762 A KR20200081762 A KR 20200081762A KR 20210144513 A KR20210144513 A KR 20210144513A
Authority
KR
South Korea
Prior art keywords
content
user
board
contents
access
Prior art date
Application number
KR1020200081762A
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 US17/009,077 priority Critical patent/US11418551B2/en
Publication of KR20210144513A publication Critical patent/KR20210144513A/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
    • G06Q10/103Workflow collaboration or project management
    • 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
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • 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
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • H04L65/4015Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/608
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • H04L67/2842
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Document Processing Apparatus (AREA)

Abstract

콘텐츠 공유 방법이 제공된다. 본 발명에 따른 컴퓨터 장치에 의해 수행되는 콘텐츠 공유 방법은 마스터 보드(Board)에 복수의 콘텐츠를 로드(Load)하는 단계, 상기 복수의 콘텐츠 각각에 대한 사용자의 접근 권한을 확인하는 단계, 및 상기 확인된 접근 권한에 기초하여, 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 가진 제1 콘텐츠를 상기 사용자의 클라이언트 장치에 공유하는 단계를 포함하고, 상기 클라이언트 장치는 상기 마스터 보드에 대응되는 사용자 보드에 상기 제1 콘텐츠를 표시하되, 상기 제1 콘텐츠가 표시된 상기 마스터 보드 상의 제1 위치와 대응되는 상기 사용자 보드 상의 제2 위치에 상기 제1 콘텐츠를 표시한다.

Description

복수의 단말 간 콘텐츠 공유 방법 및 시스템{METHOD AND SYSTEM FOR SHARING CONTENTS AMONG A PLIRALITY OF DEVICES}
본 발명은 복수의 단말 간 콘텐츠 공유 방법 및 시스템에 관한 것이다. 보다 자세하게는, 협업 공간의 콘텐츠들을 콘텐츠 단위로 다른 단말과 공유할 수 있는 콘텐츠 공유 방법 및 이를 위한 시스템에 관한 것이다.
정보통신 기술의 발달에 따라 비대면 협업에 대한 수요가 증가하면서, 다수 사용자 간에 콘텐츠를 공유하고 편집할 수 있는 온라인 협업 서비스가 주목받고 있다. 종래의 일반적인 온라인 협업 서비스는 서버-클라이언트 아키텍처를 기반으로 한다. 즉, 서버가 공유할 콘텐츠를 각 클라이언트 장치에 배포하면, 클라이언트 단에서 콘텐츠에 대한 사용자의 편집이 발생하고 클라이언트 장치는 그 편집 정보를 서버에 송신한다. 그리고, 서버는 각 클라이언트 장치로부터 수집된 편집 정보를 반영하여 콘텐츠를 최신의 상태로 업데이트한 후, 업데이트 된 콘텐츠를 각 클라이언트 장치에 재배포한다.
미국공개특허 제 2011-0010635 호 (2018.05.21 공개)
본 발명의 몇몇 실시예를 통해 해결하고자 하는 기술적 과제는, 다수 사용자간 콘텐츠 공유를 위해 협업 공간 상에 복수의 콘텐츠를 동시에 표시하는 협업 서비스에 있어, 콘텐츠에 대한 각 사용자의 접근 권한을 개별 콘텐츠 단위로 관리할 수 있는 콘텐츠 공유 방법 및 시스템을 제공하는 것이다.
본 발명의 몇몇 실시예를 통해 해결하고자 하는 다른 기술적 과제는, 협업 공간 상의 콘텐츠들을 부분적으로만 공유하는 경우에도, 해당 콘텐츠의 전체 협업 공간 내에서의 맥락과 흐름을 유지할 수 있도록 하는 콘텐츠 공유 방법 및 시스템을 제공하는 것이다.
본 발명의 몇몇 실시예를 통해 해결하고자 하는 또 다른 기술적 과제는, 개별 콘텐츠에 대한 접근 권한을 콘텐츠의 콘텍스트 분석을 통해 자동으로 관리할 수 있는 콘텐츠 공유 방법 및 시스템을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한, 본 발명의 실시예들에 따른 컴퓨터 장치에 의해 수행되는 콘텐츠 공유 방법은 마스터 보드(Board)에 복수의 콘텐츠를 로드(Load)하는 단계, 상기 복수의 콘텐츠 각각에 대한 사용자의 접근 권한을 확인하는 단계, 및 상기 확인된 접근 권한에 기초하여 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 가진 제1 콘텐츠를 상기 사용자의 클라이언트 장치에 공유하는 단계를 포함하고, 상기 클라이언트 장치는 상기 마스터 보드에 대응되는 사용자 보드에 상기 제1 콘텐츠를 표시하되, 상기 제1 콘텐츠가 표시된 상기 마스터 보드 상의 제1 위치와 대응되는 상기 사용자 보드 상의 제2 위치에 상기 제1 콘텐츠를 표시한다.
일 실시예로서, 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 갖지 않은 제2 콘텐츠는 상기 클라이언트 장치에 공유되지 않고, 상기 클라이언트 장치는 상기 제2 콘텐츠가 표시된 상기 마스터 보드 상의 제3 위치와 대응되는 상기 사용자 보드 상의 제4 위치를 여백 영역으로 나타낼 수 있다.
일 실시예로서, 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 갖지 않은 제2 콘텐츠는 상기 클라이언트 장치에 공유되지 않고, 상기 클라이언트 장치는 상기 제2 콘텐츠가 표시된 상기 마스터 보드 상의 제3 위치와 대응되는 상기 사용자 보드 상의 제4 위치를 식별 가능한 UI로 나타낼 수 있다.
일 실시예로서, 상기 클라이언트 장치는 상기 식별 가능한 UI에 대한 사용자 입력에 응답하여 상기 제2 콘텐츠에 대한 접근 권한을 요청할 수 있다.
일 실시예로서, 상기 클라이언트 장치는 상기 식별 가능한 UI에 마우스 커서가 위치하면 상기 제2 콘텐츠에 대한 접근 권한 요청 버튼을 표시하고, 상기 접근 권한 요청 버튼에 대한 사용자 선택에 응답하여 상기 제2 콘텐츠에 대한 접근 권한을 요청할 수 있다.
일 실시예로서, 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여하는 단계를 더 포함하고, 상기 접근 권한을 부여하는 단계는 상기 마스터 보드에 표시된 상기 제1 콘텐츠 위로 상기 사용자를 나타내는 심볼(Symbol)을 위치시키는 것에 의해 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여할 수 있다.
일 실시예로서, 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여하는 단계를 더 포함하고, 상기 접근 권한을 부여하는 단계는 상기 제1 콘텐츠의 보안 점수를 스코어링(Scoring)하는 단계, 및 상기 보안 점수에 기초하여 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 선택적으로 부여하는 단계를 포함할 수 있다.
일 실시예로서, 상기 보안 점수는 상기 제1 콘텐츠의 콘텍스트(Context) 분석에 기초하여 스코어링 될 수 있다.
일 실시예로서, 상기 제1 콘텐츠에 대한 접근 권한을 선택적으로 부여하는 단계는 상기 사용자의 권한 레벨을 확인하는 단계, 및 상기 사용자의 권한 레벨이 상기 보안 점수에 기초한 접근 권한 부여 요건을 충족하면 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여하는 단계를 포함할 수 있다.
일 실시예로서, 상기 사용자가 상기 제1 콘텐츠에 대한 편집 권한을 가지고 있을 때, 상기 사용자 보드 상에서 상기 제1 콘텐츠가 편집되거나 위치가 변경되면 상기 편집 또는 위치 변경에 상응하도록 상기 마스터 보드 상에서도 상기 제1 콘텐츠가 편집 또는 위치가 변경될 수 있다.
상기 기술적 과제를 해결하기 위한, 본 발명의 실시예들에 따른 콘텐츠 공유 시스템은 마스터 보드(Board)를 생성하고, 상기 생성된 마스터 보드에 복수의 콘텐츠를 로드(Load)하며, 상기 복수의 콘텐츠 각각에 대한 사용자들의 접근 권한을 확인하여 상기 사용자들 각각에 대해 상기 복수의 콘텐츠 중 접근 권한을 가진 콘텐츠만을 선택적으로 공유하는 서비스 서버를 포함하고, 상기 서비스 서버는 상기 복수의 콘텐츠 각각에 대한 상기 사용자들의 접근 권한을 상기 마스터 보드의 메타 데이터로서 관리한다.
일 실시예로서, 상기 마스터 보드에 대응되는 사용자 보드를 생성하고 상기 복수의 콘텐츠 중 상기 서비스 서버로부터 공유된 콘텐츠들을 상기 사용자 보드에 표시하는 클라이언트 장치를 더 포함하고, 상기 사용자 보드에 표시되는 상기 공유된 콘텐츠들 각각은 상기 공유된 콘텐츠들 각각이 표시된 상기 마스터 보드 상의 위치들과 대응되는 상기 사용자 보드 상의 위치들에 각각 표시될 수 있다.
상기 기술적 과제를 해결하기 위한, 본 발명의 실시예들에 따른 콘텐츠 공유 방법을 실행하기 위해 컴퓨팅 장치와 결합되는 컴퓨터 프로그램은 마스터 보드(Board)에 복수의 콘텐츠를 로드(Load)하는 단계, 상기 복수의 콘텐츠 각각에 대한 사용자의 접근 권한을 확인하는 단계, 및 상기 확인된 접근 권한에 기초하여 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 가진 제1 콘텐츠를 상기 사용자의 클라이언트 장치에 공유하는 단계를 실행시키도록 컴퓨터로 판독가능한 기록매체에 저장되고, 상기 클라이언트 장치는 상기 마스터 보드에 대응되는 사용자 보드에 상기 제1 콘텐츠를 표시하되 상기 제1 콘텐츠가 표시된 상기 마스터 보드 상의 제1 위치와 대응되는 상기 사용자 보드 상의 제2 위치에 상기 제1 콘텐츠를 표시한다.
도 1은 본 발명에 따른 콘텐츠 공유 방법 및 시스템이 적용되는 시스템 환경을 나타내는 도면이다.
도 2는 도 1의 시스템 환경(1000)을 통해 제공되는 온라인 협업 서비스의 예시적인 형태를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른, 콘텐츠 공유 방법을 개념적으로 설명하는 예시도이다.
도 4 및 도 5는 본 발명의 일 실시예에 따른, 콘텐츠 공유 방법을 통해 배포된 콘텐츠의 사용자 보드 내 배치를 결정하는 방법을 예시적으로 설명하는 도면이다.
도 6은 본 발명의 확장 실시예로서, 공유되지 않은 콘텐츠를 식별 가능한 UI로 표시하여 사용자가 새로운 콘텐츠에 대한 권한 요청을 할 수 있도록 가이드하는 실시예를 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른, 콘텐츠 공유 방법을 단계적으로 설명하기 위한 순서도이다.
도 8은 본 발명의 다른 실시예에 따른, 콘텐츠 공유 방법을 단계적으로 설명하기 위한 순서도이다.
도 9는 도 8의 사용자에게 콘텐츠에 대한 접근 권한을 부여하는 단계(S220)를 더욱 구체화 한 일 실시예를 나타내는 순서도이다.
도 10은 도 9의 콘텐츠의 보안 점수를 스코어링하는 단계(S221)를 부연 설명하기 위한 예시적인 개념도이다.
도 11은 도 9의 콘텐츠에 대한 접근 권한을 선택적으로 부여하는 단계(S222)를 더욱 구체화한 일 실시예를 나타내는 순서도이다.
도 12는 도 11의 방법을 부연 설명하기 위한 예시적인 개념도이다.
도 13은 본 발명의 다양한 실시예들이 구현되는 컴퓨팅 장치(500)의 예시적인 하드웨어 구성을 나타내는 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 발명의 기술적 사상을 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.
도 1은 본 발명에 따른 콘텐츠 공유 방법이 적용되는 온라인 협업 서비스의 시스템 환경을 나타내는 도면이다. 도 1을 참조하면, 시스템 환경(1000)은 온라인 협업 서비스를 제공하는 서비스 서버(100), 서비스 서버(100)를 통해 콘텐츠를 공유하고 편집하는 복수의 클라이언트 장치(1, 2, 3), 및 API 통신을 통해 서비스 서버(100)에 콘텐츠를 다운로드하거나 서비스 서버(100)를 통해 콘텐츠의 편집 내용을 업데이트 받는 클라우드 서버(4)를 포함한다.
서비스 서버(100)는 복수의 클라이언트 장치(1, 2, 3)를 위한 협업 공간(또는, 보드)을 제공하고, 협업 공간 상에 다양한 콘텐츠를 로드(Load)하여 표시한다. 이때, 협업 공간에 로드/표시되는 콘텐츠는 서비스 서버(100)가 클라우드 서버(4)로부터 다운로드 받은 콘텐츠일 수 있다.
로드/표시되는 콘텐츠는 다양한 데이터 포맷의 콘텐츠일 수 있다. 예를 들어, 상기 콘텐츠는 MS-Word 파일, 이미지 파일, Excel 파일, 또는 MPEG 파일일 수 있다. 이 경우, 일반적으로 콘텐츠를 로드하기 위해서는, 해당 콘텐츠를 읽을 수 있는 전용의 외부 어플리케이션을 호출하여야 하여야 한다 (예를 들어, Excel 형식의 콘텐츠를 로드하기 위해서는 Excel 프로그램을 호출). 그러나, 각 콘텐츠를 로드할 때마다 전용의 외부 어플리케이션을 실행시키게 되면, 서비스 서버(100)의 연산량이 증가하고 시스템 자원이 소모되는 문제가 있다. 이러한 문제는 협업 공간에 동시에 로드되는 컨텐츠의 개수가 많아질수록 더욱 극대화된다.
서비스 서버(100)는 이를 피하기 위해, 콘텐츠를 로드할 때 각 콘텐츠를 협업 공간에서의 사용을 위한 특정 데이터 포맷으로 변환하여 로드한다. 예를 들어, 서비스 서버(100)는 다양한 데이터 포맷(예를 들어, *.docx, *.jpg, *.xlsx, 또는 *.mpg 등)의 콘텐츠들을 먼저 json(JavaScript Object Notation) 형식으로 변환한 후, 이를 협업 공간 상에 로드한다. 이에 따르면, 각 콘텐츠를 협업 공간에서 읽기 및 편집이 가능한 단일 데이터 포맷(여기서는, json)으로 변환하여 사용하므로, 별도의 외부 프로그램을 호출하지 않아도 다양한 데이터 포맷의 콘텐츠들을 로드할 수 있으며 상기 단일 데이터 포맷에 맞춰진 전용화 된 편집기를 이용하여 각 콘텐츠들을 편리하게 편집할 수 있다. 이후 로드된 콘텐츠들은 복수의 클라이언트 장치(1, 2, 3)에 전파(Broadcasting) 및 공유된다.
각 클라이언트 장치(1, 2, 3)는 서비스 서버(100)가 공유하는 콘텐츠들을 사용자에게 표시하고, 콘텐츠에 대한 사용자의 편집이 있는 경우 이를 서비스 서버(100)에 전송한다.
서비스 서버(100)는 각 클라이언트 장치(1, 2, 3)로부터 사용자의 편집 행위들을 수신하고 이를 실시간으로 json 형식의 콘텐츠에 반영한 후, 그 결과를 각 클라이언트 장치(1, 2, 3)에 다시 전파한다. 그리고, 콘텐츠에 대한 모든 편집이 완료되면, 그 편집 내용을 클라우드 서버(4)에 저장된 원본 콘텐츠에 반영하기 위해, 편집이 완료된 json 형식의 콘텐츠를 원래의 데이터 포맷(예를 들어, *.docx, *.jpg, *.xlsx, 또는 *.mpg 등)으로 변환한 후 API 통신을 통해 클라우드 서버(4)에 업데이트한다.
이러한 본 발명에 따른 온라인 협업 서비스에 의하면, 별도의 외부 어플리케이션을 호출하지 않아도 다양한 데이터 포맷의 콘텐츠들을 공유 및 편집할 수 있으며, 콘텐츠에 대한 개별 편집들이 완료된 후 이를 최종적으로 클라우드 서버(4)에 업데이트할 때만 API 통신을 호출하므로 클라우드 서버에 대한 API 트랜잭션이 최소화될 수 있다.
도 2는 도 1에 도시된 시스템 환경(1000)을 통해 제공되는 온라인 협업 서비스의 예시적인 형태를 나타내는 도면이다. 도 2에는 복수의 클라이언트 장치(1, 2, 3, 도 1 참조)에 공유되는 협업 공간의 예시적인 형태로서, 보드(Board, 10, 또는 화이트보드)가 도시된다.
보드(10)는 콘텐츠 공유 및 공동 편집을 위해 서비스 서버(100, 도 1 참조)가 제공하는 협업 공간이다. 보드(10)에는 프리젠테이션 콘텐츠(21), 도표 콘텐츠(22), 텍스트 콘텐츠(23), 또는 이미지 콘텐츠(24) 등 다양한 콘텐츠들이 동시에 표시될 수 있으며, 보드(10) 표시되는 콘텐츠들(21, 22, 23, 24)은 앞서 설명한 바와 같이 보드(10)에서 읽기 및 편집이 가능한 단일 데이터 포맷(예를 들어, json)으로 변환된 콘텐츠들일 수 있다.
도 1에서 설명한 바와 같이, 서비스 서버(100)는 보드(10)에 표시된 콘텐츠들(21, 22, 23, 24)을 클라이언트 장치(1, 2, 3)에 전파하고, 클라이언트 장치(1, 2, 3)로부터 각 콘텐츠(11, 12, 13, 14)에 대한 편집 행위를 수신한 후 이를 반영하여 다시 각 클라이언트 장치(1, 2, 3)에 전파한다. 그리고, 콘텐츠(11, 12, 13, 14)에 대한 모든 편집이 완료되면, 콘텐츠(11, 12, 13, 14)를 원래의 데이터 포맷으로 변환한 후 원격의 클라우드 서버(4, 도 1 참조)에 업데이트하게 된다.
한편, 보드(10)에 콘텐츠들(11, 12, 13, 14)은 개별 사용자가 각 콘텐츠에 대해 접근 권한이 있는지 여부에 따라 선별적으로 개별 사용자의 클라이언트 장치(1, 2, 3)에 공유될 수 있다. 이하에서는, 이와 관련된 실시예들을 설명하기로 한다.
도 3은 본 발명의 일 실시예에 따른, 콘텐츠 공유 방법을 개념적으로 설명하는 예시도이다. 도 3을 참조하면, 마스터 보드(10) 및 사용자 보드(20, 30)가 도시된다. 마스터 보드(10)는 도 1 및 2에서 설명된 서비스 서버(100)가 생성하는 보드(10)이고, 사용자 보드(20, 30)는 개별 사용자의 클라이언트 장치가 생성하는 보드를 의미한다. 여기서는, 사용자 A의 클라이언트 장치는 제1 클라이언트 장치(1, 도 1 참조)이고, 사용자 B의 클라이언트 장치는 제2 클라이언트 장치(2, 도 1 참조)인 것으로 가정한다. 그리고, 제1 클라이언트 장치(1)가 생성하는 사용자 보드를 사용자 보드 A(20)이고, 제2 클라이언트 장치(2)가 생성하는 사용자 보드를 사용자 보드 B(30)로 지칭하기로 한다.
마스터 보드(10)에는 협업 공간에 제공된 전체 콘텐츠(11, 12, 13, 14)가 표시된다. 각 콘텐츠(11, 12, 13, 14)에는 해당 콘텐츠에 대한 개별 사용자들의 접근 권한이 설정되어 있다. 가령, 도 3에 도시된 것처럼 제1 콘텐츠(11)는 사용자 A 및 사용자 B가 접근 권한을 갖고, 제2 콘텐츠(12)는 사용자 A가 접근 권한을 갖고, 제3 콘텐츠(13)는 누구도 접근 권한이 없으며, 제4 콘텐츠(14)는 사용자 B가 접근 권한을 갖는다.
이때, 제1 클라이언트 장치(1) 및 제2 클라이언트 장치(2)가 서비스 서버(100)에 접속하면, 서비스 서버(100)는 마스터 보드(10)에 로드된 콘텐츠들(11, 12, 13, 14)을 개별 콘텐츠에 대한 사용자의 접근 권한에 기초하여 각 클라이언트 장치(1, 2)에 선택적으로 공유한다.
예를 들어, 사용자 A는 제1 콘텐츠(11) 및 제2 콘텐츠(12)에 접근 권한이 있으므로, 서비스 서버(100)는 마스터 보드(10)의 콘텐츠 중 제1 콘텐츠(11)와 제2 콘텐츠(12)만을 선별하여 제1 클라이언트 장치(1)에 공유한다. 제1 클라이언트 장치(1)는 공유 받은 콘텐츠들(11, 12)을 사용자 보드 A(20)에 표시한다. 한편, 이때, 공유된 콘텐츠(11, 12)에 대한 사용자 A의 접근 권한은 각 콘텐츠(11, 12)마다 유형이 상이할 수 있다. 예를 들어, 제1 콘텐츠(11)에 대한 사용자 A의 접근 권한은 읽기 및 편집이 가능한 "READ/WRITE"권한이고, 제2 콘텐츠(12)에 대한 사용자 A의 접근 권한은 읽기만 가능하고 편집은 불가능한 "READ ONLY"권한일 수 있다. 이때, 사용자가 "READ/WRITE"권한(또는, 편집 권한)을 가진 콘텐츠에 대해서는, 사용자가 자신의 사용자 보드 상에서 해당 콘텐츠를 편집하거나 위치를 변경시키는 경우, 상기 편집 또는 위치 변경에 상응하도록 마스터 보드 상에서도 해당 콘텐츠가 편집 또는 위치가 변경될 수 있다.
사용자 B에게도 유사한 콘텐츠 공유 방법이 적용된다. 사용자 B는 제1 콘텐츠(11) 및 제4 콘텐츠(14)에 접근 권한이 있으므로, 서비스 서버(100)는 마스터 보드(10)의 콘텐츠 중 제1 콘텐츠(11)와 제4 콘텐츠(14)만을 선별하여 제2 클라이언트 장치(2)에 공유한다. 제2 클라이언트 장치(2)는 공유 받은 콘텐츠들(11, 14)을 사용자 보드 B(30)에 표시한다. 앞서와 같이, 이때도 공유된 콘텐츠(11, 134에 대한 사용자 B의 접근 권한은 각 콘텐츠(11, 13)마다 유형이 상이할 수 있다.
한편, 제3 콘텐츠(13)는 사용자 A와 사용자 B 모두 접근 권한이 없으므로, 서비스 서버(100)는 제1 클라이언트 장치(1)와 제2 클라이언트 장치(2) 어느 쪽에도 제3 콘텐츠(13)를 공유하지 않는다.
이상에서 설명한 본 발명에 따른 콘텐츠 공유 방법에 의하면, 다수 사용자간 콘텐츠 공유를 위해 협업 공간 상에 복수의 콘텐츠를 동시에 표시하는 협업 서비스에 있어, 콘텐츠에 대한 각 사용자의 접근 권한을 개별 콘텐츠 단위로 관리할 수 있으며, 각 사용자의 클라이언트 장치에 해당 사용자가 접근 권한을 보유한 콘텐츠만을 선택적으로 공유할 수 있게 된다.
도 4 및 도 5는 본 발명의 일 실시예에 따른, 콘텐츠 공유 방법을 통해 배포된 콘텐츠의 사용자 보드 내 배치를 결정하는 방법을 예시적으로 설명하는 도면이다.
도 4를 참조하면, 서비스 서버(100, 도 1 참조)로부터 콘텐츠를 공유 받은 클라이언트 장치(1, 2, 도 1 참조)는 마스터 보드(10) 상에 표시된 상기 콘텐츠의 위치와 대응되는 사용자 보드(20, 30) 상의 위치에 상기 콘텐츠를 배치 및 표시한다. 여기서'대응되는 위치'의 의미는 비율적으로 동일한 위치를 의미할 수 있다.
예를 들어, 마스터 보드(10)와 사용자 보드(20)의 크기가 동일하다면,'대응되는 위치'보드 내의 동일한 좌표 위치를 나타낼 수 있다. 가령, 마스터 보드(10) 내에 배치된 콘텐츠의 기준점 좌표(예를 들어 왼쪽 위 모서리 좌표)가 (10, 10), 높이가 20 너비가 20이라고 가정하자.
이때, 마스터 보드(10)와 사용자 보드(20)의 크기가 각각 1280 * 2460으로 동일하다면, 상기 마스터 보드(10)에 대응되는 사용자 보드(20) 상의 위치는 기준점 좌표가 (10, 10), 높이가 20 너비가 20로 마스터 보드(10)에서와 동일한 위치일 수 있다.
반면에, 마스터 보드(10)의 크기는 1280 * 2460이지만 사용자 보드(20)의 크기는 640 * 1230으로 1/2로 축소된다면, 상기 마스터 보드(10)에 대응되는 사용자 보드(20) 상의 위치는 기준점 좌표가 (5, 5), 높이가 10 너비가 10으로 마스터 보드(10)에 비해 1/2 배율만큼 축소된 위치일 수 있다.
이에 대해 구체적인 예를 들어 설명하면, 제1 클라이언트 장치(1)는 서비스 서버(100)로부터 마스터 보드(10)에 로드된 제1 콘텐츠(11)를 공유 받는다. 그리고, 제1 클라이언트 장치(1)는 공유 받은 제1 콘텐츠(11)를 사용자 보드 A(20) 상에 표시할 때, 제1 콘텐츠(11)의 마스터 보드(10) 상의 위치(A)와 대응되는 사용자 보드 A(20) 상 위치(A')에 제1 콘텐츠(11)를 배치 및 표시한다. 마찬가지로, 제1 클라이언트 장치(1)는 서비스 서버(100)로부터 공유 받은 제2 콘텐츠(12)를 표시할 때도, 제2 콘텐츠(11)의 마스터 보드(10) 상의 위치와 대응되는 사용자 보드 A(20) 상 위치에 제1 콘텐츠(12)를 배치 및 표시한다.
제2 클라이언트 장치(2)가 공유 받은 콘텐츠(11, 14)를 사용자 보드 B(30)에 배치 및 표시함에 있어서도 동일한 방법이 적용된다.
이러한 방식에 따르면, 비록 개별 클라이언트 장치(1, 2)는 마스터 보드(10)의 콘텐트들(11, 12, 13, 14)을 부분적으로만 공유 받지만, 적어도 공유 받은 콘텐츠에 대해서는 마스터 보드(10)와 동일한 위치 및 배치를 유지하게 된다. 이는 개별 클라이언트 장치(1, 2)에 공유된 각 콘텐츠들이 마스터 보드(10) 내에서의 맥락과 흐름을 개별 사용자 보드(20, 30) 내에서도 동일하게 유지할 수 있도록 도와준다. 이에 대해 도 5를 참조하여 부연한다.
도 5에서는 마스터 보드(10)가 복수의 구역으로 구획 어 있고, 구역에 'Day1','Day2','Day3'의 표식이 마킹 것을 볼 수 있다. 다만, 이는 본 실시예의 명확한 이해를 돕기 위해 편의상 구획 및 마킹을 표시한 것 뿐이며, 본 발명의 범위가 이에 한정되지는 않는다.
마스터 보드(10)에는 여러가지 콘텐츠(11, 12, 13, 14)가 동시에 표시되고 있지만, 그 중'Day1'으로 마킹 된 구역에 있는 콘텐츠(11)는 첫번째 날 도출된 주제와 관련된 콘텐츠이고,'Day2'로 마킹 된 구역에 있는 콘텐츠(12, 13)는 두번째 날 도출된 주제와 관련된 콘텐츠이고,'Day3'으로 마킹 된 구역에 있는 콘텐츠(14)는 세번째 날 도출된 주제와 관련된 콘텐츠라고 가정하자.
이 경우 사용자는 사용자 보드 A(20) 상에 콘텐츠가 배치된 위치만 보고도 해당 콘텐츠가 언제 논의된 콘텐츠인지 판단할 수 있다. 가령, 사용자는 사용자 보드 A(20)의 제1 콘텐츠(11)의 배치된 위치를 보고 제1 콘텐츠(11)가 첫번째 날 논의된 주제와 관련된 콘텐츠임을 알 수 있고, 사용자 보드 A(20)의 제2 콘텐츠(12)의 배치된 위치를 보고 제2 콘텐츠(12)가 두번째 날 논의된 주제와 관련된 콘텐츠임을 알 수 있다.
이처럼, 마스터 보드(10) 상의 위치와 대응되는 사용자 보드 A(20) 상 위치에 공유 받은 콘텐츠(11, 12)를 배치하게 되면, 마스터 보드(10) 내에서의 전체적인 콘텐츠들의 맥락과 흐름을 사용자 보드 A(20) 상에서도 그대로 알 수 있게 된다.
이는 온라인 협업에 있어 중요한 특징이 될 수 있다. 온라인 협업에 참여하는 사람들이 서로 협의를 하며'자, 다 같이 첫번째 날 얘기했던 내용을 살펴봅시다'라는 얘기가 나올 때, 각 참여자들은 자신의 사용자 보드에 표시된 콘텐츠의 배치 위치만 보고도 어느 것이 이제 얘기하려는 주제와 관련된 콘텐츠인지 쉽게 알 수 있다.
만약, 본 실시예와 달리, 공유 받은 콘텐츠(11, 12)를 마스터 보드(10) 상의 위치와 다른 위치에 배치한다면, 각 참여자들은 논의를 시작한 콘텐츠를 서로 지정하고 확인하는 데 많은 불편함을 겪게 될 것이다. 예를 들어, 제1 클라이언트 장치(1)가 공유 받은 제1 콘텐츠(11)를 도 5의 도시된 위치가 아닌, 다른 위치(예를 들어, 도 5의 B1, 또는 B2)에 배치하였다고 가정하자. 이 경우, 앞서와 같이'자, 다 같이 첫번째 날 얘기했던 내용을 살펴봅시다'라고 얘기를 할 때, 사용자 A는 자신의 사용자 보드(20)에서 해당 콘텐츠를 찾는 데 곤란함을 겪을 것이고, 다른 참여자와의 온라인 협업에도 어려움을 겪을 것이다.
한편, 여기서는 설명의 명확한 이해를 돕기 위해 마스터 보드(10) 및 사용자 보드(20)에 구획 및 마킹이 표시된 것으로 예시하였지만, 본 발명의 범위가 이에 한정되지는 않는다. 가령, 마스터 보드(10) 및 사용자 보드(20)에 아무런 구획 및 마킹이 없더라도, 각 콘텐츠의 보드(10, 20) 내 배치 위치는 맥락적 의미를 가질 수 있다. 예를 들어, 마스터 보드(10)에 총 세개의 프로젝트가 논의되고 있고, 그 중 제1 프로젝트와 관련된 주제는 마스터 보드(10)의 왼쪽에서 관련 콘텐츠를 표시하고 논의하며, 제2 프로젝트와 관련된 주제는 마스터 보드(10)의 중앙에서 관련 콘텐츠를 표시하고 논의하며, 제3 프로젝트와 관련된 주제는 마스터 보드(10)의 오른쪽에서 관련 콘텐츠를 표시하고 논의한다고 가정하자. 이때, 세 개 프로젝트에 모두 참여하는 사용자는 각 프로젝트와 관련된 콘텐츠들을 모두 자신의 사용자 보드에서 확인할 수 있지만, 그 배치 위치를 참고하여, 제1 프로젝트와 관련된 논의를 할 때는 사용자 보드의 왼쪽에 위치한 콘텐츠들을 주로 참조하며, 제2 프로젝트와 관련된 논의를 할 때는 사용자 보드의 중앙에 위치한 콘텐츠들을 주로 참조하며, 제3 프로젝트와 관련된 논의를 할 때는 사용자 보드의 오른쪽에 위치한 콘텐츠들을 주로 참조하는 방식으로 보다 효율적으로 온라인 협업을 수행할 수 있을 것이다.
도 6은 본 발명의 확장 실시예로서, 공유되지 않은 콘텐츠를 식별 가능한 UI로 표시하여 사용자가 새로운 콘텐츠에 대한 권한 요청을 할 수 있도록 가이드하는 실시예를 설명하기 위한 도면이다.
앞서 도 3의 실시예에서, 각 사용자 보드(20, 30)에는 공유되지 않은 콘텐츠는 표시되지 않고, 공유되지 않은 콘텐츠의 마스터 보드(10) 상 위치에 대응되는 사용자 보드 상 위치는 여백 영역으로 남겨졌다.
이에 반해, 도 6의 실시예에서는, 클라이언트 장치에 공유되지 않은 콘텐츠라도, 마스터 보드(10) 상 위치에 대응되는 사용자 보드 상 위치를 식별 가능한 UI로 표시함으로써, 비록 사용자 보드에 콘텐츠는 표시되어 있지만 자신이 공유 받지 못한 마스터 보드(10) 상의 콘텐츠가 해당 위치에 존재한다는 것을 사용자에게 인지시키게 된다. 이하, 도면을 참조하여 구체적인 예를 들어 설명한다.
도 6을 참조하면, 제1 클라이언트 장치(1)는 서비스 서버(100)로부터 제1 콘텐츠(11) 및 제2 콘텐츠(12)만을 공유 받는다. 그리고, 제1 클라이언트 장치(1)는 공유 받은 콘텐츠들(11, 12)을 마스터 보드(10) 상에 위치에 대응되는 사용자 보드 A(20)의 위치에 배치 및 표시한다.
그와 더불어, 제1 클라이언트 장치(1)는 서비스 서버(100)로부터 제3 콘텐츠(13) 및 제4 콘텐츠(14)를 공유 받지는 않지만, 마스터 보드(10) 상에서의 제3 콘텐츠(13) 및 제4 콘텐츠(14)의 위치에 대한 정보는 전달받아, 그와 대응되는 사용자 보드 A(20) 상의 위치에 식별 가능한 UI(13H, 14H)를 표시한다. 이때, 식별 가능한 UI는 음영 표시, 하이라이트 표시, 콘텐츠의 실루엣, 또는 아이콘 등 다양한 UI를 포함할 수 있다.
사용자는 사용자 보드 A(20) 상에 표시된 식별 가능한 UI(13H, 14H)를 보고 마스터 보드(10)의 해당 위치에 콘텐츠가 존재함을 알 수 있고, 필요시 해당 콘텐츠에 대한 접근 권한을 서비스 서버(100)에 요청할 수 있다.
일 실시예로서, 제1 클라이언트 장치(1)는 식별 가능한 UI(13H, 14H)에 마우스 커서가 위치하면 해당 콘텐츠(13, 14)에 대한 접근 권한 요청 버튼을 표시하고, 표시된 접근 권한 요청 버튼을 사용자가 선택하면 그에 응답하여 상기 콘텐츠(13, 14)에 대한 접근 권한을 서비스 서버(100)에 요청할 수 있다.
이러한 방법을 통해, 사용자는 자신이 공유 받지 못한 콘텐츠의 존재를 인식하고, 이에 대한 접근 권한을 요청할 수 있게 된다.
도 7은 본 발명의 일 실시예에 따른, 콘텐츠 공유 방법을 단계적으로 설명하기 위한 순서도이다. 도 7에서는 이상에서 설명한 콘텐츠 공유 방법을 순서도로 풀어서 설명한다.
S110 단계에서, 서비스 서버(100)는 마스터 보드(10)에 복수의 콘텐츠(11, 12, 13, 14)를 로드한다.
S120 단계에서, 서비스 서버(100)에 클라이언트 장치(1, 2)가 접속하면, 서비스 서버(100)는 로드한 복수의 콘텐츠 각각에 대한 사용자의 접근 권한을 확인한다.
S130 단계에서, 서비스 서버(100)는 앞서 확인한 접근 권한에 기초하여, 마스터 보드(10)에 로드된 복수의 콘텐츠 중 각 클라이언트 장치(1, 2)의 사용자가 접근 권한을 가진 콘텐츠들이 무엇인지 확인하고, 각 사용자가 접근 권한을 가진 콘텐츠들만 선별하여 해당 클라이언트 장치(1, 2)에 공유한다.
S140 단계에서, 각 클라이언트 장치(1, 2)는 서비스 서버(100)로부터 콘텐츠들을 공유 받고, 클라이언트 장치(1, 2)가 생성한 사용자 보드(20, 30)에 공유 받은 콘텐츠들을 표시하되, 마스터 보드(10) 상의 각 콘텐츠의 위치와 대응되는 상기 사용자 보드 상의 위치에 해당 콘텐츠를 표시한다.
도 8은 본 발명의 다른 실시예에 따른, 콘텐츠 공유 방법을 단계적으로 설명하기 위한 순서도이다. 도 8의 실시예는, 도 7에서 설명한 실시예와 많은 부분이 유사하다. 다만, 사용자에게 콘텐츠에 대한 접근 권한을 부여하는 단계가 추가되는 점이 상이하다.
S210 단계에서, 서비스 서버(100)는 마스터 보드(10)에 복수의 콘텐츠(11, 12, 13, 14)를 로드한다.
S220 단계에서, 서비스 서버(100)는 로드된 복수의 콘텐츠(11, 12, 13, 14) 중 적어도 일부 콘텐츠에 대해 특정 사용자에게 접근 권한을 부여한다.
일 실시예로서, 서비스 서버(100)는 해당 콘텐츠에 대한 관리 권한을 가지고 있는 관리자가 마스터 보드(10)에 표시된 상기 콘텐츠 위로 권한을 부여하고자 하는 사용자를 나타내는 심볼(Symbol)을 위치시키는 것에 의해 상기 사용자에게 상기 콘텐츠에 대한 접근 권한을 부여할 수 있다.
또는, 서비스 서버(100)는 콘텐츠에 내재한 속성을 분석하여, 그 결과에 부합하는 사용자에게 상기 콘텐츠에 대한 접근 권한을 자동으로 부여할 수 있다. 이에 대해 도 9를 참조하여 보다 자세히 설명한다.
도 9는 도 8에 도시된 콘텐츠에 대한 접근 권한을 부여하는 단계(S220)를 더욱 구체화 한 일 실시예를 나타내는 순서도로서, 콘텐츠에 내재한 속성을 분석하여 사용자에게 콘텐츠에 대한 접근 권한을 자동으로 부여하는 실시예를 설명한다.
S221 단계에서, 서비스 서버(100)는 마스터 보드(10)에 로드된 콘텐츠의 보안 점수를 스코어링(Scoring)한다. 이때, 보안 점수는 상기 콘텐츠의 콘텍스트(Context) 분석에 기초하여 스코어링 될 수 있다.
이에 대해, 도 10을 참조하면, 서비스 서버(10)는 콘텐츠(가령, 제1 콘텐츠, 11)로부터 단어 및 이미지를 추출하여 이를 자연어 처리하고, 이를 데이터 마이닝에 기초하여 수집한 보안 관련 데이터 세트들과 비교하여, 각 형태소 및 단어들의 중요도를 판단하는 콘텍스트 분석을 수행한다. 그리고, 상기 콘텍스트 분석의 결과로서 상기 콘텐츠에 대한 보안 점수를 산출한다.
한편, 추출된 단어 및 이미지를 자연어 처리하고, 데이터 마이닝을 통해 형태소 및 단어를 분석하는 콘텍스트 분석 방법은 그 예시적인 방법들이 당해 기술분야에 널리 알려져 있으므로, 여기서는 그에 대한 자세한 설명을 생략한다.
다시 도 9로 돌아가면, S222 단계에서, 서비스 서버(100)는 앞서 산출된 보안 점수에 기초하여 사용자에게 상기 콘텐츠에 대한 접근 권한을 선택적으로 부여한다. 이에 대해 도 11 및 도 12를 참조하여 부연 설명한다.
도 11을 참조하면, S222a 단계에서, 서비스 서버(100)는 사용자의 권한 레벨을 확인한다.
S222b 단계에서, 서비스 서버(100)는 사용자의 확인된 권한 레벨이 콘텐츠에 대한 접근 권한 부여 요건을 충족하는지 판단한다. 이때, 상기 접근 권한 부여 요건은 도 9의 S221 단계에서 산출된 콘텐츠의 보안 점수에 기초하여 결정될 수 있다.
예를 들어, 도 12에 도시된 표를 참조하면, 콘텐츠의 보안 점수에 따른 콘텐츠 등급 및 공유 범위가 예시된다. 콘텐츠의 보안 점수가 80점 이상이면 해당 콘텐츠의 등급은 1등급으로, 콘텐츠의 공유 범위는 소유자로 한정된다. 이 경우, 해당 콘텐츠에 대해서는 오직 소유자에게만 접근 권한이 부여된다. 한편, 콘텐츠의 보안 점수가 80점 미만 50점 이상상이면 해당 콘텐츠의 등급은 2등급으로, 콘텐츠의 공유 범위는 소유자 및 관리자로 제한된다. 이 경우, 해당 콘텐츠에 대해서는 소유자 및 관리자에게만 접근 권한이 부여된다. 유사하게, 콘텐츠의 보안 점수가 50점 미만이면 해당 콘텐츠의 등급은 3등급으로, 콘텐츠의 공유 범위는 소유자, 관리자 외에 일반 참여자에게 까지 확장된다. 이 경우, 해당 콘텐츠에 대해서는 소유자, 관리자 및 일반 참여자에게 접근 권한이 부여된다.
다시 도 11로 돌아가서, S222b 단계에서, 서비스 서버(100)는 앞서 산출된 보안 점수에 기초하여 사용자의 권한 레벨이 접근 권한 부여 요건을 충족하는 지 확인한다. 가령, 콘텐츠의 보안 점수가 70점이라면, 해당 콘텐츠의 접근 권한은 소유자와 관리자만 부여 받을 수 있다. 이때, 사용자의 권한 레벨이 소유자라면, 서비스 서버(100)는 사용자의 권한 레벨이 접근 권한 부여 요건을 충족하는 것으로 판단할 것이다. 반면에, 사용자의 권한 레벨이 일반 참여자라면, 서비스 서버(100)는 사용자의 권한 레벨이 접근 권한 부여 요건을 충족하지 않는 것으로 판단할 것이다.
사용자의 권한 레벨이 접근 권한 부여 요건을 충족하면, 본 실시예는 S222c 단계로 진행하여, 서비스 서버(100)는 사용자에게 해당 콘텐츠에 대한 접근 권한을 부여하게 된다.
그렇지 않고, 사용자의 권한 레벨이 접근 권한 부여 요건을 충족하지 않는다면, 본 실시예는 S222d 단계로 진행하여, 서비스 서버(100)는 사용자에게 해당 콘텐츠에 대한 접근 권한을 부여하지 않게 된다.
이상에서 설명한 본 발명의 실시예에 따르면, 개별 콘텐츠에 대한 접근 권한을 콘텐츠의 콘텍스트 분석을 통해 자동으로 부여/관리할 수 있게 된다.
다시 도 8로 돌아가면, S230 단계에서, 서비스 서버(100)에 클라이언트 장치(1, 2)가 접속하면, 서비스 서버(100)는 로드한 복수의 콘텐츠 각각에 대해 앞서 부여된 접근 권한을 포함하는 전체적인 사용자의 접근 권한을 확인한다.
한편, 이후의 S240 내지 S250 단계는 앞서 도 7에서 설명한 S130 단계 및 S140 단계와 실질적으로 동일하므로, 여기서는 그에 대한 설명을 생략한다.
이하에서는, 도 13을 참조하여 본 발명의 다양한 실시예에서 설명된 방법들이 구현되는 예시적인 컴퓨팅 장치(500)에 대하여 설명하도록 한다. 예를 들어, 도 1의 서비스 서버(100) 또는 클라이언트 장치(1, 2, 3) 등이 도 13의 컴퓨팅 장치(500)로 구현될 수 있다.
도 13은 컴퓨팅 장치(500)를 나타내는 예시적인 하드웨어 구성도이다.
도 13에 도시된 바와 같이, 컴퓨팅 장치(500)는 하나 이상의 프로세서(510), 버스(550), 통신 인터페이스(570), 프로세서(510)에 의하여 수행되는 컴퓨터 프로그램(591)을 로드(load)하는 메모리(530)와, 컴퓨터 프로그램(591)를 저장하는 스토리지(590)를 포함할 수 있다. 다만, 도 13에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 13에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.
프로세서(510)는 컴퓨팅 장치(500)의 각 구성의 전반적인 동작을 제어한다. 프로세서(510)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서 중 적어도 하나를 포함하여 구성될 수 있다. 또한, 프로세서(510)는 본 발명의 다양한 실시예들에 따른 방법/동작을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 컴퓨팅 장치(500)는 하나 이상의 프로세서를 구비할 수 있다.
메모리(530)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(530)는 본 발명의 다양한 실시예들에 따른 방법/동작들을 실행하기 위하여 스토리지(590)로부터 하나 이상의 프로그램(591)을 로드(load) 할 수 있다. 메모리(530)의 예시는 RAM이 될 수 있으나, 이에 한정되는 것은 아니다.
버스(550)는 컴퓨팅 장치(500)의 구성 요소 간 통신 기능을 제공한다. 버스(550)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.
통신 인터페이스(570)는 컴퓨팅 장치(500)의 유무선 인터넷 통신을 지원한다. 통신 인터페이스(570)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(570)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.
스토리지(590)는 하나 이상의 컴퓨터 프로그램(591)을 비임시적으로 저장할 수 있다. 스토리지(590)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.
컴퓨터 프로그램(591)은 본 발명의 다양한 실시예들에 따른 방법/동작들이 구현된 하나 이상의 인스트럭션들을 포함할 수 있다. 예를 들어, 컴퓨터 프로그램(591)은 마스터 보드(Board)에 복수의 콘텐츠를 로드(Load)하는 동작, 상기 복수의 콘텐츠 각각에 대한 사용자의 접근 권한을 확인하는 동작, 및 상기 확인된 접근 권한에 기초하여 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 가진 제1 콘텐츠를 상기 사용자의 클라이언트 장치에 공유하는 단계를 실행시키는 인스트럭션들을 포함하고, 상기 클라이언트 장치는 상기 마스터 보드에 대응되는 사용자 보드에 상기 제1 콘텐츠를 표시하되 상기 제1 콘텐츠가 표시된 상기 마스터 보드 상의 제1 위치와 대응되는 상기 사용자 보드 상의 제2 위치에 상기 제1 콘텐츠를 표시할 수 있다. 컴퓨터 프로그램(591)이 메모리(530)에 로드 되면, 프로세서(510)는 상기 하나 이상의 인스트럭션들을 실행시킴으로써 본 발명의 다양한 실시예들에 따른 방법/동작들을 수행할 수 있다.
지금까지 설명된 본 발명의 기술적 사상은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 발명이 다른 구체적인 형태로도 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명에 의해 정의되는 기술적 사상의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (13)

  1. 컴퓨터 장치에 의해 수행되는 콘텐츠 공유 방법에 있어서,
    마스터 보드(Board)에 복수의 콘텐츠를 로드(Load)하는 단계;
    상기 복수의 콘텐츠 각각에 대한 사용자의 접근 권한을 확인하는 단계; 및
    상기 확인된 접근 권한에 기초하여, 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 가진 제1 콘텐츠를 상기 사용자의 클라이언트 장치에 공유하는 단계를 포함하고,
    상기 클라이언트 장치는,
    상기 마스터 보드에 대응되는 사용자 보드에 상기 제1 콘텐츠를 표시하되, 상기 제1 콘텐츠가 표시된 상기 마스터 보드 상의 제1 위치와 대응되는 상기 사용자 보드 상의 제2 위치에 상기 제1 콘텐츠를 표시하는,
    콘텐츠 공유 방법.
  2. 제2 항에 있어서,
    상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 갖지 않은 제2 콘텐츠는 상기 클라이언트 장치에 공유되지 않고,
    상기 클라이언트 장치는,
    상기 제2 콘텐츠가 표시된 상기 마스터 보드 상의 제3 위치와 대응되는 상기 사용자 보드 상의 제4 위치를 여백 영역으로 나타내는,
    콘텐츠 공유 방법.
  3. 제1 항에 있어서,
    상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 갖지 않은 제2 콘텐츠는 상기 클라이언트 장치에 공유되지 않고,
    상기 클라이언트 장치는,
    상기 제2 콘텐츠가 표시된 상기 마스터 보드 상의 제3 위치와 대응되는 상기 사용자 보드 상의 제4 위치를 식별 가능한 UI로 나타내는,
    콘텐츠 공유 방법.
  4. 제3 항에 있어서,
    상기 클라이언트 장치는,
    상기 식별 가능한 UI에 대한 사용자 입력에 응답하여 상기 제2 콘텐츠에 대한 접근 권한을 요청하는,
    콘텐츠 공유 방법.
  5. 제4 항에 있어서,
    상기 클라이언트 장치는,
    상기 식별 가능한 UI에 마우스 커서가 위치하면 상기 제2 콘텐츠에 대한 접근 권한 요청 버튼을 표시하고, 상기 접근 권한 요청 버튼에 대한 사용자 선택에 응답하여 상기 제2 콘텐츠에 대한 접근 권한을 요청하는,
    콘텐츠 공유 방법.
  6. 제1 항에 있어서,
    상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여하는 단계를 더 포함하고,
    상기 접근 권한을 부여하는 단계는,
    상기 마스터 보드에 표시된 상기 제1 콘텐츠 위로 상기 사용자를 나타내는 심볼(Symbol)을 위치시키는 것에 의해 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여하는,
    콘텐츠 공유 방법.
  7. 제1 항에 있어서,
    상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여하는 단계를 더 포함하고,
    상기 접근 권한을 부여하는 단계는,
    상기 제1 콘텐츠의 보안 점수를 스코어링(Scoring)하는 단계; 및
    상기 보안 점수에 기초하여 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 선택적으로 부여하는 단계를 포함하는,
    콘텐츠 공유 방법.
  8. 제7 항에 있어서,
    상기 보안 점수는,
    상기 제1 콘텐츠의 콘텍스트(Context) 분석에 기초하여 스코어링 되는,
    콘텐츠 공유 방법.
  9. 제7 항에 있어서,
    상기 제1 콘텐츠에 대한 접근 권한을 선택적으로 부여하는 단계는,
    상기 사용자의 권한 레벨을 확인하는 단계; 및
    상기 사용자의 권한 레벨이 상기 보안 점수에 기초한 접근 권한 부여 요건을 충족하면, 상기 사용자에게 상기 제1 콘텐츠에 대한 접근 권한을 부여하는 단계를 포함하는,
    콘텐츠 공유 방법.
  10. 제1 항에 있어서,
    상기 사용자가 상기 제1 콘텐츠에 대한 편집 권한을 가지고 있을 때, 상기 사용자 보드 상에서 상기 제1 콘텐츠가 편집되거나 위치가 변경되면, 상기 편집 또는 위치 변경에 상응하도록 상기 마스터 보드 상에서도 상기 제1 콘텐츠가 편집 또는 위치가 변경되는,
    콘텐츠 공유 방법.
  11. 마스터 보드(Board)를 생성하고, 상기 생성된 마스터 보드에 복수의 콘텐츠를 로드(Load)하며, 상기 복수의 콘텐츠 각각에 대한 사용자들의 접근 권한을 확인하여 상기 사용자들 각각에 대해 상기 복수의 콘텐츠 중 접근 권한을 가진 콘텐츠만을 선택적으로 공유하는 서비스 서버를 포함하고,
    상기 서비스 서버는 상기 복수의 콘텐츠 각각에 대한 상기 사용자들의 접근 권한을 상기 마스터 보드의 메타 데이터로서 관리하는,
    콘텐츠 공유 시스템.
  12. 제11 항에 있어서,
    상기 마스터 보드에 대응되는 사용자 보드를 생성하고, 상기 복수의 콘텐츠 중 상기 서비스 서버로부터 공유된 콘텐츠들을 상기 사용자 보드에 표시하는 클라이언트 장치를 더 포함하고,
    상기 사용자 보드에 표시되는 상기 공유된 콘텐츠들 각각은,
    상기 공유된 콘텐츠들 각각이 표시된 상기 마스터 보드 상의 위치들과 대응되는 상기 사용자 보드 상의 위치들에 각각 표시되는,
    콘텐츠 공유 시스템.
  13. 콘텐츠 공유 방법을 실행하기 위해 컴퓨팅 장치와 결합되어,
    마스터 보드(Board)에 복수의 콘텐츠를 로드(Load)하는 단계;
    상기 복수의 콘텐츠 각각에 대한 사용자의 접근 권한을 확인하는 단계; 및
    상기 확인된 접근 권한에 기초하여, 상기 복수의 콘텐츠 중 상기 사용자가 접근 권한을 가진 제1 콘텐츠를 상기 사용자의 클라이언트 장치에 공유하는 단계를 실행시키도록 컴퓨터로 판독가능한 기록매체에 저장되고,
    상기 클라이언트 장치는,
    상기 마스터 보드에 대응되는 사용자 보드에 상기 제1 콘텐츠를 표시하되, 상기 제1 콘텐츠가 표시된 상기 마스터 보드 상의 제1 위치와 대응되는 상기 사용자 보드 상의 제2 위치에 상기 제1 콘텐츠를 표시하는,
    컴퓨터 프로그램.
KR1020200081762A 2019-10-18 2020-07-02 복수의 단말 간 콘텐츠 공유 방법 및 시스템 KR20210144513A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/009,077 US11418551B2 (en) 2019-10-18 2020-09-01 Method and system for providing virtual whiteboard based collaboration service

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20200061293 2020-05-22
KR1020200061293 2020-05-22

Publications (1)

Publication Number Publication Date
KR20210144513A true KR20210144513A (ko) 2021-11-30

Family

ID=78722629

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020200081454A KR20210144511A (ko) 2019-10-18 2020-07-02 콘텐츠 편집 방법 및 이를 위한 서비스 서버
KR1020200081753A KR20210144512A (ko) 2019-10-18 2020-07-02 컨텐츠 공동 편집 방법 및 그 시스템
KR1020200081762A KR20210144513A (ko) 2019-10-18 2020-07-02 복수의 단말 간 콘텐츠 공유 방법 및 시스템

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020200081454A KR20210144511A (ko) 2019-10-18 2020-07-02 콘텐츠 편집 방법 및 이를 위한 서비스 서버
KR1020200081753A KR20210144512A (ko) 2019-10-18 2020-07-02 컨텐츠 공동 편집 방법 및 그 시스템

Country Status (1)

Country Link
KR (3) KR20210144511A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110010635A (ko) 2008-07-15 2011-02-01 도쿄엘렉트론가부시키가이샤 마이크로파 플라즈마 처리 장치 및, 냉각 재킷의 제조 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110010635A (ko) 2008-07-15 2011-02-01 도쿄엘렉트론가부시키가이샤 마이크로파 플라즈마 처리 장치 및, 냉각 재킷의 제조 방법

Also Published As

Publication number Publication date
KR20210144512A (ko) 2021-11-30
KR20210144511A (ko) 2021-11-30

Similar Documents

Publication Publication Date Title
US10686788B2 (en) Developer based document collaboration
US9348803B2 (en) Systems and methods for providing just-in-time preview of suggestion resolutions
TWI459217B (zh) 用於共同編輯的方法、電腦系統及電腦儲存媒體
US20150193492A1 (en) Editing sub-section of an electronic document via notification message
US9250926B2 (en) Platform extensibility framework
US11030390B2 (en) Sharing content between electronic documents
US9026900B1 (en) Invisible overlay for dynamic annotation
JP2016224923A (ja) ユーザフォームインタフェースの自動生成の方法およびシステム
CN111767563A (zh) 在线文档的权限设置方法、装置、终端及存储介质
CN112632919B (zh) 一种文档编辑方法、装置、计算机设备和存储介质
US10803236B2 (en) Information processing to generate screen based on acquired editing information
WO2015094874A1 (en) Annotation hint display
US20160378735A1 (en) Metamorphic documents
US10977428B2 (en) Content transformations
KR20210144513A (ko) 복수의 단말 간 콘텐츠 공유 방법 및 시스템
US10627997B1 (en) System and method for highlighting dependent slides while editing master slides of a presentation
US20120265843A1 (en) Variable content based on relationship to content creator
KR102563629B1 (ko) 문서 진행상태를 실시간으로 제공하는 방법 및 장치
JP2020071540A (ja) 文書ファイル管理システム、管理サーバ、文書ファイル管理方法、および文書ファイル管理プログラム
CN114712856A (zh) 游戏场景对象控制方法、装置、设备和存储介质
CN115409046A (zh) 一种文本翻译方法、设备及计算机可读存储介质
CN112597266A (zh) 用于处理游戏模板数据的编辑器生成方法和处理方法

Legal Events

Date Code Title Description
A201 Request for examination