设计计算机程序的制作方法

文档序号:6489472阅读:134来源:国知局

专利名称::设计计算机程序的制作方法
技术领域
:本发明一般地涉及计算机领域,更具体地涉及设计计算机程序。
背景技术
:设计计算机程序可能涉及生成阐明计算机程序的要求的域规则(domainrule)集合。已知的用于设计计算机程序的技术通常涉及生成域规则的有界集合。但是,域规则的有界集合可能导致效率低下且无效的计算机程序设计。因此,已知的用于设计计算机程序的技术在某些情形下可能是不能令人满意的。
发明内容根据本发明,可减少或消除与现有的用于设计计算机程序的技术相关联的缺点和问题。根据本发明的一个实施例,设计计算机程序包括访问不变的域规则和显示可变的业务规则。响应于用户选择来选择一个或多个业务规则,并对业务规则进行定制。业务规则被与过程相关联,并且域规则被与该过程相关联。表示该过程的模型被显示,并且与该过程相对应的代码被生成以设计计算机程序。根据本发明的另一个实施例,管理用于设计计算机程序的规则包括访问多个规则。这些规则被分析以将域规则与业务规则分离开来,其中每个域规则是不变的,每个业务规则是可变的。业务规则被存储。响应于对业务规则的请求从所存储的业务规则中提供一个业务规则。本发明的某些实施例可提供一个或多个技术优点。一个实施例的技术优点是在生成最终代码前确定了域规则的完整集合。该完整集合可用于限定问题空间,从而提供了对计算机程序的更高效和有效的设计。本发明的某些实施例可不包括上述技术优点,或者包括上述技术优点中的某些或全部。本领域的技术人员从这里包括的附图、说明书和权利要求书中易于看出一个或多个其他技术优点。为了更全面理解本发明及其特征和优点,现结合附图参考以下描述,附图中-图1是示出用于设计计算机程序的系统的一个实施例的框图;图2是示出用于设计计算机程序的方法的一个实施例的流程图;图3是示出存储在数据库处的高级工件(artifact)之间的关系的一个实施例的图4是示出结构视图的一个实施例的图5是行为视图的一个实施例的图;以及图6是示出用于生成域规则的方法的一个实施例的流程图。具体实施例方式通过参考附图中的图1至6可获得对本发明的实施例及其优点的最佳理解,在各幅附图中相同的标号被用于类似和相应的部件。此文档中使用的"每个"是指集合的每个成员或者集合的子集的每个成员。图1是示出用于设计计算机程序的系统10的一个实施例的框图。一般而言,在生成基本上完整的域规则集合以限定计算机程序设计的问题空间时涉及到了系统10。不变的域规则和可定制的业务规则被用于设计程序。根据图示实施例,系统10包括一个或多个客户端系统20、服务器系统24和数据库28,其耦合方式如图1所示。客户端系统20允许用户与服务器系统24通信以便设计计算机程序。服务器系统24管理用于设计计算机程序的应用,例如图形用户界面30、域规则生成模块34、业务规则编辑器38、建模工具40、代码生成器44和报告生成器48。数据库28存储可能被服务器系统24使用的数据。数据库28例如可以包括域规则50、业务规则54、形式方法58、公共建模语言60、模型64和代码68。在操作中,域规则生成模块34生成域规则50的基本上完整的集合,该集合包括可用于限定域的不变规则。业务规则编辑器38被用于为特定计算机程序定制业务规则54。建模工具40可以使用可根据公共建模语言60来表达的域规则50、业务规则54和形式方法58,以生成模型64。用户可操纵模型64以设计计算机程序。代码生成器44根据模型64生成代码68,并且还可进行操作以便就语法兼容性和一致性对代码68和模型64进行检査。报告生成器48可用于生成描述计算机程序的报告。根据一个实施例,系统10可进行操作以利用面向对象的技术来设计计算机程序。根据面向对象的技术,计算机程序可被视为代表实体的分立对象的集合,其中实体是与其他对象交互的数据结构和例程的自包含集合。面向对象的编程既涉及分析又涉及设计。面向对象的分析识别组件对象和系统要求,并且描述组件对象和系统要求如何交互以执行特定任务。通常,分析尝试再度使用现有方案。设计涉及创建这样一个计算机程序,在该计算机程序中,对象可高效适用于执行任务。根据图示实施例,客户端系统20可允许一个或多个用户同时设计计算机程序。用户可包括设计者、利益相关者(stakeholder)或任何其他个人或标识个人的标识物。利益相关者可包括来自诸如网络、硬件、软件、人类因素或数据库领域之类的多个领域中的任何一个的工程师。图形用户界面30允许客户端系统20的用户访问服务器系统24的应用。域规则生成模块34生成域规则50。域规则50包括限定可用于确定问题空间和方案空间的域的不变规则。域规则的基本上完整的集合可预期基本上所有可能的域应用,并且可提供一个框架,方案空间的基本上所有方案的都可从该框架生成。可根据任何适当的过程来选择域规则50,并且可以通过设计进程的连续迭代来生成域规则50。表1列出了来自会计理论的域规则50的示例。表l域规则规定性描述<table>tableseeoriginaldocumentpage16</column></row><table>表2列出来自军事理论的域规则50的示例。表2<table>tableseeoriginaldocumentpage17</column></row><table>域规则生成模块34可识别域的边界,并且确定符合要求的系统间的共同点和变化。可以按照域规则和功能来限定域的边界和要求。功能可包括相关子功能、方法、进程和过程(procedure)。业务规则54包括可被定制以适应特定应用的规则。业务规则例如可包括作战规则、任务计划或资源管理规则。虽然域规则50是不变的,但是业务规则54是可定制的。例如,域规则可包括战争原则,而业务规则54可包括作战规则。表3给出用于会计理论的示例性业务规则。表3<table>tableseeoriginaldocumentpage18</column></row><table>表4给出用于军事理论的示例性业务规则。表4<table>tableseeoriginaldocumentpage18</column></row><table><table>tableseeoriginaldocumentpage19</column></row><table>业务规则54可被保存在数据库28处,并且由业务规则编辑器38定制。例如,业务规则54可被存储在表中,用户可通过修改该表来定义业务规则54。业务规则编辑器38可用于对业务规则54执行安全性审核、分析业务规则54、在将新规则添加到数据库28之前检查它们以及将业务规则54应用到决策支持工具。形式方法58是可以用形式语法来指定的规则,所述形式语法例如是一阶或二阶逻辑或集合理论。图形用户界面30可用于利用可视模型来表示形式方法。建模工具40生成表示正在设计的计算机程序的模型64,并且例如可以包括表示具有由计算机程序执行的操作的对象的节点和表示对象间的关系的支路。代码68包括执行由模型64表示的计算机程序的代码。建模工具40例如可以包括由RATIONALSOFTWARE提供的建模工具,例如RATIONALROSEREAL-TIME(RRT)建模和代码生成工具。建模工具40还可以包括处理要求管理、配置管理、测试、性能优化和文档编制的工具。模型64可有效链接到代码68,以使建模工具40可提供模型64的动态视图,以帮助设计计算机程序。例如,在代码68被运行时,可突出显示模型64的与正在运行的代码68相对应的节点,例如可以用绿色显示该节点。又例如,如果在代码68中发现不一致,则可突出显示模型64的与具有不一致性的代码68相对应的节点。例如,可以用红色显示该节点。在代码执行时提供的可视指示物可允许对代码68进行可视验证和确认。结合发表-预订接口使用的可视验证和确认可为保持互用性提供保证。不同模型64可给出计算机程序的不同视图。模型64例如可以包括确立程序的上下文的域模型、确立与程序相关联的组织的抽象概念的业务模型、确立程序的功能性和非功能性要求的用例(usecase)模型以及确立程序的概念性设计的分析模型。模型可以彼此有效链接以反映彼此的各个方面。例如,域模型可以与较低级模型有效链接,以使较低级模型要求反映域模型的要求。参考图3至5更详细描述视图的示例。域规则50、业务规则54和形式方法58可根据公共建模语言60来表达,该公共建模语言60提供了系统IO所使用的数据的公共表示。公共建模语言60例如可以包括OBJECTMANAGEMETNGROUP支持的统一建模语言(UML)。公共建模语言60可被用于通过语法操作或执行组件根据宽泛陈述的语义要求来表示程序设计的工件,并且可被用于表达来自程序设计的各种阶段的工件。这些阶段可包括设计的早期阶段,例如,对于使操作自动化或改变现有自动化系统的请求,这些阶段通常被表达为叙述性描述。诸如概念探究和定义、要求分析、程序设计和验证以及软件编码和测试之类的后续阶段也可用公共建模语言60来表达。公共建模语言60提供了设计的任何阶段的用户都能够理解的工件。因此,用户可以确定程序是否已捕捉了要求,并且阶段之间的不一致之处可被更有效地解决。代码生成器44与建模工具40可联合用于以迭代方式生成计算机程序的代码68。建模工具40可用于生成模型64,代码68是在一次迭代中从该模型中生成的。在后续的迭代中,可以修改模型64并生成新代码68。在每次迭代中,可以添加细节或调整要求。每次迭代生成可执行代码68,该代码可被测试,以提供程序的早期视图,这些早期视图可用于确认程序的正确操作。早期反馈通过在进程中的早期识别问题,从而可帮助降低风险。代码生成器44可包括调试器,该调试器可用于检査代码68的语法,并且还可用于检测模型64和代码68之间的逻辑不一致处。调试器还可用于检查代码68是否正确实现了模型64并且满足了形式陈述。客户端系统20和服务器系统24各自可在一个或多个计算机上操作,并且可包括适当的输入设备、输出设备、大容量存储介质、处理器、存储器或其他的用于根据系统10的操作接收、处理、存储和传输信息的组件。本文档中使用的术语"计算机"是指任何适当的可操作以用于接收输入、根据预定义的规则处理输入并产生输出的设备,例如个人计算机、工作站、网络计算机、无线电话、个人数字助理、这些或其他设备内的一个或多个微处理器或者任何其他适当的处理设备。根据特定需求,可集成或分离客户端系统20和服务器系统24。例如,本发明设想利用诸如单个个人计算机这样的单个计算机系统来提供客户端系统20和服务器系统24二者的功能。如果客户端系统20和服务器系统24是相分离的,则客户端系统20可用一个或多个局域网(LAN)、城域网(MAN)、广域网(WAN)、诸如因特网这样的全球计算机网络或任何其他适当的有线、无线或其他链路被耦合到服务器系统24。数据库28相对于服务器系统24可以是本地的或远程的,并且可用一个或多个局域网(LAN)、城域网(MAN)、广域网(WAN)、诸如因特网这样的全球计算机网络或任何其他适当的有线、无线或其他链路被耦合到服务器系统24。数据库28的工件可被有效链接以便允许更高效地从工件生成产品。有效链接可被用于综合计算机程序的分析、设计和实现。可对该系统进行修改、添加或省略,而不会脱离本发明的范围。另外,系统的操作可由更多或更少的模块来执行。例如,建模工具40和代码生成器44的操作可由一个模块来执行,或者建模工具40的操作可由多于一个模块来执行。此外,可以用包括软件、硬件、其他逻辑或它们的任何适当的组合在内的任何适当的逻辑来执行功能。图2是示出用于设计计算机程序的方法的一个实施例的流程图。方法开始于步骤70处,在这里模型64被显示给用户。在步骤71处,域规则50被访问。模型表示用户设计的计算机程序。在步骤72处,业务规则54被显示给用户。在步骤74处,响应于用户的选择来选择业务规则54。在步骤76处,响应于用户的选择,业务规则54被定制。在步骤78处,业务规则54被与模型64相关联。如果在步骤80处要选择下一个业务规则,则方法返回步骤74,在这里下一个业务规则被选择。如果在步骤80处没有下一个业务规则要选择,则方法前进到步骤84。在步骤86处,从模型64生成代码68。在每次迭代期间,可对模型64执行修改。如果在步骤88处有下一次迭代,则方法返回步骤70,在这里业务规则54被显示。如果在步骤88处没有下一次迭代,则方法前进到步骤90,在这里结果被报告。结果可包括从最终确定的模型64生成的代码68。在报告结果之后,方法终止。可对该方法进行修改、添加或省略,而不会脱离本发明的范围。另外,可以按任何适当的顺序执行步骤,而不会脱离本发明的范围。图3是示出存储在数据库28处的高级工件之间的关系的图100。图100可被显示在客户端系统20处。文件夹102表示可用于收集包括其他包(package)在内的元素以便组织开发项目的包。箭头104表示包之间的关系。注释106表示开发项目期间使用的信息。线105表示对注释106应用到的文件夹的连接,并且可用于表示业务规则和模型之间的关联。根据图示实施例,模型元素数据库文件夹102a与用例文件夹102b、行为视图文件夹102c、部署系统文件夹102d、操作或执行组件文件夹102e和结构视图文件夹102f相关。部署系统文件夹102d引用操作或执行组件102e,而操作或执行组件102e又引用行为视图文件夹102c,行为视图文件夹102c引用用例文件夹102b。要求注释106a的源向要求标识方法和要求管理器106b提供信息,而要求标识方法和要求管理器106b又向用例文件夹102b提供信息。综合文档编制和配置管理工具106c向模型元素数据库102a提供能力和信息,综合目标平台工具106d向操作或执行组件102e提供信息和能力。图4和5示出建模工具40可能给出的视图的示例。图4是示出结构视图120的一个实施例的图。图5是行为视图140的一个实施例的图。视图120和140是相同程序的不同视图。例如,结构视图120的导出的主动类2对应于行为视图140的导出的主动类2的实例。图6是示出用于生成域规则的方法的一个实施例的流程图。该方法通过捕捉用例中的域规则并在用例实现中分析域规则来生成域规则。可以为诸如会计信息系统和命令、控制、通信、计算机、智能、监视和侦察(C4ISR)系统之类的域生成域规则。在步骤200处域规则被收集。用于会计信息系统的域规则的示例可包括确保借方金额和贷方金额平衡,用于C4ISR系统的域规则可包括通过灵活应用战斗力将敌人置于不利位置。可根据理性统一进程(RUP)和统一开发进程(USDP)来收集域规则。在步骤202处,从补充源中提取要求。补充源例如可以包括域的显式限定;传统子域、功能、方法、进程和过程;以及已确立的处理周期、业务进程或模式。域的显式限定例如可以包括自然或法定规律、专业组织发布的标准或规章或被广泛认可的研究者或从业者的作品。可根据与域相关联的功能将域划分成子域。处理周期和模式建议应当实现什么功能以及功能及其内的组件应当如何交互。表5列出用于会计信息系统的处理周期的示例。表5<table>tableseeoriginaldocumentpage24</column></row><table>表6列出用于C4ISR系统的模式的示例。表6<table>tableseeoriginaldocumentpage24</column></row><table>域。終单位在执行之前进行的改进其实施所计划的行动的能力的活动,包括计划细化、武力保护、演习、侦察、战士和资源的综合和协调、视察和移动到计划的位置。执行应用战斗力以完成计划的任务,通过评估战斗区域以理解形势来施加控制以便为战斗管理做出执行和调整决策评估在计划、准备和执行期间始终持续监控和评价当前形势和行动进展。对照成功标准进行评价以做出决策和调整。在步骤204处,要求被分配给用例。要求可包括功能性和非功能性域规则。功能性域规则包括由特定功能实现的规则,非功能性域规则包括不由特定功能直接实现的系统属性。非功能性域规则可以与其他非功能性实现要求一起被分配给用例,并且可分配给他们影响到的用例。例如,性能要求可被分配给具有将会影响性能标准的功能性要求的用例。如果受影响的用例随后被实现,则非功能性要求可被分配给分析类,以作为标记值、约束或文档编制符号。在步骤206处,跟踪对用例的要求以确定域规则是否已被分配给了适当的用例。在步骤210处,通过整合实现用例以便识别下一级别上的任何差距。如果来自补充源的能力看起来超过了域规则,则可以确定隐式域规则是否被嵌入在能力中或者能力是否是不必要的,例如它们位于域外、它们是冗余的或者它们是过时的。在步骤208处可修改或添加用例。添加或修改可发生在此次迭代或后续迭代中。在步骤210处通过识别分析类和创建整合来实现用例。可以先为某些要求实现用例,再为其他要求实现用例。例如,可以为与对于启动程序开发的请求相关的要求实现用例。这些要求可以是面向方案的,并且往往可能集中于特定应用。但是,为了完成问题空间可考虑其他要求。在步骤212处,域规则被分配给分析类。在步骤214处,分析类的共同点被识别。共同点是通过确定出现在多个用例中的分析类来识别的。在步骤216处,分析类的稳定变动被识别,识别方式可以是通过对公共类的后续分析和设计。在步骤218处,捕捉程序的易失性变动的业务规则被确定。在确定业务规则后,该方法终止。可对该方法进行修改、添加或省略,而不会偏离本发明的范围。另外,可以按任何适当的顺序来执行步骤,而不会偏离本发明的范围。本发明的某些实施例可提供一个或多个技术优点。一个实施例的技术优点是在生成最终代码前确定了域规则的完整集合。该完整集合可用于限定问题空间,从而提供了对计算机程序的更高效和有效的设计。虽然详细描述了本发明的实施例及其优点,但是本领域的技术人员能够做出各种更改、添加和省略,而不会偏离所附权利要求书所限定的本发明的精神和范围。权利要求1.一种用于设计计算机程序的方法,包括访问多个域规则,每个域规则是不变的;显示多个业务规则,每个业务规则是可变的;响应于用户选择来选择所述多个业务规则中的一个或多个业务规则;定制所述一个或多个业务规则;将所述一个或多个业务规则与过程相关联;将所述域规则与所述过程相关联;显示表示所述过程的模型;并且生成与所述过程相对应的代码以设计计算机程序。2.如权利要求1所述的方法,还包括收集所述域规则和所述业务规则;将所述域规则和所述业务规则分配给多个用例;实现所述用例;并且根据所述实现评估所述域规则和所述业务规则。3.如权利要求1所述的方法,还包括检查所述代码的语法;并且如果检测到语法错误则提供通知。4.如权利要求1所述的方法,还包括检査所述代码的逻辑一致性;并且如果检测到逻辑不一致之处则提供通知。5.如权利要求1所述的方法,还包括检査所述模型和所述代码之间的兼容性;并且如果检测到不一致之处则提供通知。6.如权利要求1所述的方法,其中所述模型是根据公共建模语言来表达的。7.用于设计计算机程序的逻辑,该逻辑被包含在介质中并且可操作以用于访问多个域规则,每个域规则是不变的;显示多个业务规则,每个业务规则是可变的;响应于用户选择来选择所述多个业务规则中的一个或多个业务规则;定制所述一个或多个业务规则;将所述一个或多个业务规则与过程相关联;将所述域规则与所述过程相关联;显示表示所述过程的模型;并且生成与所述过程相对应的代码以设计计算机程序。8.如权利要求7所述的逻辑,还可操作以用于收集所述域规则和所述业务规则;将所述域规则和所述业务规则分配给多个用例;实现所述用例;并且根据所述实现评估所述域规则和所述业务规则。9.如权利要求7所述的逻辑,还可操作以用于检査所述代码的语法;并且如果检测到语法错误则提供通知。10.如权利要求7所述的逻辑,还可操作以用于-检查所述代码的逻辑一致性;并且如果检测到逻辑不一致之处则提供通知。11.如权利要求7所述的逻辑,还可操作以用于检査所述模型和所述代码之间的兼容性;并且如果检测到不一致之处则提供通知。12.如权利要求7所述的逻辑,其中所述模型是根据公共建模语言来表达的。13.—种用于设计计算机程序的系统,包括-数据库,其可操作以用于存储多个域规则,每个域规则是不变的;以及服务器,其耦合到所述数据库并且可操作以用于-显示多个业务规则,每个业务规则是可变的;响应于用户选择来选择所述多个业务规则中的一个或多个业务规则;定制所述一个或多个业务规则;将所述一个或多个业务规则与过程相关联;将所述域规则与所述过程相关联;显示表示所述过程的模型;并且生成与所述过程相对应的代码以设计计算机程序。14.如权利要求13所述的系统,所述服务器还可操作以用于收集所述域规则和所述业务规则;将所述域规则和所述业务规则分配给多个用例;实现所述用例;并且根据所述实现评估所述域规则和所述业务规则。15.如权利要求13所述的系统,所述服务器还可操作以用于-检査所述代码的语法;并且如果检测到语法错误则提供通知。16.如权利要求13所述的系统,所述服务器还可操作以用于检査所述代码的逻辑一致性;并且如果检测到逻辑不一致之处则提供通知。17,如权利要求13所述的系统,所述服务器还可操作以用于检查所述模型和所述代码之间的兼容性;并且如果检测到不一致之处则提供通知。18.如权利要求13所述的系统,其中所述模型是根据公共建模语言来表达的。19.一种用于设计计算机程序的系统,包括用于访问多个域规则的装置,每个域规则是不变的;用于显示多个业务规则的装置,每个业务规则是可变的;用于响应于用户选择来选择所述多个业务规则中的一个或多个业务规则的装置;用于定制所述一个或多个业务规则的装置;用于将所述一个或多个业务规则与过程相关联的装置;用于将所述域规则与所述过程相关联的装置;用于显示表示所述过程的模型的装置;以及用于生成与所述过程相对应的代码以设计计算机程序的装置。20.—种用于设计计算机程序的方法,包括-收集多个域规则,将所述域规则分配给多个用例,实现所述用例,根据所述实现评估所述域规则,并且访问所述域规则,其中每个域规则是不变的;显示多个业务规则,每个业务规则是可变的;响应于用户选择来选择所述多个业务规则中的一个或多个业务规则;定制所述一个或多个业务规则;将所述一个或多个业务规则与过程相关联;将所述域规则与所述过程相关联;显示表示所述过程的模型,该模型是根据公共建模语言来表达的;生成与所述过程相对应的代码以设计计算机程序;检査所述代码的语法,并且如果检测到语法错误则提供通知;检査所述代码的逻辑一致性,并且如果检测到逻辑不一致之处则提供通知;并且检查所述模型和所述代码之间的兼容性,并且如果检测到不一致之处则提供通知。21.—种用于管理用于设计计算机程序的规则的方法,包括访问多个规则;分析所述规则以将多个域规则与多个业务规则分离开来,其中每个域规则是不变的,每个业务规则是可变的;存储所述业务规则;并且响应于对业务规则的请求来提供来自所存储的业务规则中的一个业务22.如权利要求21所述的方法,还包括定制所提供的业务规则;将定制后的业务规则与过程相关联;并且生成与所述过程相对应的代码以设计计算机程序。23.如权利要求21所述的方法,还包括将所述域规则与过程相关联;并且生成与所述过程相对应的代码以设计计算机程序。24.如权利要求21所述的方法,还包括将所述域规则和所述业务规则分配给多个用例;实现所述用例;并且根据所述实现评估所述域规则和所述业务规则。25.—种用于管理用于设计计算机程序的规则的系统,包括数据库,其可操作以用于存储多个规则;以及服务器,其耦合到所述数据库并且可操作以用于分析所述规则以将多个域规则与多个业务规则分离开来,其中每个域规则是不变的,每个业务规则是可变的;存储所述业务规则;并且响应于对所述业务规则的请求来提供来自所存储的业务规则中的一个业务规则。26.如权利要求25所述的系统,其中所述服务器还可操作以用于-定制所提供的业务规则;将定制后的业务规则与过程相关联;并且生成与所述过程相对应的代码以设计计算机程序。27.如权利要求25所述的系统,其中所述服务器还可操作以用于-将所述域规则与过程相关联;并且生成与所述过程相对应的代码以设计计算机程序。28.如权利要求25所述的系统,其中所述服务器还可操作以用于将所述域规则和所述业务规则分配给多个用例;实现所述用例;并且根据所述实现评估所述域规则和所述业务规则。29.用于管理用于设计计算机程序的规则的逻辑,该逻辑被包含在介质中并且可操作以用于访问多个规则;分析所述规则以将多个域规则与多个业务规则分离开来,其中每个域规则是不变的,每个业务规则是可变的;存储所述业务规则;并且响应于对所述业务规则的请求来提供来自所存储的业务规则中的一个业务规则。30.如权利要求29所述的逻辑,还可操作以用于-定制所提供的业务规则;将定制后的业务规则与过程相关联;并且生成与所述过程相对应的代码以设计计算机程序。31.如权利要求29所述的逻辑,还可操作以用于-将所述域规则与过程相关联;并且生成与所述过程相对应的代码以设计计算机程序。32.如权利要求29所述的逻辑,还可操作以用于将所述域规则和所述业务规则分配给多个用例;实现所述用例;并且根据所述实现评估所述域规则和所述业务规则。33.—种用于管理用于设计计算机程序的规则的系统,包括用于访问多个规则的装置;用于分析所述规则以将多个域规则与多个业务规则分离开来的装置,其中每个域规则是不变的,每个业务规则是可变的;用于存储所述业务规则的装置;以及用于响应于对所述业务规则的请求来提供来自所存储的业务规则中的一个业务规则的装置。34.—种用于管理用于设计计算机程序的规则的方法,包括访问多个规则;分析所述规则以将多个域规则与多个业务规则分离开来,其中每个域规则是不变的,每个业务规则是可变的;将所述域规则和所述业务规则分配给多个用例;实现所述用例;根据所述实现评估所述域规则和所述业务规则;存储所述业务规则;响应于对所述业务规则的请求来提供来自所存储的业务规则中的一个业务规则;定制所提供的业务规则;将定制后的业务规则与过程相关联;将所述域规则与所述过程相关联;生成与所述过程相对应的代码以设计计算机程序。35.—种用于启动计算机程序设计的视图的显示的方法,包括访问计算机程序设计的多个工件,所述多个工件中的每个工件是用公共建模语言来表达的;接收对来自多个视图中的第一视图的选择,所述多个视图中的每个视图与对所述多个工件的子集的显示相关联;根据所述第一视图组织工件的第一子集以供显示,该第一子集包括特定工件;根据所述第一视图启动所述工件的第一子集的显示;接收对来自所述多个视图中的第二视图的选择;根据所述第二视图组织工件的第二子集以供显示,该第二子集包括所述特定工件;并且根据所述第二视图启动对所述工件的第二子集的显示。36.如权利要求35所述的方法,其中所述多个工件中的工件包括所述计算机程序设计的要求。37.如权利要求35所述的方法,其中接收对所述第一视图的选择还包括接收对高级工件视图的选择;并且组织所述工件的第一子集还包括根据所述高级工件视图组织所述多个工件中的多个高级工件。38.如权利要求35所述的方法,其中-所述第一视图包括高级工件视图,该高级工件视图包括结构视图;并且所述第二视图包括所述结构视图。39.如权利要求35所述的方法,其中所述第一视图包括高级工件视图,该高级工件视图包括行为视图;并且所述第二视图包括所述行为视图。40.如权利要求35所述的方法,其中所述第一视图包括结构视图,该结构视图包括主动类;并且所述第二视图包括行为视图,该行为视图包括所述主动类。41.一种用于启动计算机程序设计的视图的显示的系统,包括-数据库,其可操作以存储计算机程序设计的多个工件,所述多个工件中的每个工件是用公共建模语言来表达的;以及服务器,其耦合到所述数据库并且可操作以用于接收对来自多个视图中的第一视图的选择,所述多个视图中的每个视图与对所述多个工件的子集的显示相关联;根据所述第一视图组织工件的第一子集以供显示,该第一子集包括特定工件;根据所述第一视图启动对所述工件的第一子集的显示;接收对来自所述多个视图中的第二视图的选择;根据所述第二视图组织工件的第二子集以供显示,该第二子集包括所述特定工件;并且根据所述第二视图启动对所述工件的第二子集的显示。42.如权利要求41所述的系统,其中所述多个工件中的工件包括所述计算机程序设计的要求。43.如权利要求41所述的系统,其中所述服务器还可操作以用于-通过接收对高级工件视图的选择来接收对所述第一视图的选择;并且通过根据所述高级工件视图组织所述多个工件中的多个高级工件来组织所述工件的第一子集。44.如权利要求41所述的系统,其中所述第一视图包括高级工件视图,该高级工件视图包括结构视图;并且所述第二视图包括所述结构视图。45.如权利要求41所述的系统,其中所述第一视图包括高级工件视图,该高级工件视图包括行为视图;并且所述第二视图包括所述行为视图。46.如权利要求41所述的系统,其中所述第一视图包括结构视图,该结构视图包括主动类;并且所述第二视图包括行为视图,该行为视图包括所述主动类。47.用于启动计算机程序设计的视图的显示的逻辑,该逻辑被包含在介质中并且可操作以用于访问计算机程序设计的多个工件,所述多个工件中的每个工件是用公共建模语言来表达的;接收对来自多个视图中的第一视图的选择,所述多个视图中的每个视图与对所述多个工件的子集的显示相关联;根据所述第一视图组织工件的第一子集以供显示,该第一子集包括特定工件;根据所述第一视图启动对所述工件的第一子集的显示;接收对来自所述多个视图中的第二视图的选择;根据所述第二视图组织工件的第二子集以供显示,该第二子集包括所述特定工件;并且根据所述第二视图启动对所述工件的第二子集的显示。48.如权利要求47所述的逻辑,其中所述多个工件中的工件包括所述计算机程序设计的要求。49.如权利要求47所述的逻辑,还可操作以用于通过接收对高级工件视图的选择来接收对所述第一视图的选择.,并且通过根据所述高级工件视图组织所述多个工件中的多个高级工件来组织所述工件的第一子集。50.如权利要求47所述的逻辑,其中所述第一视图包括高级工件视图,该高级工件视图包括结构视图;并且所述第二视图包括所述结构视图。51.如权利要求47所述的逻辑,其中所述第一视图包括高级工件视图,该高级工件视图包括行为视图;并且所述第二视图包括所述行为视图。52.如权利要求47所述的逻辑,其中所述第一视图包括结构视图,该结构视图包括主动类;并且所述第二视图包括行为视图,该行为视图包括所述主动类。53.—种用于启动计算机程序设计的视图的显示的系统,包括用于访问计算机程序设计的多个工件的装置,所述多个工件中的每个工件是用公共建模语言来表达的;用于接收对来自多个视图中的第一视图的选择的装置,所述多个视图中的每个视图与对所述多个工件的子集的显示相关联;用于根据所述第一视图组织工件的第一子集以供显示的装置,该第一子集包括特定工件;用于根据所述第一视图启动对所述工件的第一子集的显示的装置;用于接收对来自所述多个视图中的第二视图的选择的装置;用于根据所述第二视图组织工件的第二子集以供显示的装置,该第二子集包括所述特定工件;以及用于根据所述第二视图启动对所述工件的第二子集的显示的装置。54.—种用于启动计算机程序设计的视图的显示的方法,包括-访问计算机程序设计的多个工件,所述多个工件中的每个工件是用公共建模语言来表达的,所述多个工件中的工件包括所述计算机程序设计的要求;接收对来自多个视图中的第一视图的选择,所述多个视图中的每个视图与对所述多个工件的子集的显示相关联,该第一视图包括高级工件视图,该高级工件视图包括结构视图和行为视图;根据所述第一视图组织工件的第一子集以供显示,该第一子集包括特定工件;根据所述第一视图启动对所述工件的第一子集的显示;接收对来自所述多个视图中的第二视图的选择,该第二视图包括所述结构视图和所述行为视图中的至少一个;根据所述第二视图组织工件的第二子集以供显示,该第二子集包括所述特定工件;并且根据所述第二视图启动对所述工件的第二子集的显示。全文摘要设计计算机程序包括访问不变的域规则和显示可变的业务规则。响应于用户选择来选择一个或多个业务规则,并对业务规则进行定制。业务规则被与一个过程相关联,并且域规则被与该过程相关联。表示该过程的模型被显示,并且与该过程相对应的代码被生成以设计计算机程序。文档编号G06F9/318GK101410794SQ200480020539公开日2009年4月15日申请日期2004年7月14日优先权日2003年7月17日发明者韦恩·帕提克·欧伯恩申请人:雷斯昂公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1