Enquêtes empiriques

Les enquêtes empiriques impliquent la recherche scientifique de tout outil, technique ou méthode. Cette enquête contient principalement les 4 principes suivants.

  • Choisir une technique d'enquête
  • Énoncer l'hypothèse
  • Garder le contrôle sur la variable
  • Rendre l'enquête significative

Choisir une technique d'enquête

Les éléments clés de l'enquête empirique en génie logiciel sont:

  • Survey
  • Étude de cas
  • Expérience formelle

Sondage

L'enquête est l'étude rétrospective d'une situation pour documenter les relations et les résultats. Cela se fait toujours après qu'un événement s'est produit. Par exemple, en génie logiciel, des sondages peuvent être effectués pour déterminer comment les utilisateurs ont réagi à une méthode, un outil ou une technique particulier pour déterminer des tendances ou des relations.

Dans ce cas, nous n'avons aucun contrôle sur la situation actuelle. Nous pouvons enregistrer une situation et la comparer à une situation similaire.

Étude de cas

Il s'agit d'une technique de recherche dans laquelle vous identifiez les facteurs clés qui peuvent affecter le résultat d'une activité, puis documentez l'activité: ses intrants, ses contraintes, ses ressources et ses extrants.

Expérience formelle

Il s'agit d'une enquête rigoureuse et contrôlée d'une activité, où les facteurs clés sont identifiés et manipulés pour documenter leurs effets sur le résultat.

Une méthode d'enquête particulière peut être choisie selon les directives suivantes -

  • Si l'activité a déjà eu lieu, nous pouvons réaliser une enquête ou une étude de cas. Si cela ne se produit pas encore, une étude de cas ou une expérience formelle peut être choisie.

  • Si nous avons un niveau élevé de contrôle sur les variables qui peuvent affecter le résultat, nous pouvons alors utiliser une expérience. Si nous n'avons aucun contrôle sur la variable, l'étude de cas sera une technique privilégiée.

  • Si la réplication n'est pas possible à des niveaux plus élevés, alors l'expérience n'est pas possible.

  • Si le coût de la réplication est faible, nous pouvons envisager une expérience.

Énoncer l'hypothèse

Pour booster la décision d'une technique d'investigation particulière, l'objectif de la recherche doit être exprimé sous forme d'hypothèse que nous voulons tester. L'hypothèse est la théorie provisoire ou la supposition que le programmeur pense explique le comportement qu'il veut explorer.

Garder le contrôle sur les variables

Après avoir énoncé l'hypothèse, nous devons ensuite décider des différentes variables qui affectent sa vérité ainsi que du contrôle que nous avons sur elle. Ceci est essentiel car le discriminateur clé entre l'expérience et les études de cas est le degré de contrôle sur la variable qui affecte le comportement.

Une variable d'état qui est le facteur qui peut caractériser le projet et peut également influencer les résultats de l'évaluation est utilisée pour distinguer la situation de contrôle de la situation expérimentale dans l'expérience formelle. Si nous ne pouvons pas différencier le contrôle de l'expérience, la technique d'étude de cas sera privilégiée.

Par exemple, si nous voulons déterminer si un changement dans le langage de programmation peut affecter la productivité du projet, alors le langage sera une variable d'état. Supposons que nous utilisions actuellement FORTRAN que nous voulons remplacer par Ada. Alors FORTRAN sera le langage de contrôle et Ada sera le langage expérimental.

Rendre l'enquête significative

Les résultats d'une expérience sont généralement plus généralisables qu'une étude de cas ou une enquête. Les résultats de l'étude de cas ou de l'enquête ne peuvent normalement s'appliquer qu'à une organisation particulière. Les points suivants prouvent l'efficacité de ces techniques pour répondre à une variété de questions.

Théories conformes et sagesse conventionnelle

Des études de cas ou des enquêtes peuvent être utilisées pour mettre en conformité l'efficacité et l'utilité de la sagesse conventionnelle et de nombreuses autres normes, méthodes ou outils dans une seule organisation. Cependant, une expérience formelle peut examiner les situations dans lesquelles les affirmations sont généralement vraies.

Explorer les relations

La relation entre les divers attributs des ressources et des produits logiciels peut être suggérée par une étude de cas ou une enquête.

Par exemple, une enquête sur les projets achevés peut révéler qu'un logiciel écrit dans une langue particulière comporte moins de défauts qu'un logiciel écrit dans d'autres langues.

Comprendre et vérifier ces relations est essentiel à la réussite de tout projet futur. Chacune de ces relations peut être exprimée sous forme d'hypothèse et une expérience formelle peut être conçue pour tester le degré de validité des relations. Habituellement, la valeur d'un attribut particulier est observée en gardant les autres attributs constants ou sous contrôle.

Évaluer la précision des modèles

Les modèles sont généralement utilisés pour prédire le résultat d'une activité ou pour guider l'utilisation d'une méthode ou d'un outil. Cela pose un problème particulièrement difficile lors de la conception d'une expérience ou d'une étude de cas, car leurs prédictions affectent souvent le résultat. Les chefs de projet transforment souvent les prévisions en objectifs de réalisation. Cet effet est courant lorsque les modèles de coût et de calendrier sont utilisés.

Certains modèles tels que les modèles de fiabilité n'influencent pas le résultat, car la fiabilité mesurée comme le temps moyen de défaillance ne peut être évaluée tant que le logiciel n'est pas prêt à être utilisé sur le terrain.

Valider les mesures

Il existe de nombreuses mesures logicielles pour capturer la valeur d'un attribut. Par conséquent, une étude doit être menée pour tester si une mesure donnée reflète les changements dans l'attribut qu'elle est censée capturer. La validation est effectuée en corrélant une mesure avec une autre. Une deuxième mesure qui est également une mesure directe et valide du facteur affectant devrait être utilisée pour valider. De telles mesures ne sont pas toujours disponibles ou faciles à mesurer. De plus, les mesures utilisées doivent être conformes aux notions humaines du facteur mesuré.