将新用户界面映射到已有的整合界面的制作方法

文档序号:6608962阅读:98来源:国知局

专利名称::将新用户界面映射到已有的整合界面的制作方法
技术领域
:本发明涉及将新用户界面映射到已有的整合(integrated)界面。
背景技术
:软件程序经常经历许多个版本周期(cycle)。通常,新的版本提供维护升级,诸如修补缺陷的安全性增强。新版本也能够提供实质性的改变,诸如修改用户界面(UI)或修改后端处理或功能性,这些实质性的改变即使是在处理时也不会净皮用户注意到。例如,当前的企业资源计划(ERP)系统通过在后端使用成熟的业务逻辑并且在前端使用动态用户界面来帮助使业务实践自动化。这些ERP系统能够高度地适应特定的业务实践,并且经常改变以反映业务环境的变化或者该软件所针对的特定业务类型的变化。但是,在一些情况下,较旧的"遗留(legacy)"软件包含许多软件系统必需的功能性基础,并且所有需要"升级"的仅仅是附加的功能性和新UI。遗留软件应用可能具有前端UI,这些前端UI可能与后端事务逻辑(transactionallogic),i者如业务逻專專(businesslogic),不可分离。由于不可分离性,较新的软件可能不能使用与较旧的应用相同或类似的事务逻辑。因此,公司仅仅出于与较新的界面进行交互的目的就必须重新编写已有的事务逻辑。这在编程工时和金钱方面给公司带来了严重的负担。
发明内容根据本发明的一个方面,提供一种方法,包括从第一用户界面接收输入数据;将第一组数据发送到中介;将所述第一组数据映射到第二用户界面;将第二组数据发送到所述第二用户界面;将第三组数据从所述第二用户界面发送到所述中介;以及提供第三用户界面。根据本发明的另一个方面,提供一种系统,包括接收器,从第一用户界面接收输入数据;发送器,将第一组数据发送到中介,将第二组数据发送到第二用户界面,以及将第三组数据从所述第二用户界面发送到所述中介;处理器,将所述第一组数据映射到所述第二用户界面;以及终端,提供第三用户界面。根据本发明的再一个方面,提供一种包含指令的计算机可读介质,当执行该指令时导致执行以下方法,包括从第一用户界面接收输入数据;将第一组数据发送到中介;将所述第一组数据映射到第二用户界面;将第二组数据发送到所述第二用户界面;将第三组数据从所述第二用户界面发送到所述中介;以及提供第三用户界面。根据本发明的再一个方面,提供一种系统,包括从第一用户界面接收输入数据的装置;将第一组数据发送到中介的装置;将所述第一组数据映射到第二用户界面的装置;将第二组数据发送到所述第二用户界面的装置;将第三组数据从所述第二用户界面发送到所述中介的装置;以及提供第三用户界面的装置。图1描绘了一种能够使用本发明实施例的系统的可能配置。图2描绘了位于服务器的示例的整合应用(integratedapplication)的结构。图3描绘了软件体系结构的一个实施例,特别地,描绘了具有新UI的程序的体系结构,该新UI使用在模型-视图-控制器软件设计范例之间的改进的交互。图4描绘了模型-视图-控制器范例的例子,该模型-视图-控制器范例被扩展以解释中介(intermediary)处理。图5描绘了用户将与整合应用进行的交互的示例,该整合应用可以在应用中介才莫块之前被本发明的实施例使用。图6描绘了用户将与新的UI进行的交互的示例,该新UI通过中介模块的映射来进行通信,由此访问较旧的整合应用的事务逻辑。图7描绘了ERP应用的示例UI。图8描绘了这样一个示例,其中中介与后端整合应用通信以返回新的用户界面,其中该中介在这种情况下为控制器。图9描绘了一个示例逻辑,可以执行该逻辑以便在整合应用的第一界面和第二界面之间进行映射和发送信息,从而创建用于与用户进行交互的第三界面。具体实施例方式不仅为了促进代码的可重用性,而且还为了促进整个事务逻辑的可重用性,数据必须能够被发送到遗留软件程序的事务逻辑,并且必须能够从遗留软件程序的事务逻辑访问数据。但是,如果UI层与事务逻辑层整合在一起,则在本领域中还没有一种方法来分离代码以便访问事务逻辑。本发明的实施例的优点在于其使用了一个中介,该中介用作代理用户(surrogateuser),将用户的输入从新的第一界面映射到较旧的第二界面。然后该中介将从所述较旧的第二界面返回的数据或消息送回给新的界面逻辑,以创建新的第三界面显示,以由用户进行操作。以这种方式,可以在能够访问较旧的事务逻辑的同时开发的新UI。如果本发明的实施例包含从第一用户界面接收输入数据的装置(arrangement),则其可以利用新的UI。所述装置可以包含任意类型的计算设备或服务器、PDA、便携式计算机等上的处理器。本发明的实施例还可以包含将第一组数据发送到中介的装置,该装置包括网络设备、路由器、以太网线、以太网卡、无线卡等。实施例还可以包括将第一组凄t据映射到第二用户界面的装置,该装置包括诸如服务器、便携式计算机、PDA、台式计算机等计算设备上的处理器。实施例还可以包含将第二组数据发送到第二用户界面的装置,该装置包括相同或不同的发送设备,诸如网络设备、路由器、以太网线、以太网卡、无线卡等。实施例还可以包括将第三组数据从第二界面发送到中介的装置,该装置包括相同或不同的发送设备,诸如网络设备、路由器、以太网线、以太网卡、无线卡等。该实施例还可以包含提供第三用户界面的装置,该装置包括便携式计算机监视器、TV监视器、计算设备上的LCD显示器等。图1描绘了能够使用本发明的实施例的系统的可能配置。用户IOO将数据104输入到用户界面显示105,该用户界面显示105可以是计算设备101上的图形显示器、文本显示器等。计算设备101取得所述输入,并且该实施例或者处理该信息,或者在该界面没有整合事务逻辑的情况下,通过通信介质102将该信息发送到服务器103。在服务器103中,中介接受所发送的数据,并且能够使用较旧的"整合应用"107来处理这个数据,其中取决于设计范例,所述中介可以是控制器106,并且所述"整合应用"意味着该应用具有不可分离的界面逻辑和事务逻辑。然后该整合应用107可以将信息传送回中介106,接着该中介106能够更新显示105。计算设备101可以是任何具有处理或计算能力的硬件,诸如便携式计算机、手持设备等。通信介质102可以是内联网或互联网,并且通过无线或有线通信(例如,以太网线)。服务器103可以保存数据库信息,并且如果合适可以将实施例的功能模块分布在一个或多个服务器计算机103上。图2描绘了位于服务器103上的示例的整合应用107的结构。整合应用可以是整个应用本身,或者可以表示位于一个或多个服务器上或者在一个或多个服务器之间通信的更大的整合应用的组件或模块之一。软件应用可以基于它们的功能性而被划分为组件。组件的模块性允许每个单元以其事务或功能逻辑为特征。事务或功能逻辑旨在表示用于处理数据的逻辑,其中所述逻辑可以由业务逻辑组成,所述业务逻辑诸如与金融、销售、人力资源、运营、市场、策略管理、供应链管理等相关的程序。在图2中,界面逻辑200接收数据,并将这个信息发送到事务逻辑201,该事务逻辑201可以直接将那个信息返回到界面逻辑200以显示给用户,或者更新服务器存储器或数据库中的信息202。图3描绘了软件体系结构的一个实施例,特別地,描绘了具有新UI的程序的体系结构,其利用了在模型-视图-控制器软件设计范例之间的改进的交互。在软件应用中,模型301、视图(view)(在本发明的实施例中使用新的界面逻辑304)、以及控制器300(在本发明的实施例中用作中介)进行交互以改变数据的状态、操作视图的UI等。软件应用使用新的界面逻辑304向用户100显示(307)视图。用户100与新的界面逻辑304进行交互(307)。新的界面逻辑304通过控制器300进行发送(305),而控制器300发送(302)到模型。控制器解释用户的命令,并将交互、动作或事件从用户100翻译和发送(302)到模型301。然后模型301取得这个数据,并利用事务逻辑处理该数据,操作所给数据或已经存储在存储器中的数据的状态。模型301还能够发送消息给控制器(302),以及将数据和数据的属性反向提供给控制器(302)。任何发送回控制器(302)的数据或信息可以由控制器进行处理,并被发送(305)给新的界面逻辑304。具有分离的UI范例的一个优点在于UI—4殳会经历重大的变化,以便或者适应在UI实践中的变化,或者适应不同类别的用户。例如,网页或客户端UI可以是可根据用户的角色而修改的(adaptable),所述用户的角色诸如经理与雇员、或者销售人员与管理者。所述UI仅仅携带向特定用户显示信息所必需的屏幕逻辑。或者,其典型地并不含有其自己的事务逻辑。这允许展示给用户的UI是可修改的和灵活的。而且,因为这些界面是分离的,因此它们能够在相同硬件或在不同硬件上实施,诸如在安装在另一台计算机上的网页界面或含有大量子GUI的客户端上实施,并且通过互联网或内if关网进行查看。这些界面也可以被修改以便与包含各种类型的事务逻辑的不同种类的模块一起工作。本发明不仅限于模块化软件应用。整合应用也可以利用本发明的实施例的优点。例如,如果整合应用被完全地重新编写,但是需要访问较旧版本上的事务逻辑,则在较新的整合应用的事务逻辑中仍然可以创建中介,以便用作代理用户来与整合应用的较旧版本的UI进行交互。图4描绘了模型-视图-控制器范例的例子,其被扩展以解释中介处理。图3中的模型301用作事务逻辑,以及对来自控制器的输入的解释器。在图4中,需要整合应用407的模块的事务逻辑201来执行针对由用户100输入的数据的功能。用于在中介(在这种情况下为控制器300)和模型的事务逻辑(在这种情况下为整合应用407模块的事务逻辑201)之间进行交互的一种方法是具有映射400,控制器300使用该映射400来映射数据,以便对应由界面逻辑200接受的输入。控制器300可以存储一些数据,并进一步通过映射400来发送完整组数据或不同组数据,包括部分组数据以及控制器300中的其他信息。取决于发送的数据的类型、数据对象的组织、或者发送方法,数据和"组数据(setofdata)"可以互换地使用。可以存储通过控制器300发送(302)到整合应用407的数据或者在处理之后返回的数据。例如,如果从整合应用返回的更新的信息通过控制器300中继(302),并与新输入的信息104一起使用,则该数据可以由控制器300组合,并被发送(305)以更新新的界面逻辑304。当界面逻辑200接收映射的数据(306),事务逻辑201处理该数据,并且如果需要则更新数据202。可以发送(306)任何消息、数据或数据的属性,以通过映射400返回(302)到控制器300。控制器300可以存储被映射返回的数据组。控制器可以使用映射的数据来更新新的界面逻辑304。新的界面逻辑304能够取得任何可用的数据、数据的属性以及映射信息(如果可用的话),以便向用户100提供(305)新的显示。图5描绘了用户将与整合应用进行的交互的示例,该整合应用可以在应用中介模块之前被本发明的实施例使用。用户被提供第一输入屏幕500。用户输入数据,所述数据被传送到旧的界面逻辑200,其将该数据传送到事务逻辑201以进行处理。事务逻辑完全地在"暗中"更新数据202或者处理该数据,这意味着用户看不到处理的结果,也看不到在处理结束时必要更新的显示。从而,随着时间的流逝505,用户接收新的输入屏幕501、502、503、504等,用它们输入更多的数据,但是无法在界面上看到动态更新的数据。同时,所有的数据处理在后台201和202进行。图6描绘了用户将与新的UI进行的交互的示例,该新UI通过中介模块的映射来进行通信,由此访问较旧的整合应用的事务逻辑。再一次,随着时间505,用户输入数据到输入屏幕600和60L但是,这些输入屏幕现在使用新的界面逻辑,该新的界面逻辑可能如图5所示没有与事务逻辑整合。因此,数据现在通过中介发送,在这种情况下中介为控制器300,其通过映射400发送数据到旧的界面逻辑200,并由事务逻辑201处理,并且可能更新数据202。消息、数据更新以及数据的属性被直接(606)或间接(604至605)中继返回到映射。然后映射的数据被发送到控制器300,控制器300能够利用新的输入屏幕将界面逻辑提供给用户603。用户可以观看到动态更新的数据,因为尽管处理在后台发生,但它并不是在"暗中"进行的。图7描绘了ERP应用的示例UI。这个屏幕700可以是显示给用户以便向整合应用输入数据的输入屏幕500。用户能够输入数据701,然后点击"下一个,,702进入下一个输入屏幕501。该处理在暗中进行,并且输入屏幕不会提供数据给用户。图8描绘了这样一个示例,其中中介与后端整合应用通信以返回新的用户界面,其中该中介在这种情况下为控制器300。用户可以输入数据803到输入屏幕802。当用户请求"下一个"804屏幕时,输入屏幕将发送数据(805)给中介控制器300,而不是使所有的处理在用户未察觉到其发生的情况下在后台进行。数据800可以包括来自输入屏幕802的输入803。控制器300可以取得这个信息并将其发送到整合应用,以便利用该整合应用的事务逻辑进行处理。控制器可以接收和发送(806)任何相关信息以开发新的UI。例如,新的数据可以包括预先存储的数据800或消息、处理过的凝:据、以及数据属性801。然后界面逻辑可以使用这个数据来动态地创建新的UI,并为用户提供所发生的处理的信息(knowledge)以及新的信息或数据的相关属性807和808。该界面还能够向用户显示处理链809,以及用户在交互处理810中所处位置的指示。图9描绘了一个示例逻辑,可以执行该逻辑以便在整合应用的第一界面和第二界面之间进行映射和发送信息,从而创建用于与用户进行交互的第三界面。在示例实施例逻辑中,第一界面被显示给用户800,并且这个显示可以由新的应用的界面逻辑创建。该界面可以等待输入809,诸如选择数据的鼠标点击、键盘输入等。一旦这个输入被接收801,事件监听器(eventlistener)就将这个第一组数据发送给中介802,在这个例子中该中介为模型-视图-控制器软件设计范例的控制器模块。该中介将需要的数据映射到第二界面803。然后,中介将数据发送到第二界面804,其是整合应用的主要(primary)界面。整合应用的事务逻辑处理数据(805),并根据需要更新存储器。包括处理后的数据、接收的数据、或第二组输入数据的第三组数据被发送到界面逻辑,或者在这个示例逻辑中,被发送到中介(806)。中介采集这个信息,并将其发送到界面逻辑,其将所述数据映射到新的第三界面807。显示这个第三界面808并等待用户输入809。重复这个循环,直到用户输入以完成处理810,此时用户界面退出软件应用811。在这里具体说明和描述了本发明的一些实施例。但是,应当理解在不脱离本发明的精神和希望的范围的情况下,本发明的修改和变化都被上述教导所涵盖,并在所附权利要求书的范围之内。权利要求1.一种方法,包括从第一用户界面接收输入数据;将第一组数据发送到中介;将所述第一组数据映射到第二用户界面;将第二组数据发送到所述第二用户界面;将第三组数据从所述第二用户界面发送到所述中介;以及提供第三用户界面。2.根据权利要求1所述的方法,其中所述中介是在模型-视图-控制器范例下设计的控制器模块。3.根据权利要求1所述的方法,其中所述中介存储所述第一组数据。4.根据权利要求1所述的方法,其中所述中介存储映射信息。5.根据权利要求1所述的方法,其中所述第二用户界面与事务逻辑整合。6.根据权利要求5所述的方法,其中所述事务逻辑处理所述第二组数据。7.根据权利要求5所述的方法,其中所述事务逻辑是业务逻辑。8.根据权利要求1所述的方法,其中所述中介存储所述第三组数据。9.根据权利要求1所述的方法,还包括将第四组数据从所述中介发送到所述第三界面。10.根据权利要求1所迷的方法,其中所迷第三用户界面包含界面逻辑。11.根据权利要求0所述的方法,其中所述界面逻辑从所述中介接收数据。12.根据权利要求IO所述的方法,其中所述界面逻辑从所述中介接收消息。13.根据权利要求IO所述的方法,其中所述界面逻辑从所迷中介接收属性信息。14.根据权利要求IO所述的方法,其中所述界面逻辑从所述中介接收映射信息。15.—种系统,包括接收器,从第一用户界面接收输入数据;发送器,将第一组数据发送到中介,将第二组数据发送到第二用户界面,以及将第三组数据从所述第二用户界面发送到所述中介;处理器,将所述第一组数据映射到所述第二用户界面;以及终端,提供第三用户界面。16.根据权利要求15所述的系统,其中所述中介是在模型-视图-控制器范例下设计的控制器模块。17.根据权利要求15所述的系统,其中所述中介存储所述第一组数据。18.根据权利要求15所述的系统,其中所述中介存储映射信息。19.根据权利要求15所述的系统,其中所述第二用户界面与事务逻辑整合。20.根据权利要求19所述的系统,其中所述事务逻辑处理所述第二组数据。21.根据权利要求19所述的系统,其中所述事务逻辑是业务逻辑。22.根据权利要求15所述的系统,其中所述中介存储所述第三组数据。23.根据权利要求15所述的系统,还包括将第四组数据从所述中介发送到所述第三界面。24.根据权利要求15所述的系统,其中所述第三用户界面包含界面逻辑。25.根据权利要求24所述的系统,其中所述界面逻辑从所述中介接收数据。26.根据权利要求24所述的系统,其中所述界面逻辑从所述中介接收消息。27.根据权利要求24所述的系统,其中所述界面逻辑从所述中介接收属性信息。28.根据权利要求24所述的系统,其中所述界面逻辑从所述中介接收映射信息。29.—种包含指令的计算机可读介质,当执行该指令时导致执行以下方法,包括从第一用户界面接收输入数据;将第一组数据发送到中介;将所述第一组数据映射到第二用户界面;将第二组数据发送到所述第二用户界面;将第三组数据从所述第二用户界面发送到所述中介;以及提供第三用户界面。30.根据权利要求29所述的计算机可读介质,其中所述中介是在模型-视图-控制器范例下设计的控制器模块。31.根据权利要求29所述的计算机可读介质,其中所述中介存储所述第一组数据。32.根据权利要求29所述的计算机可读介质,其中所述中介存储映射信白33.根据权利要求29所述的计算机可读介质,其中所述第二用户界面与事务逻辑整合。34.根据权利要求33所述的计算机可读介质,其中所述事务逻辑处理所述第二组数据。35.根据权利要求33所述的计算机可读介质,其中所述事务逻辑是业务逻辑。36.根据权利要求29所述的计算机可读介质,其中所述中介存储所述第三组数据。37.根据权利要求29所述的计算机可读介质,还包括将第四组数据从所述中介发送到所述第三界面。38.根据权利要求29所述的计算机可读介质,其中所述第三用户界面包含界面逻辑。39.根据权利要求38所述的计算机可读介质,其中所述界面逻辑从所述中介接收数据。40.根据权利要求38所述的计算机可读介质,其中所述界面逻辑从所述中介接收消息。41.根据权利要求38所述的计算机可读介质,其中所述界面逻辑从所述中介接收属性信息。42.根据权利要求38所述的计算机可读介质,其中所述界面逻辑从所述中介接收映射信息。43.—种系统,包括从第一用户界面接收输入数据的装置;将第一组数据发送到中介的装置;将所述第一组数据映射到第二用户界面的装置;将第二组数据发送到所述第二用户界面的装置;将第三组数据从所述第二用户界面发送到所述中介的装置;以及提供第三用户界面的装置。'44.根据权利要求43所述的系统,其中所述中介是在模型-视图-控制器范例下设计的控制器模块。45.根据权利要求43所述的系统,其中所述中介存储所述第一组数据。46.根据权利要求43所述的系统,其中所述中介存储映射信息。47.根据权利要求43所述的系统,其中所述第二用户界面与事务逻辑整合。48.根据权利要求47所述的系统,其中所述事务逻辑处理所述第二组数据。49.根据权利要求47所述的系统,其中所述事务逻辑是业务逻辑。50.根据权利要求43所述的系统,其中所述中介存储所述第三组数据。51.根据权利要求43所述的系统,还包括将第四组数据从所述中介发送到所述第三界面。52.根据权利要求43所述的系统,其中所述第三用户界面包含界面逻辑。53.根据权利要求52所述的系统,其中所述界面逻辑从所述中介接收数据。54.根据权利要求52所述的系统,其中所述界面逻辑从所述中介接收消自、55.根据权利要求52所述的系统,其中所述界面逻辑从所述中介接收属性信息。56.根据权利要求52所述的系统,其中所述界面逻辑从所述中介接收映射信息。全文摘要一种方法、系统、包含指令以执行方法的计算机可读介质,使得诸如控制器的中介在较旧的应用的界面与新编程的界面之间进行交互,以便在利用已有事务逻辑的优点的同时还允许用户与新的界面进行交互。文档编号G06F9/44GK101101550SQ20071010188公开日2008年1月9日申请日期2007年4月25日优先权日2006年4月25日发明者斯蒂芬·埃尔夫纳,马丁·泽米尔,鲁迪格·克雷奇默申请人:Sap股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1