用于生成系统规范的方法、设备和计算机程序产品的制作方法

文档序号:6365747阅读:158来源:国知局
专利名称:用于生成系统规范的方法、设备和计算机程序产品的制作方法
技术领域
本发明涉及用于生成系统规范(specifications)的方法、设备和计算机程序产品。具体地,本发明涉及从已有系统和用户界面(或称接ロ)提取需求,并通过产生的需求规范来促进已有系统的重建和改进。
背景技术
许多软件和硬件遗留系统现今是旧技术,其极可能已经不再被其厂商支持,但仍在使用。上述系统迟早需要被现代化和改进。
已有系统尤其缺乏需求文件。这使得这些系统的改进和现代化非常困难、非常昂贵,并且改进过程可能导致业务中断。在缺少其规范或缺少有关其需求的文件的情况下,由于需要有价值的信息(例如它们后面的需求),因此系统仅可通过重建被现代化。为了改进系统的功能,重建全部系统是能较好地满足用户要求,如果不考虑常见的经济可行性问题的话。更加复杂的问题在于,许多遗留系统具有过时的和难以使用的用户界面。然而,正是用户界面包括了关于被使用的系统的有价值信息和在其机能之后的ー些基本原理。用户界面某种程度上反映了曾经投资遗留系统开发的用户需要。能够从已有用户界面提取需求提供了大量关于遗留系统的无正式文件需求的关键信息。根据当前的实践,软件开发是根据适当定义和标准化的方法和过程进行的。众所周知,在开发过程中,首先必须反复获得和适当定义需求,然后才能开发出底层(underlined)软件或系统。设计和开发用户界面需要例如系统的底层需求,并且在一些情况下,需要进行可用性研究。重建和改进缺乏底层需求文件的遗留系统和现有系统是困难的,甚至有时是不可能的。因此,对于如何从现有系统,特别是从用户界面提取需求而不必重建全部系统这ー问题,仍有必要寻找其解决方案。一旦产生了可接受的质量需求规范,就能改进甚至重建底层系统。

发明内容
本发明提供了用于生成系统规范的设备、方法和计算机程序产品。所述设备包括能够读取多个系统界面规范的用于与用户接ロ(interface)的装置;能够从所述多个系统界面规范中提取关于多个系统需求的信息的处理装置;以及用于对获得的多个系统需求进行汇总以便生成系统需求规范的装置。所述设备进ー步包括分析装置和文档编制装置中的至少ー个。所述分析装置能够分析所述多个系统界面规范,以便提取关系图和界面流程图中的至少ー个。所述处理装置能够接收关系图和界面流程图中的所述至少ー个,并产生关于所述系统界面规范的多个需求跟踪和多个功能需求。所述用于汇总获得的多个系统需求、能够生成系统需求规范的装置产生结构化文本或需求图中的至少ー个。本发明的另ー实施例包括方法。该方法包括接收关于系统用户界面的信息;分析所述关于系统用户界面的信息,并提取至少关系图和界面流程图;将所述至少一个关系图和所述至少所述界面流程图转换成至少ー个需求跟踪和至少ー个功能需求;并且生成系统需求文件。本发明的又一实施例包括用于生成系统规范的计算机程序产品。所述用于生成系统规范的计算机程序产品包括计算机可用介质,所述计算机可用介质包括计算机可读程序,其中所述计算机可读程序在计算机上执行时使计算机接收关于系统用户界面的信息;分析所述关于系统用户界面的信息,并提取至少关系图和界面流程图;将所述至少ー个关系图和所述至少所述界面流程图转换成至少ー个需求跟踪和至少ー个功能需求;并且生成系统需求文件。根据下文的详细描述,本发明的其它方面和优点将变得明显,这些详细描述结合 附图示例性地说明了本发明的原理。


