首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 640 毫秒
1.
COTS(Commercial Off-The-Shelf)构件的源代码不可得,而且规约通常缺少交互语义信息,使得集成了COTS的构件软件系统无法采用基于源代码和基于规约的集成测试用例生成方法.提出基于运行时交互约束的COTS构件集成测试用例生成方法.方法在构件软件系统的初始功能测试用例执行过程中,获取COTS构件在系统上下文环境中的运行时接口交互约束信息,建立COTS构件与系统中其它构件的交互约束模型,根据建立的构件交互约束模型生成集成测试用例.当替换、更新集成的COTS构件时,采用生成的集成测试用例验证重新集成的COTS构件与系统其它构件交互的正确性.实现方法的自动化工具原型,并采用真实的系统实例对生成的测试用例的有效性进行了初步评估.  相似文献   

2.
Increasingly, modern‐day software systems are being built by combining externally‐developed software components with application‐specific code. For such systems, existing program‐analysis‐based software engineering techniques may not directly apply, due to lack of information about components. To address this problem, the use of component metadata has been proposed. Component metadata are metadata and metamethods provided with components, that retrieve or calculate information about those components. In particular, two component‐metadata‐based approaches for regression test selection are described: one using code‐based component metadata and the other using specification‐based component metadata. The results of empirical studies that illustrate the potential of these techniques to provide savings in re‐testing effort are provided. Copyright © 2006 John Wiley & Sons, Ltd.  相似文献   

3.
一个集成式的软件构件描述框架   总被引:17,自引:0,他引:17  
该文提出了一个可扩展、可裁减的集成式软件构件描述框架。该框架采用了相宜的方法对构件的接口、语义、问题空间等方面进行描述,并且通过XML提供了可扩展的机制。实践证明,在该框架基础上实现的构件库管理系统体现了较好的构件描述与检索能力。  相似文献   

4.
ContextA component-based software (CBS) system is a typical example of a composite component, which is composed of two or more atomic components. In the test of a CBS system, it is necessary to automatically generate expected results because they are compared with the actual results.ObjectiveThis paper proposes an automatic generation algorithm of expected results for the testing of a CBS system.MethodThe algorithm analyzes Input/Output (I/O) relationships of a CBS system to identify inputs that influence its outputs. Then, the algorithm uses test cases of atomic components for each input and automatically generates expected results. To evaluate the proposed approach, we compare the proposed approach with the other I/O relationship based approach via two case studies which are the CBS systems for guide robot. The comparison shows the effectiveness of our approach.ResultsTo verify effectiveness of the proposed approach, we measure the cost of manual generation of expected results for each case study. The costs are from 0.001 to 0.015 in the first case study, and are from 0.590 to 0.998 in the second case study.ConclusionThis proposed approach reduces the time-consuming and error-prone task which manually generates expected results for the testing of a CBS system.  相似文献   

5.
During the last two decades, there has been a growing interest in component-based software system (CBSS) development both in academia and in industry. In CBSS development, it is common to identify software modules first. Once they are determined, we need to select appropriate software components for each software module. However, very few research works so far have addressed the theoretical aspect especially in the optimization of software component selection for CBSS development. Previous studies of CBSS development seldom considered the influence of software components on coupling and cohesion of software modules. In this paper, the formulation of an optimization model of software components selection for CBSS development is described. The model has two objectives: maximizing the functional performance of the CBSS and maximizing the cohesion and minimizing the coupling of software modules. A genetic algorithm (GA) is introduced to solve the optimization model for determining the optimal selection of software components for CBSS development. An example of developing a financial system for small- and medium-size enterprises is used to illustrate the proposed methodology.  相似文献   

6.
制造控制系统的软件构件模型   总被引:1,自引:0,他引:1  
为了实现制造控制系统软件的有效重用,提出了制造控制系统软件构件的描述模型,保证软件构件描述与可执行代码之间的一致性。通过领域分析,将制造控制系统的软件构件接口与实现分离,信息与功能分离,构件之间通信通过独立的数据对象实现。消除了软件构件之间的网状调用关系,简化了应用软件结构和软件设计,提高了软件的可重用性和重用效率。  相似文献   

