Voorwoord bij de Nederlandse bewerking

door Martin Pol

In de kinderjaren van de ICT, toen ICT nog “elektronische gegevensverwerking” heette, maakte het testen integraal onderdeel uit van het werkpakket van de automatiseringsmedewerker. Dit manusje van alles peilde de wensen van de gebruiker, bedacht een oplossing, programmeerde en testte tot hij dacht dat het goed genoeg was, schreef de handleidingen, etc., etc. Vaak nam hij (ja, toen nog alleen maar mannen) ook nog het beheer voor zijn rekening en bediende hij de computer. Bij de groei naar volwassenheid en de uitbreiding van het aantal toepassingen en hardwaretechnische mogelijkheden zijn de specialismen in functies ontstaan. De automatiseringsafdeling kende al snel functies als programmeur, analist en operator. Testen als functie werd niet onderkend, dat deed je er als programmeur bij, zonodig werden gebruikers ingezet om te helpen.
Die situatie is anno 2003 veranderd. Testen is volwassen en heeft zich als apart vakgebied ontwikkeld. In veel organisatie maken testfuncties als tester of testengineer, testspecialist en testmanager deel uit van het functiehuis. Zonodig wordt personeel om deze functies tijdelijk in te vullen ingehuurd. Het is mogelijk met testen carrière te maken en zowel als interne werknemer als externe inhuurkracht een goede boterham te verdienen.
Parallel aan de ontwikkeling van het testvak zijn ook gedegen opleidingsprogramma’s beschikbaar gekomen. Waar de reguliere onderwijswereld het op dit vlak volledig liet afweten hebben leveranciers van testdiensten, zoals bijvoorbeeld Polteq, voortvarend in deze behoefte voorzien. Duizenden studenten hebben in de afgelopen jaren een of andere testopleiding gevolgd. Door gebrek aan formele controle op kwaliteit van de opleidingen ontstond een zekere wildgroei en was het voor organisaties moeilijk het kaf van het koren te scheiden. Deze ontwikkeling heeft de behoefte doen ontstaan aan standaard opleidingen door geaccrediteerde instituten en docenten, om tot een unieke certificering van testpersoneel te komen. In die behoefte voorziet ISEB. Het is thans mogelijk voor het testen een officieel examen af te leggen op twee niveaus, op het Foundation level en het Practitioner level. Testers kunnen zo eenduidig over het vak communiceren en kunnen aantonen “van niveau” te zijn. Bij inhuur van extern testpersoneel geeft ISEB een goede garantie van kwaliteit.
Mijn vrienden Andreas Spillner en Tilo Linz hebben het initiatief genomen de zogenaamde ISEB-Foundation syllabus van vlees te voorzien en in leesbare vorm beschikbaar te stellen. Daar zijn ze prima in geslaagd. Echter, auf Deutsch, en dat vermindert de leesbaarheid voor velen van ons. Vandaar dat we de handen in elkaar geslagen hebben en de Duitse versie voor onze Nederlandse en Vlaamse testcollega’s hebben vertaald en bewerkt. Dat is prima gelukt, zij het met veel bloed, zweet en, nee zonder tranen. Ik mocht me namelijk gelukkig prijzen met de inzet van brother in arms Paul Strooper, een Nederlandse professor aan de Universiteit van Queensland, Australië, die toen ik hem een aantal jaren geleden in Sydney ontmoette min of meer solliciteerde naar een sabbatical baan bij Polteq. Nou dat heeft hij geweten, zeker toen ik er achter kwam dat zijn Duits van een hoog niveau was. Paul genoot een druk sabbatical, samen met de Polteq collega’s Erwin van den Hul, Guido Nuberg en mijn steun en toeverlaat Marjolein Steyerberg. Dank voor de geleverde expertise en tomeloze inzet, ook in de vele uurtjes ’s avonds en in het weekend.
Ik wens u veel studieplezier, een succesvol examen en enerverende testavonturen.

Amersfoort, november 2003
Martin Pol


Samenvatting voorwoord Andreas Spillner, Tilo Linz
Waarom hebben we een boek met het thema software testen geschreven, terwijl er al een reeks boeken over dit onderwerp is gepubliceerd?

