BYTE.com > Features > 2003
TTCN: A Test Description Language
By Matt Graney, Renate Stücka
February 17, 2003
(TTCN: A Test Description Language
: Page 1 of 1 )
The world's dependence on software continues to grow unabated, and yet the industry's ability to deliver quality software is arguably not keeping up. The literature is
replete with infamous software disasters, ranging from the absurdly expensive to the tragic. Some have argued that software is "different" from other industries, still nascent.
Moreover, some have argued that software—unlike its hardware brethren, which boasts Moore's Law—does not lend itself to solid engineering techniques and
automation. These arguments, while perhaps valid in the industry's infancy, are no longer credible today.
According to the industry analyst firm Standish Group International, in 2000, 23 percent of software application development projects failed and 49 percent were
"challenged"—over budget and late with fewer features than initially planned. It is clear that much of the software produced today does not meet the expectations of the
end users, or for that matter, the producers themselves. So what can be done to raise the bar on software quality?
Testing is an integral part of the software production lifecycle, and plays an important role in the overall quality assurance process. Testing is one of the main ways in
which project managers can verify the actual quality of the work before it reaches its users. Yet, though testing is required, companies are often reluctant to allocate
appropriate time and resources to the process.
The problems to be solved during software testing seem to increase exponentially as complexity increases. Ideally, the software should be fully tested by the input vectors
applied to it, allowing timely, complete testing to be performed with minimal resources. But very often, tests are performed manually, as is the documentation of results. There is
no guarantee of actual test case coverage, and the manual definition and execution of test sequences is both time- and personnel-intensive.
The various test strategies can be placed into two fundamental categories.
Page 1 of 1
BYTE.com > Features > 2003
|