7.
Recent shape editing techniques, especially for man‐made models, have gradually shifted focus from maintaining local, low‐level geometric features to preserving structural, high‐level characteristics like symmetry and parallelism. Such new editing goals typically require a pre‐processing shape analysis step to enable subsequent shape editing. Observing that most editing of shapes involves manipulating their constituent components, we introduce component‐wise controllers that are adapted to the component characteristics inferred from shape analysis. The controllers capture the natural degrees of freedom of individual components and thus provide an intuitive user interface for editing. A typical model usually results in a moderate number of controllers, allowing easy establishment of semantic relations among them by automatic shape analysis supplemented with user interaction. We propose a component‐wise propagation algorithm to automatically preserve the established inter‐relations while maintaining the defining characteristics of individual controllers and respecting the user‐specified modeling constraints. We extend these ideas to a hierarchical setup, allowing the user to adjust the tool complexity with respect to the desired modeling complexity. We demonstrate the effectiveness of our technique on a wide range of man‐made models with structural features, often containing multiple connected pieces.  相似文献   

8.
9.
分层异构控制软件的构件化建模和设计   总被引:1,自引:0,他引:1       下载免费PDF全文
在分离控制软件计算功能成分与交互行为成分的基础上,提出了一种异构控制软件构件化建模设计方法。采用层次化思想实现软件构架,管理异构控制模型,实现构件与设计模式复用。引入“管理器”的概念来描述构架如何将一组原子构件的计算成分集成为支持异构模型的复合构件。在分布式实时平台上通过实现简化的构件化分层异构控制软件验证该方法的可行性。  相似文献   

10.
In this paper, we present a scheduling and a variable binding technique for improved testability in high level synthesis. The scheduling technique called cost based scheduling system (CBSS), is time constrained which minimizes the number of resources (operations) and the number of registers based on a cost function. The CBSS improves the life time of primary input and primary output variables, reduces the life times of intermediate variables and hence improves the controllability and observability. The testability of the register transfer level (RTL) structure generated by this schedule is therefore improved. CBSS considers all the variables and operations jointly for scheduling. CBSS supports various scheduling modes such as multicycled and chained operations, and pipelining. The complexity of our scheduling algorithm is O(c·n2) where c is the number of control steps and n is the number of operations to be scheduled. To generate a highly testable RTL structure, the CBSS is followed by a variable binding technique to bind the variables into registers. An integer linear programming (ILP) approach is proposed with an objective function that minimizes the number of registers and a set of constraints that improves the testability of the RTL structure. Various case studies are presented and the results on different benchmark examples show the potential of our approach.  相似文献   

11.
Component users need to customize components they obtain from providers, because providers usually develop components for general use. Although the customization is accomplished by modifying the interface of a component, faults from customization appear when the implementation part of a component and the interfaces interact. The implementation part is a black‐box, whose source code is not available to a component user, while the interface is a white‐box, whose source code is available for customization. Therefore, customization faults should be tested using both the black‐box part and the white‐box part of a component. This paper proposes a new technique to test customization faults using software fault injection and mutation testing, and the technique is tailored to Enterprise JavaBeans. Test cases are selected by injecting faults not into the entire interface but into specific parts of the component's interface. The specific parts that are chosen control the effectiveness of the test cases. An empirical study to evaluate the technique is reported. Copyright © 2003 John Wiley & Sons, Ltd.  相似文献   

