用于数据的安全共享的系统和方法

文档序号:10489281阅读:961来源:国知局
用于数据的安全共享的系统和方法
【专利摘要】本发明公开了用于数据的安全共享的系统和方法。该方法包括提供在位于第一网络内的第一计算机系统上创建的任务,该任务包括内容信息和元数据信息。该任务可以与和第一网络不同的第二网络的用户共享。该方法可包括经由一个或多个计算机网络将任务的元数据信息传输给在第二网络内的第二计算机系统,而不传输内容信息,元数据信息至少包括任务标识符。方法可包括接收来自用户的访问该任务的请求。该方法可包括验证用户是任务参与者。可以经由一个或多个计算机网络将该任务的内容信息安全地呈现给用户。
【专利说明】
用于数据的安全共享的系统和方法
技术领域
[0001] 本发明涉及一种用于数据跨一个或多个网络的安全共享的系统和方法。
【背景技术】
[0002] 全球通信网络使用户能够合作项目,而无论合作用户是彼此接近还是相隔数千英 里。用户可以使用实时通信工具(例如,语音通信和在线实时消息)或者使用时间延迟通信 工具(例如,电子邮件)经一个或多个网络进行合作。在合作项目时,重要的是,确保与用户 和/或项目相关的私有数据保持私密。
[0003] 而且,在电子邮件系统中,难以实时共享内容数据和管理任务分配。例如,在一个 用户使用新数据更新电子数据表时,其他用户不能容易地看到更新,除非用户将电子数据 表重新发送给所有用户。在由多个用户创建和编辑数个文档时,电子邮件的来往性质可能 产生混淆,这是因为用户不能确定哪个版本的文档是最新更新的或者哪些用户执行哪些分 配。此外,电子邮件的来往性质可能在是否完成分配以及完成分配的时间方面产生混淆,并 且不能充分地确保任务分配根据期望的时间表完成。因此,依然继续需要跨多个网络的数 据的安全共享。

【发明内容】

