Automated support for deriving test requirements from UML statecharts |
| |
Authors: | L C Briand Y Labiche J Cui |
| |
Affiliation: | (1) Software Quality Engineering Laboratory, Carleton University– Department SCE, 1125 Colonel By Drive Ottawa, ON, K1S5B6, Canada |
| |
Abstract: | Many statechart-based testing strategies result in specifying a set of paths to be executed through a (flattened) statechart.
These techniques can usually be easily automated so that the tester does not have to go through the tedious procedure of deriving
paths manually to comply with a coverage criterion. The next step is then to take each test path individually and derive test
requirements leading to fully specified test cases. This requires that we determine the system state required for each event/transition
that is part of the path to be tested and the input parameter values for all events and actions associated with the transitions.
We propose here a methodology towards the automation of this procedure, which is based on a careful normalization and analysis
of operation contracts and transition guards written with the Object Constraint Language (OCL). It is illustrated by one case
study that exemplifies the steps of our methodology and provides a first evaluation of its applicability.
The scope of the testing activity depends on what is modeled by the statechart. If the statechart models the behavior of a
single class, then it can be used to support unit testing. If the behavior of a class-cluster, a subsystem or a component
is modeled, then we are concerned with integration testing. If the whole system is modeled, then the focus of statechart-based
testing is system testing.
Lionel C. Briand is on the faculty of the Department of Systems and Computer Engineering, Carleton University, Ottawa, Canada, where he founded
and leads the Software Quality Engineering Laboratory (http://www.sce.carleton.ca/Squall/ Squall.htm). He has been granted
the Canada Research Chair in Software Quality Engineering and is also a visiting professor at the Simula laboratories, University
of Oslo, Norway. Before that he was the software quality engineering department head at the Fraunhofer Institute for Experimental
Software Engineering, Germany.
Dr. Lionel also worked as a research scientist for the Software Engineering Laboratory, a consortium of the NASA Goddard Space
Flight Center, CSC, and the University of Maryland. He has been on the program, steering, or organization committees of many
international, IEEE conferences such as ICSE, ICSM, ISSRE, and METRICS. He is the coeditor-in-chief of Empirical Software
Engineering (Springer) and is a member of the editorial board of Systems and Software Modeling (Springer). He was on the board
of IEEE Transactions on Software Engineering from 2000 to 2004.
His research interests include: object-oriented analysis and design, inspections and testing in the context of object-oriented
development, quality assurance and control, project planning and risk analysis, and technology evaluation. Lionel received
the BSc and MSc degrees in geophysics and computer systems engineering from the University of Paris VI, France. He received
the PhD degree in computer science, with high honors, from the University of Paris XI, France.
Yvan Labiche received the BSc in Computer System Engineering, from the graduate school of engineering: CUST (Centre Universitaire des
Science et Techniques, Clermont-Ferrand), France. He completed a Master of fundamental computer science and production systems
in 1995 (Université Blaise Pascal, Clermont Ferrand, France). While doing his Ph.D. in Software Engineering, completed in
2000 at LAAS/CNRS in Toulouse, France, Yvan worked with Aerospatiale Matra Airbus (now EADS Airbus) on the definition of testing
strategies for safety-critical, on-board software, developed using object-oriented technologies.
In January 2001, Dr. Yvan Labiche joined the Department of Systems and Computer Engineering at Carleton University, as an
Assistant Professor. His research interests include: object-oriented analysis and design, software testing in the context
of object-oriented development, and technology evaluation. He is a member of the IEEE.
Jim (Jingfeng) Cui completed his BSc in Industrial Automation Control, from the School of Information and Engineering, Northeastern University,
China. He received a Master of Applied Science (specialization in Software Engineering) in 2004 from the Ottawa-Carleton Institute
of Electrical and Computer Engineering, Ottawa, Canada. While in his graduate study, he was awarded the Ontario Graduate Scholarship
of Science and Technology. He is now a senior Software Architect in Sunyard System & Engineering Co.Ltd., China. His interest
includes Object-Oriented Software Development, Quality Assurance, and Content Management System. |
| |
Keywords: | |
本文献已被 SpringerLink 等数据库收录! |
|