首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 140 毫秒
1.
目前的面向对象框架存在规模大、使用复杂、文档含糊、不够准确等问题,给使用者带来一定的难度。针对上述问题,提出最大相同共享边子树的概念,将多个应用程序中的框架变化点实例化代码抽象成实例化关系树,基于最大相同共享边子树(MSET)给出可能的框架变化点实例化模式及相应的支持度。  相似文献   

2.
一种面向对象的软件设计模式库的设计   总被引:2,自引:3,他引:2  
成功地利用模式可以有效提高软件的开发效率和设计质量,通用模式具有较强的普适性,结合具体领域特点形成的实例模式具有更强、更具体的指导作用.为了实现一个辅助设计模式复用的CASE工具,对设计模式的几个面向对象的原则进行分析,提出了一种面向对象的分布式软件实例模式库来存储设计模式,并给出相应的类层次库组织结构、分布式的交互管理和基于聚类的多级索引方法及面向对象的嵌套索引方法.依此存储模式以更有效地管理和利用模式.  相似文献   

3.
成功地利用模式可以有效提高软件的开发效率和设计质量,通用模式具有较强的普适性,结合具体领域特点形成的实例模式具有更强、更具体的指导作用。为了实现一个辅助设计模式复用的CASE工具,对设计模式的几个面向对象的原则进行分析,提出了一种面向对象的分布式软件实例模式库来存储设计模式,并给出相应的类层次库组织结构、分布式的交互管理和基于聚类的多级索引方法及面向对象的嵌套索引方法。依此存储模式以更有效地管理和利用模式。  相似文献   

4.
基于构件的软件框架与角色扩展形态研究   总被引:48,自引:2,他引:48       下载免费PDF全文
刘瑜  张世琨  王立福  杨芙清 《软件学报》2003,14(8):1364-1370
框架是实现大粒度软件复用的有效途径,面向对象框架可以通过实例化扩展实现具体的应用系统,但是,研究和实践表明,面向对象框架存在着一些问题.采用基于构件的框架(CBSF),通过用构件替代框架内部相互协作的类,以增大框架构成成分的粒度;同时利用构件的接口调用和组装实现框架扩展机制.主要探讨了角色扩展形态,角色是将要被进一步实例化的特殊构件,可分为抽象构件和模板.针对不同变化性类型,提出可以利用体系结构模式、设计模式或参数化这3种方式设计CBSF角色扩展,进而讨论了基于角色扩展形态的应用构件组装.  相似文献   

5.
面向复用成本优化的构件重构方法   总被引:2,自引:0,他引:2  
王忠杰  徐晓飞  战德臣 《软件学报》2005,16(12):2157-2165
构件需要在其复用期间进行持续的优化改进和重构,消除设计需求与复用需求之间的差异,在保证有用性的前提下改善可用性.为此,提出一种面向复用成本优化的、基于局部性原理与实例集分解的构件重构方法.首先给出一种基于特征的构件模型,着重探讨基于可变点的复用机制,并在此基础上研究构件复用成本的构成要素、优化策略与优化目标,即通过提高构件固定部分的比例降低复用成本.探讨了构件复用过程中存在的时间/空间局部性,依据构件实例复用频度的差异,将具有高复用频度的实例分离出来形成(半)实例化构件,以降低构件复用过程中的实例化成本与实现成本.进而提出一种基于贪心策略的构件实例分解算法实现近似最优化,并通过实例验证其有效性.该方法通过将构件特征间依赖关系分解为构件实例间依赖关系,将构件的部分实例化工作由复用阶段提前到设计阶段来完成,将若干可变特征转化为固定特征,从而避免了构件频繁复用时的多次实例化,以降低复用成本.  相似文献   

6.
ATS软件的面向对象框架开发   总被引:3,自引:1,他引:2  
面向对象框架是现代软件工程中一种重要的软件复用方式,不仅提供了代码复用;而且实现了更具有软件生产力意义的设计复用;在ATS(自动测试系统)软件开发中引入面向对象框架开发方法,分析总结了ATS软件领域共性,进行了ATS软件面向对象框架的设计,完成了一个适用于常规ATS软件开发的面向对象框架-ATSSF,并且,基于ATSSF开发了某型空地导弹ATS软件;实践表明,采用面向对象框架开发方法,可大幅度提高ATS软件开发效率。  相似文献   

