用于跟踪文档中的改变的方法和系统的制作方法

文档序号:6650914阅读:111来源:国知局
专利名称:用于跟踪文档中的改变的方法和系统的制作方法
背景技术
项目管理软件提供协助计划、安排、跟踪和分析项目的工具。许多组织依靠项目管理软件来管理项目工作量、提高生产力、以及改善工作质量。项目管理软件提供一种流水线式的方法,在一个中央位置完成项目、将结果最大化、并跟踪工作流。项目经理收益于有效地估算项目时间和成本,以及管理项目预算和期限。
许多项目任务依赖于其它任务,从而对一个项目进行修改可能影响其它任务。对项目文档的修改被存储到占据宝贵存储器空间的文件中。要求修改列表的特征必须访问该文件,这可能是很耗费时间的。此类特征的例子包括撤消许多不同用户对文档所进行的修改,以及重新生成报告以说明所修改的数据。

发明内容
本发明针对一种用于跟踪与项目管理软件应用程序相关联的文档中的改变的方法和系统。一种改变列表跟踪机制支持要求项目文档中已被修改的值的记录的特征。例如,多次撤消特征被启用,从而系统可被返回到项目文档先前的版本。报告特征允许对项目文档的修改在报告中被自动更新,而无需重新生成整个报告。审查日志记录特征将对项目文档的具体修改与执行该修改的特定用户相关联。项目文档可以是在不同用户之间共享的任何文档。
改变列表跟踪机制包括对象容器和改变列表。每个对象容器都包括与项目文档的属性相关联的对象。想要被通知对文档的具体改变的用户创建改变列表以跟踪对特定对象容器中的具体对象属性所作的修改。可用改变列表号将用户与改变列表相关联。
改变列表中所标识的属性值可由访问项目文档的任何用户修改。对应的对象容器向改变列表提供关于修改的信息。修改信息可包括已被修改、添加和/或删除的对象。修改信息还可包括已被改变的属性的属性标识符。请求的用户用改变列表号来标识,并被通知修改。改变列表随即可被清除,且该循环为对文档的任何后续修改重复。
取决于要启用的特征,以不同方式处理修改信息。对于多次撤消特征,来自改变列表的已修改数据被存储在撤消缓冲区中。对于报告特征,修改列表中的已修改数据被用来更新报告。对于审查日志记录特征,通过从改变列表标识修改了数据的用户来执行日志记录操作。