Motivatie voor een nieuw testboek
Wij beiden zijn al sinds vele jaren werkzaam binnen het vakgebied software testen. De één met een wetenschappelijke achtergrond, de ander met dagelijkse praktijk ervaring. Beiden zijn we van mening dat het testen van software in veel organisaties voor verbetering vatbaar is en er een groot gebrek is aan gecertificeerd personeel.

Het ISEB initiatief om een driedelig certificerings programma op het gebied van software testen te ontwikkelen, te werken met erkende cursusaanbieders en de cursisten een onafhankelijk mogelijkheid bieden om te worden gecertificeerd, is door ons van het begin af aan met interesse gevolgd.
De syllabus van het certificeringsprogramma is bepaald door een gremium van verscheidene Europese vakexperts en bundelen de kennis van het testen van software. De inhoud hiervan is in vele boeken te vinden, maar is niet gegroepeerd in één boek. De syllabus geeft een opsomming van test onderwerpen die moeten worden behandeld in een cursus, zonder daarbij een gedetailleerde beschrijving en voorbeelden te geven. Daardoor is het idee ontstaan om dit aanvullende boek te schrijven. Basis voor ons boek is dan ook de ISEB Foundation syllabus [GTB CTF 01].

De titel van dit boek ‘Testen volgens ISEB - Leerboek voor het Foundation Level Certified Tester’ zegt eigenlijk alles. We zijn ervan overtuigd dat eenieder die bezig is in het kader van software ontwikkeling, zoals een programmeur, kwaliteitsmedewerker of projectmanager, kennis moet hebben van de grondbeginselen (Foundation) van software testen. Dit om hun dagelijkse werkzaamheden beter uit te kunnen voeren en om een betere inschatting van testen te kunnen maken. Verder treft dit boek vanzelfsprekend ook de mensen werkzaam binnen testen en informatica studenten. Voor veel studenten vormt dit boek een aanvulling op hun kennis.

We hebben ons best gedaan een begrijpelijk en compact boek te schrijven, om voor het brede publiek toegankelijk te zijn. Voorkennis van testen of kwaliteitszorg is niet noodzakelijk. Basiskennis van systeemontwikkeling is zeker gewenst.

Waarom tweemaal een begeleidend schrijven
Waarom hebben we tweemaal een begeleidend schrijven opgenomen in ons boek?
Door onze jarenlange ervaring op gebied van testen van software hebben we talrijke internationale contacten kunnen opbouwen. Toen ons boek concrete vormen begon aan te nemen hebben we twee personen verzocht een begeleidend schrijven op te stellen. Omdat het veel gevraagde en drukke personen zijn hadden we met terughoudende reacties rekening gehouden. Maar we waren zeer verheugd de teksten binnen de afgesproken termijnen te ontvangen. Onze escalatie planning was daardoor volledig overbodig. Omdat elk begeleidend schrijven een ander aspect belicht hebben we besloten beiden op te nemen.

Prof. David Parnas
Davis Parnas, de grondlegger van de modulisering en het geheimhoudingsprincipe (information hiding), is reeds lange tijd betrokken bij de ontwikkeling van informatica. Volgens hem moet de informatica de professionaliteit bereiken zoals die gebruikelijk is binnen bijvoorbeeld de farmaceutische industrie. Het vastleggen van richtlijnen, zoals bijvoorbeeld op gebied van testen van software, ziet hij als een stap in de goede richting. Delen van dit boek zijn ontstaan gedurende het verblijf van Andreas Spillner aan de McMaster University in Hamilton, Ontario, Canada, op uitnodiging van David Parnas. Meer informatie over David Parnas is te vinden op [Parnas].

Dorothy Graham
Dorothy Graham, reeds vele jaren actief als adviseur en docent in software kwaliteitszorg en testen, is mede-grondlegger van de ISEB Software Testing Board en is sindsdien betrokken bij ISEB. Zonder de grote inzet van Dorothy Graham was het ISEB initiatief nooit zo ver gekomen en was de bereikte internationalisering nog ver weg. Zij is mede-auteur van boeken met het thema ‘Software inspecties’ en ‘Software automatisering’. In 1999 werd de ‘Testing Excellence Award’ aan haar toegekend. In haar begeleidend schrijven benoemt Dorothy Graham de voordelen van erkenning en certificering. Nadere informatie over haar persoon is te vinden onder [Graham].

