Ouste, les dragons ! - Kari Kakkonen - E-Book

Ouste, les dragons ! E-Book

Kari Kakkonen

0,0

Beschreibung

Apprenez les tests de logiciels de manière amusante en lisant des histoires de dragons et de chevaliers. Le livre convient à des enfants seuls ou accompagnés d'un adulte. Il convient aussi aux écoles et constitue un bon point de départ pour tous ceux qui veulent savoir ce qu'est le test de logiciel. Le livre raconte les aventures de deux enfants, Laura et Tom, qui rencontrent des dragons dérangeant les villages et les châteaux des environs. Ils découvrent différentes espèces de dragons et apprennent à les vaincre avec l'aide de chevaliers. C'est ainsi qu'ils deviennent des experts en dragons exceptionnellement qualifiés. Les histoires initient le lecteur aux termes et aux concepts des technologie de l'information et des test logiciels ; sous forme de paraboles, pour faciliter la compréhension et l'apprentissage. Ainsi, les dragons représentent les défauts dans le logiciel, les chevaliers sont les testeurs et les développeurs. Dans ce livre, Kari Kakkonen combine, d'une manière nouvelle et fascinante, sa passion pour la fantaisie et les tests de logiciels, créant ainsi une expérience agréable pour ses lecteurs. Le livre convient aux lecteurs de 10-99 ans, bien qu'il soit écrit avant tout pour les enfants. J'aime beaucoup l'idée de combiner tests et dragons pour expliquer les concepts des tests de logiciels. Cela fonctionne très bien et donne aux nouveaux testeurs un aperçu de la profondeur des tests. Les histoires conviennent également aux enfants et les incitent à réfléchir à la manière de tester les applications qu'ils utilisent. Janet Gregory, DragonFire Inc, co-auteur de trois livres sur les tests agiles.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 274

Veröffentlichungsjahr: 2023

Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:

Android
iOS
Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



CONTENU

AVANT-PROPOS

MERCI

COMMENT LIRE CE LIVRE

QU'EST-CE QU'UN TEST DE LOGICIEL ?

DRAGONS

LA CARTE

LE DRAGON ROUGE EMBÊTANT (FUITE DE MÉMOIRE)

DRAGON VOLEUR GRIS (DÉFAUT FONCTIONNELS DE GRANDE TAILLE)

PETIT DRAGON VERT (PETIT DÉFAUT)

DRAGON NOIR MÉCHANT (DÉFAUT DE SÉCURITÉ)

DRAGON VIOLET RAPIDE (DÉFAUT DE PERFORMANCE)

