容器层级中的多层单元的增强可视化和选择的方法和系统的制作方法

文档序号:6571307阅读:350来源:国知局

专利名称::容器层级中的多层单元的增强可视化和选择的方法和系统的制作方法
技术领域
:本发明一般涉及计算机以及类似技术的领域,并具体地涉及在此领域中使用的软件。
背景技术
:集成开发环境(IDE)是用于帮助计算机程序员开发代码的计算机软件。IDE通常包括源代码编辑器(在用户界面(“UI”)的第一窗口中的文本编辑器或基于建模语言的编辑器)、编译器和/或解释器(在UI中未示出的底层软件)、编译自动化工具(包括建模语言)以及调试器(在UI的第二窗口中)。UI通常包括类浏览器、对象检查器以及类层级(树)图,用于面向对象的软件开发。可视编辑器是用于设计应用UI的选择的工具。这些可视编辑器使用如上所述的基于建模语言的编辑器。UI单元被添加到编辑器,并通过选择可视单元(其是基于建模语言的)并改变其属性来进行操作。对于可视编辑任务(其中内容在本质上是多层的,例如面向表的内容)而言,随着容器层级复杂度的增加,在内容容器层级中对独立单元的可视化和选择变得越来越困难。例如,在大多数所见即所得(WYSIWYG)的可视编辑器中,容器对象的可视化一般很小,通常其高度仅为几个像素。之所以这些可视化是如此地小,是因为在运行时该对象就将如此被显示,或者即使它们在运行时不被显示,也是因为在代码编辑过程期间在屏幕上具有有限的空间。经常地,存在多层容器(例如表中有表),其中在容器之间几乎不存在空间。即,容器可能在它们之间仅具有一个像素,或者它们可能实际上相互叠放(它们之间没有像素)。因此,用于选择一个容器还是另一个容器的热点(hotspot)可能仅涉及一个或几个像素。例如,考虑图1a中示出的IDE窗口100a。图1a中示出的视图100a描述了作为3×3表的表A。表A的左上单元格包含表B,表B在可视显示中在视觉上被表A所混淆。如图1b的视图100b中所示的表B是2×2表。表B的左上单元格包含表C,表C也是2×2表,但被表B(和表A)所混淆。例如,试图选择表A的左上单元格还是选择表B的左上单元格非常困难。如所述,视图100a的最左上角包含每个表的边框、每个表的顶行、以及每个表的左上单元格。因此,没办法在表的边框、行或单元格之间进行区分,因为它们呈现为相同的。此外,在运行时在IDE环境中,仅一个边框是可见的。但是,在开发期间,你可能需要选择特定(单个)表、行或单元格,但由于上述混淆问题而无法进行选择。此外,许多“所见即所得”(WYSIWYG)编辑器将不会显示某些容器的任意可视表示(以便遵循WYSIWYG显示),这使得对它们的可视选择甚至更难(例如,如以下讨论的图2a所示)。对于包括在工程、商业软件以及生产力应用中用来创建演示、图、模型和工程蓝图的可视编辑器的非IDE环境,存在类似问题。所述非IDE环境包括下述软件应用,诸如PowerPoint、Visio、工作流编辑器、体系结构设计软件以及计算机辅助设计(CAD)软件。
发明内容为解决上述对于选择性地提供启示给物理上接近和/或重叠的容器/框的方式的需求,本发明提供了一种方法、装置和计算机可用媒体,用于在图形编辑器中显示多个单元,其中所述多个单元在所述图形编辑器中重叠并共享公共空间;调用打开缩放窗口的可视启示(affordance);以及在图形编辑器中所述多个单元重叠的区域中显示所述视觉启示和所述缩放窗口,其中所述缩放窗口显示可视表示,其被修改以示出重叠的多个单元。在以下详细书面描述中,本发明的以上和额外的目的、特征和优点将变得明显。在权利要求中阐述了被认为是新颖特征的本发明的特性。不过,通过参考以下对说明性实施例的详细描述,并结合附图阅读时,本发明本身及其优选使用模式、进一步的目的和优点将被最佳地理解,在附图中图1a-b示出了典型的现有技术容器图形,其使得对位置接近的容器的访问变得困难;图2a描述了在容器链中包含底层对象的容器的图形表示;图2b示出了缩放窗口小部件,其呈现了示出在图2a中示出的容器的底层对象的缩放窗口;图3是用来创建和利用图2b中示出的缩放窗口小部件的示例性步骤的流程图;图4描述了可实现本发明的示例性客户端计算机;图5示出了示例性服务器,通过示例性服务器,用于执行本发明的软件可被部署和/或实现用于图4中示出的客户端计算机的用户的利益;图6a-b示出用来部署能够执行图2a-3中示出并描述的步骤的步骤的流程图;图7a-c示出用来在虚拟专用网络(VPN)中部署能够执行图2a-3中示出并描述的步骤的软件的步骤的流程图;图8a-b示出用来把能够执行图2a-3中示出并描述的步骤的软件集成在计算机系统中的步骤的流程图;以及图9a-b示出用来使用随需服务提供器执行图2a-3中示出并描述的步骤的步骤的流程图。具体实施例方式呈现了一种用于缩放窗口小部件(widget)的方法、装置和计算机可用媒体,所述窗口小部件a)便利于对分层图形对象之间的容器关系的可视化;以及b)便利于在容器层级中对可视单元的选择(以及其它动作的调用)。当在可视编辑器中工作时,在多层的任何事物(包括容器)上呈现放大镜图标形式的启示(affordance)(缩放窗口小部件)。在放大镜上点击导致缩放窗口打开,其中示出了在容器之后的容器关系的扩大表示。当缩放打开时,不同容器对象在它们之间具有充足的物理的屏幕上的空间,以允许容器对象被命名/重新命名、在层级中重新排序、被查看、或进行其它操作。注意,在优选实施例中,对于包含至少一个其它对象的每个对象,在最外面的对象(或单元格)的上角中显示缩放窗口小部件。尽管缩放窗口包含对象(或容器或单元格)的扩大表示,但缩放窗口可被定制来标识不同对象(例如,之前未示出的对象可被示出,靠近或重叠的边框可被分割开,不同对象可被加标签等等)。例如,如果所述对象确实共享一个边框,则放大将没有帮助,除非该共享边框被分割开,如本说明书中所公开的。因此,本公开呈现了一种用于选择特定对象用以通过普通编辑工具进行进一步操作的方法。因此,为解决上述对于在图形编辑器中可视化和选择重叠单元的方式的需求,本发明提供了一种用于显示缩放机制的方法、装置和计算机可用媒体,所述缩放机制放大和增强对重叠对象的可视化和操作,否则所述重叠对象将保持为隐藏。当图形编辑器中的两个或多个单元共享编辑器中的公共空间时所述缩放机制被使能,并且其经由打开缩放窗口的可视启示被调用。所述启示和随后的缩放窗口出现在对象重叠的区域中。在优选实现中,缩放窗口显示了类似于初始显示的视觉表示,但在必要时被修改以示出重叠单元中的每个,从而可选择它们或对它们进行动作。这可包括在必要时将重叠对象的各部分“分隔开”并扩大,从而它们可以被独立选择和操作(例如,示出具有共享边框的两个不同容器),以及对每个对象加标签。此外,在一实施例中,缩放窗口小部件和/或缩放窗口的显示大小通过具有公共边框的若干图形表示(例如重叠单元)的数量来自动确定(使其更大或更小)。注意,尽管用示例性方式描述并叙述了与集成开发环境(IDE)一起使用的本发明的优选实施例,但此处描述的新颖特征在任何可视编辑器环境中都是有用的,所述环境包括但不限于在创建演示、图、模型和工程蓝图时使用的工程开发应用、商业软件和生产力应用中使用的可视编辑器。这些应用的示例包括但不限于PowerPoint、Visio、工作流编辑器、体系结构设计软件以及计算机辅助设计(CAD)软件。因此,不论在哪里只要在可视编辑器中呈现的对象共享多层空间中的任意空间,就可应用当前描述的发明。在一种极端情况中,对象可能仅共享公共边框。在另一种极端情况中,对象完全重叠。本发明提供了用于处理这两种极端情况的方法和装置。现在参考图2a,描述了软件开发平台IDE屏幕202,其示出了IDE屏幕202的编辑器窗口中的容器图形204。尽管容器图形204具有多个子表(子层),但在没有下述的本发明的情况下,唯一可见层是如图所示的图形204的层。注意,尽管出于示例性目的使用了“子表”,但可以理解本发明适用于任何对象。还要注意,除了可见的容器图形204(作为最外面的容器)中描述的对象之外,在未使用此处描述的缩放窗口小部件的情况下,哪个特定容器被实际显示是不清楚的。现在参考图2b,提供了使得能够对缩放空间中重叠的对象进行标识的缩放部分视图的图示。缩放窗口小部件提供了用于选择重叠对象的启示。缩放视图中呈现的启示可以允许对象操作(例如移动)以及对特定重叠对象(例如上下文菜单)的动作的调用。如图2b所示,容器图形204是在树形图205中示出的名为PortfolioJSF.jsp的java服务器页的图形表示。PortfolioJSF.jsp实际上是一系列嵌套的容器对象,其中每个对象(除了下述的“树”)包含另一对象。注意,如图形204所示,组成该页的不同容器未被可视地表示,从而使得选择它们中之一的任务甚至更难。容器图形204具有在图2b中示出为容器层206a-c的底层容器链,其通过缩放窗口小部件(ZW)208变得可见。容器层206a是由标题为“树”的表的在前图形表示所描述的层,并且其中容器层206b是由标题为“页签面板”的表的在后图形表示所描述的层,并且其中容器层206c是由标题为“表格”的表的在最后的图形表示所描述的层。即,容器层206对应于针对java服务器页PortfolioJSF.jsp的数据结构,其中表树包含页签面板表,页签面板表包含表格,表格包含另一表,所述另一表包含表面板,等等。因此,容器层206的相对位置对应于所述不同表之间的层级关系。在优选实施例中,缩放窗口小部件208与软件一起被创建,其具有提供容器层206的屏幕上操作能力的智能。例如,当缩放窗口小部件(ZW)208为活动时(诸如通过将表示ZW208的放大镜图标拖动到容器图形204的左上角,并接着点击该图标,ZW208成为活动的,显示容器层206中被(全部或部分地)混淆的在后图形表示的内容),接着容器层206可被重新命名(通过在图形表示的标题区域上点击),或在容器层级中被重新排序。为给容器层206重新排序,仅把所选择容器层206拖动到另一容器层206之前或之后。此动作重新定义了被拖动的容器层206的层级位置。因此,如果容器层206c被拖动到容器层206b之前,则表格表将依赖于页签面板表(其现在在容器链中更高)。尽管出于示例性目的描述了重新命名和重新排序的操作,但本发明提供了一种用于选择任何对象进行动作的方法,所述动作诸如修改对象属性、经由拖放移动对象等。在优选实施例中,每一容器层在图形上被编码(通过颜色、或填充图案,或通过任何其它图形上独特的显示),以指定容器层206的层级位置。例如,假定容器图形204用于如所述的Java服务器页(JSP)。那么,所述容器层206对应于容器链中用于JSP文件的小服务程序。从所述链顶部开始的相对层级位置在图形上被编码。当容器层206被拖动到不同层级层时,此图形编码改变。优选地,取决于有多少容器层206的底层(在后)图形表示存在,缩放空间(其被ZW208所缩放)的物理大小(在GUI屏幕空间上)被自动调整。即,缩放窗口的大小被优化,以示出容器链中的所有对象。通过用于确定所聚焦的可视单元的容器层级中最外面的可选择对象的算法来计算大小。因此,如果仅存在两个在后容器层206,则ZW208相对于如果存在三个在后容器层206的情形更小,从而提供用于访问和操作在后图形表示的更多像素空间。类似地,当ZW208被启动(例如通过点击放大镜图标)时,图形表示的标题被自动呈现,如图2b所示。还要注意关闭启示窗口小部件(CAW)210,其可以被点击来关闭窗口中的缩放特征。在一实施例中,ZW208被自动放置在下述位置,其中在对于所有分层对象为公共的位置(优选地在最大数量的重叠对象的边框相交的一个点)存在两个或多个重叠对象。所述放置通过将ZW208放置在最需要它的地方而优化对它的使用。对于图2b所示的示例,底层代码(针对非常简化的示例)可如下所示<tableid=”table1”....><tr><td><h:formid=”Portfolio”...>...<tableid=”table2”...><tr><td><odc:tabbedpanelid=”tabbedpanel”...><table><tr><td><odc:treeid=”tree1”...>...</odc:tree></tr></td></table></odc:tabbedpanel></tr></td></table></h:form></tr></td></table>现在参考图3,呈现了用来利用ZW208的示例性步骤的流程图。在启动框302之后,在可视编辑器(诸如图2a中示出的)中呈现(框304)多层容器(诸如容器图形204)。如框306所述,接着在多层容器的公共边缘上定位缩放窗口小部件(ZW)(即,其中容器层206相互叠放,如图2a-b所示)。接着可查看(框308)容器层中的每个,包括它们的层级顺序、标题等。可选地,可以通过在图形表示中将容器层拖动到新位置而在层级中重新排序(框310)容器层中的每个。注意,在一实施例中,容器层实际上未被逻辑上重新排序,而是仅被不同地显示(且不一定是WYSIWYG),以便更容易地区分对象。不过在另一实施例中,移动逻辑层也在逻辑上重新排序它们。此外,容器层可被重新命名(框312)。当在后的图形表示已被查看、重新命名、重新排序等之后,接着ZW208被点击关闭(框314),并且过程结束(终止框316)。现在参考图4,描述了可利用本发明的示例性客户端计算机402的框图。客户端计算机402包括耦合于系统总线406的处理器单元404。驱动/支持显示器410的视频适配器408也耦合于系统总线406。系统总线406经由总线桥412耦合于输入/输出(I/O)总线414。I/O接口416耦合于I/O总线414。I/O接口416提供与各种I/O设备的通信,包括键盘418、鼠标420、致密盘-只读存储器(CD-ROM)驱动器422、软盘驱动器424和闪速驱动器存储器426。连接于I/O接口416的端口的格式可以是对计算机体系结构领域的技术人员已知的任何格式,包括但不限于通用串行总线(USB)端口。客户端计算机402能够使用耦合于系统总线406的网络接口430经由网络428与服务提供者服务器502通信。网络428可以是诸如因特网的外部网,或者诸如以太网或虚拟专用网络(VPN)的内部网。通过使用网络428,客户端计算机402能够使用本发明来访问服务提供者服务器502。硬盘驱动器接口432也耦合于系统总线406。硬盘驱动器接口432与硬盘驱动器434相接口。在优选实施例中,硬盘驱动器434填充也耦合于系统总线406的系统存储器436。填充系统存储器436的数据包括客户端计算机402的操作系统(OS)438和应用程序444。OS438包括壳440,用于提供对诸如应用程序444的资源的透明的用户访问。一般而言,壳440是提供在用户与操作系统之间的接口和解释器的程序。更具体地,壳440执行被输入到命令行用户界面中或来自文件的命令。由此,壳440(在UNIX中被称为壳,在Windows中也被称为命令处理器)通常是操作系统软件层级的最高层,并用作命令解释器。壳提供系统提示,解释通过键盘、鼠标或其它用户输入媒体所输入的命令,以及把解释过的命令发送到操作系统的适当的较低层(例如内核442)用以处理。注意,尽管壳440是基于文本的、面向行的用户界面,但本发明将等同地很好支持其它用户界面模式,诸如图形、语音、手势等等。如所述,OS438还包括内核442,内核442包括OS438的功能的较低层,其包括提供OS438的其它部分和应用程序444所需的必要服务,包括存储器管理、过程和任务管理、盘管理、以及鼠标和键盘管理。应用程序444包括浏览器446。浏览器446包括程序模块和指令,其使得万维网(WWW)客户端(即,客户端计算机402)能够使用超文本传输协议(HTTP)消息传送来发送网络消息到因特网和接收网络消息,从而使能与服务提供者服务器502的通信。客户端计算机402的系统存储器中的应用程序444还包括缩放窗口小部件应用(ZWA)448。ZWA448包括用于实现图1b-3中描述的过程的代码。在一实施例中,客户端计算机402能够从服务提供者服务器502下载ZWA448。客户端计算机402中描述的硬件组件并非意在穷尽性的,而是代表性的,以突出本发明所需的必要组件。例如,客户端计算机402可包括可替换的存储器存储设备,诸如磁带、数字通用盘(DVD)、伯努里盒式磁盘等等。这些和其它变体意在落在本发明的精神和范围中。如上所述,ZWA448可从服务提供者服务器502下载到客户端计算机402,如图5中的示例性形式所示。服务提供者服务器502包括耦合于系统总线506的处理器单元504。视频适配器508也耦合于系统总线506。视频适配器508驱动/支持显示器510。系统总线506经由总线桥512耦合于输入/输出(I/O)总线514。I/O接口516耦合于I/O总线514。I/O接口516提供与各种I/O设备的通信,包括键盘518、鼠标520、致密盘-只读存储器(CD-ROM)驱动器522、软盘驱动器524和闪速驱动器存储器526。连接于I/O接口516的端口的格式可以是对计算机体系结构领域的技术人员已知的任何格式,包括但不限于通用串行总线(USB)端口。服务提供者服务器502能够使用耦合于系统总线506的网络接口530经由网络428与客户端计算机402通信。对网络428的访问允许服务提供者服务器502执行和/或下载ZWA448到客户端计算机402。系统总线506也耦合于硬盘驱动器接口532,硬盘驱动器接口532与硬盘驱动器534相接口。在优选实施例中,硬盘驱动器534填充也耦合于系统总线506的系统存储器536。填充系统存储器536的数据包括服务提供者服务器502的操作系统538,其包括壳540和内核542。壳540被并入较高层的操作系统层,并被用来提供对诸如应用程序544的资源的透明的用户访问,所述应用程序544包括浏览器546以及上述的ZWA448的拷贝,其可以被部署到客户端计算机402。服务提供者服务器502中描述的硬件组件并非意在穷尽性的,而是代表性的,以突出本发明所需的必要组件。例如,服务提供者服务器502可包括可替换的存储器存储设备,诸如磁带、数字通用盘(DVD)、伯努里盒式磁盘等等。这些和其它变体意在落在本发明的精神和范围中。还要注意,在本发明的优选实施例中,服务提供者服务器502执行与本发明相关联的所有功能(包括执行ZWA448),从而使得客户端计算机402免于使用其资源。应该理解,本发明的至少某些方面可以可替换地用包含程序产品的计算机可用媒体来实现。定义本发明功能的程序可经由各种承载信号的媒体被递送到数据存储系统或计算机系统,所述承载信号的媒体包括但不限于不可写存储媒体(例如CD-ROM)、可写存储媒体(例如,硬盘驱动器、读/写CD-ROM、光媒体)以及通信媒体(诸如计算机和电话网络,包括以太网、因特网、无线网络以及类似网络系统)。因此,应该理解,这种承载信号的媒体当携带或编码指示本发明的方法功能的计算机可读指令时,表示本发明的可替换实施例。此外,应该理解,本发明可被下述系统实现,所述系统具有硬件、软件、或如这里描述的软件硬件的组合的形式的装置及其等同物。软件部署如上所述,在一实施例中,包括ZWA448的功能的本发明所述的过程由服务提供者服务器502执行。可替换地,ZWA448B以及这里所述的方法以及具体而言如图2a-3所示并描述的方法可被部署为从服务提供者服务器502到客户端计算机402的处理软件。更具体地,用于如此描述的方法的处理软件可被另一服务提供者服务器(未示出)部署到服务提供者服务器502。接着参考图6,步骤600开始处理软件的部署。第一件事是确定当执行处理软件时是否存在将驻留在一个或多个服务器上的任何程序(查询框602)。如果是这样的情况,则将包含可执行软件的服务器被标识(框604)。用于一个或多个服务器的处理软件经由文件传送协议(FTP)或某种其它协议或通过使用共享文件系统进行拷贝而被直接传送到服务器的存储装置(框606)。处理软件接着被安装在服务器上(框608)。接着,做出关于处理软件是否通过使用户访问一个或多个服务器上的处理软件而被部署的确定(查询框610)。如果用户将访问服务器上的处理软件,则将存储处理软件的服务器地址被标识(框612)。做出关于代理服务器是否将被建立来存储处理软件的确定(查询框614)。代理服务器是位于客户端应用(诸如Web浏览器)和真实服务器之间的服务器。它截取到真实服务器的所有请求,以了解它是否可以满足请求本身。如果否,则它将请求转发给真实服务器。代理服务器的两个主要优点是提高性能和过滤请求。如果需要代理服务器,则安装代理服务器(框616)。经由诸如FTP的协议或经由文件共享将处理软件直接从源文件拷贝到服务器文件,处理软件被发送到服务器(框618)。另一实施例将是把事务发送到包含处理软件的服务器,并使该服务器处理该事务,接着接收处理软件并将其拷贝到服务器的文件系统。一旦在服务器上存储了处理软件,则用户经由其客户端计算机访问服务器上的处理软件,并拷贝到其客户端计算机的文件系统(框620)。另一实施例是使服务器自动拷贝处理软件到每个客户端,并接着在每个客户端计算机上运行处理软件的安装程序。用户在他的客户端计算机上执行安装处理软件的程序(框622),接着退出该过程(终止框624)。在查询步骤626,做出关于处理软件是否将通过经由电子邮件把处理软件发送给用户而被部署的确定。处理软件将被部署的用户组与用户客户端计算机的地址被一起标识(框628)。经由电子邮件将处理软件发送到用户的客户端计算机的每个(框630)。接着用户接收电子邮件(框632)并接着将处理软件从电子邮件中分离到用户的客户端计算机上的目录(框634)。用户执行在他的客户端计算机上安装处理软件的程序(框622),接着退出该过程(终止框624)。最后,做出处理软件是否将被直接发送到用户在其客户端计算机上的目录的确定(查询框636)。如果是这样,则用户目录被标识(框638)。处理软件被直接传送到用户的客户端计算机目录(框640)。这可用若干方式完成,诸如但不限于共享文件系统目录,并接着从发送者的文件系统拷贝到接受者用户的文件系统,或可替换地使用诸如文件传送协议(FTP)的传送协议。用户访问其客户端文件系统上的目录,以便为安装处理软件做准备(框642)。用户在他的客户端计算机上执行安装处理软件的程序(框622),接着退出该过程(终止框624)。VPN部署本发明可作为服务的一部分被部署到第三方,其中第三方VPN服务被提供为安全部署工具,或者其中VPN按照特定部署所需的那样被随需构建。虚拟专用网络(VPN)是可被用于保护通过另一不安全或不信赖的网络的连接的安全的技术的任何组合。VPN提高安全性并降低操作成本。VPN使用公众网络(通常为因特网)来把远程站点或用户连接到一起。取代于使用专有的真实世界连接(诸如租用线),VPN使用通过因特网从公司的专用网络被路由到远程站点或雇员的“虚拟”连接。出于递送或执行处理软件(即,软件驻留在别处)的目的,通过特别地构造VPN可将经由VPN对软件的访问提供为服务,其中VPN的持续时间被限于给定时间段或基于所支付数额的给定数量的部署。处理软件可通过远程访问或点对点(site-to-site)VPN来部署、访问和执行。当使用远程访问VPN时,处理软件经由在公司的专用网络和远程用户之间通过第三方服务提供者的安全的经加密的连接而被部署、访问和执行。企业服务提供者(ESP)设置网络访问服务器(NAS),并向远程用户提供用于其计算机的桌面客户端软件。远距离工作者接着可拨打免费号码或经由电缆或DSL调制解调器直接附接,以到达NAS并使用其VPN客户端软件来访问公司网络以及访问、下载和执行处理软件。当使用点对点VPN时,处理软件通过使用专有设备和大规模加密来部署、访问和执行,所述加密被用于在公众网络(诸如因特网)上连接公司的多个固定站点。处理软件经由隧道贯穿(tunneling)在VPN上传送,所述隧道贯穿是将整个包安置在另一包中并在网络上发送该包的过程。外部包的协议被网络和两个点(被称为沟渠接口,在其中所述包进入和退出网络)所了解。在图7中描述了对于这种VPN部署的过程。启动框702开始虚拟专用网络(VPN)过程。做出是否需要用于远程访问的VPN的确定(查询框704)。如果不需要所述VPN,则进行到查询框706。如果需要所述VPN,则确定是否存在远程访问VPN(查询框708)。如果VPN确实存在,则进行到框710。否则标识将在公司的专用网络和公司的远程用户之间提供安全的、经加密的连接的第三方提供者(框712)。公司的远程用户被标识(框714)。第三方提供者接着建立网络访问服务器(NAS)(框716),其允许远程用户拨打免费号码或经由宽带调制解调器直接附接来访问、下载和安装用于远程访问VPN的桌面客户端软件(框718)。在远程访问VPN已经建立后,或者如果其之前已经被安装,则远程用户可通过拨入NAS或经由电缆或DSL调制解调器直接附接到NAS而访问处理软件(框710)。这允许对处理软件被访问的公司网络的输入(框720)。处理软件经由隧道贯穿在网络上被传送到远程用户的计算机(desktop)。即,处理软件被划分成包,并且包括数据和协议的每个包被置于另一个包中(框722)。当处理软件到达远程用户的计算机时,它从所述包中被移除,被重建,并接着在远程用户的计算机上执行(框724)。接着做出是否需要用于点对点访问的VPN的确定(查询框706)。如果不需要,则进行到退出该过程(终止框726)。否则,确定是否存在点对点VPN(查询框728)。如果确实存在,则进行到框730。否则,安装建立点对点VPN所需的专有设备(框738)。接着把大规模加密建立到VPN中(框740)。在点对点VPN已经被构建之后,或者如果它之前已经被建立,则用户经由VPN访问处理软件(框730)。处理软件经由隧道贯穿在网络上被传送到站点用户(框732)。即,处理软件被划分成包,并且包括数据和协议的每个包被置于另一个包中(框734)。当处理软件到达远程用户的计算机时,它从所述包中被移除,被重建,并在站点用户的计算机上执行(框736)。接着该过程在终止框726结束。软件集成通过提供包括用于实现这里所述过程的代码的处理软件与应用、操作系统和网络操作系统软件共存,以及接着在处理软件将运行的环境中的客户端和服务器上安装处理软件,处理软件可被集成到客户端、服务器和网络环境中。第一步骤是标识客户端和服务器上处理软件所需的或与处理软件相结合工作的任何软件,包括处理软件将被部署的网络操作系统。这包括网络操作系统,其是通过添加连网特征而增强基本操作系统的软件。接着,软件应用和版本号将被标识,并与已经被测试过可与处理软件一起工作的软件应用和版本号的列表相比较。未出现的那些软件应用或不匹配正确版本的软件应用将使用正确的版本号来升级。将参数从处理软件传递到软件应用的程序指令将被检查,以确保参数列表匹配处理软件所需的参数列表。相反地,由软件应用传递给处理软件的参数将被检查,以确保参数匹配处理软件所需的参数。包括网络操作系统的客户端和服务器操作系统将被标识,并与已经被测试过可与处理软件一起工作的操作系统、版本号和网络软件的列表相比较。不匹配经测试过的操作系统和版本号的列表的那些操作系统、版本号和网络软件将在客户端和服务器上被升级到所需级别。在确保了将部署处理软件的软件处于已测试过可与处理软件一起工作的正确的版本级别之后,通过在客户端和服务器上安装处理软件而完成所述集成。对于此过程的高级描述,现在参考图8。启动框802开始处理软件的集成。第一步骤是确定是否存在将在一个或多个服务器上执行的任何处理软件程序(框804)。如果不是这种情况,则集成进行到查询框806。如果是这种情况,则服务器地址被标识(框808)。服务器被检查,以了解它们是否包含下述软件,所述软件包括了已测试过可与处理软件一起的操作系统(OS)、应用和网络操作系统(NOS)连同它们的版本号(框810)。服务器也被检查,以确定是否存在处理软件在框810中所需的任何未出现软件。做出版本号是否匹配已测试过可与处理软件一起的OS、应用和NOS的版本号的确定(框812)。如果所有版本号都匹配,且不存在未出现的所需软件,则集成继续到查询框806。如果一个或多个版本号不匹配,则不匹配版本在一个或多个服务器上使用正确版本进行更新(框814)。此外,如果存在未出现的所需软件,则在框814所示步骤中,在一个或多个服务器上更新所述软件。通过安装处理软件而完成服务器集成(框816)。在框804、812或816中示出的步骤中的任一步骤之后的查询框806中示出的步骤确定是否存在将在客户端上执行的处理软件的任何程序。如果在客户端上不执行处理软件程序,则集成进行到终止框818并退出。如果不是这种情况,则客户端地址被标识,如框820所示。客户端被检查,以了解它们是否包含下述软件,所述软件包括了已测试过可与处理软件一起的操作系统(OS)、应用和网络操作系统(NOS)连同它们的版本号(框822)。客户端也被检查,以确定是否存在处理软件在框822所述的步骤中所需的任何未出现软件。做出版本号是否匹配已测试过可与处理软件一起的OS、应用和NOS的版本号的确定(查询框824)。如果所有版本号都匹配,且不存在未出现的所需软件,则集成继续到终止框818并退出。如果一个或多个版本号不匹配,则不匹配版本在客户端上使用正确版本进行更新(框826)。此外,如果存在未出现的所需软件,则在客户端上更新所述软件(同样在框826)。通过在客户端上安装处理软件而完成客户端集成(框828)。集成进行到终止框818并退出。随需处理软件被共享,以用灵活、自动化的方式同时服务于多个客户。其是被标准化的,几乎不需要定制,并且其是可调节的,提供现买现付模型中的随需功能。处理软件可被存储在可从一个或多个服务器访问的共享文件系统上。处理软件经由包含数据和使用所访问服务器上的CPU单元的服务器处理请求的事务而被执行。CPU单元是服务器的中央处理器的时间单元,诸如分钟、秒、小时。此外,所评估服务器可对其它服务器做出需要CPU单元的请求。CPU单元是仅表示一种使用度量的示例。其它使用度量包括但不限于网络带宽、存储器使用、存储装置使用、包传输、完全事务等。当多个客户使用同一处理软件应用时,通过包括在事务中用来标识唯一客户和对于该客户的服务类型的参数来区分他们的事务。用于对于每个客户的服务的所有CPU单元和其它使用度量被记录。当对于任一服务器的事务数量达到开始影响该服务器的性能的数量时,访问其它服务器以增加能力并共享工作负荷。同样地,当其它使用度量(诸如网络带宽、存储器使用、存储装置使用等)达到影响性能的能力时,添加额外的网络带宽、存储器使用、存储装置等以共享工作负荷。用于每个服务和客户的使用度量被发送到收集服务器,收集服务器将对于每个客户针对在提供对处理软件的共享执行的服务器网络中的任何位置处理过的每个服务的使用度量进行加和。所加和的使用单元度量被周期性地与单元成本相乘,而得到的总体处理软件应用服务成本被可替换地发送到客户,或在客户所访问的网站上指示出,客户随后向服务提供者进行支付。在另一实施例中,服务提供者直接从银行或金融机构的客户帐户请求支付。在另一实施例中,如果服务提供者也是使用处理软件应用的客户的客户,则欠服务提供者的付款与服务提供者所欠的付款相协调,以最小化付款转帐。现在参考图9,启动框902开始随需过程。创建包含唯一客户标识、所请求服务类型和进一步指定服务类型的任何服务参数的事务(框904)。接着事务被发送到主服务器(框906)。在随需环境中,主服务器可以首先是唯一的服务器,接着随着性能被消耗,其它服务器被添加到随需环境。查询随需环境中的服务器中央处理单元(CPU)性能(步骤908)。估计事务的CPU需求,接着将随需环境中的服务器可用CPU性能与事务的CPU需求相比较,以了解是否在任何服务器中存在足够的CPU可用性能来处理事务(查询框910)。如果不存在足够的服务器CPU可用性能,则额外的服务器CPU性能被分配来处理事务(框912)。如果已经存在足够的可用CPU性能,则事务被发送到所选择的服务器(框914)。在执行事务之前,进行对其余的随需环境的检查,以确定环境是否具有足够的可用性能来处理事务。此环境性能包括但不限于下述情形网络带宽、处理器存储器、存储装置等(框916)。如果不存在足够的可用性能,则性能将被添加到随需环境(框918)。接着,处理事务的所需软件被访问并被加载到存储器中,接着事务被执行(框920)。使用度量被记录(框922)。使用度量包括随需环境中被用于处理事务的那些功能的若干部分。所述功能使用(诸如但不限于网络带宽、处理器存储器、存储装置和CPU循环)是所记录的使用度量。使用度量被加和,与单元成本相乘,并接着被记录为对于请求客户的费用(框924)。如果客户已请求将随需成本记录到网站(查询框926),则它们被记录(框928)。如果客户已请求将随需成本经由电子邮件发送到客户地址(查询框930),则这些成本被发送给客户(框932)。如果客户已请求随需成本从客户帐户中直接支付(查询框934),则直接从客户帐户中接收付款(框936)。接着在终止框938退出随需过程。尽管已经参考优选实施例具体示出和描述了本发明,但本领域技术人员将了解,可以在其中做出形式和细节上的各种改变,而不会脱离本发明的精神和范围。例如,尽管已经在其中容器被访问的集成开发环境(IDE)的上下文中描述了本发明,但是,本发明在其中形状相互重叠的任何图形界面中也是有用的。例如,如果PowerPoint或Word中的两个表以下述方式相互叠放,所述方式使得难于或无法“窥视”到底层(被覆盖)的表,则可以在所述应用中以类似方式使用当前描述的缩放启示图标。因此,本发明特别呈现了一种选择性地提供启示的方式,以便在视觉上区分并在图形上选择物理上接近和/或重叠的容器/框。所述方法允许在两个或多个图形表示之间的公共边框上显示用于缩放窗口小部件的启示。缩放窗口小部件显示在初始图形显示之前,在视觉上混淆了初始显示的至少一部分。缩放窗口小部件显示至少一部分初始显示,并以较大的大小和/或通过人为分隔的边框和/或通过加标签的每个对象来显示对象/边框,以便易于在视觉上区分并在视觉上选择特定对象/边框。WYSIWYG显示将在必要时被分隔开以满足此目的。在优选实现中,缩放区域显示恰好(实际上)满足下述特定目的的人为显示,所述目的为a)示出容器,以及b)允许选择切换,以及c)调用对对象的动作。这可包括在必要时将对象“分隔开”(例如以便示出具有共享边框的两个不同容器),以及为每个对象加标签。此外,如说明书和权利要求书中所使用的,术语“计算机”或“系统”或“计算机系统”或“计算设备”包括任何数据处理系统,其包括但不限于个人计算机、服务器、工作站、网络计算机、大型计算机、路由器、交换机、个人数字助理(PDA)、电话、以及能够处理、传输、接收、获取和/或存储数据的任何其它系统。权利要求1.一种计算机可实现方法,包括在图形编辑器中显示多个单元,其中所述多个单元在所述图形编辑器中重叠并共享公共空间;调用打开缩放窗口的可视启示;以及在图形编辑器中所述多个单元重叠的区域中显示所述视觉启示和所述缩放窗口,其中所述缩放窗口显示可视表示,其被修改以示出重叠的多个单元。2.根据权利要求1所述的计算机可实现方法,还包括可视地将所述重叠的多个单元分隔开,以示出所述重叠的多个单元的内容。3.根据权利要求2所述的计算机可实现方法,还包括为所述重叠的多个单元中的每个加标签。4.根据权利要求1所述的计算机可实现方法,其中所述重叠的多个单元表示容器链中用于Java服务器页文件的小服务程序,并且其中所述方法还包括通过拖动从所述容器链中的小服务器程序中选择的小服务程序的图形表示到相对于所述容器链中的另一小服务程序的另一图形表示的新位置,重新排序所述所选择的小服务程序。5.根据权利要求4所述的计算机可实现方法,其中所述小服务程序的层级位置在图形上被编码。6.根据权利要求1所述的计算机可实现方法,其中所述缩放窗口的显示大小通过具有公共边框的图形表示的数量来自动确定,这导致一个或多个所述图形表示被具有同一公共边框的另一图形表示所混淆。7.一种系统,包括处理器;耦合于所述处理器的数据总线;耦合于所述数据总线的存储器;以及包括计算机程序代码的计算机可用媒体,所述计算机程序代码包括可由所述处理器执行的指令,并被配置来在计算机图形用户界面中的两个图形表示的公共边框处显示缩放图形小部件,其中所述两个图形表示包括完全可见的在前图形表示以及被顶部图形表示在视觉上混淆的在后图形表示,并且其中所述缩放图形小部件提供所述在后图形表示的至少一部分的视图。8.根据权利要求7所述的系统,其中所述指令还被配置来经由所述缩放图形小部件重新命名所述在后图形表示。9.根据权利要求7所述的系统,其中所述在前和在后的图形表示表示了容器链中用于Java服务器页文件的小服务程序,并且其中所述指令还被配置来通过拖动从所述容器链中的小服务器程序中选择的小服务程序的图形表示到相对于所述容器链中的另一小服务程序的另一图形表示的新位置,重新排序所述所选择的小服务程序。10.根据权利要求9所述的系统,其中所述小服务程序的层级位置在图形上被编码。11.根据权利要求7所述的系统,其中所述缩放窗口小部件的显示大小通过具有公共边框的图形表示的数量来自动确定,这导致一个或多个所述图形表示被具有同一公共边框的另一图形表示所混淆。12.根据权利要求7所述的系统,其中所述缩放窗口小部件显示所述图形表示中的每个的标题。全文摘要一种方法、装置和计算机可用媒体,用于在图形编辑器中显示多个单元,其中所述多个单元在所述图形编辑器中重叠并共享公共空间;调用打开缩放窗口的可视启示;以及在图形编辑器中所述多个单元重叠的区域中显示所述视觉启示和所述缩放窗口,其中所述缩放窗口显示可视表示,其被修改以示出重叠的多个单元。文档编号G06F9/44GK101025685SQ20071000703公开日2007年8月29日申请日期2007年2月7日优先权日2006年2月16日发明者D·K·格罗特约翰,M·T·斯托科斯,L·桑托斯-戈麦斯申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1