为了更充分理解本发明的特性和优点以及优选的使用方式,应參考下列结合附图所作的详细描述,附图中
图I为示例性UI-REE框架环境的示意性表示;
图2提供了图I的UI-REE框架的详细表示;
图3提供了窗ロ组件(widgets)之间关系的不例性表不;
图4提供窗ロ组件组件的UML图,以及 图5是根据本发明实施例的生成系统需求规范的方法的框图。
具体实施例方式作出以下描述是出于例示本发明一般原理的目的,并无意限制本申请要求保护的发明概念。进ー步地,在此描述的具体特征能够和其它被描述的特征以各种不同的可能组合及排列组合使用。除非本文另有特别限定,否则所有术语将被给予其最广泛的可能解释,包括根据说明书隐含的含义以及本领域技术人员所理解的和/或在词典、论文等中定义的含义。本描述可公开用于生成系统规范的设备、方法和计算机程序产品及其操作和/或组成部分的几个优选实施例。虽然为了清楚起见以及为了将本发明置于具体上下文中,以下描述将在设备和方法两个方面进行描述,但是应理解,这里的教导可广泛应用于所有类型的系统、设备和应用。本发明提供了用户界面需求重建框架,简称UI-REE框架,其提供了读取用户界面规范以及根据用户和系统需求提取信息并将其转换成需求规范文件的机制。在本发明的上下文中,就软件来说,需求规范被理解为用于软件系统的需求规范,其是对待开发系统的行为的完全描述。它包括ー组用例,这些用例描述了用户与软件间将有的所有交互。用例也被称为功能需求。除用例外,SRS也包含非功能(或补充性)需求。非功能需求是对设计或实施强加约束的需求(例如性能工程需求、质量标准或设计约束)。
现在參考图I的图示,图I提供了示例性UI-REE框架环境的示意性表示。如图I所示,图示100包括用于与用户接ロ的装置102、处理装置104和用于对获得的需求进行汇总的装置106。用干与用户接ロ的装置102示例性地可表现为用户界面规范108的形式,或表现为图形用户界面110的形式,但它们还可以是希望实施本发明的本领域技术人员能想象到的任何其它类型。如果本发明被应用于遗留的硬件系统,用干与用户接ロ的装置可表现为控制面板、指挥中心、显示面板或向用 户传达遗留系统需求信息的任何其它实施形式。系统界面规范至少包括关于系统功能的下列特征信息外部界面(其指示了软件与人、系统的硬件、其它硬件、以及其它软件如何相互作用)、性能(例如各种软件功能的速度、有效性、响应时间、恢复时间是什么)、属性(例如可移植性、正确性、可维护性、安全性、注意事项是什么)、强加在实施方式上的设计约束(例如实际上是否有任何必须的标准、实施语言、数据库完整性策略、资源限制、运行环境)、等等。处理装置104被设计成将被执行,从而使得其能够存储和执行用户界面需求重建框架112,并且,如下文将结合本发明的实施例详细论述的,处理装置104提供了转换工具,该转换工具获取所述用于与用户接ロ的装置102的输出,并将该输出转换成存储在用于对获得的需求进行汇总的装置108中的需求跟踪和功能需求。获得的需求可被示例性地汇总为结构化文本114或需求图116。本领域技术人员所能想象到的对获得的需求进行汇总的任何其它方法被认为属于本发明的范围。需求可追溯性涉及对需求和其它开发エ件(artifact)之间的关系编制文件。其目的是为了促进正在开发的产品的整体质量、促进对正在开发的产品及其エ件的理解、以及促进应对变化的能力。不仅需求本身应被追踪,而且与所有与其有关的エ件(例如模型、分析结果、测试实例、测试过程、测试结果以及所有类型的文件)之间的需求关系也应该是可追踪的。甚至与需求相关联的人和用户组也应该是可追踪的。需求可追溯性指的是,在向前和向后两个方向上(即从其开始,通过其开发和规范,到其后来的配置和使用,并通过持续改进和在所有这些阶段的反复的所有时期)描述和跟踪需求生存期的能力。虽然该定义强调了跟踪贯穿开发过程所有阶段的需求生存期,但没有清楚地提及可追溯性可以为多种开发エ件(例如需求、规范综述、设计、测试、模型和开发组件)之间的关系编制文件。因此,在本发明的范围之内,也可想到,需求追踪和可追溯性指的是限定、记录和跟踪由需求遗留在软件开发环境的其它元素上的踪迹以及由那些元素在需求上遗留的踪迹的能力。在需求工程学领域中,可追溯性是关于对如何将高层次需求(目标、目的、企图、志向、期待、需要)转换成为低层次需求的理解。因此其主要涉及信息层之间的关系。这里提及的主要关系可被表征为“满足”需求是如何被其它エ件满足的?能被追踪的其它关系是,例如“证实”需求是如何被测试エ件证实的?
在软件工程学中,功能需求定义了软件系统或其组件的功能。功能被描述为ー组输入、行为和输出。
功能需求可以是定义了系统应完成工作的计算、技术细节、数据操作和处理以及其它特定功能。描述所有实例(系统在其中使用了所述功能需求)的行为需求被记录在用例中。功能需求由非功能需求(也称为质量需求)支持,其对设计或实施强加了约束(例如性能需求、安全性或可靠性)。通常,功能需求以“系统应做〈需求〉”的形式表达,而非功能需求为“系统应为〈需求〉”。用于实施功能需求的计划被详述在系统设计中。用于实施非功能需求的计划被详述在系统架构中。如在需求工程学中定义的,功能需求说明了系统的具体結果。这应该与非功能需求区别开来,非功能需求说明了总特征,例如成本和可靠性。功能需求驱动系统的应用架构,而非功能需求驱动系统的技术架构。在一些情形中,需求分析员在搜集和验证ー组功能需求之后生成用例。功能需求的层次为用户/利益相关者请求_>特征_>用例_>业务规则。每个用例通过ー个或多个功能需求例示出行为情景。但是,分析员通常要先得出ー组用例,分析员从该组用例中能导出需要被实施的功能需求,从而允许用户执行每个用例。 根据本发明,命名为UI-REE (用户界面需求重建)的框架112提供了读取用户界面规范、从中提取用户和系统需求、并将其转换成需求规范文件的机制。现在參考图2,图2提供了图I的UI-REE框架的详细表示。UI-REE框架112包括输入202,输入202从用于与用户接ロ的装置102中接收由图形用户界面110提供的信息。输入组件202也提供了ー种机制,其使用用户界面标记语言(UML)来描述来自用于与用户接ロ的装置102的输入。WML是ー种XML兼容语言。该组件也能用WML将⑶I规范转换成标准用户界面定义。处理装置104至少包括分析装置204、处理装置206和文档编制装置208。分析装置204分析与用户接ロ的装置102的规范,并且提取至少两个主要エ件关系图210和界面流程图212。示例性地,分析装置204查找可被映射到图形窗ロ的各种窗ロ组件、按钮、窗ロ、图形元素或甚至硬件元素,按照类别对它们进行分组并导出它们的关系。分析装置204可使用基于软件的解决方案,分析各元素的循环指令。分析装置很少使用人员观察。用户界面的分析可通过独立的工具、市面上买得到的或通过自己实现的软件工具完成,从而拟合分析需求。关系图210是生成的图,其描述各种Π元素(在本文献中进ー步被称为窗ロ组件)之间的关系,并且因此也描述它们功能之间的关系。反过来,这描述它们的功能需求之间的关系。这些关系覆盖可追溯性和需求之间的依赖性。界面流程图212典型地被用于几个目的,例如对用户与包括在被分析的遗留系统中的软件之间的交互进行建摸。界面流程图212使用户针对底层应用能够获得用户界面的闻层次综览。如在图3中例示,其描述窗ロ组件Wl、W2、W3、W4、Wn之间的示例性关系,该关系图例示组件之间的依赖性。在计算机程序设计领域,通过“窗ロ组件(widget)”理解显示可被用户改变的信息布置(例如窗ロ或文本框的图形用户界面(⑶I)的元素)。窗ロ组件Wl……Wn的限定特征为给定类型的数据直接操作提供简单交互作用点。换句话说,窗ロ组件Wl……Wn是基本可视模块,其在应用程序中被组合,拥有被应用程序处理的所有数据和关于此数据的可利用交互作用。大多数操作系统包括一组即裁型(ready-to-tailor)窗ロ组件,程序设计员能在应用程序中合并这些窗ロ组件,指定每个窗ロ组件应该如何行为。图4提供窗ロ组件组成的UML图。因此,如在图4中例示,其以UML图例示窗ロ组件组成,窗ロ组件402至少通过名称402、功能406和GUI元素408表征。处理装置206提供转换工具,其获取分析组件204、关系和界面流程图的输出,并且将这些输出转变成需求跟踪214和功能需求216。用于汇总获得需求的装置106或其处理组件206的输出、至少为多个需求跟踪214和功能需求216,并且产生包含根据良好定义的模板和IEEE标准的用于撰写需求的需求表述的需求文件。 现在參考图5,图5是根据本发明实施例的生成系统需求规范的方法的框图。本发明提出一种用于生成系统需求规范的方法500,其至少包括在步骤502,接收关于系统用户界面的信息;在步骤504,分析关于系统用户界面的所述信息,并提取至少关系图和界面流程图;在步骤506,将所述至少ー个关系图和所述至少所述界面流程图转换成至少ー个需求跟踪和至少ー个功能需求;并在步骤508生成系统需求文件。接收关于系统用户界面的信息的步骤502示例性地通过UI-REE框架112的输入202实现,UI-REE框架112的输入202例如从用于与用户接ロ的装置102接收由图形用户界面110提供的信息。输入组件202也提供ー种机制,其使用用户界面标记语言(UML)描述来自用于与用户接ロ的装置102的输入。WML是ー种XML兼容的语言。该组件也能使用UIML将GUI规范转换成标准的用户界面定义。分析关于系统用户界面的信息并提取至少关系图和界面流程图的步骤504,在本发明中示例性地通过分析装置204、处理装置206和文档编制装置208实现。分析装置204分析接收的规范并提取至少两个主要エ件关系图210和界面流程图212。将至少一个关系图和至少ー个界面流程图转换成至少ー个需求跟踪和至少ー个功能需求的步骤506,在本发明中示例性地通过处理装置206和文档编制装置208实现。生成系统需求文件的步骤508在本发明中示例性地通过文档编制装置208实现,文档编制方法208获取处理组件的输出,并且产生包含根据良好定义模板和IEEE标准的用于撰写需求的需求表达的需求文件。本发明的实施例和论述的任何装置、模块或块能够表现为完全硬件实施例、完全软件实施例或包含硬件和软件两者的实施例的形式。在优选实例中,本发明在软件中实现,该软件包括但不限于固件、常驻软件、微码等。此外,本发明的实施例能够表现为可从计算机可用或计算机可读介质获得的计算机程序产品的形式,从而提供由计算机、处理设备或任一指令执行系统使用或结合计算机、处理设备或任一指令执行系统使用的程序代码。为了该描述,计算机可用或计算机可读介质能够是包含、存储、通讯或传输由指令执行系统、仪器或设备使用或结合指令执行系统、仪器或设备使用的程序的任ー仪器。介质能够是电的、磁的、光的或半导体的系统(或仪器或设备)。计算机可读介质的实例包括但不限于半导体或固态存储器、磁带、可移动的计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘、光盘等。光盘的当前实例包括只读型光盘存储器(⑶-ROM)、读/写型光盘存储器(⑶-R/M)和数字化通用磁盘(DVD)。I/O设备(包括但不限于键盘、显示器、指示设备等)能够直接或者通过插入控制器连接到系统。网络适配器也可连接到系统,以使数据处理系统通过插入私有的或公共的网络变为连接到其它数据处理系统或远程打印机或存储设备。调制解调器、电缆调制解调器和以太网卡仅是少数当前可用类型的网络适配器。本发明的计算机程序产品可为用于生成系统规范的计算机程序产品,包括计算机可用的具有计算机可读程序的介质,其中计算机可读程序在计算机上执行时使计算机接收关于系统用户界面的信息;分析关于系统用户界面的所述信息,并且提取至少关系图和界面流程图;将所述至少ー个关系图和所述至少所述界面流程图转换成至少ー个需求跟踪和至少ー个功能需求;并且生成系统需求文件。
在以上描述中,许多特定细节被阐明。然而,应理解的是,本发明的实施例可在没有这些特定细节的情况下实施。例如,可用众所周知的等效组件和元素替换在此描述的那些组件和元素,并且类似地,可用众所周知的等效技术替换在此公开的特定技术。在其它情况下,为了避免混淆对这种描述的理解,众所周知的结构和技术没有被详细地显示。在规范中涉及“实施例”、“一个实施例”、“一些实施例”或“其它实施例”指的是,结合实施例描述的特定特征、结构或特性被包括在至少ー些实施例中,而不一定是所有的实施例。“实施例”、“一个实施例”或“一些实施例”的不同出现不一定是全部涉及相同的实施例。如果说明书陈述组件、特征、结构或特性“可能”、“也许”或“能够”被包括,则该组件、特征、结构或特性不需要被包括。如果说明书或权利要求涉及“一”或“ー个”元素,其不意味仅有ー个元素。如果说明书或权利要求涉及“额外的”元素,其不排除有多于ー个额外的元素。尽管已描述并在附图中显示某些示例性实施例,应理解的是,这种实施例仅是本发明的广泛例示而不是限制,并且由于本领域普通技术人员可想到不同的其它修改,本发明不限定于显示和描述的特定结构和布置。
权利要求
1.一种用于生成系统需求规范的设备,包括 用干与用户接ロ的装置,其能够读取多个系统界面规范; 处理装置,其能够从所述多个系统界面规范中提取关于多个系统需求的信息,以及 用于对获得的多个系统需求进行汇总以便生成系统需求规范的装置。
2.根据权利要求I所述的用于生成系统需求规范的设备,进一歩包括分析装置和文档编制装置中的至少ー个。
3.根据权利要求2所述的用于生成系统需求规范的设备,其中所述分析装置能够分析所述多个系统界面规范,以便提取关系图和界面流程图中的至少ー个。
4.根据权利要求3所述的用于生成系统需求规范的设备,其中所述处理装置能够接收关系图和界面流程图中的所述至少ー个,并产生关于所述系统界面规范的多个需求跟踪和多个功能需求。
5.根据权利要求I所述的用于生成系统需求规范的设备,其中用于对获得的多个系统需求进行汇总以便能够生成系统需求规范的所述装置生成结构化文本系统需求规范和需求图系统需求规范中的至少ー个。
6.一种用于生成系统需求规范的方法,包括 接收关于系统用户界面的信息; 分析所述关于系统用户界面的信息,并提取至少关系图和界面流程图; 将所述至少ー个关系图和所述至少所述界面流程图转换成至少ー个需求跟踪和至少ー个功能需求,并且生成系统需求文件。
7.根据权利要求6所述的用于生成系统需求规范的方法,进ー步包括以下步骤分析多个系统界面规范,以便提取关系图和界面流程图中的至少ー个。
8.根据权利要求7所述的用于生成系统需求规范的方法,其中所述界面流程图针对単一用例对用户与软件之间的交互进行建摸。
9.根据权利要求7所述的用于生成系统需求规范的方法,其中所述界面流程图提供了对用于底层应用的用户界面的高层次综览。
10.根据权利要求6所述的用于生成系统需求规范的方法,其中生成系统需求的步骤,生成了关于所述系统界面规范的多个需求跟踪和多个功能需求。
11.根据权利要求10所述的用于生成系统需求规范的方法,其中结构化文本系统需求规范和需求图系统需求规范中的至少ー个被生成。
12.一种用于生成系统规范的计算机程序产品,包括 计算机可用介质,其包括计算机可读程序 其中所述计算机可读程序在计算机上执行时使所述计算机 接收关于系统用户界面的信息; 分析所述关于系统用户界面的信息,并提取至少关系图和界面流程图; 将所述至少ー个关系图和所述至少所述界面流程图转换成至少ー个需求跟踪和至少ー个功能需求,并且生成系统需求文件。
13.根据权利要求12所述的计算机程序产品,进ー步使所述计算机分析多个系统界面规范,以便提取关系图和界面流程图中的至少ー个。
14.根据权利要求12所述的计算机程序产品,进ー步使所述计算机通过产生关于所述系统界面规范的多个需求跟踪和多个功能需求来生成系统需求。
15.根据权利要求12所述的计算机程序产品,进ー步使所述计算机生成了结构化文本系统需求规范和需求图系统需求规范中的至少ー个。
全文摘要
本发明涉及用于生成系统规范的方法、设备和计算机程序产品。本发明通过接收关于系统用户界面的信息、分析所述关于系统用户界面的信息并提取至少关系图和界面流程图、将所述至少一个关系图和所述至少界面流程图转换成至少一个需求跟踪和至少一个功能需求、并生成系统需求规范文件来生成系统需求规范。
文档编号G06F9/44GK102693128SQ20121005447
公开日2012年9月26日 申请日期2012年3月2日 优先权日2011年3月3日
发明者N.布利拉 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1