图1根据本发明的一个示例性实施例示出可使用的一种计算设备。
图2根据本发明示出一种用于跟踪项目管理软件应用程序的文档中的改变的系统的框图。
图3根据本发明示出一种改变列表跟踪机制的框图。
图4根据本发明示出一操作流程图,该操作流程图示出一种用于跟踪项目管理软件应用程序的文档中的改变的过程。
图5根据本发明示出用于跟踪项目管理软件应用程序的文档中的改变的过程的示例性软件代码。
具体实施例方式
一种改变列表跟踪机制支持要求项目管理软件应用程序的文档中已被修改的值的记录的特征。例如,多次撤消特征被启用,从而系统可被返回到项目文档的先前版本。报告特征允许对项目文档的修改在报告中被自动更新,而无需重新生成整个报告。审查日志记录特征将对项目文档的具体修改与执行该修改的特定用户相关联。
改变列表跟踪机制包括对象容器和改变列表。每个对象容器都包括与项目文档的属性相关联的对象。想要被通知对项目文档的具体改变的请求用户创建改变列表以跟踪对特定对象容器中的具体对象属性所作的修改。改变列表中所标识的属性值可由访问项目文档的任何用户修改。对应的对象容器向改变列表提供关于修改的信息。请求用户随即被标识并被通知该修改。
示例性操作环境参考图1,一种用于实现本发明的示例性系统包括诸如计算设备100等计算设备。计算设备100可被配置成客户机、服务器、移动设备、或在基于网络的协作系统中与数据交互的任何其它计算设备。在一非常基本的配置中,计算设备100通常包括至少一个处理单元102和系统存储器104。取决于计算设备的确切配置和类型,系统存储器104可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存、等等)、或这两者的某种组合。系统存储器104通常包括操作系统105、一个或多个应用程序106、并可包括程序数据107。以下详细描述的改变列表跟踪机制108在应用程序106内实现。
计算设备100可具有其它特征或功能。例如,计算设备100还可包括其它数据存储设备(可移动和不可移动的),诸如磁盘、光盘或磁带。这些其它存储在图1中由可移动存储109和不可移动存储110示出。计算机存储介质可包括以用于存储诸如计算机可读指令、数据指令、程序模块或其它数据的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器104、可移动存储109和不可移动存储110全部都是计算机存储介质的示例。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光存储,磁带盒、磁带、磁盘存储或其它磁存储设备,或可被用来存储所需信息并可由计算设备100访问的任何其它介质。任何此类计算机存储介质都可以是计算机100的部分。计算设备100还可具有诸如键盘、鼠标、笔、语音输入设备、触摸输入设备等一个或多个输入设备112。还可包括诸如显示器、扬声器、打印机等一个或多个输出设备114。
计算设备100还包含允许设备诸如通过网络与其它计算设备118通信的通信连接116。网络包括局域网和广域网,以及其它大规模网络,包括但不限于,内联网和外联网。通信连接116是通信介质的一个示例。通信介质通常可具体化为诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块、或其它数据,并包括任何信息传递介质。术语“已调制数据信号”指以在信号中将信息编码的方式设置或改变其一个或多个特征的信号。作为示例,而非限制,通信介质包括诸如有线网络或直接连线连接等有线介质,以及诸如声学、RF、红外及其它无线介质等无线介质。如本文中所使用的术语计算机可读介质包括存储介质和通信介质。
跟踪项目管理软件应用程序中对文档的改变图2示出一种跟踪项目管理软件应用程序中对文档的改变的系统的框图。该系统包括客户机200、202、204,服务器210,以及数据存储220。客户机200、202、204和数据存储220被耦合到服务器210。数据存储220包括项目文档222和改变列表跟踪机制224。项目文档222可以是项目管理软件应用程序中使用的、在客户200、202、204之间共享的任何文档。改变列表跟踪机制224记录已对项目文档222中作出的修改。
在一个实施例中,项目文档222是项目进度表。通常的项目进度表包括任务、资源、分派、链接和日历的组合。任务是要执行的操作。资源是分配给任务的人员。分派将任务映射到资源。链接定义两个或多个任务之间的关系。日历定义资源的工作时间。可创建项目进度表以使任务在最短可能时间段中被完成。
改变列表跟踪机制224被安排支持要求项目文档222中已被修改的值的记录的特征。改变列表跟踪机制224还减少该特征的存储器消耗。例如,客户机200、202、204处的任何用户可修改项目文档222中的值。所有被修改的值都被记录在修改列表跟踪机制224中。项目管理器可利用改变列表跟踪机制224来撤消所有被修改的值(即,多次撤消特征)。改变列表跟踪机制224还允许用户重新排列项目文档222中的任务序列,而不会影响项目进度表。
改变列表跟踪机制224还可支持启用报告生成和审查日志记录的特征。报告可被直接链接到项目管理数据。对项目文档222中的数据的改变在报告中被自动更新,而无需重新生成整个报告。审查日志记录特征提供关于对项目文档222的特定修改负责的用户的信息。
图3示出一种改变列表跟踪机制的框图。改变列表跟踪机制300包括对象容器310、312、314和改变列表330、332、334、336、338、340。对象容器310、312、314包括对象320、322、324。对象320、322、324与项目管理软件应用程序中的项目文档的属性相关联。相关联属性的示例包括具体任务的开始/结束日期、任务的持续时间、完成任务的期限日期、以及分派给任务的资源。不同的对象可被分类到不同的对象容器内。对象容器310、312、314与具体的改变列表相关联。例如,对象容器310与改变列表330、332相关联。
每个改变列表330-340都记录对相关联的对象容器310、312、314中的对象320、322、324的修改,以启用可能受该修改影响的特征。例如,启用多次撤消特征,从而系统可被返回到项目文档的先前版本。报告特征允许对项目文档的修改在报告中被自动更新,而无需重新生成整个报告。审查日志记录特征将对项目文档的具体修改与执行该修改的用户相关联。修改可包括重新排序、移动、删除、或添加任务到项目进度表中。改变列表中的信息以特定顺序提供,以确保改变的准确记录被维护。
改变列表不一定记录对一对象容器内的每一个对象所作的每次修改。想要被通知对文档的具体改变的用户建立改变列表以跟踪对特定对象容器中的对象的一个或多个具体属性所作的修改。因此,改变列表330-340可适用于达到具体目的。
例如,请求用户350可建立改变列表330以跟踪对对象容器310中的对象11和对象12所作的修改。对象容器310可对应于与特定任务相关联的所有事件。对象11可对应于与特定任务相关联的开始日期,而对象12可对应于与特定任务相关联的完成日期。当对象11或对象12的值被修改时,对象容器310向改变列表330提供关于修改的信息。例如,项目经理可通过修改对应对象的值来推迟任务的预期完成日期。对象容器310将关于已修改的完成日期的信息传递给改变列表330。请求用户350(即,请求被通知对任务的完成日期的任何改变的用户)被通知该日期修改。改变列表330随即可被清除,且该循环为对对象11和对象12的任何后续修改重复。
一个以上用户可请求相同的修改信息。例如,三个不同的用户可能想要在任务的开始和/或完成日期被修改时得到通知。每一个用户都由一个改变列表号分派到同一个改变列表。当改变列表从对象容器接收到关于修改的信息时,该改变列表号所标识的所有请求用户都被通知该修改。
一个以上改变列表可与每一个对象容器相关联,以跟踪与该对象容器相关联的一个或一组不同的属性。用户可建立修改列表以跟踪具体属性,从而启用要求不同修改信息的集合的不同特征。例如,集合修改信息以生成项目报告和获取多次撤消特征的修改信息是不同的过程。
取决于要启用的特征,用不同方式处理修改信息。对于多次撤消特征,来自改变列表的已修改数据被存储在撤消缓冲区中。对于报告特征,改变列表中的已修改数据被用来更新报告。对于审查日志记录特征,通过从改变列表标识修改了数据的用户来执行日志记录操作。
图4示出一操作流程图,该操作流程图示出一种用于跟踪项目管理软件应用程序的文档中的改变的过程。该过程在开始框开始,文档被加载到计算设备的存储器中。在一个实施例中,文档是在不同用户之间共享的项目进度表。
移至框400,由想要被通知对文档的具体修改的用户创建改变列表。该用户通过改变列表号与改变列表相关联。改变列表与特定对象容器相关联。建立改变列表以跟踪对对象容器中对象的一个或一组属性的修改。对象与文档的元素相关联。要跟踪的属性的示例包括具体任务的开始/结束日期、任务的持续时间、任务完成的期限日期、以及分派给任务的资源。
前进至判定框410,确定改变列表中所标识的属性中是否有任何值已被修改。修改可由访问文档的任何用户作出。修改可包括重新排序、移动、替换、删除、或添加信息到文档中。如果对改变列表中所标识的属性值没有作任何修改,则处理在结束框终止。如果已对改变列表中所标识的属性值作出修改,则处理在框420继续。
前进至框420,对象容器向相关联的改变列表提供修改信息。修改信息可包括已被修改、添加、和/或删除的对象。修改信息还可包括已被改变的属性的属性标识符。
转到框430,根据对应的规则,用修改信息启用一个特征。对于多次撤消特征,来自改变列表的已修改数据被存储在撤消缓冲区中。对于报告特征,改变列表中的已修改数据被用来更新报告。对于审查日志记录特征,通过从改变列表标识修改了数据的用户来执行日志记录操作。
前进至框440,请求用户被通知该修改。在一个实施例中,使用改变列表号来标识和定位请求用户。移至框450,改变列表被清除。处理随即在结束框终止。
图5示出用于跟踪对与项目管理软件应用程序相关联的文档的改变的过程的示例性软件代码。用户可调用应用程序接口以创建改变列表,后者监视对项目数组中指定的对象所作的修改。如果改变列表创建方法成功,则向请求改变列表的用户提供对IChangeList接口500的指针。请求用户与标识所请求的改变列表的改变列表号相关联。ClearChanges()510被调用以清除与改变列表相关联的所有对象的所有属性标识符。然后由任意多个用户对与对应于改变列表的一个或多个对象相关联的属性进行修改。例如,项目经理可推迟任务的完成日期。
GetChangeHelems()520返回从改变列表被清除以来已被改变的任何属性标识符。GetNewHelems()530返回从改变列表被清除以来文档中所创建的任何新元素。GetDeletedHelems()540返回从改变列表被清除以来从文档中被删除的任何元素。GetChangedPidCount()550返回从改变列表被清除以来文档中已被改变的属性个数。GetChangedPids()560返回已改变的属性标识符的个数。如果从改变列表被清除以来属性在文档中已被改变,则HasPidBeenChanged()570返回真。
以上说明书、示例和数据提供制造和使用本发明的组成的完整描述。因为可作出本发明的许多实施例而不会偏离本发明的精神和范围,所以本发明驻留在所附权利要求书中。
权利要求
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.如权利要求14所述的系统,其特征在于,所述用户通过改变列表号与所述改变列表相关联。
17.如权利要求8所述的系统,其特征在于,所述文档是与项目管理软件应用程序相关联的项目文档。
18.一种具有用于跟踪文档中的修改的计算机可执行指令的计算机可读介质,所述计算机可执行指令包括创建被安排成跟踪对与所述文档相关联的对象的属性的修改的改变列表,其中,所述改变列表是由用户创建的;将所述改变列表与对象容器相关联,其中,所述对象容器包括所述对象;确定所述属性何时被修改;向所述改变列表提供与来自所述对象容器的所述已修改属性相关联的信息;以及通知所述用户所述属性已被修改。
19.如权利要求18所述的计算机可读介质,其特征在于,还包括启用一基于与所述已修改属性相关联的信息的特征。
20.如权利要求19所述的计算机可读介质,其特征在于,所述特征是以下各项中的至少一项多次撤消特征、报告生成特征、以及审查日志记录特征。
全文摘要
一种改变列表跟踪机制支持要求项目管理软件应用程序的文档中已被修改的值的记录的特征。所支持的特征的示例包括多次撤消、报告生成、以及审查日志记录。改变列表跟踪机制包括对象容器和改变列表。每个对象容器都包括与文档的属性相关联的对象。想要被通知具体修改的用户创建改变列表,以跟踪对特定对象容器中的具体对象属性所作的修改。改变列表中所标识的属性值可由访问文档的任何用户修改。对应的对象容器向改变列表提供关于修改的信息。用户被标识,并被通知该修改。
文档编号G06F17/30GK1790402SQ20051012505
公开日2006年6月21日 申请日期2005年11月17日 优先权日2004年12月17日
发明者C·H·伯恩斯, R·R·埃耶, T·B·哈拉汉, Y·B·沃罗诺夫 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1