Il faut systématiquement identifier le problème pour pouvoir le résoudre.
Le but est de déterminer pourquoi quelque chose ne fonctionne pas comme prévu et de savoir comment résoudre le problème.
La première étape du processus d'identification des problèmes consiste à décrire le problème de manière exhaustive. Sans description du problème, ni vous-même ni IBM® ne saura par où commencer pour en trouver la cause. Pendant cette étape, vous devez vous poser des questions de base, telles que :
- Quels sont les symptômes du problème ?
- Où le problème s'est-il produit ?
- Quand le problème s'est-il produit ?
- Dans quelles conditions le problème s'est-il produit ?
- Le problème peut-il être reproduit ?
Généralement, les réponses à ces questions vous permettent de décrire correctement le problème, point de départ vers sa résolution.
Quels sont les symptômes du problème ?
Lorsqu'on commence à décrire un problème, la première question qui vient à l'esprit est "Quel est le problème ?" Cela semble être une question directe, que vous pouvez cependant diviser en plusieurs questions plus spécifiques, ce qui crée une image plus descriptive du problème. Parmi ces questions, on trouve :
- Qui, ou quoi, a généré le problème ?
- Quels sont les codes et les messages d'erreur ?
- Comment le système est-il tombé en panne ? Par exemple, y a-t-il eu une boucle, un blocage, une panne, une performance diminuée ou un résultat incorrect ?
- Quelle est l'impact du problème sur votre activité ?
Où le problème s'est-il produit ?
Déterminer le lieu d'origine du problème n'est pas toujours facile, mais c'est l'une des étapes les plus importantes dans sa résolution. Plusieurs couches de technologie peuvent exister entre les composants générés et les composants défectueux. Les réseaux, les disques durs et les pilotes sont les seuls composants à examiner lorsque vous recherchez la cause des problèmes.
Les questions suivantes peuvent vous aider à mettre en évidence le lieu d'origine du problème afin d'en isoler la couche.
- Le problème est-il propre à une plateforme ou à un système d'exploitation, ou bien est-il commun à plusieurs plateformes ou systèmes d'exploitation ?
- L'environnement et la configuration actuels sont-ils pris en charge ?
- L'application s'exécute-t-elle sur le serveur local de la base de données ou sur un serveur éloigné ?
- Une passerelle est-elle impliquée ?
- La base de données se trouve-t-elle sur des disques individuels ou sur un ensemble de disques RAID ?
Gardez à l'esprit que, même si une couche peut générer le problème, cela ne signifie pas pour autant que le problème trouve son origine dans cette couche. Une partie de l'identification du lieu d'origine du problème consiste à comprendre l'environnement dans lequel il se trouve.
Prenez le temps de décrire de manière exhaustive l'environnement du problème, en indiquant le système d'exploitation, sa version, tous les logiciels et versions correspondants et les informations du matériel. Vérifiez que votre exécution se trouve bien dans un environnement qui est une configuration prise en charge ; beaucoup de problèmes sont liés à des niveaux de logiciel incompatibles qui ne sont pas prévus pour s'exécuter ensemble ou qui n'ont pas été correctement testés ensemble.
Quand le problème s'est-il produit ?
Créez un tableau chronologique des événements qui ont conduit à un problème, particulièrement les cas uniques. Cela se fait facilement en travaillant en amont : démarrez au moment où une erreur s'est produite (en détaillant à la milliseconde) et reculez dans le temps grâce aux journaux et au informations disponibles. De manière générale, vous pouvez arrêter lorsque vous trouvez le premier événement douteux dans un journal de diagnostic ; cependant, ce n'est pas toujours chose aisée et cela demande de l'entraînement. Savoir quand arrêter de chercher est particulièrement difficile quand plusieurs couches de technologie sont impliquées et que chacune d'elles a ses propres informations de diagnostic.
Pour créer un tableau chronologique des événements, essayez de répondre à ces questions :
- Le problème se produit-il seulement à un moment du jour ou de la nuit ?
- A quelle fréquence le problème se produit-il ?
- Quelle série d'événements a conduit au moment du rapport du problème ?
- Le problème s'est-il produit après une modification de l'environnement, telle qu'une mise à jour ou une installation de logiciel ou de matériel ?
- Questions spécifiques au produit
Répondre à de telles questions peut vous aider à fournir un cadre de référence pour examiner le problème.
Dans quelles conditions le problème s'est-il produit ?
Pour identifier le problème, il est également important de connaître les autres systèmes et applications en cours d'exécution lorsque le problème se produit. Ces questions sur votre environnement peuvent vous aider à identifier la cause initiale du problème :
- Le problème se produit-il toujours lors de l'exécution de la même tâche ?
- Faut-il qu'une série particulière d'événements se produise pour que le problème apparaisse ?
- D'autres applications échouent-elles au même moment ?
- Questions spécifiques au produit
Répondre à ce genre de questions vous aide à expliquer l'environnement dans lequel le problème se produit et à mettre en relation des éléments dépendants. Gardez à l'esprit que ce n'est pas parce que que plusieurs problèmes se produisent en même temps qu'ils sont automatiquement liés.
Le problème peut-il être reproduit ?
A partir d'un point d'identification de problèmes, le problème "idéal" serait un problème qu'on pourrait reproduire. De manière générale avec les problèmes qu'on peut reproduire, vous avez à votre disposition une grande variété d'outils et de procédures qui aident à étudier le problème.
Par conséquent, les problèmes qu'on peut reproduire sont souvent faciles à déboguer et à résoudre. Cependant, les problèmes qu'on peut reproduire ont un inconvénient : si le problème a un impact significatif sur votre activité, vous ne voulez pas le reproduire !
Si possible, recréez le problème dans un environnement de test ou de développement qui vous offre plus de flexibilité et de contrôle pendant votre étude.
- Le problème peut-il être reproduit sur une machine de test ?
- Plusieurs utilisateurs ou applications rencontrent-ils le même type de problème ?
- Le problème peut-il être reproduit en exécutant une simple commande, un ensemble de commandes, une application particulière ou une application autonome ?
- Questions spécifiques au produit