We willen Dorothy Graham en David Parnas voor hun ondersteuning en inzet hartelijk danken. We wensen de lezers van dit boek succesvolle test uren toe.

Bremen, Möhrendorf, september 2002
Andreas Spillner en Tilo Linz


Begeleidend schrijven David Parnas
One of the biggest problems in the computer software field is the ability of inadequately qualified people to enter the profession and practice software development without limits. Software has become critical to our society; it is embedded in many devices that we count on, devices such as telephones and banking machines. Nonetheless, many of the people who write that software have not been educated for the job and have never demonstrated their qualifications to any objective professional body. There is no other field in the world where people without approved education can decide to identify themselves as “Engineers” and produce products that are essential to the safety and well-being of the public.
Software is well known for low reliability and lack of trustworthiness. In part this is attributable to the difficulty of dealing with the complexity of today’s software systems, but the inadequate knowledge, skills, and professionalism of many of the practitioners also contributes to this problem. Moreover, we can thank the inadequately qualified people who produced today’s software for the unreliability and complexity of the products that serve as support software for new products.
Our educational institutions have failed the public in this field. They have not recognized that those who study Computer Science require a professional education, one similar in style to the education provided to those who study medicine, law, or engineering. In those fields, the curriculum is designed around a set of professional requirements. Students are told what they must learn, rather than allowed to learn what they feel like learning. In the software field, universities have allowed the contents of courses to depend on the whim of the instructor, and the choice of courses to be largely up to the student. As a result, when an employer or client meets a graduate of a Computer Science programme, only experienced software developers are able to judge whether or not a graduate has the knowledge and skills needed for the job. Often, we cannot even find a graduate who has the appropriate body of knowledge and experience.
This problem is quite clear in the area of software testing. Many new employees are assigned testing duties without any knowledge how to design tests, how to evaluate test results, and how to draw valid conclusions can be drawn from the test results. Fortunately, there is now a useful international initiative to establish national Testing Boards, which will approve courses of instruction and issue certificates to those who are able to demonstrate their understanding of basic terms and procedures in testing.
Unfortunately, this is still a shortage of appropriate study material for people who would like to become better software testers and pass the national tests. This book, “Basiswissen Softwaretest” by Spillner and Linz, fills this gap by providing a well organized and complete view of what is known about how to test software. It provides an essential component of the international effort to establish standards for software professionals and then help people to become fully qualified software developers.

David Lorge Parnas,
Ph.d, Dr.h.c., Dr.h.c., FRSC, P.Eng.
McMaster University, Hamilton, Ontario, Canada
June 2002