7.
面向对象框架是一种大型的面向对象复用技术,它兼有设计复用和代码复用的优势,为基于复用的软件开发提供了一种强有力的工具.JHotDraw便是这样一个著名的例子,它是用来简化绘图应用程序的可高度定制化的GUI框架.本文将通过JHotDraw中应用的几个重要设计模式来解释JHotDraw框架及框架的基本原理.  相似文献   

8.
《微型机与应用》2016,(23):15-17
多年以来,C语言在嵌入式软件开发中被广泛使用,但由于开发人员和应用场景等原因,面向对象、设计模式等优秀的软件开发方法始终没有很好地运用起来。时至今日,物联网等应用的兴起,给嵌入式软件开发带来新的挑战,而传统的面向过程开发已经难以支撑这些复杂的应用。因此,有必要在嵌入式软件开发中引入面向对象、设计模式等优秀的软件开发方法。面向对象是现代软件方法的根基,面向对象体现在类上,使用类来创建对象的过程就是实例化。文章结合C语言的特性,对使用C语言实现类实例化进行了讨论。  相似文献   

9.
软件框架开发过程研究   总被引:17,自引:0,他引:17  
软件框架是实现大粒度复用的重要途径,它往往针对特定领域,同时支持设计复用和代码复用。论文主要探讨了软件框架开发的相关活动,包括软件框架开发以及基于框架的应用开发(即框架复用),通过建立开发过程模型,刻画了框架开发过程。进而基于该模型,描述了开发过程中的相关问题,如变化性处理策略、应用开发中的体系结构调整、框架演化等,从而指导相关开发活动。  相似文献   

10.
基于神经索引实例与知识推理的混合型智能CAPP策略   总被引:3,自引:2,他引:3  
提出了一种新的基于耦合神经网络实例与知识的混合推理策略,采用面向对象的方法表达实例和知识,将神经索引模型引入实例推理中,在此基础上实现了CAPP的变异设计。同时,建立了基于零件及其工艺数据知识的分层知识表达与层次式推理机制,从而实现了CAPP的创成式设计。在给出这种知识化的CAPP系统的总体结构之后,详细讨论了基于神经网络的实例索引模型及实例推理和知识基推理的实现过程,由于吸收了派生法的类比设计思  相似文献   

11.
In order to face new regulation directives regarding the environment and also for improving their customer relationship, enterprises have to increasingly be more able to manage their product information during the entire lifecycle. One of the objectives among others in this paper is to deal with product traceability along the product lifecycle. To meet this objective, the information system has to be designed and, further built in such a way all information regarding products is recorded. The IEC 62264 standards define generic logical models for exchanging product and process information between business and manufacturing levels of enterprise applications. Thus, it can be a base for product information traceability. However, its complexity comes from the fact it mixes conceptual and implementation details while no methodology exists that defines how to instantiate it. Product traceability is then needed to increase its abstraction level in order to concentrate on its concepts and managing its application by providing a methodology for its instantiation. In this paper, we propose to map the IEC 62264 standard models to a particular view of Zachman framework in order to make the framework concrete as a guideline for applying the standard and for providing the key players in information systems design with a methodology to use the standard for traceability purposes.  相似文献   

12.
Software process representation and analysis for framework instantiation   总被引:1,自引:0,他引:1  
Object-oriented frameworks are currently regarded as a promising technology for reusing designs and implementations. However, developers find there is still a steep learning curve when extracting the design rationale and understanding the framework documentation during framework instantiation. Thus, instantiation is a costly process in terms of time, people, and other resources. These problems raise a number of questions including: "How can we raise the level of abstraction in which the framework instantiation is expressed, reasoned about and implemented?" "How can the same high-level design abstractions that were used to develop the framework be used during framework instantiation instead of using source code as is done currently?" "How can we define extended design abstractions that can allow framework instantiation to be explicitly represented and validated?" We present an approach to framework instantiation based on software processes that addresses these issues. Our main goal is to represent the framework design models in an explicit and declarative way, and support changes to this design based on explicit instantiation tasks based on software processes while maintaining system integrity, invariants, and general constraints. In this way, the framework instantiation can be performed in a valid and controlled way.  相似文献   

13.
领域框架为特定领域软件的开发提供了基础平台。该文以公文流转领域为研究对象,对其进行详细的领域分析,描述了领域需求,确定领域边界和建立领域模型;设计并实现了一种基于多层体系结构的公文流转领域框架。  相似文献   