12.
The design of software for networked systems with nodes running an Internet of things operating system faces important challenges due to the heterogeneity of interacting things and the constraints stemming from the often limited amount of available resources. In this context, it is hard to build confidence that a design solution fulfills the application's requirements. This paper introduces a design flow for web service applications of the representational state transfer style that is based on a formal modeling language, the behaviour, interaction, priority (BIP) component framework. The proposed flow applies the principles of separation of concerns in a component‐based design process that supports the modular design and reuse of model artifacts. The BIP tools for state‐space exploration allow verifying qualitative properties for service responsiveness, ie, the timely handling of events. Moreover, essential quantitative properties are validated through statistical model checking of a stochastic BIP model. All properties are preserved in actual implementation by ensuring that the deployed code is consistent with the validated model. We illustrate the design of a representational state transfer sense‐compute‐control application for a Wireless Personal Area Network architecture with nodes running the Contiki operating system. The results validate qualitative and quantitative properties for the system and include the study of error behaviours.  相似文献   

13.
Fault links represent relationships between the types of code faults, or defects, and the types of components in which faults are detected. For example, our prior work validated that a fault link exists between Controller components and Control/Logic faults (such as unreachable code). Fault link information can guide code reviews, walkthroughs, testing, maintenance, and can advise fault seeding. In this paper, we use fault links to augment code reviews. Two experiments were undertaken to evaluate the usefulness of fault links, one with 26 Computer Science students and another with 24 software engineering professionals. The first experiment showed that fault link information assisted in finding more total defects and more ‘hard to detect’ defects, in the same amount of time, in a Java component of an online course management application. The experiment was repeated with professionals, adding a second Java component from the same application. For the second experiment, more total defects were found by the participants using fault link information for one of the two components and more hard to detect defects were found, in the same amount of time, in both Java components. The group using fault link information for code walkthroughs found, on average, 1.7–2 times more faults and 2–3 times more hard faults than the control group. Copyright © 2010 John Wiley & Sons, Ltd.  相似文献   

14.
Component integration is widely recognized as a process which plays a central role in overall Component Based System (CBS) development. A system integrator focuses on assembling existing components, developed by different parties, to build a software system. The integration process usually involves adapting existing component interfaces and writing new functions to handle the mismatches between stakeholder needs and available component features. The lack of detailed component documentation has been a key area of concern in CBS development due to its profound impact on the integration phase of a CBS development life cycle. In this paper, we report results of an industrial survey conducted among system integrators to understand role of component documentation in the CBS integration phase. The survey investigates whether the presence of component documentation helps a system integrator and its correlations with typical CBS integration success factors. The result reinforces current perceptions of the significance of component documentation in CBS integration. However, the lack of comprehensive component documentation presents a potential risk for a system integrator during integration effort estimation and testing processes.  相似文献   

15.
随着面向构件的软件开发方法的广泛应用,构件系统的描述和测试成为保证软件质量的关键所在。由于构件系统的复杂性和开发方法的特殊性,用传统方法对构件系统进行集成测试往往面对很多困难。提出了一种改进的面向测试的构件描述模型,称为TCSM,它着重对构件系统中的构件间的交互和约束进行了动态描述,为构件系统集成测试阶段的功能测试和边界测试等提供了大量可用信息。在此基础上,进一步提出一种把TCSM转换成测试模型的方法,以UML协作图模型为原型,实现了构件系统从描述模型到测试模型的自动转换。最后,实现了一种在所产生的测试模型上自动生成测试用例的算法。TCSM更好地描述了构件的交互行为信息,进一步实现了系统的自动化测试,减少了通常需要在构件系统搭建完成后,针对测试对系统手工建立测试模型的工作,提高了构件系统开发的效率和可靠性。  相似文献   

16.
In this article, a hybrid technique for user activities outliers detection is introduced. The hybrid technique consists of a two‐stage integration of principal component analysis and fuzzy rule‐based systems. In the first stage, the Hamming distance is used to measure the differences between different activities. Principal component analysis is then applied to the distance measures to find two indices of Hotelling's T2 and squared prediction error. In the second stage of the process, the calculated indices are provided as inputs to the fuzzy rule‐based systems to model them heuristically. The model is used to identify the outliers and classify them. The proposed system is tested in real home environments, equipped with appropriate sensory devices, to identify outliers in the activities of daily living of the user. Three case studies are reported to demonstrate the effectiveness of the proposed system. The proposed system successfully identifies the outliers in activities distinguishing between the normal and abnormal behavioral patterns.  相似文献   

