In this paper,a novel component based framework of test system is presented for the new requirements of dynamic changes of test functions and reconfiguration of test resources.The complexity of dynamic reconfiguration...In this paper,a novel component based framework of test system is presented for the new requirements of dynamic changes of test functions and reconfiguration of test resources.The complexity of dynamic reconfiguration arises from the scale, redirection,extensibility and interconnection of components in test system.The paper is started by discussing the component assem- bly based framework which provide the open platform to the deploy of companents and then the script interpreter model is introduced to dynamically create the components and build the test system by analyzing XML based information of test system.A pipeline mod- el is presented to provide the data channels and behavior reflection among the components.Finally,a dynamic reconfigurable test system is implemented on the basis of COM and applied in the remote test and control system of CNC machine.展开更多
The field of software engineering and software technology is developing very fast. Perhaps as a consequence, there is seldom enough interest or opportunity for systematic investigation of how the underlying technology...The field of software engineering and software technology is developing very fast. Perhaps as a consequence, there is seldom enough interest or opportunity for systematic investigation of how the underlying technology will actually perform. That is, we introduce new concepts, methods, techniques and tools – or change existing ones and emphasize their value. A major turn in software engineering leading to Componentware has dramatically changed the shape of software development and introduced interesting methods for the design and rapid development of systems which may provide cost-effective benefits. In this paper we will discuss Componentware, process model, architecture, principles and the drivers, advantages, disadvantage and reveal profound changes from the traditional software engineering approaches.展开更多
Component based development offers many potential benefits, viz. software reuse, reduced time-to-market, inter- operability, ease of quality certification etc. However, it is not always that benefits derived from addi...Component based development offers many potential benefits, viz. software reuse, reduced time-to-market, inter- operability, ease of quality certification etc. However, it is not always that benefits derived from addition of components from a component repository are more than the costs involved in developing the module from scratch. This work evaluates various software quality models and suggests recommendations for enhancing software quality in COTS (component off-the-shelf) based software products by designing software quality metrics that would help in managing and enhancing quality in component-based software development.展开更多
How to compose prefabricated components is a key issue in component-based reuse. Research on Software Architecture (SA) and Component-based Software Development (CBSD) provides two hopeful solutions from different per...How to compose prefabricated components is a key issue in component-based reuse. Research on Software Architecture (SA) and Component-based Software Development (CBSD) provides two hopeful solutions from different perspectives. SA provides a top-down approach to realizing component-based reuse. However, it pays insufficient attention to the refinement and implementation of the architectural descriptions, and does not provide the necessary capability to automate the transformation or composition to form a final executable application. CBSD provides a bottom-up way by using existing middleware infrastructures. However, these technologies do not take into account the systematic methodology that can guide the CBSD process, especially the component composition at higher abstract levels. We argue that it is a natural solution to combine these two approaches.In this paper, an architecture-based component composition approach is presented. In this way, SA description, using mapping rules and mini-tools to narrow the gap between design and implementation , is used as the blueprint and middleware technology as the runtime scaffold for component composition. Our approach presents an ADL, which supports user-defined connectors and has an extensible framework, to specify software architectures. To map a SA description into implementation, it is necessary to map it first to an OO design model described in UML, then to the final implementation. The architectural description can be mapped into source code or executable code by using some ORB conforming to CORBA standard. Also a toolkit is provided to support this approach efficiently.展开更多
Due to rapid development in software industry, it was necessary to reduce time and efforts in the software development process. Software Reusability is an important measure that can be applied to improve software deve...Due to rapid development in software industry, it was necessary to reduce time and efforts in the software development process. Software Reusability is an important measure that can be applied to improve software development and software quality. Reusability reduces time, effort, errors, and hence the overall cost of the development process. Reusability prediction models are established in the early stage of the system development cycle to support an early reusability assessment. In Object-Oriented systems, Reusability of software components (classes) can be obtained by investigating its metrics values. Analyzing software metric values can help to avoid developing components from scratch. In this paper, we use Chidamber and Kemerer (CK) metrics suite in order to identify the reuse level of object-oriented classes. Self-Organizing Map (SOM) was used to cluster datasets of CK metrics values that were extracted from three different java-based systems. The goal was to find the relationship between CK metrics values and the reusability level of the class. The reusability level of the class was classified into three main categorizes (High Reusable, Medium Reusable and Low Reusable). The clustering was based on metrics threshold values that were used to achieve the experiments. The proposed methodology succeeds in classifying classes to their reusability level (High Reusable, Medium Reusable and Low Reusable). The experiments show how SOM can be applied on software CK metrics with different sizes of SOM grids to provide different levels of metrics details. The results show that Depth of Inheritance Tree (DIT) and Number of Children (NOC) metrics dominated the clustering process, so these two metrics were discarded from the experiments to achieve a successful clustering. The most efficient SOM topology [2 × 2] grid size is used to predict the reusability of classes.展开更多
基金Supported by the National Science Foundation of China(Grant No.50275061)the National High Technology Research and Development Program(Grant No.2001AA423230).
文摘In this paper,a novel component based framework of test system is presented for the new requirements of dynamic changes of test functions and reconfiguration of test resources.The complexity of dynamic reconfiguration arises from the scale, redirection,extensibility and interconnection of components in test system.The paper is started by discussing the component assem- bly based framework which provide the open platform to the deploy of companents and then the script interpreter model is introduced to dynamically create the components and build the test system by analyzing XML based information of test system.A pipeline mod- el is presented to provide the data channels and behavior reflection among the components.Finally,a dynamic reconfigurable test system is implemented on the basis of COM and applied in the remote test and control system of CNC machine.
文摘The field of software engineering and software technology is developing very fast. Perhaps as a consequence, there is seldom enough interest or opportunity for systematic investigation of how the underlying technology will actually perform. That is, we introduce new concepts, methods, techniques and tools – or change existing ones and emphasize their value. A major turn in software engineering leading to Componentware has dramatically changed the shape of software development and introduced interesting methods for the design and rapid development of systems which may provide cost-effective benefits. In this paper we will discuss Componentware, process model, architecture, principles and the drivers, advantages, disadvantage and reveal profound changes from the traditional software engineering approaches.
文摘Component based development offers many potential benefits, viz. software reuse, reduced time-to-market, inter- operability, ease of quality certification etc. However, it is not always that benefits derived from addition of components from a component repository are more than the costs involved in developing the module from scratch. This work evaluates various software quality models and suggests recommendations for enhancing software quality in COTS (component off-the-shelf) based software products by designing software quality metrics that would help in managing and enhancing quality in component-based software development.
基金This work was supported by the 9th State Five-Year Plan, State 863 High-Tech Program, and the National Natural Science Foundation of China It also got support from Bell-Labs China and Software Production Research of Bell-Labs.
文摘How to compose prefabricated components is a key issue in component-based reuse. Research on Software Architecture (SA) and Component-based Software Development (CBSD) provides two hopeful solutions from different perspectives. SA provides a top-down approach to realizing component-based reuse. However, it pays insufficient attention to the refinement and implementation of the architectural descriptions, and does not provide the necessary capability to automate the transformation or composition to form a final executable application. CBSD provides a bottom-up way by using existing middleware infrastructures. However, these technologies do not take into account the systematic methodology that can guide the CBSD process, especially the component composition at higher abstract levels. We argue that it is a natural solution to combine these two approaches.In this paper, an architecture-based component composition approach is presented. In this way, SA description, using mapping rules and mini-tools to narrow the gap between design and implementation , is used as the blueprint and middleware technology as the runtime scaffold for component composition. Our approach presents an ADL, which supports user-defined connectors and has an extensible framework, to specify software architectures. To map a SA description into implementation, it is necessary to map it first to an OO design model described in UML, then to the final implementation. The architectural description can be mapped into source code or executable code by using some ORB conforming to CORBA standard. Also a toolkit is provided to support this approach efficiently.
文摘Due to rapid development in software industry, it was necessary to reduce time and efforts in the software development process. Software Reusability is an important measure that can be applied to improve software development and software quality. Reusability reduces time, effort, errors, and hence the overall cost of the development process. Reusability prediction models are established in the early stage of the system development cycle to support an early reusability assessment. In Object-Oriented systems, Reusability of software components (classes) can be obtained by investigating its metrics values. Analyzing software metric values can help to avoid developing components from scratch. In this paper, we use Chidamber and Kemerer (CK) metrics suite in order to identify the reuse level of object-oriented classes. Self-Organizing Map (SOM) was used to cluster datasets of CK metrics values that were extracted from three different java-based systems. The goal was to find the relationship between CK metrics values and the reusability level of the class. The reusability level of the class was classified into three main categorizes (High Reusable, Medium Reusable and Low Reusable). The clustering was based on metrics threshold values that were used to achieve the experiments. The proposed methodology succeeds in classifying classes to their reusability level (High Reusable, Medium Reusable and Low Reusable). The experiments show how SOM can be applied on software CK metrics with different sizes of SOM grids to provide different levels of metrics details. The results show that Depth of Inheritance Tree (DIT) and Number of Children (NOC) metrics dominated the clustering process, so these two metrics were discarded from the experiments to achieve a successful clustering. The most efficient SOM topology [2 × 2] grid size is used to predict the reusability of classes.