[0004] 在一个实施方式中,公开了一种用于经由一个或多个计算机网络共享任务的计算 机实现的方法。所述方法可以包括提供在位于第一节点内的第一计算机系统上创建的任 务,所述任务包括内容信息和元数据信息。可以与和所述第一节点不同的第二节点的用户 共享所述任务。可以经由所述一个或多个计算机网络将所述任务的所述元数据信息传输给 在第二节点内的第二计算机系统,而不传输所述内容信息。所述元数据信息可以至少包括 任务标识符。所述方法可以包括接收来自用户的访问所述任务的请求。所述方法可以包括 验证所述用户是任务参与者。所述方法可以包括经由所述一个或多个计算机网络将所述任 务的内容信息安全地呈现给所述用户。
[0005] 在另一个实施方式中,公开了一种用于经由一个或多个计算机网络共享计算机对 象的计算机实现的方法。所述方法可以包括在位于第一节点内的第一计算机系统上提供计 算机对象,所述计算机对象包括内容信息和元数据信息。可以与和所述第一节点不同的第 二节点的用户创建用于所述计算机对象的共享关系。可以经由所述一个或多个计算机网络 将所述计算机对象的所述元数据信息传输给在第二节点内的第二计算机系统,而不传输所 述内容信息。可以经由所述一个或多个计算机网络从所述用户接收访问所述计算机对象的 请求。所述方法可以包括验证所述用户具有访问所述计算机对象的许可。所述方法可以包 括经由所述一个或多个计算机网络将所述计算机对象的内容信息安全地呈现给所述用户。
[0006] 在又一个实施方式中,公开了一种用于经由一个或多个计算机网络共享计算机对 象的系统。所述系统可以包括处理模块,配置为在位于第一节点内的第一计算机系统上提 供计算机对象,所述计算机对象包括内容信息和元数据信息。所述处理模块可以配置为与 和所述第一节点不同的第二节点的用户创建用于所述计算机对象的共享关系。所述处理模 块可以配置为验证所述用户具有访问所述计算机对象的许可。所述系统还可以包括通信模 块,配置为经由所述一个或多个计算机网络将所述计算机对象的所述元数据信息传输给在 第二节点内的第二计算机系统,而不传输所述内容信息。所述通信模块可以配置为经由所 述一个或多个计算机网络从用户接收访问所述计算机对象的请求。所述通信模块可以配置 为经由所述一个或多个计算机网络将所述计算机对象的内容信息安全地呈现给所述用户。
[0007] 在附图和以下描述中,陈述了在本说明书中描述的主题的一个或多个实现方式的 细节。通过说明书、附图以及权利要求,将明白其他特征、方面以及优点。要注意的是,以下 各图的相对尺寸可以不按照比例绘制。
【附图说明】
[0008] 现在,将参照通过实例而非限制的方式提供的以下附图,描述本发明的具体实施 方式。
[0009] 图1是根据一个实施方式的用于共享计算机对象的系统的示意图。
[0010] 图2是在图1中示出的全球数据储存器的示意图。
[0011] 图3是根据各种实施方式的节点的一个实例的示意图。
[0012]图4A是根据各种实施方式的用于文档对象的公共元数据数据包的示意图。
[0013]图4B是根据各种实施方式的用于任务对象的公共元数据数据包的示意图。
[0014] 图5是示出根据各种实施方式的用于共享计算机对象的计算机实现方法的流程 图。
[0015] 图6是示出根据各种实施方式的用于共享任务的计算机实现方法的流程图。
[0016] 图7A是根据一个实施方式的示出创建任务的示意性方框图。
[0017] 图7B是根据一个实施方式的任务创建数据包的示意性方框图。
[0018] 图7C是根据一个实施方式的在电子邮件(e-mail)消息内实现的任务创建数据包 的示意性方框图。
[0019] 图8是根据一个实施方式的任务管理系统的示意性方框图。
【具体实施方式】
[0020] 某些实施方式的以下详细描述呈现了本发明的【具体实施方式】的各种描述。然而, 可以通过由权利要求限定和涵盖的多种不同方式体现本发明。在本说明书中,对其中相同 的参考数字表示相同或功能上相似的元件的附图进行参考。
[0021] 在本文中公开的各种实施方式涉及用于数据跨多个节点或设备的安全共享的系 统和方法。在全世界的用户可以合作项目并且通过一个或多个计算机网络彼此互动。例如, 在一些实施方式中,用户可以合作由位于特定节点或设备(例如,属于特定公司、组织、国家 等的节点)内的计算机系统管理的特定任务。在特定合作期间,用户可彼此共享各种计算机 对象,例如,通过评论或编辑文档、更新任务的状态、将消息添加到博客或聊天会话中、或者 任何其他合适的合作努力来共享各种计算机对象。重要的是,保持对象的持续副本,例如, 由每个用户共同编辑的单个副本,而非管理每个用户制作的对象的多个副本。例如,在定期 电子邮件(e-mail)消息中,Bob可向Mary和Sue发出文档供其评论和编辑。Mary可对文档做 出一组编辑,并且Sue可对文档做出不同的一组编辑。进一步,在Sue将其编辑发送回Bob和 Mary时,Bob和Mary会做出进一步修订。在传统的电子邮件会话中,将每个用户的修订整合 到共同的文档内,可能是耗时的。因此,依然继续需要保持由多个用户可以共同编辑的持续 对象。
[0022]在一些实施方式中,例如,计算机对象(例如,任务、文档、消息、用户对象等)的单 个副本可储存在特定节点或设备的一个计算机系统上,并且每个用户可以编辑该单个副 本。使用对象的单个副本,可以支持持续性,使得可以通过有效和合作的方式对该对象作出 多个修订或其他动作。例如,如果Mary和Bob均编辑特定的文档,那么Mary和Bob均可以产生 与对象的持续副本的网络连接,并且可以相应地编辑该文档。在一些实施方式中,Bob和 Mary可以对文档依次进行编辑,使得Bob可以将其编辑输入文档的持续副本(persistent copy)中,并且Mary随后可以对持续副本作出其编辑。在其他实施方式中,Bob和Mary可以对 文档同时进行编辑,使得在提交它们时,在文档对象中反映其修订。
[0023] 作为另一个实例,Bob可通过网络将新任务分配给Mary和Sue,例如,以为下一个财 政年度创建预算。任务对象的单个持续副本可以储存在特定节点或设备内(例如,在特定的 国家设备或商业设备内)的特定计算机系统上。Bob、Mary以及Sue均可以访问任务的单个持 续副本,例如,以更新任务的状态,彼此关于任务进行通信,将新文档上传给任务仪表板等。 在一些实施方式中,Bob、Mary以及Sue可以依次访问和/或修改任务对象。
[0024]此外,在多个用户之间共享对象时,重要的是,确保敏感或私有数据保持安全,而 不禁止总体系统的功能。例如,一些实体(例如,网络、组织、国家或其他组)可具有要求某些 类型的数据保持安全的细则或法律,例如,要求数据保持私密和/或位于所拥有、受控和/或 驻留在或驻留到该实体内的系统。作为一个实例,一些国家通过了或者正在考虑通过禁止 在位于那些国家外面的服务器上储存关于公民的私有数据(例如,住宅地址信息、电话号 码、社会保障号码或其他政府身份证号码、金融和/或支付信息、出生日期以及其他类型的 私有数据)的法律。对具有这种要求的国家的公民实现合作工具,而不储存关于可在这些国 家居住的系统用户的私有信息是具有挑战性的。例如,除了非私有的或者公共的信息以外, 任务管理系统还可使用和/或储存关于用户的私有信息(包括但不限于用户的法定名称、电 子邮件地址、居住城市、出生日期等)。在各种实施方式中,在本文中公开的任务管理系统可 以确保私有信息或数据保持安全(例如,通过确保私有信息仅仅储存在由授权实体控制的 节点内的机器上)同时任务用户可以访问和/或编辑非私有信息。
[0025]作为安全共享数据的一个实例,Bob可创建任务并且将任务分配给Sue,以在特定 的到期日之前完成。Bob可能是实体A的一部分(例如,Bob的潜在计算机用户对象可储存在 实体A内的节点上),并且Sue可能是实体B的一部分(例如,Sue的潜在计算机用户对象可储 存在实体B内的节点上)。为了该实例的目的,实体A和实体B是不同的国家,各自具有其自身 的一套隐私法。在其他设置中,实体A和实体B是不同的组织或企业,各自具有其自身的一套 隐私政策。通过实例,实体A(在该实体中,Bob是公民成员)可具有严格的一套隐私法,所述 隐私法要求关于其公民的私有数据仅仅本地储存在物理上位于实体A内的节点或计算机系 统上。
[0026] Bob可首先创建任务,并且该任务数据可以储存在实体A(例如,国家A)内的计算机 节点(例如,Node 1)上。该任务数据可以包括内容信息(该信息可包括遵守在实体A内的隐 私法或政策的私有或敏感数据)和元数据信息(该信息识别该任务和该任务的各种非内容 属性)。在Bob给Sue分配任务时,可以在使任务标识符与Node 1相关联的全球数据储存器的 对象映射表中创建条目。此外,关于任务的公共元数据可以从Bob传输给Sue。元数据可以包 括非私有的信息,例如,识别与该任务以及储存任务数据的地方相关的信息。例如,元数据 可以包括唯一任务标识符、任务创建者以及识别该任务的其他数据。相比之下,内容信息 (该信息可包括私有或敏感数据)不能传输给Sue,而是可保持储存在实体A内或者与实体A 相关联的Node 1上。内容信息可以包括与该任务相关的实质信息,例如,任务的描述、在任 务参与者之中的劳动分工、任务截止日期、与任务的主题相关联的文档或消息等。
[0027] 在Sue接受任务时,系统可以使用公共元数据,安全地连接至计算机节点,任务内 容数据储存在该节点上(例如,Node 1)。例如,Sue的计算机系统(Node 2或者与Node 2通 信)可以解析元数据,以找出任务标识符,并且可以搜索设备或节点的全球对象映射表,任 务的内容数据储存在该设备或节点上,例如,Node 1。可以在Node l(Bob的系统)与Node 2 (Sue的系统)之间建立安全连接(该连接可加密),并且Sue可以安全地访问该任务的内容信 息。在各种实施方式中,内容信息不从Node 1中传输给Node 2。在一些实施方式中,副本仅 仅暂时传输给Node 2,或者仅仅使用安全内容读取器或模拟器可浏览内容信息。由于与任 务相关的私有内容信息本地地储存在Node 1上,而不自由地传输给Node 2,所以在本文中 公开的系统可以有利地用于保护与该任务相关联的私有数据,并且遵守实体A的隐私法或 政策,同时能够通过任务管理系统进行合作。
[0028] 各种任务管理系统(例如由BroadVision,Inc ·,of Redwood City ,California开 发的Vmoso系统)可供在本文中公开的一些或所有实施方式使用。在于2013年2月4日申请的 并且于2014年1月28日授权的美国专利号8,639,552中,描述了 Vmoso系统的各种细节,兹通 过引证将其全文结合到本文中且用于所有目的。在各种实施方式中,在本文中描述的实施 方式可在互联网上实现。
[0029]
[0030] 如在本文中所使用的,输入装置可以(例如)是键盘、手写笔、鼠标、语音识别系统 或能够将用户的信息传输给计算机的其他装置。输入装置还可以是与显示器相关联的触摸 屏,在这种情况下,用户通过触摸屏幕来对在显示器上的提示作出响应。用户可以通过输入 装置(例如,键盘或触摸屏)输入文本信息。
[0031] 本发明的实施方式对于多个其他通用或专用计算系统环境或配置是可操作的。适 合于供本发明使用的众所周知的计算系统、环境和/或配置的实例包括但不限于个人电脑、 服务器计算机、手持式或膝上型装置、多处理器系统、基于微处理器的系统、可编程的消费 性电子产品、网络PC、微型电脑、大型电脑、包括以上任何系统或装置的分布式计算环境等。
[0032] 如在本文中所使用的,指令表示用于在系统中处理信息的计算机实现的步骤。指 令可以在软件、固件或硬件内实现,并且包括由系统的组件进行的任何类型的编程步骤。
[0033] 局域网(LAN)或广域网(WAN)可以是企业计算网络,包括对与计算机以及包括系统 的计算装置连接的互联网的接入。在一个实施方式中,LAN符合传输控制协议/互联网协议 (TCP/IP)行业标准。
[0034]如在本文中所使用的,媒体表示图像、声音、视频或输入到系统内的任何其他多媒 体类型数据。
[0035] 微处理器可以是任何传统的通用单或多芯片微处理器,例如,Pentium'^处理器、 Imniumli处理器或ALPHA"处理器。此外,微处理器可以是任何传统的专用微处理器,例 如,数字信号处理器(DSP)或图形处理器。
[0036] 系统包括下面详细讨论的各种模块。本领域的技术人员可以理解的是,每个模块 包括各种子例程、程序、定义声明以及宏。在一些实施方式中,软件模块可以使用PHP编码。 在其他实施方式中,每个模块可以分别编译并且链接到单个可执行程序内。因此,为了方便 起见,每个模块的以下描述用于描述优选系统的功能。因此,每个模块进行的处理可以任意 地重新分配给其他模块中的一个,共同组合在单个模块内,或者可用于(例如)可共享的动 态链接库。
[0037] 该系统可以与各种操作系统(例如,LINUX、UNIX或MICROSOFT WINDOWS? .) 一 起使用。
[0038] 系统可以通过任何传统的编程语言(例如,PHP、C、C++、BASIC、Pascal、Perl或 Java)编写或者在传统的操作系统下运行。
[0039] 包括网页浏览器用户界面的网页浏览器可以用于向用户显示信息(例如,文本和 图形信息)。网页浏览器可以包括能够显示通过网络接收的信息的任何类型的视觉显示。网 页浏览器的实例包括Microsoft的Internet ExpIorer浏览器、Apple的Safari浏览器、 Mozilla的Firefox浏览器、Google的Chrome浏览器、或者能够与网络通信的任何其他浏览 或其他应用软件。进一步地,信息还可以被配置为用于其他合适的应用程序并且在其内显 示,例如,被编程为在移动装置(例如,移动电话或其他移动计算装置)内实现的应用程序。 [0040]在本文中公开的发明可以作为方法、设备或制品来实施以使用标准的编程或工程 技术来制造软件、固件、硬件或其任何组合。在本文中使用的术语"制品"表示在硬件或计算 机可读介质(例如,光学储存装置以及易失性或非易失性存储器装置)内实现的代码或逻 辑。这种硬件可以包括但不限于现场可编程门阵列(FPGA)、专用集成电路(ASIC)、复杂可编 程逻辑器件(CPLD)、可编程逻辑阵列(PLA)、微处理器或其他类似处理装置。
[0041 ] 系统概述
[0042]图1是用于通过一个或多个计算机网络共享计算机对象的系统1的示意图。如在本 文中所使用的,计算机对象可以包括可以被处理并且储存在计算机上的任何合适的对象, 例如,任务、文档、消息、博客、用户或用户组等。在图1中示出的全球系统(global system, 全局系统H可以包括一个或多个节点2,所述节点彼此和/或与全球数据储存器5网络通信。 每个节点2可以包括任何类型的计算机系统,例如,配置为通过通信网络储存、处理、传输并 且接收数据的一个或多个服务器或计算机。一个或多个计算机对象可以储存在每个节点2 上和/或与每个节点2相关联。例如,任务对象1和消息对象2可以储存在Node 1内的计算机 系统上。多个用户4可以是系统1的成员,并且可以彼此传送使节点2互连的各种通信协议。 用户4可以使用其自身的本地客户端计算装置(例如,膝上型电脑、移动装置、移动智能电 话、平板电脑等)与节点2通信。
[0043]每个用户4可以与储存在特定节点2上的用户计算机对象相关联。例如,潜在用户 计算机对象可以包括关于用户的信息,例如,用户的名称和/或网名、位置、地址、电子邮件 地址、照片、许可、用户组的列表和/或与用户相关的任何其他信息。如图1中所示,作为一个 实例,用户1、用户2、用户3以及用户4可与储存在Node 1上的用户计算机对象相关联。用户5 和用户6可与储存在Node 2上的用户计算机对象相关联,而用户7可与储存在Node3上的用 户计算机对象相关联。每个节点2可在两个或多个计算机系统之间提供网络或数据通信。如 在本文中所解释的,在节点2内的计算机系统可以包括与各种储存装置(可以包括非暂存性 计算机可读储存介质)电通信的一个或多个处理器。
[0044]对象(例如,任务、消息、用户、文档)可在特定节点2内和/或跨多个节点2彼此相关 联。例如,如图1中所示,用户1、3、4以及5可以彼此合作在Node 1内储存的任务对象1。而且, 如在任务对象1与消息对象2之间的箭头所示,任务对象1和消息对象2也可以在Node 1内彼 此相关联或链接(例如,如果消息对象2是与任务对象1的主题相关的消息)。
[0045]用户1、2、4、5以及7可以彼此合作在Node 1内储存的消息对象2。用户5和6可以彼 此合作在Node 2内储存的文档对象3。用户7可以参与任务对象4,以进行各种项目。如在图1 中的虚线所示,任务对象4可与文档对象3相关(例如,文档对象3可能是与任务对象4相关的 电子数据表或其他文档)。此外,每个节点2可以与全球数据储存器5通信。如在本文中所解 释的,全球数据储存器5可以储存系统1的所有节点2使用的数据,如在本文中所解释的,所 有节点能够在用户4之间共享安全数据。
[0046]在一些设置中,每个节点2可与特定实体相关联或者成为特定实体的一部分,例 如,国家、组织、企业等。作为一个实例,Node 1可与国家1相关联。Node 2可与国家2相关联, 而Node 3可与企业1相关联。例如,相对于Node 1、任务对象1、消息对象2以及与用户1-4相 关联的潜在用户对象可储存在物理上位于国家1内的服务器或计算机系统上。在一些实施 方式中,用户1-4也可在物理上位于国家1内(或者可作为国家1的公民或居民)。相对于Node 2,文档对象3以及与用户5-6相关联的潜在用户对象可储存在物理上位于国家2内的服务器 或计算机系统上。在一些实施方式中,用户5-6也可在物理上位于国家2内(或者可作为国家 2的公民或居民)。相对于Node 3,任务对象4以及用户7的潜在用户对象可储存在企业1拥有 的计算机系统上。在一些实施方式中,用户7可与企业1相关联(例如,作为拥有者、员工、客 户、合作伙伴等)。
[0047]每个实体(例如,国家1、国家2、企业1等)可具有管理经由与特定实体相关联的节 点2使用数据的各种政策、细则、法规或法律。例如,国家1可具有严格的隐私法,所述隐私法 限制在Node 1(与国家1相关联)内的计算机系统将关于国家1的公民或居民的私有数据传 输给在物理上位于国家1外面的计算机系统的能力。对于合作计算机系统(例如,计算机化 任务管理系统),这种法律可能难以在遵守隐私法的同时支持有效合作。因此,在本文中公 开的各种实施方式可以有利地提供跨节点2的数据的安全共享,使得在遵守隐私法的同时 能够进行合作。
[0048]图2是在图1中示出的全球数据储存器5的示意图。全球数据储存器5可以包括一个 或多个储存模块,所述储存模块配置为储存数据,以由跨系统1的计算机或服务器使用或访 问。如图2中所示,全球数据储存器5可以包括节点细目表6、域映射表7、对象映射表8以及非 域用户储存表9。全球数据储存器5可以向在系统1内的服务器呈现非私有数据,用于识别和 定位其他节点2,映射分配各种域的节点2,映射储存各种对象的节点2,并且映射储存非域 用户信息的节点2。系统1可以使用全球数据储存器5,来启用共享数据,同时确保私有数据 保持安全。
[0049] 在图2中示出的节点细目表6可以储存系统1的节点2的列表。如图2中所示,节点细 目表6可以储存节点2的名称、节点ID以及用于访问节点2的端点或统一资源定位符(URL)。 例如,可以分配称为"EC2W-vmoso_datastore"的节点2,作为Node 1,并且通过将网络浏览 器或其他网络工具导航到ec2w. vmoso. com来被定位于系统1上。同样,可以给称为"EC2E-vmoso-datastore"的节点2分配ID,作为Node 2,并且可以在ec2e · vmoso · com处进行定位。 因此,对于特定节点ID或节点名称,系统1可以导航到期望节点2,用于访问和/或编辑储存 在该节点2上的内容。在节点2加入系统中或者从系统中去除时,可以更新节点2的列表。
[0050] 域映射表7可以使特定域(例如,特定互联网托管位置)与节点2相关联,与域相关 联的信息储存在该节点上。例如,系统1可以包括与各种域相关联的用户4。在一些设置中, 特定用户4可以与作为系统1的成员或者与系统1相关联的公司或组织相关联。每个公司可 以具有储存在系统1上的公司特有的数据(包括文档、用户电子邮件地址等)。系统1可以储 存与在一个相关联的节点2(或多个节点)上的特定公司或组织相关联的数据。域映射表7可 以通过系统1的节点2映射与特定的互联网域(例如,特定的公司、组织等)相关联的数据。例 如,如图2中所示,来自BroadVision公司的用户4可与broadvision. com相关联,并且与该域 相关的数据可储存在Node 1上。有利地,储存在域映射表7内的信息可不包括与各个用户4 相关的任何私有信息。确切地说,仅仅储存与组织或电子邮件地址相关联的域,以便可以在 系统1内识别节点2的位置。为了访问与用户4相关的私有信息,特定节点2或用户4可以提供 访问令牌,在系统1授权访问私有信息之前,所述访问令牌验证特定的节点2或用户有权访 问私有信息。因此,如果识别了特定域(或者如果特定用户确定为与特定域相关联),那么系 统1可以识别所述节点2,关于该域(例如,公司、组织等)的数据储存在所述节点2上。用户4 或节点2可以呈现访问令牌,以访问与储存在表格7中的用户相关联的潜在私有数据。
[0051] 对象映射表8可以使特定对象与对象及其内容储存在其上的节点2相关联。例如, 如在本文所解释的,计算机对象可以包括任何合适的计算机实现的对象,例如,计算机化任 务、文档、计算机消息、博客、用户或用户组等。可以给每个对象分配唯一标识符或者对象 ID。对象映射表8可以识别储存特定对象的节点2。如在本文所解释的,在各种实施方式中, 重要的是,确保对象仅仅储存在特定节点2上,以便遵守外部实体(例如,隐私法)施加的各 种限制。因此,如果提供对象ID,那么系统1可以识别储存对象的节点2的节点ID。例如,系统 1可以识别储存对象的内容信息和/或元数据信息的节点2的节点ID。在一些实施方式中,系 统1的并非所有对象储存在对象映射表8内。基于在本文中陈述的各种共享算法,可以找出 一些未列出的对象的位置。
[0052] 非域用户储存表9可以储存与和特定域(例如,特定公司、组织等)不相关联的用户 4相关的信息。例如,一些用户4可加入系统1,而不与大型组织相关联,并且非域用户储存表 9可以使用户4的识别信息(例如,电子邮件地址)与储存信息的节点2相关联。如图2中所示, 例如,在Node 1上可找出具有电子邮件地址John.doeOgmail ·com的关于John Doe的信息, 并且在Node 2上可找出具有电子邮件地址Jane·doeOyahoo·com的关于John Doe的信息。在 各种实施方式中,仅仅与用户4相关的公共信息储存在非域用户储存表9内。
[0053] 图3是根据各种实施方式的节点2的一个实例的示意图。在图3中示出的节点2对应 于在图1中示出的Node 1。如图3中所示,节点2可以包括一个或多个处理模块10、一个或多 个通信模块11以及一个或多个储存模块12。在各种实施方式中,可以跨多个计算机系统和 服务器分配处理模块10、通信模块11和/或储存模块12。处理模块10可以包括一个或多个处 理器,所述处理器配置或者编程为运行任何合适的处理,包括(例如)由任务管理系统运行 的处理。例如,处理模块10可以实现在储存模块12内储存的软件上编码的任务管理方法。在 一些实施方式中,例如,处理模块10可以组织计算机化任务,管理任务的状态,接收和传输 对任务的更新,修改任务(例如,响应于用户更新或编辑),和/或向用户4显示任务信息。处 理模块10还可以配置为控制节点2的操作。
[0054] 通信模块11可以配置为管理在用户4与Node 1之间和/或在Node 1与系统1的其他 节点2之间的网络通信。例如,通信模块11可以处理给用户4提供到节点2的访问的各种许 可,例如,访问令牌。
[0055]储存模块12可以包括非暂存性计算机可读储存介质,用于储存任何合适的数据。 例如,在各种设置中,储存模块12可以储存处理器模块10要执行的软件指令。此外,储存模 块1 2可以储存可以组织到相应容器1 3内的多个对象14。容器1 3可以包括单独隔室 (compartment)或文件夹,并且可以配置为根据各种参数将对象14排序。例如,容器13可以 配置为由项目(例如,相关任务的集合)、主题、用户组(例如,根据特定社区)、访问授权等级 等将对象14排序。在一些设置中,容器13可以用于划分特定对象14或一组对象14并且使对 象14与特定的一组授权用户相关联。
[0056] 通过实例,在图3中示出的对象1可以包括在Node 1的用户2与Node 2的用户5之间 共享的任务,例如,在图1中示出的任务对象1。对象1可以包括识别任务(例如,任务标识符、 储存任务的节点ID等)的元数据信息15以及包括任务的主题的内容信息16(例如,任务描 述、任务分配、任务状态和截止日期等)。在一些实施方式中,用户2(Node 1的成员)可以创 建对象1(例如,任务)。与对象1相关联的任务可以储存在Node 1内的计算机系统的储存模 块12内。如上面参照图1所解释的,Node 1可以与具有严格隐私法的特定实体(例如,国家1) 相关联。例如,国家1的法律或法规可要求关于其公民或居民(例如,用户2)的私有数据保持 储存在国家1内的Node 2上。因此,在本文中公开的各种实施方式中,私有数据(例如,内容 信息16)可以保持在国家1内的Node 1上,而其他非私有数据(例如,元数据信息15)可与在 国家1外面的用户4共享,以在用户4之中建立有效合作。
[0057] Node 1(和国家1)的用户2可以与Node 2(在国家1外面)的用户5共享对象1的任 务。例如,用户2可以发送开始使用户5与对象1的任务相关联的共享关系的请求。对象1可以 储存在储存模块12的容器1内,并且可以提供合适的访问控制和许可。例如,容器1可以将元 数据信息15和内容信息16排序(分类,sort),并且可以识别具有访问、读取和/或写入对象1 的任务的许可的用户4。例如,在用户2与用户5共享对象1的任务时,容器1可以创建识别用 户5具有到对象1的各种访问等级(例如,读取访问、写入访问或这两者)的访问令牌或其他 唯一标识符。而且,在用户2与用户5共享对象1的任务时,可以在全球数据储存器5的对象映 射表8中创建新条目。例如,一旦共享了对象1,就可以在对象映射表8中列出对象1的对象 ID。储存与对象1相关的数据的节点2的节点ID(例如,Node 1)也可以储存在对象映射表8 内。因此,如果给用户5(或者与用户5连接的计算机系统)供应对象1的对象ID,那么系统1可 以识别与对象1相关的数据所在的节点2。
[0058] 因此,如果Node 1的用户2与Node 2的用户5共享对象1,那么系统1可以在使对象1 的对象ID与储存对象1的节点2的节点ID (例如,Node 1)相关联的对象映射表8中创建新条 目。对象1可以储存在Node 1的储存模块12的容器1内,并且容器1可以配置为识别用户4是 否具有访问(例如,读取、写入或这两者)对象1的授权。
[0059] 此外,在用户2与用户5共享对象1时,系统1可以将与对象1相关的非私有元数据信 息15传输给用户5。例如,可以将信息15传输给Node 2, 即,储存用户5的潜在用户对象的节 点,但是可不将对象1的内容信息16传输给用户5。将元数据信号15传输给用户5(例如,在 Node 2上),可以使用户5能够访问任务,而不损害与内容信息16相关联的私有数据的安全 性。因此,虽然不将内容信息16传输给在Node 2上的用户5,但是系统1可以将各种类型的非 私有元数据信息15传输给在Node 2上的用户5。
[0060] 图4A是用于文档对象的公共(或非私有)元数据数据包20的示意图。图4B是用于任 务对象的公共(或非私有)元数据数据包30的示意图。虽然图4A-图4B示出了文档和任务对 象的实例,但是应理解的是,其他合适的计算机对象可供在本文中公开的实施方式使用,包 括(例如)消息对象、博客对象、用户或用户组对象等。数据包20、30表示可以从用户2(在国 家1中)传输给用户5(在国家外面)的非私有数据,而不与国家1的严格隐私法冲突。例如,相 对于文档对象数据包20,可以传输文档对象ID、创建的时间、更新的时间、文档创建者、文档 编辑者、文档状态、文档生命周期状态、主导活动时间以及名称,作为非私有元数据信息15。 相对于任务对象数据包30,可以传输任务ID、创建的时间、更新的时间、任务创建者、任务编 辑者、任务状态、任务生命周期状态、主导活动时间、名称、用户列表以及附件列表,作为非 私有元数据信息15。
[0061] 用户5可以使用从用户2中传输的非私有元数据信息15,以访问对象1的内容信息 16。例如,用户5(或与用户5相关联的节点2,该节点在该实例中是Node 2)可以使用在数据 包20或30的元数据信息15内提供的对象ID,来访问本地储存在Node 1上的实质内容信息 16。例如,基于元数据信息15,用户5可以与Node 1开始安全连接,对象1的内容信息16储存 在节点2上。在一些设置中,用户5 (通过Node2)可以与Node 1开始安全套接层(SSL)、传输层 安全(TSL)或其他合适的安全连接,以访问对象1。在一些实施方式中,用户5可以直接连接 至Nodel,而在其他实施方式中,用户5可以通过可以指出(index)系统1的Node 2的代理计 算机连接至Node 1。通过安全连接,用户5可以访问与对象1的任务相关联的内容信息16,并 且可以读取和/或写入对象1。在一些实施方式中,内容信息16可根本不传输给用户5。在一 些实施方式中,内容信息16的临时副本可传输给用户5,用于暂时读取和/或写入访问。在一 些实施方式中,可以提供专业读取器或模拟器,以向用户5呈现对象1的内容信息16,而不给 用户5提供内容信息16的副本。
[0062]无论内容信息16的副本是否暂时储存在Node 2(与用户5相关联的),然而,Node 1 的储存模块12的容器1可以授权用户5访问对象1的内容信息16。在各种实施方式中,因此, 由容器1提供的授权能够充分访问用户5,以便促进与用户2的有效合作,同时遵守国家1的 隐私法。
[0063]用户5可以请求访问对象1(例如,通过安全连接,例如,SSL或TSL)。在各种实施方 式中,用户5可以读取并且写入对象1,从而修改对象1。例如,用户5可以修改与对象1的任务 相关联的文档对象,或者可以更新与对象1相关联的任务的状态。对象1可以保持储存在 Node 1上,提供对象的持续副本。在一些实施方式中,多个用户4可以同时读取和/或写入对 象1。在其他实施方式中,多个用户4可以依次读取和/或写入对象1,使得在另一个用户可以 开始其评论和修订之前,一个用户必须完成编辑。
[0064] 图5是示出用于经由一个或多个计算机网络共享计算机对象14的计算机实现方法 50的流程图。在方框51中,可以在位于第一节点内的第一计算机系统上提供计算机对象。所 述计算机对象可以是任何合适的对象,例如,任务对象、文件对象、文档对象、消息对象、互 联网帖子对象、用户、用户组等。在各种设置中,用户可以创建对象并且可以在第一计算机 系统上储存对象。因此,对象可以与第一节点持续性相关联或者储存在第一节点上。如在本 文中所解释的,与对象相关联的元数据信息可以与其他用户共享,而与对象的主题相关的 内容信息可以作为私有或安全信息保留。
[0065] 转向方框52,可以与和所述第一节点不同的第二节点的用户创建共享关系。例如, 通过发送电子邮件或以其他方式开始共享关系,对象创建者可以与用户共享创建的对象。 在发起共享关系时,分配或储存对象的容器可以将访问信息排序,该访问信息可以授权用 户访问对象。此外,可以在记录新创建的共享关系的全球数据储存器内创建条目。例如,全 球数据储存器可以使对象ID与储存对象的节点的节点ID相关联。
[0066] 在方框53中,与对象相关联的元数据信息可以传输给在第二节点内的第二计算机 系统,而不传输内容信息。例如,如上面参照图4A-图4B所解释的,可以将与对象相关的识别 信息传输给分配或共享对象的用户。该系统可以将元数据信息排序,以使对象的对象ID与 储存对象的内容信息的节点的节点ID相关联。
[0067] 移动到方框54,用户可请求访问计算机对象。例如,用户可以将互联网或电子邮件 消息发送给系统1(例如,储存内容信息的节点),该系统请求访问(例如,读取和/或写入访 问)对象。在方框55中,对用户是否具有访问对象的许可做出决定。例如,如在本文中所解释 的,分配或储存对象的容器可以包括访问或许可信息,该信息使对象与对所述对象具有各 种访问程度(例如,读取访问、写入访问、读取和写入访问、不访问等)的一个或多个用户的 列表相关联。如果决定用户没有访问对象的许可,那么方法50结束。
[0068] 如果决定用户具有访问对象的许可,那么可以给用户安全地呈现内容信息。例如, 在各种实施方式中,内容信息的副本可不从对象创建者中传输给用户。相反,专业界面或模 拟器可用于向用户呈现数据。在一些实施方式中,在同意访问之后,可使副本由用户暂时可 用。
[0069] 图6是示出用于在一个或多个计算机网络上共享任务的计算机实现方法60的流程 图。方法60在方框61中开始,以在位于第一节点内的第一计算机系统上提供任务。所述任务 可以包括内容信息和元数据信息。例如,如在本文中所解释的,Node 1的Bob可以创建任务 并且可以在第一计算机节点的第一计算机系统上储存任务。例如,可以在Node 1的容器1内 共享任务。可以与位于第一网络外面的用户共享元数据信息,但是内容信息可保持安全并 且在第一节点内本地化(例如,成为Node 1私有的)。
[0070] 转向方框62,任务可以与第二节点的用户共享。作为一个实例,Bob可以与Node 2 的Sue共享任务。在Bob与Sue共享任务时,Node 1的容器1可以创建访问令牌,所述令牌给 Sue提供对任务的访问(例如,读取访问、写入访问或者这两者)。此外,在使任务与储存任务 的节点(例如,Node 1)相关联的全球数据储存器内创建条目。
[0071] 方法60移动到方框63,其中,将任务标识符传输给第二节点,而不传输内容信息。 如在本文中所解释的,在共享任务时,Bob可以给在Node 2上的Sue发送与任务相关联的元 数据信息,该信息可以包括唯一任务标识符。Sue的系统可以查找储存相关联的任务的节点 (Node 1)。
[0072]在方框64中,可以接收用户访问任务的请求。例如,在共享任务之后,通过给Node 1发送消息,Sue可以请求访问(例如,读取访问、写入访问或者这两者)任务。在决定方框65 中,可以确定用户(Sue)是否是任务参与者。如果所述决定是否,那么方法60结束。如果做出 Sue是任务参与者(因此,访问任务)的决定,那么方法60移动到方框66,其中,向用户(Sue) 呈现任务的内容信息。例如,在一些实施方式中,可以向用户呈现或显示任务的描述和目 标、任务截止时间、任务分配、任务状态以及其他任务动作项。
[0073] 任务管理系统概述
[0074]在各种实施方式中,在本文中相对于图1-图6公开的每个实施方式可与计算机化 任务管理系统相结合使用。在图7A中显示了用于管理任务的系统的一个实施方式,该图是 示出通过一个或多个网络共享的任务204的创建的示意性方框图。任务204可以由任务创建 者211发起。任务创建者211可以是在系统内的任何合适的用户102。在一些情况下,例如,任 务创建者211可以是项目经理,例如,开发公司A的最终产品设计的小部件的团队的组长。为 了创建任务204,任务创建者211可以生成任务创建数据包213,其被配置为创建任务204。任 务创建者211可以将与任务204相关的各种分配任务分配给一个或多个任务接收者214。可 以将任务创建数据包213发送给服务器215,该服务器可以进而将任务创建者211给其分配 了任务204通知给与任务204相关联的N个任务接收者214。然后,在图7A中显示为用户2到N 的N个任务接收者214可以给服务器215发送响应,表示他们是否接受任务204的分配。服务 器215同样可以将分配的确认传输给任务创建者211。对于任务包括来自不同节点或设备的 用户的情况,以上关于图5至图6所说明的方法可被用来在所有授权用户之中提供合作。 [0075]如在本文中所使用的,任务创建者211可以是发起任务204的用户,并且一个或多 个任务接收者214可以是被分配或者请求被分配任务204的一个或多个用户。任务创建者 211和任务接收者214可以是任务参与者,这是因为他们都参与了任务204的完成。然而,在 某些情况下,任务接收者214可以拒绝参与任务204,因此,可以不被视为任务参与者。
[0076] 图7B是根据一个实施方式的一个示例性任务创建数据包213的示意性方框图。任 务创建数据包213可以包括唯一识别任务204的任务标识符217。由于服务器215可以处理多 个用户的多个任务,所以重要的是,确保将任务204精确地排序,使得由服务器215接收的每 个任务204精确地分配给正确的用户,并且每个任务204包括任务204的正确信息。任务创建 数据包213还可以包括识别任务创建者211的任务创建者条目219。例如,任务创建者条目 219可以包括任务创建者211的姓名和/或用户名。在一些方面,任务创建者条目219可以包 括任务创建者211的网络或电子邮件地址。
[0077] 任务创建数据包213还可以包括任务接收者条目221,其包括识别任务的一个或多 个接收者214的信息。例如,任务接收者条目221可以包括任务接收者214的姓名和/或用户 名。任务接收者条目221还可以包括任务接收者214的网络或电子邮件地址。虽然在图7A中 显示了多个任务接收者214,但是应理解的是,可以仅仅具有一个任务接收者214。
[0078] 任务创建数据包213还可以包括任务内容数据223。任务内容数据223可以包括任 务204的细节,例如,任务204的总体目标和目的。任务内容数据223还可以包括分配给与任 务204相关联的每个用户的任务分配的列表。进一步地,任务内容数据223可以包括管理任 务204的进度的任务时间表。任务内容数据223还可以包括各种责任性措施,例如,可以发送 给任务参与者以便提醒这些参与者其分配的提醒通知的时间表。
[0079] 任务创建数据包213还可以包括服务器地址字段222。服务器地址字段222可以包 括服务器215的网络ID。网络ID可以在运行时用于识别用户是否登录特定的网络或节点。在 一些配置中,可以给服务器215分配电子邮件地址,任务创建者211可以将任务创建数据包 213发送给该地址。在这种情况下,服务器地址字段222还可以包括服务器的电子邮件地址。
[0080] 任务创建数据包213可以通过任何合适的格式实现。在本文中解释的一个实施方 式中,任务创建数据包213可以在电子邮件消息中实现。然而,在其他实施方式中,任务创建 数据包213可以通过其他格式或者使用其他结构实现。例如,任务创建数据包213可以在网 站实现。在其他配置中,任务创建数据包213可以在文本消息(例如,SMS消息)、语音通信或 视频通信内实现。在这种配置中,通过构成概述任务的细节、任务分配和/或任务时间表的 SMS消息、语音通信或视频通信,任务创建者211发起任务204。
[0081] 图7C是电子邮件任务创建数据包220的示意性方框图,其中,在电子邮件消息中实 现图7B的任务创建数据包213。使用电子邮件实现任务创建数据包213,可以特别有利,部分 原因在于电子邮件如此普遍。很多或大部分用户具有电子邮件地址并且乐意使用电子邮 件。如果通过封闭系统管理任务,例如,要求特别的访问权限参与的系统,那么用户不愿意 使用封闭系统或者用户难以了解封闭系统。通过在电子邮件任务创建数据包220内实现任 务创建数据包213,大部分用户可以有效并且高效地创建和管理任务,而在使用时无需创建 额外的障碍。
[0082]图7C的电子邮件任务创建数据包220可以包括上面关于图7B描述的任务标识符 217、任务创建者条目219、任务接收者条目221以及任务内容数据223。尤其地,任务标识符 217可以在电子邮件消息的主题栏字段内实现。例如,任务创建者211可以编写电子邮件消 息,该消息包括针对在手边的任务204特定的主题栏。例如,继续上面的产品设计公司的实 例,任务创建者211可以创建具有载明"创建小部件原型"的主题栏的电子邮件消息。在一些 配置中,在主题栏内的文本可以用作唯一任务标识符217。然而,在其他配置中,服务器215 可以分配与主题栏的文本相关联的数字或字母数字标识符。在某些情况下,例如,服务器 215可以生成额外文本附加到电子邮件的主题栏中,确保任务204与正确的参与者和内容数 据相关联。虽然标识符字段217显示为与电子邮件消息的"主题"栏对应,但是在其他实施方 式中,任务标识符字段217可以与电子邮件消息的消息字段一起设置。
[0083] 任务创建者条目219可以与电子邮件消息的"发件人"字段对应。因此,任务创建者 211通过使用任务创建者211自身的电子邮件账号打开新电子邮件消息,可以发起任务204。 在图7A的实例中,任务创建者211可以是用户1,并且任务创建者条目219反映了用户1是任 务创建者211。任务接收者的条目221可以与电子邮件消息的"收件人"和"抄送"或"CC"字段 之一或二者对应。在图7C的实例中,可以在电子邮件消息中列出任务接收者214,以便在电 子邮件消息的"发件人"字段上列出用户2,并且在"(Τ'字段上列出用户3和4。在任务创建者 211(例如,用户1)发送发起任务204的电子邮件消息时,用户2和3都将接收该消息。虽然显 示了 "收件人"和"CC"字段,但是应理解的是,"密送"或"BCC"字段也可以用于将消息发送给 任务接收者214。
[0084] 任务内容数据223可以与在电子邮件消息字段内的数据对应。例如,可以在电子邮 件的消息字段内的文本或图像数据中列出任务目标和任务时间表。如在图7C的实例中所 示,电子邮件消息字段可以包括任务创建者211的指示分配的任务204包括安排设计会议、 在参与者之间分配任务以及为完成设计创建时间表的便条。因此,可以将分配给他们的任 务204的概要通知给任务接收者214。此外,服务器地址字段222可以是"收件人"或"CC"字 段。如图7C中所示,服务器地址字段222列出"tasks@server.com."。在任务创建者211发送 任务创建电子邮件时,任务创建者211可以在电子邮件的"收件人"和/或"CC"栏中列出 "tasks@server.com."或者分配给服务器的其他电子邮件地址。因此,服务器215还接收电 子邮件任务创建数据包220,该数据包可以帮助在服务器215上创建和管理任务204。如上所 述,在电子邮件消息的"BCC"字段内也可以列出任务接收者的电子邮件地址。
[0085]因此,可以与电子邮件任务创建数据包220对应的任务创建数据包213可以通过电 子邮件从任务创建者211中发送给任务接收者214并且发送给服务器215。数据包220可以包 括任务识别信息以及任务参与者可以查看的任务内容数据。如下面更详细地所述,服务器 215可以接收和处理任务创建数据包213,并且可以执行各种其他任务管理功能。例如,服务 器215可以协调任务204的执行的安排和问责制,并且还可以处理和分析关于用户(例如,任 务参与者)的数据。
[0086]图8是根据一个实施方式的任务管理系统315的示意性方框图。任务管理系统315 可以包括多个模块,这些模块可以在服务器(例如,上述服务器215)上实现和/或储存。任务 管理系统315可以包括任务管理模块327,该模块可以包括任务创建模块329、对象管理模块 346以及用户界面模块341。任务创建模块329可以包括处理和储存从任务创建者211中接收 的任务创建数据包213的任务创建数据库331。因此,任务创建数据库331可以包括数据结 构,这些数据结构储存所接收的用于多个任务的数据。例如,任务创建数据库331可以储存 任务标识符317、任务创建者条目319、任务接收者条目321、任务内容数据323、识别托管任 务的服务器的地址的服务器地址322、以及识别用户登录哪个网络的网络ID 324的阵列。例 如,用户可以在特定的网络或节点(例如,网络1或Node 1)内创建任务,因此,任务可以通过 网络ID 324与网络1或Node 1相关联。因此,对于由服务器215接收的每个任务创建数据包 213,任务管理系统315可以处理数据包213内包含的信息并且将其储存在任务创建数据库 331内。为了处理在数据包213内接收的信息,任务创建模块329可以进一步包括用于识别和 存储数据包213内的信息的指令。
[0087]对象管理模块346可以被配置为管理通过一个或多个网络共享的计算机对象。这 种对象的实例包括任务、文档、消息等。例如,在一些实施方式中,对象管理模块可以包括指 令,以使每个计算机对象与一个或多个授权用户相关联并且给每个计算机对象分配表示该 计算机对象在该系统内的状态的状态。在各种实施方式中,对象管理模块346可以包括指 令,用以接收包括与对象相关联的对象内容的多个对象,使对象与以或多个授权用户相关 联,将对象状态分配给每个对象,处理对象的更新数据,并且根据处理后的更新数据来更新 对象。对象管理模块346还可以包括给授权用户提供中央共享平台,以监控对象的状态并且 在授权用户实施问责制的指令。进一步地,对象管理模块346可以提供平台,用于与授权用 户分享持久性对象。例如,在一个用户修改文档或者回复消息时,更新的对象(例如,修改后 的文档或对消息的回复)可以自动地将本身呈现给授权用户,使得用户具有进行工作的持 久性对象。同样,在未解决的任务更新时,对象管理模块346可以包括指令,这些指令更新任 务对象来反映任务完成并且识别在任务上进行工作的用户。
[0088] 用户界面模块341可以包括各种模块,用于处理、排序以及显示任务信息。例如,在 一些实现方式中,可以使用用户界面模块341在任务参与者之间共享任务信息(例如,关于 任务和任务分配的信息)。用户界面模块341可以包括任务分配模块343。任务分配模块343 可以被配置为将任务的部分或分担分配给与任务相关联的一个或多个任务参与者。例如, 复参照图7A的实例,用户1可以是任务创建者211,并且可以将各种任务分配给用户2和3,例 如,分配负责完成在最终产品设计中的小部件的不各部分。也可以给任务创建者或用户1分 配一部分任务。
[0089] 用户界面模块341还可以包括任务安排模块349。任务安排模块349可以被配置为 提供执行任务的时间表。例如,任务安排模块349可以储存关于完成任务的总体时间线的信 息。进一步地,任务安排模块349可以被配置为通过提醒来通知任务参与者关于完成分配给 其的任务部分的到期日。任务安排模块349还可以请求对参与者的任务的分配部分的指示 接收的确认。通过提醒参与者其任务责任,任务安排模块349因此可以提高参与用户的责任 性,并且可以在任务参与者之间提高协调性。
[0090] 此外,用户界面模块341可以包括内容分发模块345。内容分发模块345可以被配置 为分享各种类型的内容。例如,内容分发模块345可以被配置为与和任务相关联的一个或多 个任务参与者共享文档(例如,文本或文字处理文档)、数字视频、博客条目、或论坛帖子。任 务参与者可在共同的文档上工作,例如,共同地文字处理文档、展示文件或电子数据表。任 务参与者可以编辑文档并且可以将更新保存到任务管理系统315中。通过提供中央内容分 发模块345,可以容易地编辑文档使得尽可能减少关于版本控制和用户分配的混淆。
[0091] 用户界面模块341还可以包括用户合作模块351。用户合作模块351可以被配置为 在与任务相关联的一个或多个任务参与者之间促进通信。例如,在一些配置中,用户合作模 块351可以包括即时电子消息系统,以允许任务参与者彼此实时通信。在其他配置中,用户 合作模块351可以包括实时视频和/或语音通信模块,以允许参与者在视觉上和/或文字上 彼此通信。因此,用户管理模块315可以提供中央工作空间和任务管理中心,该中心能够允 许多个任务参与者有效地执行其所分配的任务元素。
[0092]用户界面模块341可以包括图形接口模块347,其被配置为使任务信息在用户装置 上显示。例如,可以在万维网上托管的网站上呈现用户界面模块341的各种模块。用户可以 使用各种输入装置与任务管理系统315交互,以在任务管理系统315上张贴内容,包括文档、 发给其他任务参与者的消息、以及可以用于执行任务的任何其他数据。用户界面模块341还 可以被编程为向决策制定者(例如,公司管理人员或执行者)呈现任务分析仪表板。
[0093]而且,用户界面模块341可以包括集成界面模块348,其可以被编程为包含用户界 面模块341的其他模块的功能并且可以被编程为实现用户收件箱-发件箱界面,例如,在网 页上实现的界面。例如,集成界面模块348可以包括指令,用以提供列出多个计算机对象的 图形用户界面,并且在图形用户界面上向与计算机对象相关联的每个授权用户指示分配的 状态。例如,用户收件箱-发件箱界面可以给授权用户提供集成界面,该界面向用户实时显 示对象并且包括对象的状态更新和到期日。因此,集成界面模块348可以被配置为与其他授 权用户共享对象和那些对象的更新。例如,集成界面模块348可以呈现由对象管理模块346 组织和/或管理的各种数据字段。集成界面模块348可以使收件箱-发件箱界面显示给用户。
[0094]任务管理系统315可以进一步包括通信模块353,其被配置为在任务参与者之间提 供通信。通信模块353可以包括消息检索模块355,其被配置为接收任务创建者的消息。如上 面关于图7A-7C所述,消息检索模块355可以被配置为在电子邮件消息中接收任务创建者的 消息。进一步地,消息检索模块355可以被配置为解析每个接收的消息,以通过处理在电子 邮件消息的主题字段和消息字段之一或两者中的数据,识别在该消息中的任务信息(例如, 任务内容数据)。消息检索模块355还可以被配置为识别任务创建者和一个或多个任务接收 者。例如,消息检索模块355可以通过处理在电子邮件消息的"发件人"字段内的数据来识别 任务创建者。消息检索模块355可以通过处理在电子邮件消息的"收件人"字段和/或"CC"字 段内的数据来识别任务接收者。
[0095]通信模块353还可以包括通知模块357,其被配置为通知任务参与者(例如,任务创 建者和/或任务接收者)创建了任务。通知模块357可以进一步被配置为将提醒通知和确认 通知发送给任务参与者。在各种实施方式中,通知模块357可以使用电子邮件将这些通知发 送给参与者。
[0096]任务管理系统315还可以包括用户管理模块359,其被配置为处理多个任务(以及 任务发起消息)。用户管理模块359可以识别多个任务的任务参与者信息并且可以根据期望 的排序标准将任务参与者信息排序。通常,用户管理模块359可以收集关于参与由任务管理 系统315处理的任务的用户的信息并且将该信息排序。用户管理模块359可以分析关于与任 务相关联的用户的信息,以便识别对于任务管理系统315的所有人和/运营商最积极和/或 最有价值的用户。
[0097]例如,在一些配置中,用户管理模块359可以分析每个任务参与者或用户的任务参 与者信息,以确定与任务参与者或用户相关联的任务的数量。而且,用户管理模块359可以 分析每个任务参与者或用户的任务参与者信息,以确定每个用户或参与者与任务管理系统 315交互或者参与任务的频率。通过分析数量和与任务管理系统315交互的频率,用户管理 模块359可以识别与任务管理系统315相关联的最有价值的用户。因此,服务器的运营商和/ 或所有人可以使用由用户管理模块359处理的信息,来识别服务器的最有价值的和/或现有 的用户。服务器运营商和/或所有人可以进而裁制适应于对运营商和/或所有人最有价值的 用户的广告、促销或其他机会。仅举一例,如果用户1在过去一个月内参与了 10个任务,而用 户2在过去一年内仅仅参与了 2个任务,那么服务器运营商和/或所有人可以推断出用户1是 更有价值的用户。因此,服务器运营商和/或所有人更优先给用户1发送出现的机会,这是因 为用户1具有已被证明的积极的、持续的、鲜明的承诺来在服务器上参与任务。
[0098]在各种实施方式中,用户管理模块359可以监控系统中的用户或参与者,以确定用 户如何有效地满足任务最后期限和预期。例如,用户管理模块359可以监控其中每个用户满 足或超出(beat)任务的所列最后期限,例如,到期日的任务的数量和/或百分比。用户管理 模块359还可监控每个用户或用户参与者的生产力。例如,用户管理模块359可以测量每个 用户的效率,例如,用户完成任务所花费多长的时间。在进一步的配置中,用户管理模块359 可以根据由其他任务参与者提供的反馈测量用户的生产力。例如,如果用户1被用户1的合 作者视为有团队精神的人或者特别优秀的贡献者,那么用户管理模块359可以确定用户1是 有价值的用户。因此,用户管理模块359可以根据任务效率和生产力将用户排序并且组织用 户,并且可以根据其效率、工作质量和/或生产力将用户(例如,员工、供应商、客户等)按优 先顺序排列。
[0099]在各种实施方式中,用户管理模块359可以监控由特定用户创建的或者分配给特 定用户的任务的数量。例如,用户管理模块359可以跟踪将任务分配给特定任务参与者的用 户以及与那些分配的任务相关联的日期和任务标识符或名称。同样,用户管理模块359可以 跟踪用户、任务、以及用户被分配了由特定的任务参与者或用户创建的任务的日期。此外, 用户管理模块359可以跟踪随着时间分配或创建的任务的数量,并且可以监控那些任务是 开放性任务(例如,进行中的)、封闭性任务(例如,完成的)或拒绝的任务(例如,选择不参与 已分配任务的任务接收者)。在一些方面,用户管理模块359可以跟踪随着时间完成的任务 的百分比或数量,以跟踪关于一个或多个任务或项目的进度的总体水平。用户管理模块359 还可以跟踪完成任务或项目的平均时间。如在本文中相对于任务分析模块374所述,还可在 公司或组织级的方式执行任务跟踪,在这种情况下,可以监控任务或项目的总数量,以确定 完成的任务的数量或百分比以及完成任务或项目的平均时间。
[0100]此外,用户管理模块359可以将处理的任务和任务参与者组织成一个或多个用户 组。例如,用户管理模块359可以认出用户组(例如,任务参与者)彼此附属的时间,例如,作 为同一个公司的员工或者同一个组织的成员的时间。在各种陪置中,用户管理模块359可以 通过处理其电子邮件地址来识别附属用户。例如,如果两个用户共享相同的电子邮件域(例 如,其电子邮件地址都列有"Ocompany.com"),那么用户管理模块359可以将这两个用户组 织成同一个用户组。因此,用户管理模块359可以根据其与一个公司或组织的附属关系来识 别用户并且将其排序。
[0101]用户管理模块359还可以使文档、媒体以及其他数据文件与经处理的任务和系统 用户相关联。例如,如在本文中所述,在合作任务时,用户可以从事共享的文字处理、电子数 据表、展示、文本、或其他类型的文档或数据文件。文档可以从用户中接收并且储存在任务 管理系统315上。用户管理模块359可以使储存的文档和媒体(例如,视频、音频等)与任务参 与者以及任务相关联。例如,用户管理模块359可以使包含动作项目列表的文字处理文档、 列出现金流预测的电子数据表以及工程图与和新产品设计以及转出相关的项目(例如,任 务组)相关联。用户管理模块359还将文档或媒体与和文档相关联的任务参与者相关联,并 且可以使用用户界面模块341在用户界面上显示文档或媒体。因此,任务管理系统315可以 有效地使多个任务与多个任务参与者以及和任务相关联的任何文档或媒体相关联。
[0102] 而且,在一个或多个任务涉及相关的主题时,用户管理模块359可以将任务分成一 个任务组。例如,如果辛迪从事与测试小部件的可靠性相关的任务,那么用户管理模块359 可以储存使辛迪与和小部件测试相关的任务相关联的任务信息。如果丹随后从事与测试相 同或相似的小部件相关的任务,甚至从事不相关的任务或项目,那么用户管理模块359可以 认识到丹的任务与辛迪的任务相关。例如,用户管理模块359可以识别在丹的任务与辛迪的 任务之间的相似的关键词,或者用户管理模块359可以通过(例如)主题标签认识到主题相 似。在这种配置中,用户管理模块359可以创建任务组,包括涉及相关的主题的任务。实际 上,用户管理模块359还可以在任务历史字段内储存任务,以便未来的用户可以从合作相似 或相关的任务的用户的经验中学习并且利用这些经验。
[0103] 在其他配置中,可以将任务分到一个或多个项目。例如,项目可以是复杂的或长期 的努力,包括可以涉及或不涉及相关的主题的多个任务。例如,如果项目的目标是转出新的 产品设计,那么公司可以给其多个部门分配不同的任务。执行者可以将产品开发分配给工 程部,将产品销售分配给其销售或市场部,并且将产品制造分配给其制造部门或者第三方 承包商。用户管理模块359可以认识到在项目中的每个任务与实现项目的总体目标相关,虽 然可能涉及不同的主题。
[0104] 进一步地,用户管理模块359可以监控项目,以确定项目的完成程度,例如,通过监 控构成项目的一个或多个任务的状态。例如,如果项目包括5个任务,并且如果两个任务完 成,三个任务未完成,那么用户管理模块359可以确定项目完成了大约40%。在进一步的配 置中,用户管理模块359可以通过解释甚至部分完成的任务,来确定项目的总体完成程度。 例如,如果在项目中具有5个任务,并且如果两个任务均完成了 25%,另外三个任务均完成 了50%,那么可以计算总体项目状态。因此,在这个实例中,总体项目完成可以由部分完成 项目的线性组合确定。例如,仅仅完成了 25%的两个任务(在5个任务中)产生项目完成状态 (2/5)*25% = 10%。均完成了 50%的另外三个任务贡献了完成状态(3/5)*50%=30%。因 此,项目的总完成程度大约是10%+30%,总完成程度大约是40%。总之,用户管理模块359 可以估计包括一个或多个任务的项目的完成程度。
[0105] 此外,在与其他用户一起参与多个任务的过程中,每个任务参与者或用户可以与 多个其他用户相关联。因此,每个用户可以具有联系人列表或者与该联系人列表相关联。联 系人列表可以包括与任务参与者一起参与至少一个任务的一个或多个联系人的列表。因 此,每个用户和/或任务参与者可以形成在任务管理系统315上参与一个或多个任务的相关 联系人的网络。例如,任务管理系统315可以至少部分基于联系人与任务参与者一起参与任 务的频率,将联系人列表排序。因此,可以将新的有价值的关系优先排序。例如,在某些情况 下,可以根据在联系人列表上的每个联系人的价值,给在每个用户的联系人列表上的联系 人分配权重。例如,可以根据联系人与任务参与者一起参与任务的频率,将联系人权重分配 给联系人。因此,可以给第一联系人分配第一联系人权重,并且可以给第二联系人分配第二 联系人权重。如果第一联系人比第二联系人更频繁和/或更新近地与任务管理系统315交互 以及参与任务,那么给第一联系人权重分配比第二联系人权重更大的值。因此,任务管理系 统315可以根据用户联系人的值以及联系人的潜在价值,将在联系人列表上的用户联系人 按优先顺序排列。
[0106] 通过监控任务、任务到期日、任务参与者以及在任务参与者之间的交互,用户管理 模块359可以将有价值的信息提供给公司或组织。例如,用户管理模块359可以通知执行者 和/或决策制定者关于项目和/或任务的即将到期日或时间表。通过提供公司级的时间表, 用户管理模块359可以给公司提供正在由其员工执行的工作的高级图片。公司可以使用这 些度量来将任务按优先顺序排列或者进行新投资。通过监控用户生产力、效率以及责任,公 司可以识别有价值的员工、供应商以及客户,并且可以相应地将其关系按优先顺序排列。进 一步地,通过组织与任务以及任务参与者相关联的文档,公司或组织可以容易并且有效地 访问与讨论中的任务和/或项目相关联的内容。
[0107] 如图8中所示,用户管理模块359可以包括具有多个字段的数据库,其可以储存关 于用户和/或任务参与者的信息。例如,用户管理模块359可以包括具有用户ID字段361的数 据库,该字段包括通过任务管理系统315参与任务的每个用户的名称和/或用户名。进一步 地,数据库可以具有用户地址字段363,其列出了用户的电子邮件或网络ID。有效(active, 主动)任务字段365可以包括用户目前参与的所有任务的列表。联系人列表字段367可以储 存与每个用户相关联的联系人列表。如上所述,联系人列表可以包括用户与之一起参与任 务的所有用户的列表。进一步地,相关联的文档字段362可以列出与用户和/或和用户相关 联的任务相关联的文档。同样,任务历史字段364可以储存与用户在过去合作的任务相关联 的主题和/或关键词。其他用户或组织可以利用任务历史字段364,来利用用户对特定任务 或项目的先前经验。例如,搜索引擎被设置为搜索先前任务和/或任务参与者的关键词和/ 或主题。可以提供用户时间线字段366和用户效率字段368,以监控用户是否及时满足预期 的到期日以及用户完成各种任务的速度。因此,在做出决策时,公司或组织可以比较用户的 效率和可靠性。还可以包括用户生产力字段370,以测量用户执行一系列任务或项目的生产 力。例如,可以根据由其他任务参与者或者甚至第三方完成的反馈和/或调查,测量用户生 产力。各种各样的其他信息字段369可以储存关于每个用户的额外信息或记录。例如,如果 服务器的所有人和/或运营商具有特定用户的额外信息或历史,那么服务器的所有人和/或 运营商可以将这些信息输入其他信息字段369内。
[0108]因此,通过收集关于已在服务器上参与任务的用户的信息并且将其排序,服务器 的所有人和/或运营商可以使用用户信息来优化系统性能或者来完成服务器的所有人和/ 或运营商其他好处。例如,与积极和/或有价值的联系人的关系可以优先于与过时的或者不 积极的或不太有价值的联系人的关系。任务管理系统315还可以包括多层网络管理模块 372。如下面更详细地所述,多层网络管理模块372可以有利地管理在多个单独的网络和全 球网络之间的相互关系。进一步地,任务管理系统315可以包括任务分析模块374,其被配置 为分析在多个任务参与者、项目以及任务文档之间的关系。
[0109]任务管理系统315还可以包括内容管理371,其可以储存与由任务管理系统315执 行的功能相关联的数据。例如,内容管理371可以包括存储器,其被配置为永久地储存编码 成软件的指令,该软件被配置为在任务管理系统315上执行功能,如在本文中所述。进一步 地,内容管理371可以储存由任务管理系统315接收和处理的数据,包括(例如)任务内容信 息和用户信息。
[0110] 上述所有特征可以体现在通用目的计算机的软件模块执行的处理器或集成电路 并且由它们来自治。软件模块可以存储在任何类型的计算机存储装置或介质内。在本文中 描述的各种实施方式和特征的所有组合落入本发明的范围内。
[0111] 虽然根据某些优选的实施方式描述了各种发明特征和服务,但是对于本领域的技 术人员显而易见的其他实施方式,包括没有提供在本文中陈述的所有优点和特征并且没有 解决在本文中陈述的所有问题的实施方式,也属于本发明的范围。仅仅参照所附权利要求 来限定本发明的范围。
【主权项】
1. 一种用于经由一个或多个计算机网络共享任务的计算机实现的方法,所述方法包 括: 提供在位于第一节点中的第一计算机系统上创建的任务,所述任务包括内容信息和元 数据信息; 与不同于所述第一节点的第二节点的用户共享所述任务; 经由所述一个或多个计算机网络将所述任务的所述元数据信息传输给在所述第二节 点中的第二计算机系统,而不传输所述内容信息,所述元数据信息至少包括任务标识符; 接收来自所述用户的访问所述任务的请求; 验证所述用户是任务参与者;并且 经由所述一个或多个计算机网络将所述任务的所述内容信息安全地呈现给所述用户。2. 根据权利要求1所述的方法,其中,共享所述任务包括:在全球数据储存器的对象映 射表中创建条目,所述条目将所述任务标识符与所述第一节点相关联。3. 根据权利要求1所述的方法,其中,提供所述任务包括:在所述第一计算机系统上创 建和储存所述任务。4. 根据权利要求1所述的方法,进一步包括:至少加密所述任务的所述内容信息。5. 根据权利要求1所述的方法,其中,所述元数据信息进一步包括任务创建者和任务名 称中的至少一个。6. 根据权利要求1所述的方法,其中,所述内容信息包括任务目标和所述任务的状态中 的至少一个。7. 根据权利要求1所述的方法,其中,所述第一节点和所述第二节点位于不同的国家 中。8. -种用于经由一个或多个计算机网络共享计算机对象的计算机实现的方法,所述方 法包括: 在位于第一节点中的第一计算机系统上提供计算机对象,所述计算机对象包括内容信 息和元数据信息; 与不同于所述第一节点的第二节点的用户创建用于所述计算机对象的共享关系; 经由所述一个或多个计算机网络将所述计算机对象的所述元数据信息传输给在所述 第二节点中的第二计算机系统,而不传输所述内容信息; 经由所述一个或多个计算机网络从所述用户接收访问所述计算机对象的请求; 验证所述用户具有访问所述计算机对象的许可;并且 经由所述一个或多个计算机网络将所述计算机对象的所述内容信息安全地呈现给所 述用户。9. 根据权利要求8所述的方法,其中,创建所述共享关系包括:在全球数据储存器的对 象映射表中创建条目,所述条目将所述计算机对象的标识符与所述第一节点相关联。10. 根据权利要求8所述的方法,进一步包括:响应于来自第一网络的第一用户的请求 而创建所述计算机对象。11. 根据权利要求8所述的方法,进一步包括:至少加密所述计算机对象的所述内容信 息。12. 根据权利要求8所述的方法,其中,所述元数据信息包括与所述计算机对象相关的 识别信息,并且其中,所述内容信息包括与所述计算机对象的实质内容相关的数据。13. 根据权利要求8所述的方法,其中,验证所述用户具有许可包括:验证由所述用户提 供的访问令牌。14. 根据权利要求8所述的方法,其中,所述计算机对象包括任务、文档、文件、消息、用 户、用户组和互联网帖子中的至少一个。15. 根据权利要求14所述的方法,其中,所述计算机对象包括任务。16. 根据权利要求15所述的方法,其中,所述任务的所述元数据信息包括任务标识符、 任务创建者以及任务名称中的至少一个。17. 根据权利要求15所述的方法,其中,所述任务的所述内容信息包括任务目标和所述 任务的状态中的至少一个。18. 根据权利要求8所述的方法,其中,所述第一节点和所述第二节点位于不同的国家 中。19. 根据权利要求8所述的方法,其中,所述第一计算机系统和所述第二计算机系统位 于不同的国家中。20. -种用于经由一个或多个计算机网络共享计算机对象的系统,所述系统包括: 处理模块,被配置为: 在位于第一节点中的第一计算机系统上提供计算机对象,所述计算机对象包括内容信 息和元数据信息; 与不同于所述第一节点的第二节点的用户创建用于所述计算机对象的共享关系;并且 验证所述用户具有访问所述计算机对象的许可;以及通信模块,被配置为: 经由所述一个或多个计算机网络将所述计算机对象的所述元数据信息传输给在所述 第二节点中的第二计算机系统,而不传输所述内容信息; 经由所述一个或多个计算机网络从所述用户接收访问所述计算机对象的请求;并且 经由所述一个或多个计算机网络将所述计算机对象的所述内容信息安全地呈现给所 述用户。21. 根据权利要求20所述的系统,进一步包括储存模块,所述储存模块包括非暂存性计 算机可读介质,以储存所述计算机对象。22. 根据权利要求20所述的系统,其中,所述计算机对象包括任务、文档、文件、消息、用 户、用户组和互联网帖子中的至少一个。23. 根据权利要求22所述的系统,其中,所述计算机对象包括任务。24. 根据权利要求23所述的系统,其中,所述任务的所述元数据信息包括任务标识符、 任务创建者以及任务名称中的至少一个。25. 根据权利要求23所述的系统,其中,所述任务的所述内容信息包括任务目标和所述 任务的状态中的至少一个。26. 根据权利要求20所述的系统,其中,所述系统包括所述第一计算机系统。27. 根据权利要求20所述的系统,其中,所述第一计算机系统和所述第二计算机系统位 于不同的国家中。
【文档编号】G06F21/60GK105844164SQ201610076215
【公开日】2016年8月10日
【申请日】2016年2月3日
【发明人】佩弘·陈, 塔克·亨德森, 威廉·吴, 彼得·朱
【申请人】华美宏道公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1