14.
Generic programming with C++ templates results in efficient but inflexible code: efficient, because the exact types of inputs to generic functions are known at compile time; inflexible because they must be known at compile time. We show how to achieve run-time polymorphism without compromising performance by instantiating the generic algorithm with a comprehensive set of possible parameter types, and choosing the appropriate instantiation at run time. Applying this approach naïvely can result in excessive template bloat: a large number of template instantiations, many of which are identical at the assembly level. We show practical examples of this approach quickly approaching the limits of the compiler. Consequently, we combine this method of run-time polymorphism for generic programming, with a strategy for reducing the number of necessary template instantiations. We report on using our approach in GIL, Adobe’s open source Generic Image Library. We observed a notable reduction, up to 70% at times, in executable sizes of our test programs. This was the case even with compilers that perform aggressive template hoisting at the compiler level, due to significantly smaller dispatching code. The framework draws from both the generic and generative programming paradigms, using static metaprogramming to fine tune the compilation of a generic library. Our test bed, GIL, is deployed in a real world industrial setting, where code size is often an important factor.  相似文献   

15.
By analogy with a Software Requirements Specification (SRS), it is argued that a Method Requirements Specification (MRS) should be introduced in method engineering. It shares with the SRS the property of implementation-independence. This means that an MRS must be an instance of an abstract metamodel and not of a technical metamodel like GOPRR (Graph, Object, Property, Relationship, and Role). The MRS is then translated to be an instantiation of a technical metamodel. We develop a representation system for an MRS and describe an automated process for instantiating a technical metamodel with an MRS. This instantiation is used to produce the actual method which is then given to a metaCASE to produce a CASE tool. Thus, we propose a method engineering approach rooted in the MRS.  相似文献   

16.
Proof planning is an application of AI planning to theorem proving that employs plan operators that encapsulate mathematical proof techniques. Many proofs require the instantiation of variables; that is, mathematical objects with certain properties have to be constructed. This is particularly difficult for automated theorem provers if the instantiations have to satisfy requirements specific for a mathematical theory, for example, for finite sets or for real numbers, because in this case unification is insufficient for finding a proper instantiation. Often, constraint solving can be employed for this task. We describe a framework for the integration of constraint solving into proof planning that combines proof planners and stand-alone constraint solvers. Proof planning has some peculiar requirements that are not met by any off-the-shelf constraint-solving system. Therefore, we extended an existing propagation-based constraint solver in a generic way. This approach generalizes previous work on tackling the problem. It provides a more principled way and employs existing AI technology.  相似文献   

17.
基于角色的设计模式建模和实现方法   总被引:13,自引:0,他引:13  
何成万  何克清 《软件学报》2006,17(4):658-669
虽然设计模式有利于软件的重用,但当设计模式实例化时,存在模式的重叠、可追踪性以及模式代码难于重用等问题.提出一种基于角色的设计模式的建模和实现方法,在设计和实现两个层面上解决上述问题.该方法把设计模式的角色作为独立的建模元素,在应用程序类和角色间导入RoleOf关系,使应用逻辑和模式逻辑完全分离,从而提高其重用性.使用UML的标准扩充机制,给出了RoleOf关系的元模型和语义,以及标识模式信息的构造型和标记值,以此解决模式的重叠和可追溯性等问题.通过对Java语言进行扩充(称为Rava),实现了应用逻辑和模式逻辑的动态绑定.该方法较好地解决了设计模式实例化时的模式重叠和可追踪性问题,提高了模式逻辑的可重用性,对运用设计模式开发软件有一定的指导作用.  相似文献   

18.
Instantiation schemes are proof procedures that test the satisfiability of clause sets by instantiating the variables they contain, and testing the satisfiability of the resulting ground set of clauses. Such schemes have been devised for several theories, including fragments of linear arithmetic or theories of data-structures. In this paper we investigate under what conditions instantiation schemes can be combined to solve satisfiability problems in unions of theories.  相似文献   

19.
基于J2EE体系的Web应用框架整合   总被引:9,自引:0,他引:9  
程洪  钱乐秋  马舜雄 《计算机工程》2005,31(20):96-98,120
在研究了大量流行的Web应用框架的基础上,提出了一种Web应用框架整合模型,即WAFC模型(Web AppLication Framewnrk Composition),该模型基于分层思想,结合设计模式方法,给出了一组约束,增加了域对象层、服务定位层和数据接口层,有效地解决了框架整合过程中出现的功能冗余、层间通信不便、耦合度太高等问题。该模型充分挖掘了各个框架的长处,使。它们以一种松散耦合方式结合,形成一个更高层次的应用框架。此外还结合了具体实例,分析和探讨了该模型的实例化过程。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号