17.
Software components are specified, designed and implemented with the intention to be reused, and they are assembled in various contexts in order to produce a multitude of software systems. However, in the practice of software development, this ideal scenario is often unrealistic. This is mainly due to the lack of an automatic and efficient support to predict properties of the assembly code by only assuming a limited knowledge of the properties of single components. Moreover, to make effective the component-based vision, the assembly code should evolve when things change, i.e., the properties guaranteed by the assembly, before a change occurs, must hold also after the change. Glue code synthesis approaches technically permit one to construct an assembly of components that guarantees specific properties but, practically, they may suffer from the state-space explosion phenomenon.In this paper, we propose a Software Architecture (SA) based approach in which the usage of the system SA and of SA verification techniques allows the system assembler to design architectural components whose interaction is verified with respect to the specified properties. By exploiting this validation, the system assembler can perform code synthesis by only focusing on each single architectural component, hence refining it as an assembly of actual components which respect the architectural component observable behaviour. In this way code synthesis is performed locally on each architectural component, instead of globally on the whole system interactions, hence reducing the state-space explosion phenomenon.The approach can be equally well applied to efficiently manage the whole reconfiguration of the system when one or more components need to be updated, still maintaining the required properties. The specified and verified system SA is used as starting point for the derivation of glue adaptors that are required to apply changes in the composed system. The approach is firstly illustrated over an explanatory example and is then applied and validated over a real-world industrial case study.  相似文献   

18.
Component-based software engineering (CBSE) is viewed as an opportunity to deal with the increasing complexity of modern-day software. Along with CBSE comes the notion of component markets, where more or less generic pieces of software are traded, to be combined into applications by third-party application developers. For such a component market to work successfully, all relevant properties of components must be precisely and formally described. This is especially true for non-functional properties, such as performance, memory foot print, or security. While the specification of functional properties is well understood, non-functional properties are only beginning to become a research focus. This paper discusses semantic concepts for the specification of non-functional properties, taking into account the specific needs of a component market. Based on these semantic concepts, we present a new specification language QML/CS that can be used to model non-functional product properties of components and component-based software systems.  相似文献   

19.
Software components have emerged to ease the assembly of software systems. However, updates of systems by substitution or upgrades of components demand careful management due to stability risks of deployed systems. Replacement components must be properly evaluated to identify if they provide the expected behaviour affected by substitution. To address this problem, this paper proposes a substitutability assessment process in which the regular compatibility analysis is complemented with the use of black‐box testing criteria. The purpose is to observe the components' behaviour by analysing their internal functions of data transformation, which fulfils the observability testing metric. The approach is conceptually based on the technique Back‐to‐Back testing. When a component should be replaced, a specific Test Suite TS is built in order to represent its behavioural facets, viz. a Component Behaviour TS. This TS is later exercised on candidate upgrades or replacement components with the purpose of identifying the required compatibility. Automation of the process is supported through the testooj tool, which constrains the conditions and steps of the whole process in order to provide a rigorous and reliable approach. Copyright © 2010 John Wiley & Sons, Ltd.  相似文献   

20.
在复杂的实时系统开发中使用构件式设计方法已成为目前软件开发领域中的研究热点,如何有效地验证实时软件的设计是否满足给定的时间需求并降低验证过程的复杂度,是实时计算领域中的主要挑战之一.文中对构件接口模型进行时间扩展,提出了时间接口模型,并将其用于构件接口交互行为的形式化建模.在接口自动机理论的的基础上进一步提出了时间接口自动机模型用于描述时间接口交互下构件的行为及组合方法,通过消除错误状态产生组合模型来约减构件时间接口自动机模型的积,并在约减的模型上进行性质检验,降低了分析复杂度,有效地应对状态空间爆炸问题.为了说明论文建议的方法,详细讨论了一个简单的、贯穿整篇论文的示例系统.  相似文献   

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

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