DRAGON VOYANT ET GÊNANT (DÉFAUT D'UTILISABILITÉ)

IMPRESSIONNANT DRAGON VERT (DÉFAUT FONCTIONNEL VISIBLE MAIS INOFFENSIF)

DRAGON MARRON SOUTERRAIN (DÉFAUT MATÉRIEL)

OMBRE OU DRAGON - ET LE DRAGON SYMPATHIQUE (DÉFAUT DE TEST ET INJECTION DE DÉFAUTS)

DRAGON VERT TÊTU (DÉFAUT DE CONTRÔLE DE VERSION)

DRAGON VERT MALIN (PETIT, MAIS DÉFAUT DE FONCTIONNEMENT DÉLICAT)

DRAGON VERT CONFUS (DÉFAUT DE DOCUMENTATION)

DRAGON GRIS À DEUX TÊTES (UN TRÈS MAUVAIS DÉFAUT)

PROCHAINES ÉTAPES

TERMINOLOGIE

AVANT-PROPOS

Le livre de Kari est plein de Dragons que tu vois,

Un livre pour enfants, mais les parents, attendez et voyez,

Et les Dragons les plus féroces sont effrayants pour moi,

Et les tests de logiciels - qu’est-ce que ça représente pour moi ?

Ce livre parle de mythe et de légende moderne,

Les dragons rôdent et les enfants sont les héros,

Dans un pays mythique de tests de logiciels,

Des endroits sombres et pleins de bugs où personne ne va jamais.

Mais les Dragons sont à la fois bons et mauvais vous savez,

Les meilleures histoires impliquent à la fois du bon et du mauvais,

Et le mal récolte ce que le mal tend à semer,

Alors maintenant, lisez ce livre, vous savez que vous devriez.

Qu’est-ce que le test - vous n’avez pas pensé à le demander ?

Un voyage d’apprentissage exploratoire,

Une tâche difficile, un esprit critique,

Le travail le plus difficile dans les projets de logiciels à être.

Vous tenez un livre de deux moitiés dans votre main,

Deux histoires qui se déroulent toujours en parallèle,

Ce livre vous offre bien plus que ce que vous aviez prévu,

Il tue des dragons et teste très bien.

Profitez de ce livre ou les Dragons vous mordront !

Paul Gerrard

Directeur, Gerrard Consulting,

Poète en herbe, Macclesfield UK

REMERCIEMENTS

Je tiens à remercier ma femme Taina et mon fils Nooa, qui ont donné de leur temps pour me permettre d’écrire ce livre pendant notre congé sabbatique et après celui-ci. Je vous aime !

Un grand merci à tous les lecteurs pilotes. Vous, merveilleux enfants - vos réactions m’ont encouragé à poursuivre la rédaction de ce livre. Mes collègues dans le domaine des tests - le contenu s’est grandement amélioré et le texte est devenu plus cohérent grâce à vous. Mes amis dans de nombreux secteurs d’activité, y compris les enseignants - avec vous, j’ai pu adapter cet ouvrage à différents types de lecteurs. Je tiens tout particulièrement à remercier Marko Rytkönen, Minna Aalto et Debra Friedenberg.

Je remercie tout particulièrement mon illustratrice Adri, qui a rejoint le voyage pour créer un monde de dragons en utilisant son incroyable créativité. Je remercie également chaleureusement mon ami Artsi, qui m’a donné de précieux conseils et encouragements pour le développement du concept.

Merci à tous ceux qui ont participé à la campagne de crowdfunding Indiegogo et qui ont partagé l’information avec d’autres personnes, communautés et magazines. Grâce à

votre aide, le livre a atteint un nouveau niveau de qualité. Tout ouvrage a besoin d’être financé, et porter la bonne parole pour soutenir une bonne cause est toujours un acte formidable.

Merci à mon employeur Knowit, grâce à la flexibilité duquel j’ai eu la chance d’écrire ce livre. Merci aux communautés FiSTB et ISTQB, qui m’ont soutenu tout au long de ce parcours. Toutes les personnes impliquées qui ont décidé de relever le défi d’apporter le message des tests logiciels aux enfants et aux écoles en soutenant et en achetant ce livre. Ce fut une expérience exceptionnelle que de vous voir soutenir cette cause vitale.

Merci beaucoup à Olivier Denoo pour la fantastique traduction en français et pour toute son aide.

Je tiens à remercier mon éditeur BoD et Adrienn Széll pour la disposition, et pour s’être embarqué dans ce voyage avec moi.

Merci à tous ceux qui m’ont encouragé. Vous êtes si nombreux que j’en ai, sans doute, oublié par inadvertance. Merci à tous !

Kari Kakkonen

Helsinki

COMMENT LIRE CE LIVRE

Ce livre est écrit en deux parties.

La première partie est constituée d’histoires de dragons et de chevaliers. La deuxième partie contient des sections explicatives, qui parlent des tests logiciels, et se réfèrent à l’histoire du dragon.

La partie explicative est située à côté de l’histoire. Vous pouvez simplement lire le livre en vous cantonnant à ses côtés fantastiques qui racontent des rencontres entre dragons et chevaliers, avec des enfants dans les rôles centraux. Vous pouvez aussi accéder à son niveau plus profond : celui de l’apprentissage et de la compréhension des tests de logiciels, détaillés dans les sections explicatives qui accompagnent l’histoire. Le lecteur averti notera que les sections explicatives simplifient quelque peu la réalité afin de faciliter la compréhension. Ainsi, pour de nombreux sujets, des exceptions et des circonstances particulières peuvent s’appliquer, dont je ne parlerai pas.

Les détails des histoires de dragons ont été choisis de sorte qu’ils aient une contrepartie dans le monde du test logiciel. Ainsi, par exemple, la discussion entre un jeune berger et un preux chevalier, peut vous aider à mieux comprendre l’interaction entre un utilisateur et un testeur de logiciel. Mes histoires de dragons sont donc pleines de significations, qui sont des analogies au monde réel du test logiciel.

La fin du livre comporte une section terminologique, qui présente tous les termes relatifs aux tests de logiciels. Par exemple, vous pouvez y trouver ce qu’est un logiciel ou la signification d’une technique de test. La section terminologique est destinée à être lue en parallèle de la partie explicative, et est là pour vous aider à chaque fois que vous vous interrogez sur la signification d’un nouveau mot.

À la fin de chaque chapitre, il y a des exercices. Certains sont faciles, d’autres un peu plus difficiles. Il est bon de lire les exemples de réponses, même si l’exercice lui-même vous semble trop difficile.

Les exercices et les exemples de réponses donnent plus de profondeur à la partie qui explique les tests. Dans le dernier exercice de chaque chapitre, vous pouvez aussi vous amuser, soit en dessinant, soit en jouant !

La courte description des tests logiciels qui figure avant le début de l’histoire, peut aussi vous être utile avant de vous lancer dans l’histoire proprement dite. Mais, si vous en avez envie, vous pouvez directement plonger au cœur de l’histoire.

En fait, vous pouvez vraiment lire ce livre de la manière que vous préférez. Des personnes d’âges différents le liront chacune à leur manière. Vous pourrez y revenir, encore et encore, lorsque les années auront passé.

J’espère que ce livre sera pour vous une expérience satisfaisante, tant pour sa fantaisie que pour ses aspects liés aux tests de logiciels. J’aime, pour ma part, beaucoup ces deux choses, et j’espère que cette étincelle se transmettra aux lecteurs.

Des contenus supplémentaires sont disponibles sur le site www.dragonsout.com : références de tests, dessins de lecteurs et support de présentation PowerPoint pour les enseignants.

QU’EST-CE QU’UN TEST DE LOGICIEL ?

Dans ce livre, nous ne parlons pas seulement des dragons mais aussi des tests logiciels.

Voici donc une courte introduction sur ce sujet afin de vous permettre de mieux comprendre les sections explicatives des histoires fantastiques.

Nous sommes entourés de merveilles technologiques. Prenez un téléphone portable, par exemple. Nous utilisons cet appareil pour téléphoner ou, par exemple, pour regarder YouTube ou Netflix. La technologie de l’information se compose généralement de deux parties : l’appareil lui-même et le logiciel qui le fait fonctionner. De nos jours, même les choses qui fonctionnaient auparavant sans logiciel disposent d’un logiciel. Par exemple, la sonnette d’entrée était autrefois un simple dispositif qui faisait sonner une petite cloche si vous appuyiez sur un bouton. Aujourd’hui, la sonnette peut être équipée d’un logiciel simple qui vous permet de choisir sa tonalité. Parfois, les technologies de l’information sont difficiles à détecter. Par exemple, arrêter une voiture fait appel à de nombreux logiciels. Lorsque vous appuyez sur la pédale de frein, celle-ci se connecte à un ordinateur qui donne des instructions aux freins et fait ainsi ralentir la voiture.

Lorsque le logiciel fait plus que piloter un seul appareil, on parle de systèmes d’information ou, plus simplement, de systèmes. Ce type de logiciel est en partie situé ailleurs que chez l’utilisateur du système d’information. En général, l’emplacement n’a pas d’importance pour l’utilisateur. Le système d’information fonctionne quel que soit l’endroit où il se trouve. En pratique, le système d’information est installé sur un serveur informatique dans un centre de données sécurisé, souvent profondément enterré. Les utilisateurs sont connectés aux systèmes d’information par le biais de leurs propres appareils, par exemple, des téléphones mobiles ou des ordinateurs portables. La connexion se fait par le biais d’un réseau. La boutique en ligne d’une épicerie en est un bon exemple. Vous pouvez acheter des produits alimentaires en ligne ou dans le magasin. L’utilisateur se connecte à la boutique en ligne à l’aide de son téléphone portable, achète les aliments et choisit l’endroit où il peut retirer sa commande.

Comment naît un logiciel ou un système d’information ? Quelqu’un doit le développer. Ce développement de logiciel comprend la conception du logiciel (comment voulons-nous qu’il fonctionne ?), le codage du logiciel (l’écriture réelle du code du logiciel avec un langage de programmation approprié) et le test du logiciel (le logiciel fonctionne-t-il correctement, y a-t-il des défauts ?). Le logiciel est donc ce qui permet aux choses souhaitées de se produire sur l’ordinateur. Pour le développement du logiciel, nous avons besoin d’un groupe approprié de personnes qui, ensemble, ont les compétences nécessaires pour effectuer toutes les tâches requises. Le test de logiciels est l’une de ces tâches essentielles au développement de logiciels. Elle requiert de nombreuses compétences. Naturellement, certaines personnes se spécialisent uniquement dans les tests de logiciels. Cependant, toutes les personnes de l’équipe de développement de logiciels participent aux tests de logiciels. Une seule personne ne peut pas se charger de tous les tests.

Le test de logiciels est le processus qui consiste à tester le comportement du logiciel sous de nombreux angles différents. Le logiciel fait-il ce pour quoi il a été conçu ? Fait-il quelque chose qu’il ne devrait pas faire ? Ou fait-il mal quelque chose, ou trop lentement ? Le logiciel est-il difficile ou facile à utiliser ? Lorsqu’un testeur observe que quelque chose ne va pas, il a trouvé un défaut. Les tests de logiciels consistent à rechercher des défauts dans le logiciel. Trouver des défauts pendant le développement du logiciel est une bonne chose. Les défauts peuvent alors être corrigés avant que les utilisateurs réels n’utilisent le logiciel. Les tests ne permettent pas toujours de trouver des défauts. Au contraire, vous pouvez constater que le logiciel fonctionne comme il le devrait. C’est la meilleure situation. Cependant, s’il y a des défauts, il faut les trouver. Si l’équipe de développement du logiciel ne voit pas le défaut, il sera très probablement découvert plus tard par l’utilisateur, qui peut alors penser que le logiciel est de mauvaise qualité et passer à autre chose. En outre, la correction d’un défaut à un stade aussi avancé du processus est beaucoup plus difficile et coûteuse. Vous devez donc effectuer de nombreux tests dès la phase de développement du logiciel.

Des contenus supplémentaires sont disponibles sur le site www.dragonsout.com : références de tests, dessins de lecteurs et supports de présentation PowerPoint pour les enseignants.

LES DRAGONS

Il y a plusieurs sortes de dragons. Il y en a des géant, multicolores. Il y a des petits pétards cracheurs de feu. Il y a les créatures rapides et sournoises qui semblent se glisser partout. Elles tourmentent les villages paisibles et les grandes villes. De courageux chevaliers combattent les dragons. Grâce à leur armure, ils sont sûrs de pouvoir combattre les dragons par la force ou l’esprit. De temps en temps, il arrive même qu’un dragon aide à attraper un autre dragon. Dans le monde des logiciels, il existe des défauts qui tourmentent les logiciels, tout comme les dragons tourmentent les villages. Vous pouvez apprendre à trouver les défauts. Il suffit d’étudier. Ces chevaliers chasseurs de défauts sont les testeurs et les développeurs de ce monde. Ce livre parle de dragons et de chevaliers pour vous permettre d’explorer les secrets des tests. Ce livre est plus facile à comprendre si vous avez quelques connaissances en informatique et en codage. Cependant, j’ai essayé de décrire les choses clairement pour tous les lecteurs, qu’ils soient enfants, jeunes ou adultes. Bienvenue dans l’apprentissage des tests logiciels de manière amusante !

LE DRAGON ROUGE EMBÊTANT(FUITE DE MÉMOIRE)

Il était une fois un petit village tranquille dans la Vallée des Moutons, où les gens vivaient paisiblement au milieu d’une belle vallée de montagne. Les journées étaient lentes et douces. Le matin, les gens se réveillaient avec le lever du soleil et prenaient un petit-déjeuner copieux. Les journées étaient consacrées à la garde des moutons et du bétail dans les prairies voisines servant de pâturages. Le soir, les villageois arrivaient dans la maison principale pour passer la soirée ensemble autour d’un bon repas. Les gens racontaient des histoires d’événements et d’aventures lointaines.

Dans le monde des technologies de l’information, ce village est le logiciel, par exemple un jeu sur un téléphone portable ou un ordinateur. Le logiciel peut également être appelé un programme. L’ordinateur conserve le jeu dans sa mémoire. Les moutons, dans l’histoire, représentent la mémoire de l’ordinateur.

Un jour ensoleillé, quelque chose d’inhabituel se produisit. Une jeune fille, Laura, avait gardé des moutons dans le pré le plus éloigné. Le soir, elle revint au village et expliqua qu’elle ne trouvait plus l’un de ses moutons. Dans le passé, les moutons étaient toujours revenus vers le berger lorsqu’elle avait sifflé fort. Mais aujourd’hui, ce n’était pas le cas. Le matin, elle avait compté les moutons. Et le soir à nouveau. Il en manquait un. Laura avait cherché dans toutes les parcelles de forêt autour des prés, mais aucun mouton ne s’y trouvait. Finalement, alors que le soleil se couchait, elle retourna au village avec le reste du troupeau. Les gens de la Grande Maison pensaient que le mouton avait trébuché sur le terrain rocheux et était tombé dans une gorge. Laura, elle, pensait que généralement les moutons ne tombaient pas dans les ravins. Ils étaient plutôt sûrs d’eux. Mais peut-être que cette fois c’était arrivé.

Les jours suivants, Laura revint au village avec des nouvelles inquiétantes. Un autre mouton avait disparu deux jours plus tard. Et un autre le jour suivant. Et un autre deux jours plus tard. Laura commença à soupçonner que quelque chose de bien plus dangereux que les gorges menaçait le village. Les habitants commençaient à s’inquiéter. Charles, un fermier sympathique, prêta à la jeune fille son chien de berger, Buddy, pour qu’ensemble ils gardent le troupeau. Si seulement cet habile ami à poils longs pouvait tenir les moutons à l’écart des dangers des gorges.

Laura ne perdit plus ses moutons. Le chien et elle devinrent de bons amis. Elle demanda à Charles si elle pouvait garder le chien. C’était tellement agréable de le frotter derrière les oreilles et de caresser son poil long et doux. Buddy l’aidait beaucoup à garder le troupeau. Le travail était plus confortable à deux. Le chien léchait la main de Laura de manière réconfortante chaque fois qu’il s’approchait d’elle ou qu’elle le caressait. Le fermier fut d’accord parce qu’il avait beaucoup de chiens.

Si le code du jeu présente une fuite de mémoire, le jeu commence progressivement à utiliser de plus en plus de mémoire jusqu’à ce que toute la mémoire soit utilisée, et le téléphone mobile commence à se comporter de manière étrange. Tout fonctionne plus lentement. Le jeu peut se figer pendant un moment. A la fin, le téléphone peut même s’éteindre. Dans l’histoire, des moutons commencent à disparaître sans explication, tout comme dans un logiciel défectueux, la mémoire semble disparaître sans raison.

La semaine suivante, un jeune garçon, Jonathan, qui s’occupait du troupeau de l’autre côté du village, revint avec des nouvelles alarmantes. Il n’arrivait pas à retrouver un de ses moutons, malgré tous ses efforts. Les jours suivants, il perdit, lui aussi, plusieurs moutons. Lorsque Laura entendit parler des difficultés de Jonathan, elle lui suggéra d’aussi utiliser un chien de berger. Les disparitions cessèrent.

Le soir, il y avait de nombreuses discussions animées dans la Grande Maison du village. Les gens se disputaient sur la raison de ces disparitions. Après tout, autant de moutons ne pouvaient pas tomber dans les gorges. Ils sont très sûrs d’eux. Fallait-il emprunter d’autres chiens au village voisin pour qu’il y en ait assez pour chaque pâturage ? Que pouvaient-ils faire de plus ? Tout le village devrait-il sortir pour garder les moutons ? Laura pensait que tout le monde devait avoir un chien. Il n’y avait pas de problèmes quand il y avait un chien.

Au cours des semaines suivantes, des moutons disparurent de plus en plus dans les pâturages. D’abord, uniquement dans les pâturages où le berger n’était pas accompagné d’un chien. Puis, les moutons disparurent même dans les champs où un fidèle gardien à quatre pattes était là pour aider à garder les moutons. De temps en temps, un mouton se rendait dans la forêt dans l’espoir que l’herbe y soit plus savoureuse. Quelques bergers commencèrent à raconter des histoires horribles au sujet d’un gros animal qui a été vu lorsqu’un mouton se rendait dans la forêt. Et puis, tout à coup, ce mouton avait disparu. Ils ont commencé à décrire l’animal : noir, rouge, brillant. L’un d’eux affirma que l’animal avait de grandes ailes, même s’il ne volait pas. Laura n’avait pas vu de gros animal lorsque le mouton disparut. Cependant, elle pensait qu’un gros animal avait probablement mangé les moutons. Ils n’étaient pas allés dans une gorge. D’ailleurs, les gens ne trouvèrent pas de moutons perdus dans les gorges.

Une fuite de mémoire se manifeste d’abord par des symptômes étranges, qui s’aggravent progressivement. Un défaut dans le code provoque généralement une fuite de mémoire. La mémoire est réservée pour l’utilisation du logiciel, mais elle n’est pas libérée après utilisation. Si la mémoire utilisée n’est pas libérée, la mémoire de l’appareil se remplit jusqu’à ce que l’appareil ne puisse plus rien faire et s’éteigne. Certains langages de programmation sont plus sujets à ce problème que d’autres.

Les histoires devenaient de plus en plus folles. A la fin, le vieil Albert dit tout haut ce que beaucoup pensaient déjà. C’est un dragon ! Il mange nos moutons. Serait-ce possible ? Les gens se souvinrent que dans les contes, de braves chevaliers combattaient les dragons. Un brave chevalier de la ville voisine, la Cité des Monts, pourrait-il aider à résoudre ce problème ? Les villageois décidèrent d’envoyer Amanda, la doyenne du village, pour demander l’aide du chevalier.

Le dragon rouge de l’histoire est un défaut. C’est lui la cause de la fuite de mémoire. Ainsi, la fuite de mémoire est une défaillance dans le comportement du logiciel. Le défaut dans le code est à l’origine de la défaillance. Le développeur a commis une erreur dans son code, créant ainsi le défaut. Le développeur peut supprimer le défaut en récrivant le code d’une meilleure manière. Respectivement, le dragon peut être tué ou vaincu. Les défauts sont parfois appelés ”bugs” (ou bogues).

Amanda partit tôt le lendemain matin avec pour garde quelques hommes. C’était une vénérable vieille dame qui avait porté le titre estimé d’Ancienne pendant dix ans. Lorsqu’elle arriva au château de la Cité des Monts, elle demanda sans hésiter à parler au Seigneur Walther et lui fit part de ses doutes concernant le dragon et le mouton. Walther répondit que ses chevaliers avaient, de temps à autres, combattu des dragons. Les dragons étaient donc, malheureusement, bien réels et inquiétants. Parfois même effrayants. Il comprit très bien l’inquiétude des villageois au sujet de leur mouton perdu. Walther promit d’envoyer Barbechaume, son chevalier le plus courageux, pour aider les villageois. Quelques jours plus tard, Barbechaume arriva dans la vallée des moutons et demanda aux bergers de lui montrer où les moutons avaient disparu. Laura fut la première à montrer à Barbechaume où ses moutons avaient disparu. Barbechaume fit le tour des forêts voisines et trouva quelques endroits où des roches étaient calcinées et des os de moutons épars. Il montra ces endroits à Laura. Barbechaume était un homme expérimenté dans la chasse au dragon. Il semblait que le dragon mangeait des moutons pour se nourrir. Les roches carbonisées sans les restes d’un feu de camp étaient, pour lui, le signe évident d’un dragon crachant du feu.

Le chevalier est arrivé au village, invité par les villageois. De la même manière, un développeur est alerté pour aider s’il y a des problèmes dans le logiciel qu’il a codé. Sauf que c’est un autre développeur qui a écrit ce code. Cependant, il est connu pour sa capacité à résoudre les problèmes, donc il fait l’affaire. Le développeur corrige alors le défaut. Ou, dans l’histoire, le chevalier vainc le dragon. Le chevalier ne vit pas dans le village mais dans un château voisin. De même, les développeurs ne travaillent généralement pas là où les gens utilisent le logiciel. L’entreprise, où travaille le développeur, vend le logiciel pour que d’autres personnes ou entreprises l’utilisent. Lorsque les utilisateurs utilisent le logiciel, ils peuvent trouver un défaut. En particulier, un défaut à l’origine d’une fuite de mémoire trouve souvent son chemin sans être détecté par les utilisateurs du logiciel. Ce type de défaut est difficile à trouver, et c’est pourquoi l’équipe de développement ne le trouve pas toujours lors des tests qui ont lieu pendant le développement du logiciel.

Barbechaume dessina une carte des pâturages voisins pour comprendre où le dragon était passé et où il n’était pas passé. Le lendemain, il se rendit avec Benoît le berger dans un champ où le dragon n’était pas encore passé, mais assez proche de l’endroit où certains bergers l’avaient vu. Là, il pourrait voir le dragon de ses propres yeux. Barbechaume revêtit son armure et emporta une épée et une longue lance acérée. Il se rendit à l’orée de la forêt pour attendre sous un grand arbre.

Le développeur peut tester la présence d’une fuite de mémoire en mesurant la quantité de mémoire employée alors qu’il utilise le logiciel. Si la quantité de mémoire employée continue à augmenter, il y a probablement une fuite de mémoire. Si l’on exécute ensuite le logiciel ligne de code par ligne de code et que l’on cherche plus précisément à savoir quelle ligne de code réserve la mémoire sans la libérer par la suite, on trouve le défaut que l’on peut ensuite corriger.

Barbechaume ne vit pas le dragon le premier jour, mais il y réussit le lendemain. Au coucher du soleil, il vit un mouvement suspect dans les bois. C’était à l’endroit même où un mouton solitaire venait de s’égarer. Il s’approcha prudemment et a vit un dragon attraper le mouton de ses propres yeux ! Le dragon avait la taille d’une vache, mais il attrapa rapidement le mouton. Avec ses ailes noires et ses flancs rouges, il avait l’air assez effrayant. Sa bouche était pleine de dents tranchantes.

Barbechaume observa le dragon pendant un moment et s’approcha prudemment. Lorsque le dragon le remarqua, il se dressa sur ses pattes arrière et rugit. Le chevalier s’avança devant le dragon sans hésiter. Il enfonça sa longue lance dans le flanc du dragon, à l’endroit où la peau semble la plus fine. La lance s’enfonça profondément, et le dragon tomba au sol. Une petite flamme sortit de sa gueule, mais elle n’effraya même pas le courageux chevalier. Puis le dragon mourut.

Le développeur découvre une fuite de mémoire lorsqu’il teste le logiciel avec un logiciel de mesure de la mémoire approprié (en dessinant la carte, dans l’histoire) et localise le défaut (en observant le dragon, dans l’histoire). Il peut alors corriger la ligne de code défectueuse, tuant ainsi le dragon. Il peut effectuer cette correction de plusieurs façons. Dans cette histoire, le plus simple était de vaincre le dragon avec une longue lance. Trouver un défaut s’appelle tester, et localiser et corriger un défaut s’appelle déboguer. En général, c’est le développeur lui-même qui effectue ces tests et ce débogage. Dans l’histoire, un seul chevalier suffit à vaincre le dragon.

Au village, Barbechaume raconta son histoire, comment il trouva et tua le dragon. Laura était ravie. Le dragon était aussi allé dans son pâturage, et maintenant le chevalier l’avait tué ! Le soir, tout le village fêta le courageux chevalier. Les moutons ne disparaîtraient plus mystérieusement. Toute la grande détresse que les villageois avaient ressentie n’était plus ! Amanda fit un discours de remerciement à Barbechaume. Laura, Jonathan, Bubba et les autres enfants applaudirent avec ardeur. Si le dragon avait grandi, il aurait pu causer plus de dégâts. Il aurait mangé tous les moutons et le bétail du village !

CHEVALIER BARBECHAUME

EXERCICES

EXERCICE 1.1 QUEL DÉFAUT ?

Lequel de ces problèmes peut être causé par une fuite de mémoire ?

1. Un ordinateur devient plus lent.

2. YouTube ne s’ouvre pas du tout sur un téléphone portable.

3. Un logiciel bancaire vous verse une somme d’argent erronée

4. Un téléphone portable devient plus lent et finit par se bloquer.

EXERCICE 1.2 COMMENT TESTER CELA ?

Tu es un développeur de logiciels. Tu programmes un jeu pour un téléphone portable. Il fonctionne exactement comme tu l’avais prévu. Cependant, après une heure de test, tout fonctionne beaucoup plus lentement. Puis le téléphone portable ne répond plus. Que fais-tu ?

EXERCICE 1.3 COMMENT L’HISTOIRE SE POURSUIT-ELLE ?

Tu es le Chevalier Barbechaume, et tu chasses des dragons. Tu as une carte pour t’aider. Un dragon rouge court vers toi depuis la forêt. Puis le dragon se retourne et court hors de ta portée étonnamment vite, et il disparaît dans les bois. Que pourrait-il se passer ensuite dans l’histoire ? Qu’est-ce que cela signifierait dans le monde des tests de logiciels ?

EXERCICE 1.4 DESSINONS !

Prends du papier et des crayons. Réfléchis, quel genre de testeur serais-tu ? Courageux ? Ingénieux ? Note quelques idées. Ensuite, demande-toi à quoi tu ressemblerais dans cette histoire. Serais-tu un enfant ou un adulte ? Porterais-tu un bâton, une épée ou une lance ? Dessine ton personnage sur la même feuille de papier.

Si tu veux voir quel genre de personnages les autres lecteurs de ce livre ont imaginé, tu peux consulter les images sur www.dragonsout.com.

Si tu le souhaites, tu peux envoyer ton dessin en suivant les instructions du site web. Les meilleurs dessins et les plus créatifs seront partagés avec tous les lecteurs !

RÉPONSES AUX EXERCICES

EXERCICE 1.1 QUEL DÉFAUT ? - RÉPONSES

1. Ce n’est pas dû à une fuite de mémoire. Il est plus probable que les performances de l’ordinateur se dégradent avec le temps et l’utilisation, car les différents programmes ne sont jamais vraiment effacés.

2. Ce n’est pas causé par une fuite de mémoire dans le programme YouTube. L’installation du logiciel s’est probablement mal passée, et tu dois réinstaller le programme. Cependant, il se peut qu’un autre programme ait réservé toute la mémoire du téléphone portable, et c’est pourquoi YouTube ne s’ouvre pas.

3. Ce n’est pas causé par une fuite de mémoire. La fonctionnalité de paiement de l’argent est défectueuse et fonctionne de manière erronée.

4. C’est bien une fuite de mémoire. L’un des programmes du téléphone mobile remplit progressivement la mémoire. Finalement, toute la mémoire est occupée et le téléphone mobile ne fonctionne plus.

EXERCICE 1.2 COMMENT TESTER CELA ? - EXEMPLE DE RÉPONSE

D’après les symptômes, le problème semble être une fuite de mémoire. Ouvre un programme d’analyse ou de mesure de la mémoire. Redémarre le téléphone mobile. Vérifie la quantité de mémoire utilisée par le programme à ce moment-là. Joue pendant 15 minutes. Mesure à nouveau la quantité de mémoire utilisée par le programme. Si le programme utilise plus de mémoire que la dernière fois où tu as vérifié, le défaut est probablement une fuite de mémoire. Ensuite, essaie de localiser la ligne de code qui présente le défaut. Lance un logiciel de fuite de mémoire ou un programme de débogage qui t’indique en permanence la ligne de code que le jeu exécute. Suis la quantité de mémoire utilisée. Joue au jeu. Lorsque la quantité de mémoire utilisée augmente la fois suivante, tu as probablement trouvé l’endroit du code qui provoque la fuite de mémoire. Tu peux maintenant essayer de le réparer.

EXERCICE 1.3 COMMENT L’HISTOIRE SE POURSUIT-ELLE ? - EXEMPLE DE RÉPONSE

Le dragon peut facilement t’échapper. Tu dois étudier un peu plus la carte de la région. Tu réfléchis à l’endroit où tu pourrais attraper le dragon. Tu dois visiter plusieurs autres régions avant de revoir le dragon. Tu recrutes quelques villageois armés de lances pour t’aider. Lorsque le dragon apparaît, les villageois peuvent le pousser vers toi avec leurs lances. Tu peux alors achever le dragon.

Dans le monde des tests, vous devez utiliser beaucoup plus le programme de mesure de la mémoire avant de pouvoir localiser le défaut. Même si l’identification d’une fuite de mémoire peut être relativement simple, la localisation du défaut peut ne pas être facile du tout. Vous devez examiner de nombreuses parties du logiciel.

FICHE DE PERSONNAGE

DRAGONROUGE EMBÊTANT

CouleurRougeTailleMoyenneDifficile à trouver ?DifficileDifficile à vaincre ?FacileVole ?NonAilesPetitesCrache le feu ?OuiChoses préféréesManger des agneaux

DÉFAUTSFUITE DE MÉMOIRE

SévéritéMoyenneVisibilitéMoyenneSymptômes du défautL’ordinateur devient plus lent jusqu’à ce qu’il ne puisse plus fonctionner du tout, puis il s’arrête.Cause du défautLa mémoire est réservée pour l’utilisation du logiciel, mais elle n’est pas libérée après utilisation.Cause racineLe développeur ne fait pas attention à la libération de la mémoire. Il se peut qu’il ne sache pas comment le faire ou qu’il ne s’en souvienne pas.TestMesurer la mémoire utilisée au fur et à mesure que vous utilisez le logiciel. Si la quantité de mémoire utilisée augmente tout le temps, il s’agit probablement d’une fuite de mémoire.CorrectionExécuter le logiciel ligne de code par ligne de code jusqu’à ce que vous trouviez l’emplacement qui doit être corrigé. Libérer la mémoire au moyen d’un bout de code approprié.

LE DRAGON GRIS VOLEUR(DÉFAUT FONCTIONNELS DE GRANDE TAILLE)

Lors de la fête de la Vallée des Moutons, le chevalier Barbechaume se souvint de la dernière fois où il avait rencontré un dragon. Les villageois lui avaient demandé de leur raconter des histoires de dragons. Laura et les autres enfants de la vallée des moutons écoutaient intensément.

Barbechaume, avec dix autres chevaliers, avait supervisé la construction d’une nouvelle palissade en bois, une longue clôture en rondins avec des tours de garde ici et là, autour du lointain château de la forêt. Le château n’était en fait qu’une grande maison en rondins, entourée d’une vingtaine de petites maisons, et c’était là tout le village. La palissade entourait le groupe de maisons. Il y avait également une rangée de gros rondins taillés en pointe et enfoncés dans le sol à l’extérieur de la palissade. Les villageois n’avaient pas rénové cette palissade depuis vingt ans, ce qui était évident au vu de l’état des vieux rondins. Certains des rondins étaient pourris et usés par le temps. Parce que les gens avaient réparé certains des rondins, plusieurs fois, la palissade semblait très fragile. Maintenant, un groupe de dix chevaliers aidait les villageois à remplacer les rondins.

Le village de l’histoire pourrait être une boutique en ligne dans le monde des technologies de l’information. Ensemble, l’équipe de développement de logiciels (programmeurs et testeurs) peut construire le logiciel et trouver, localiser et supprimer les défauts.

Il y avait aussi un petit garçon, Tom. Il était venu au village de la Forêt du Château pour passer l’été avec sa tante Rachel. Ses parents étant occupés cet été, la mère de Tom avait persuadé sa sœur de s’occuper de lui pendant les mois d’été. Tom passait son temps à jouer avec d’autres enfants à la palissade. Les rondins formaient un merveilleux labyrinthe pour jouer à la tague ou à cache-cache. Il y avait des trous, ici et là, à travers lesquels un petit enfant pouvait se faufiler. De superbes portes secrètes dans le labyrinthe ! Cependant, quand Tom vit les chevaliers arriver, il trouva un nouvel intérêt. Les armures brillantes et les armes tranchantes des chevaliers étaient belles à admirer. Tom commença donc à passer ses journées près des chevaliers.