Modeling technology has been introduced into software testing field. However, how to carry through the testing modeling effectively is still a difficulty. Based on combination of simulation modeling technology and emb...Modeling technology has been introduced into software testing field. However, how to carry through the testing modeling effectively is still a difficulty. Based on combination of simulation modeling technology and embedded real-time software testing method, the process of simulation testing modeling is studied first. And then, the supporting environment of simulation testing modeling is put forward. Furthermore, an approach of embedded real-time software simulation testing modeling including modeling of cross-linked equipments of system under testing (SUT), test case, testing scheduling, and testing system service is brought forward. Finally, the formalized description and execution system of testing models are given, with which we can realize real-time, closed loop, mad automated system testing for embedded real-time software.展开更多
The reliability of real-time embedded software directly determines the reliability of the whole real-time embedded sys- tem, and the effective software testing is an important way to ensure software quality and reliab...The reliability of real-time embedded software directly determines the reliability of the whole real-time embedded sys- tem, and the effective software testing is an important way to ensure software quality and reliability. Based on the analysis of the characteristics of real-time embedded software, the formal method is introduced into the real-time embedded software testing field and the real-time extended finite state machine (RT-EFSM) model is studied firstly. Then, the time zone division method of real-time embedded system is presented and the definition and description methods of time-constrained transition equivalence class (timeCTEC) are presented. Furthermore, the approaches of the testing sequence and test case generation are put forward. Finally, the proposed method is applied to a typical avionics real- time embedded software testing practice and the examples of the timeCTEC, testing sequences and test cases are given. With the analysis of the testing result, the application verification shows that the proposed method can effectively describe the real-time embedded software state transition characteristics and real-time requirements and play the advantages of the formal methods in accuracy, effectiveness and the automation supporting. Combined with the testing platform, the real-time, closed loop and automated simulation testing for real-time embedded software can be realized effectively.展开更多
Reflective real-time component model is a special component model, which can identify timing constraint characteristics of component and support dynamic design-time amendment of real-time component according to users...Reflective real-time component model is a special component model, which can identify timing constraint characteristics of component and support dynamic design-time amendment of real-time component according to users' requirements. The reflective real-time component runtime environment is a bearing space and reflective infrastructure for this special component model. It consists of three parts and manages the lifecycle and various relevant services of reflective real-time component. In this paper its mechanism and relevant key techniques in design and realization are formally specified with the communicating sequential processing (CSP) and the extended timed communicating sequential processing (TCSP). Finally a prototype is established. Experimental study shows that this runtime environment can introduce a relevant reflective infrastructure guaranteeing dynamic and real-time features of software component.展开更多
This paper proposes a formal model of the automatic testing system for scheduling strategies in real-time UNIX and describes the algorithm of the key part of the system. The model of the system is an important technol...This paper proposes a formal model of the automatic testing system for scheduling strategies in real-time UNIX and describes the algorithm of the key part of the system. The model of the system is an important technology of the automatization of software development. According to the model presented in the paper, many different kinds of automatic testing systems can be designed and developed easily. At the end of the paper, the prototype proves the feasibility of the model and design.展开更多
The traditional software development model commonly named “waterfall” is unable to cope with the increasing functionality and complexity of modern embedded systems. In addition, it is unable to support the ability f...The traditional software development model commonly named “waterfall” is unable to cope with the increasing functionality and complexity of modern embedded systems. In addition, it is unable to support the ability for businesses to quickly respond to new market opportunities due to changing requirements. As a response, the software development community developed the Agile Methodologies (e.g., extreme Programming, Scrum) which were also adopted by the Embedded System community. However, failures and bad experiences in applying Agile Methodologies to the development of embedded systems have not been reported in the literature. Therefore, this paper contributes a detailed account of our first-time experiences adopting an agile approach in the prototype development of a wireless environment data acquisition system in an academic environment. We successfully applied a subset of the extreme Programming (XP) methodology to our software development using the Python programming language, an experience that demonstrated its benefits in shaping the design of the software and also increasing productivity. We used an incremental development approach for the hardware components and adopted a “cumulative testing” approach. For the overall development process management, however, we concluded that the Promise/Commitment-Based Project Management (PB-PM/CBPM) was better suited. We discovered that software and hardware components of embedded systems are best developed in parallel or near-parallel. We learned that software components that pass automated tests may not survive in the tests against the hardware. Throughout this rapid prototyping effort, factors like team size and our availability as graduate students were major obstacles to fully apply the XP methodology.展开更多
Robustness testing for safety-critical embedded software is still a challenge in its nascent stages. In this paper, we propose a practical methodology and implement an environment by employing model-based robustness t...Robustness testing for safety-critical embedded software is still a challenge in its nascent stages. In this paper, we propose a practical methodology and implement an environment by employing model-based robustness testing for embedded software systems. It is a system-level black-box testing approach in which the fault behaviors of embedded software is triggered with the aid of modelbased fault injection by the support of an executable model-driven hardware-in-loop (HIL) testing environment. The prototype implementation of the robustness testing environment based on the proposed approach is experimentally discussed and illustrated by industrial case studies based on several avionics-embedded software systems. The results show that our proposed and implemented robustness testing method and environment are effective to find more bugs, and reduce burdens of testing engineers to enhance efficiency of testing tasks, especially for testing complex embedded systems.展开更多
随着自动化测试的广泛应用,为实现测试人员对测试任务的实时监控,提出一种基于测试脚本数据实时监控的实现方法.首先介绍了数据分发服务(Data Distribution Service,DDS)与Qt框架,作为实时通信和数据监控的手段,其次以航空电子信号作为...随着自动化测试的广泛应用,为实现测试人员对测试任务的实时监控,提出一种基于测试脚本数据实时监控的实现方法.首先介绍了数据分发服务(Data Distribution Service,DDS)与Qt框架,作为实时通信和数据监控的手段,其次以航空电子信号作为测试对象,对该软件的设计与实现进行了详细介绍,最后测试结果表明,该软件可完成测试脚本的自动化执行及实时数据反馈,提高了测试效率.展开更多
文摘Modeling technology has been introduced into software testing field. However, how to carry through the testing modeling effectively is still a difficulty. Based on combination of simulation modeling technology and embedded real-time software testing method, the process of simulation testing modeling is studied first. And then, the supporting environment of simulation testing modeling is put forward. Furthermore, an approach of embedded real-time software simulation testing modeling including modeling of cross-linked equipments of system under testing (SUT), test case, testing scheduling, and testing system service is brought forward. Finally, the formalized description and execution system of testing models are given, with which we can realize real-time, closed loop, mad automated system testing for embedded real-time software.
基金supported by the Aviation Science Foundation of China
文摘The reliability of real-time embedded software directly determines the reliability of the whole real-time embedded sys- tem, and the effective software testing is an important way to ensure software quality and reliability. Based on the analysis of the characteristics of real-time embedded software, the formal method is introduced into the real-time embedded software testing field and the real-time extended finite state machine (RT-EFSM) model is studied firstly. Then, the time zone division method of real-time embedded system is presented and the definition and description methods of time-constrained transition equivalence class (timeCTEC) are presented. Furthermore, the approaches of the testing sequence and test case generation are put forward. Finally, the proposed method is applied to a typical avionics real- time embedded software testing practice and the examples of the timeCTEC, testing sequences and test cases are given. With the analysis of the testing result, the application verification shows that the proposed method can effectively describe the real-time embedded software state transition characteristics and real-time requirements and play the advantages of the formal methods in accuracy, effectiveness and the automation supporting. Combined with the testing platform, the real-time, closed loop and automated simulation testing for real-time embedded software can be realized effectively.
基金the National Defence Foundation of China(Grant No.10104010201)
文摘Reflective real-time component model is a special component model, which can identify timing constraint characteristics of component and support dynamic design-time amendment of real-time component according to users' requirements. The reflective real-time component runtime environment is a bearing space and reflective infrastructure for this special component model. It consists of three parts and manages the lifecycle and various relevant services of reflective real-time component. In this paper its mechanism and relevant key techniques in design and realization are formally specified with the communicating sequential processing (CSP) and the extended timed communicating sequential processing (TCSP). Finally a prototype is established. Experimental study shows that this runtime environment can introduce a relevant reflective infrastructure guaranteeing dynamic and real-time features of software component.
基金the Defense Advanced research Projects Agency of the Department of Defense (No.15.3.2).
文摘This paper proposes a formal model of the automatic testing system for scheduling strategies in real-time UNIX and describes the algorithm of the key part of the system. The model of the system is an important technology of the automatization of software development. According to the model presented in the paper, many different kinds of automatic testing systems can be designed and developed easily. At the end of the paper, the prototype proves the feasibility of the model and design.
文摘The traditional software development model commonly named “waterfall” is unable to cope with the increasing functionality and complexity of modern embedded systems. In addition, it is unable to support the ability for businesses to quickly respond to new market opportunities due to changing requirements. As a response, the software development community developed the Agile Methodologies (e.g., extreme Programming, Scrum) which were also adopted by the Embedded System community. However, failures and bad experiences in applying Agile Methodologies to the development of embedded systems have not been reported in the literature. Therefore, this paper contributes a detailed account of our first-time experiences adopting an agile approach in the prototype development of a wireless environment data acquisition system in an academic environment. We successfully applied a subset of the extreme Programming (XP) methodology to our software development using the Python programming language, an experience that demonstrated its benefits in shaping the design of the software and also increasing productivity. We used an incremental development approach for the hardware components and adopted a “cumulative testing” approach. For the overall development process management, however, we concluded that the Promise/Commitment-Based Project Management (PB-PM/CBPM) was better suited. We discovered that software and hardware components of embedded systems are best developed in parallel or near-parallel. We learned that software components that pass automated tests may not survive in the tests against the hardware. Throughout this rapid prototyping effort, factors like team size and our availability as graduate students were major obstacles to fully apply the XP methodology.
基金the Aeronautics Science Foundation of China(No.2011ZD51055)Science and Technology on Reliability&Environmental Engineering Laboratory(No.302367)the National Pre-Research Foundation of China(No.51319080201)
文摘Robustness testing for safety-critical embedded software is still a challenge in its nascent stages. In this paper, we propose a practical methodology and implement an environment by employing model-based robustness testing for embedded software systems. It is a system-level black-box testing approach in which the fault behaviors of embedded software is triggered with the aid of modelbased fault injection by the support of an executable model-driven hardware-in-loop (HIL) testing environment. The prototype implementation of the robustness testing environment based on the proposed approach is experimentally discussed and illustrated by industrial case studies based on several avionics-embedded software systems. The results show that our proposed and implemented robustness testing method and environment are effective to find more bugs, and reduce burdens of testing engineers to enhance efficiency of testing tasks, especially for testing complex embedded systems.
文摘随着自动化测试的广泛应用,为实现测试人员对测试任务的实时监控,提出一种基于测试脚本数据实时监控的实现方法.首先介绍了数据分发服务(Data Distribution Service,DDS)与Qt框架,作为实时通信和数据监控的手段,其次以航空电子信号作为测试对象,对该软件的设计与实现进行了详细介绍,最后测试结果表明,该软件可完成测试脚本的自动化执行及实时数据反馈,提高了测试效率.