Begeleidend schrijven Dorothy Graham
What makes a good certification scheme for professional people? There are three primary objectives for a successful scheme:
there is a basic understanding of the subject matter
it provides value to those who gain the certificate (and their employers)
it is fair to all concerned, independent of vested interests
This book supports a scheme for software testers which meets these objectives. The subject matter, software testing, is well enough understood to provide an agreed basis for a foundation level certificate. The new German ASQF scheme and the successful ISEB scheme in the UK will soon be extended internationally. I believe that the key reason for the success of the UK scheme is the independence of the accrediting and examining body, as described below. I also believe that this philosophy will ensure the success of the international scheme for certified testers that is now being pioneered in Germany.
There are two aspects to independence: accreditation of training providers and examination of individual candidates.
What is the difference between certification and accreditation? Certification applies to individuals; accreditation applies to training organisations. An individual person receives a certificate for demonstrating his or her knowledge of a subject area. Their knowledge is developed through on the job experience but also through training courses in the subject. When there is an agreed basis for the knowledge (a syllabus or a “body of knowledge”) then an independent body can assess courses provided by a number of training providers - this is accreditation. Accreditation gives confidence that the training conforms to a standard of content and administration. If training providers accredit themselves, this has little value; accreditation by a recognized independent body has far more credibility.
In order to award a certificate, the candidates need to take an exam based on the agreed syllabus. If this exam is set, monitored and marked by an independent body, then there is an equal “playing field” for all candidates (and all training providers). The independence of the examining body gives the certificate awarded to the passing candidates far more value.
There are some schemes where training providers are self-accrediting, and exams are set by the training providers. Although these schemes do provide some value, an independent scheme is better. Those who oppose all certification schemes are very aware that there can be problems with all such schemes, which is true - no scheme will be perfect. However, I believe that an independent scheme such as ISEB, ASQF and the planned international scheme will provide significant value for candidates and their employers.
How do we know that an independent qualification scheme will work? because the ISEB scheme is already working in many countries. ISEB stands for Information Systems Examination Board. ISEB was first formed as an independent body for qualifications in systems analysis and design. It is now part of the British Computer Society and offers qualifications in ten areas, including project management, IT service management, business systems development, data protection, information security, and since 1998, software testing. Each qualification is managed by a subject board consisting of volunteers from industry and academia. Each board also has panels to deal with specific areas; the Software Testing Board has an Accreditation Panel and an Exam Panel. ISEB staff provide administrative support for the boards and their panels, as well as distributing and marking exams (set by the Exam Panel), and engaging invigilators (proctors) to monitor candidates while they sit the exam.

The ISEB Software Testing Board was formed in 1997. The Foundation Syllabus in Software Testing was written by a working party of volunteers from the board, and the first course was run in October 1998. Since then, the scheme has been very successful, exceeding everyone’s expectations - it is now ISEB’s second most popular qualification (after IT service management). By mid-2002, there were 23 course providers accredited for the Software Testing Foundation course, including organisations from Germany, The Netherlands, Sweden, Eire and Australia as well as the UK. Over 8000 candidates have taken the Foundation exam in less than four years. This scheme has succeeded in raising the profile of testing and improving recognition and respect for testers. In the UK job market, it is now typically a pre-interview requirement to hold the Foundation Certificate.
What will happen next? The International Software Testing Qualification Board (ISTQBbook is an important means of supporting this in German-speaking countries. The international certificate will provide assurance and reco) has been formed in 2002, so accreditation and examination at Foundation level will soon be done consistently by independent bodies throughout all participating countries. Testers throughout the world will have a greater common understanding and recognition. This recognition of basic testing knowledge throughout the world. This is a very exciting time in software testing!

Dorothy Graham
Macclesfield, UK
June 2002


Ten geleide
Het voor u liggende leerboek heeft als basis de theorie van de Syllabus voor het ‘ISEB Foundation Certificate in Software Testing’. De Information Systems Examination Board (ISEB) is een divisie van de British Computer Society (BCS). De BCS richt zich op het certificeren van IT professionals voor een aantal onderwerpen binnen de informatietechnologie, waaronder Testen. Een ISEB certificaat staat voor een professionele kwalificatie die internationaal is erkend.

De ‘International Software Testing Qualification Board’ is officieel opgericht in 2002. Deze board met een internationale vertegenwoordiging staat garant voor de inhoud voor de verschillende certificaten die voor testen bestaan. Daarnaast zorgen de landelijke ‘Testing Boards’, zoals onder andere de ‘Dutch Testing Board’, voor consistentie van opleidingen en examens binnen de verschillende aangesloten landen en voor een goede vertaling van het ISEB materiaal.
Verder informatie over de ‘International Software Testing Qualification Board’ en de ‘Dutch Testing Board’ kunt u vinden op respectievelijk [ISTQB] en [DTB].

De in dit boek onderwezen stof is om didactische redenen in een andere volgorde behandeld dan in de Syllabus voor het ISEB Foundation Certificate. Daarnaast is de omvang van de hoofdstukken in dit boek niet in gelijke verhouding met de relevante onderwerpen in de Syllabus. In het boek worden bepaalde thema’s verder uitgediept.

In het boek vindt u oefenvragen die als hulpmiddel kunnen dienen bij de voorbereiding van het examen voor het ISEB Foundation Certificate. De vragen zijn door Polteq samengesteld en zijn geen officiële ISEB examenvragen.