Aller au contenu principal

Tâche Questionnaire

Version : v1 (actuelle)

Un outil flexible d'enquête et d'évaluation pour collecter des données autodéclarées, des informations démographiques et des réponses structurées auprès des participants.

Vue d'ensemble

La tâche Questionnaire fournit un système complet pour administrer des enquêtes, des évaluations psychologiques, des formulaires démographiques et toute collecte structurée de réponses des participants. Elle prend en charge plusieurs types de questions (choix multiples, échelles, saisie de texte, etc.), la logique conditionnelle, les règles de validation et le branchement.

Contrairement aux tâches comportementales qui mesurent la performance, les questionnaires capturent les expériences subjectives, les informations personnelles, les attitudes, les symptômes et les caractéristiques autodéclarées. Ils sont essentiels pour corréler les données comportementales avec les différences individuelles, filtrer les participants et collecter des informations contextuelles.

La tâche est couramment utilisée pour :

  • Enquêtes démographiques : Âge, éducation, langue, antécédents médicaux
  • Évaluations psychologiques : Dépression (BDI), anxiété (GAD-7), personnalité (Big Five)
  • Évaluations de tâche : Difficulté, effort, motivation, utilisation de stratégies
  • Filtrage : Critères d'éligibilité, facteurs d'exclusion
  • Vérifications de manipulation : Vérifier que les manipulations expérimentales ont fonctionné
  • Debriefing : Expérience et commentaires post-étude

Pourquoi les chercheurs utilisent cette tâche

  1. Différences individuelles : Corréler la performance aux tâches avec les traits, les symptômes, les données démographiques
  2. Caractérisation des participants : Décrire les caractéristiques de l'échantillon
  3. Filtrage : Déterminer l'éligibilité ou l'assignation à un groupe
  4. Expérience subjective : Capturer les évaluations de difficulté, de confiance, d'engagement
  5. Échelles validées : Administrer des évaluations psychologiques standardisées
  6. Méthodes mixtes : Combiner le comportement quantitatif avec l'autodéclaration qualitative

État actuel de l'implémentation

Entièrement implémenté :

  • ✅ 12 types de questions (QCM, échelle, texte, sélection multiple, curseur/EAV, matrice/grille, classement, choix par image, dichotomique, date, numérique, zone de texte)
  • ✅ Questions obligatoires et optionnelles
  • ✅ Règles de validation (min/max, min_length/max_length, expressions régulières)
  • ✅ Logique d'affichage conditionnel (schémas de saut avec opérateur 'eq')
  • ✅ Questionnaires multi-pages avec questions_per_page
  • ✅ Suivi de la progression (show_progress, show_question_numbers)
  • ✅ Ordre aléatoire des questions (randomize_questions)
  • ✅ Support RTL pour les langues de droite à gauche
  • ✅ Exportation des données en format structuré (JSON complet + CSV aplati)
  • ✅ Temps de réponse (latency_ms, display_duration_ms)
  • ✅ Options avec image_url pour choix par image
  • ✅ Items de matrice et de classement
  • ✅ Modèles de questionnaires (templates)
  • ✅ Importation/Exportation de configurations
  • ✅ Clés de méta-traduction personnalisables

Paramètres de configuration

Structure du questionnaire

ParamètreTypeDéfautDescription
titlestring''Titre du questionnaire
descriptionstring''Description/instructions optionnelles
questionsarray[]Tableau d'objets de questions
show_progressbooleantrueAfficher la barre de progression
show_question_numbersbooleantrueAfficher les numéros de questions
questions_per_pagenumber0Questions par page (0 = toutes sur une page)
randomize_questionsbooleanfalseOrdre aléatoire des questions

Structure de l'objet Question

{
id: "q1", // Identifiant unique
type: "mcq", // Type de question
text: "Quelle est votre tranche d'âge ?", // Texte de la question
options: ["18-25", "26-35", ...], // Pour QCM/sélection multiple
required: true, // Doit être répondu
min: 1, // Min pour scale/numeric
max: 7, // Max pour scale/numeric
scale_labels: ["Pas du tout", ...], // Étiquettes pour échelle (array)
min_length: 10, // Longueur min pour text/textarea
max_length: 500, // Longueur max pour text/textarea
items: ["Item 1", "Item 2"], // Items pour matrix/ranking
condition: { // Logique conditionnelle
question_id: "q0",
operator: "eq",
value: "Yes"
}
}

Types de questions

TypeDescriptionFormat de réponse
scaleÉchelle Likert ou de notation numériqueNombre
numericSaisie numériqueNombre
textSaisie de texte libre (court)Chaîne
textareaTexte longChaîne
mcqChoix multiples (sélection unique)Chaîne (option sélectionnée)
multiCocher plusieurs optionsTableau de chaînes
dichotomousQuestion oui/nonChaîne ("Yes"/"No")
dateSélecteur de dateChaîne de date
sliderCurseur / Échelle analogique visuelle (EAV)Nombre
matrixMatrice / Grille de questionsObjet {item: valeur}
rankingClassement d'itemsTableau de chaînes (ordre de classement)
image_choiceChoix par imageChaîne (option sélectionnée)

Options avec images

Pour les questions de type image_choice, les options peuvent inclure des URLs d'images :

{
id: "q1",
type: "image_choice",
text: "Quelle image vous plaît le plus ?",
options: [
{ text: "Option A", image_url: "https://..." },
{ text: "Option B", image_url: "https://..." }
]
}

Paramètres de présentation

ParamètreTypeDéfautDescription
show_progressbooleantrueAfficher la barre de progression
show_question_numbersbooleantrueAfficher les numéros de questions
questions_per_pagenumber0Questions par page (0 = toutes)
randomize_questionsbooleanfalseOrdre aléatoire des questions

Clés de méta-traduction

Les textes de l'interface utilisateur peuvent être personnalisés via les clés de méta-traduction :

CléDéfaut (EN)Défaut (FR)Utilisation
questionnaire_submit"Submit""Soumettre"Bouton de soumission
questionnaire_previous"Previous""Précédent"Bouton page précédente
questionnaire_required_indicator"* Required""* Obligatoire"Indicateur de champ obligatoire
questionnaire_yes"Yes""Oui"Option oui (dichotomous)
questionnaire_no"No""Non"Option non (dichotomous)
questionnaire_required_fields_error"Please answer all required questions""Veuillez répondre à toutes les questions obligatoires"Message d'erreur
questionnaire_progress"Question {current} of {total}""Question {current} sur {total}"Barre de progression

Données en sortie

Marqueurs et Réponses

La tâche enregistre plusieurs marqueurs pendant le questionnaire et un objet de réponse par question lors de la soumission.

Marqueurs (questionnaire_order) :

{
"type": "questionnaire_order",
"ts": "2024-01-01T00:00:01.000Z",
"hr": 1234.56,
"data": {
"order": ["q1", "q2", "q3"]
}
}

Marqueurs (stimulus_shown) :

{
"type": "stimulus_shown",
"ts": "2024-01-01T00:00:01.000Z",
"hr": 1234.56,
"data": {
"order": ["q1", "q2", "q3"]
}
}

Marqueurs additionnels enregistrés via la base de marqueurs de la tâche :

  • {task}_q{N} -- Participant a interagi avec la question N (base 1)
  • {task}_q{N}_o{M} -- Participant a sélectionné l'option M (base 1) à la question N (pour les types de questions à options)

Marqueurs (questionnaire_submitted) :

{
"type": "questionnaire_submitted",
"ts": "2024-01-01T00:00:30.000Z",
"hr": 30234.56
}

Données de réponse (une par question lors de la soumission) :

{
"id": "q1",
"marker": "task_0_q1",
"index": 0,
"type": "scale",
"value": 4,
"latency_ms": 3450,
"display_duration_ms": 3450
}
ChampTypeDescription
idstringIdentifiant de question (ex: "q1")
markerstringChaîne de marqueur de question
indexnumberIndex d'affichage de la question (base 0)
typestringType de question ("scale", "mcq", "multi", "text", "textarea", "numeric", "dichotomous", "slider", "matrix", "ranking", "image_choice", "date")
valuevariesRéponse du participant (nombre pour scale, chaîne pour mcq/text, tableau de chaînes pour multi, objet pour matrix)
latency_msnumberTemps de réponse en millisecondes
display_duration_msnumberDurée d'affichage de la question en millisecondes

Artefacts de synthèse

Artefact complet (questionnaire_{index}.json) avec toutes les données du questionnaire :

{
"title": "Titre de l'enquête",
"answers": {
"q1": 4,
"q2": "Yes",
"q3": ["Option A", "Option B"]
},
"questions": [],
"order": ["q1", "q2", "q3"]
}

Artefact CSV aplati (questionnaire_flat_{index}.json) prêt pour l'exportation CSV :

{
"q1": 4,
"q2": "Yes",
"q3": "Option A;Option B",
"q1_latency_ms": 3450,
"q2_latency_ms": 2100,
"q3_latency_ms": 4200
}

Exemples de questionnaires

Enquête démographique

{
title: "Informations de base",
questions: [
{
id: "age",
type: "numeric",
text: "Quel est votre âge ?",
required: true,
min: 18,
max: 100
},
{
id: "gender",
type: "mcq",
text: "Genre",
options: ["Homme", "Femme", "Non-binaire", "Préfère ne pas répondre"],
required: true
},
{
id: "education",
type: "mcq",
text: "Niveau d'éducation le plus élevé complété",
options: [
"Moins que le secondaire",
"Diplôme d'études secondaires",
"Études collégiales partielles",
"Diplôme d'associé",
"Baccalauréat",
"Maîtrise",
"Doctorat"
],
required: true
},
{
id: "handedness",
type: "mcq",
text: "Quelle main utilisez-vous principalement pour écrire ?",
options: ["Droite", "Gauche", "Les deux également"],
required: true
}
]
}

Évaluations post-tâche

{
title: "Expérience de la tâche",
description: "Veuillez évaluer votre expérience avec la tâche que vous venez de compléter.",
questions: [
{
id: "difficulty",
type: "scale",
text: "Comment avez-vous trouvé la tâche difficile ?",
min: 1,
max: 7,
scale_labels: ["Très facile", "", "", "", "", "", "Très difficile"],
required: true
},
{
id: "effort",
type: "scale",
text: "Combien d'effort avez-vous mis dans la tâche ?",
min: 1,
max: 7,
scale_labels: ["Effort minimal", "", "", "", "", "", "Effort maximal"],
required: true
},
{
id: "strategy",
type: "textarea",
text: "Veuillez décrire toute stratégie que vous avez utilisée pour compléter la tâche.",
required: false,
placeholder: "Tapez votre réponse ici...",
min_length: 10,
max_length: 500
}
]
}

Questionnaire de filtrage avec logique conditionnelle

{
title: "Filtrage d'éligibilité",
questions: [
{
id: "color_vision",
type: "dichotomous",
text: "Avez-vous une vision des couleurs normale ou corrigée à la normale ?",
required: true
},
{
id: "color_deficiency_type",
type: "mcq",
text: "Quel type de déficience de vision des couleurs avez-vous ?",
options: ["Rouge-vert", "Bleu-jaune", "Daltonisme complet", "Incertain"],
required: true,
condition: {
question_id: "color_vision",
operator: "eq",
value: "No"
}
},
{
id: "vision_correction",
type: "dichotomous",
text: "Portez-vous des lunettes ou des lentilles de contact ?",
required: true
},
{
id: "wearing_correction",
type: "dichotomous",
text: "Portez-vous vos lunettes/lentilles en ce moment ?",
required: true,
condition: {
question_id: "vision_correction",
operator: "eq",
value: "Yes"
}
}
]
}

Échelle psychologique validée (GAD-7 simplifié)

{
title: "Échelle de trouble d'anxiété généralisée à 7 items (GAD-7)",
description: "Au cours des 2 dernières semaines, à quelle fréquence avez-vous été dérangé(e) par les problèmes suivants ?",
questions: [
{
id: "gad1",
type: "scale",
text: "Se sentir nerveux(se), anxieux(se) ou à cran",
min: 0,
max: 3,
scale_labels: ["Pas du tout", "Plusieurs jours", "Plus de la moitié des jours", "Presque tous les jours"],
required: true
},
{
id: "gad2",
type: "scale",
text: "Ne pas pouvoir arrêter ou contrôler l'inquiétude",
min: 0,
max: 3,
scale_labels: ["Pas du tout", "Plusieurs jours", "Plus de la moitié des jours", "Presque tous les jours"],
required: true
}
// ... items GAD-7 restants
]
}

Exemple de matrice/grille

{
title: "Évaluation de satisfaction",
questions: [
{
id: "satisfaction",
type: "matrix",
text: "Veuillez évaluer votre satisfaction pour chaque aspect :",
items: [
"Qualité du contenu",
"Facilité d'utilisation",
"Support technique",
"Rapport qualité-prix"
],
min: 1,
max: 5,
scale_labels: ["Très insatisfait", "Insatisfait", "Neutre", "Satisfait", "Très satisfait"],
required: true
}
]
}

Exemple de classement

{
title: "Préférences",
questions: [
{
id: "priorities",
type: "ranking",
text: "Classez les éléments suivants par ordre d'importance (1 = le plus important) :",
items: [
"Salaire",
"Équilibre travail-vie",
"Opportunités d'avancement",
"Culture d'entreprise",
"Lieu de travail"
],
required: true
}
]
}

Exemple de choix par image

{
title: "Reconnaissance d'émotions",
questions: [
{
id: "emotion",
type: "image_choice",
text: "Quelle émotion cette personne exprime-t-elle ?",
options: [
{ text: "Joie", image_url: "https://exemple.com/joie.jpg" },
{ text: "Tristesse", image_url: "https://exemple.com/tristesse.jpg" },
{ text: "Colère", image_url: "https://exemple.com/colere.jpg" },
{ text: "Surprise", image_url: "https://exemple.com/surprise.jpg" }
],
required: true
}
]
}

Recommandations de conception

Conception des questions

  • Clarté : Utiliser un langage simple et sans ambiguïté
  • Neutralité : Éviter les questions orientées ou suggestives
  • Concept unique : Une seule question par item (éviter les questions à double sens)
  • Options de réponse : Mutuellement exclusives et exhaustives
  • Sujets sensibles : Inclure l'option "Préfère ne pas répondre"

Conception des échelles

  • Impair vs. pair : Les échelles impaires permettent un point neutre central ; les paires forcent une direction
  • Ancres : Étiqueter clairement les extrémités ; optionnellement étiqueter tous les points
  • Étendue : 5-7 points typique pour Likert ; 0-10 pour les échelles de douleur/difficulté
  • Directionnalité : Maintenir une direction cohérente (élevé = plus du construit)

Longueur du questionnaire

  • Temps de complétion : Viser <10 minutes pour les échantillons non cliniques
  • Nombre de questions : 15-30 questions typique ; >50 risque la fatigue
  • Pages : Diviser en 3-5 pages pour une meilleure expérience
  • Barre de progression : Aide les taux de complétion, particulièrement pour les enquêtes longues

Obligatoire vs. optionnel

  • Données démographiques : L'âge et le genre sont souvent obligatoires pour l'analyse
  • Filtrage : Les critères d'éligibilité doivent être obligatoires
  • Expérience : Les évaluations post-tâche peuvent être optionnelles
  • Sensible : La santé et les revenus sont souvent préférables en optionnel

Problèmes courants et solutions

ProblèmeSolution
Faibles taux de complétionRaccourcir le questionnaire ; rendre les questions optionnelles vraiment optionnelles
Réponses linéaires (même réponse répétée)Inverser le codage de certains items ; inclure des vérifications d'attention
Données manquantes sur les variables clésRendre les questions critiques obligatoires avec des instructions claires
Biais de réponse (désirabilité sociale)Assurer l'anonymat ; utiliser des échelles validées ; envisager des formats à choix forcé
Les participants répondent trop viteAjouter des horodatages ; signaler les complétions suspectes (<2 s/question)
Confusion sur les échellesFournir des ancres et des exemples clairs

Intégration d'échelles validées

Lors de l'utilisation d'échelles psychologiques validées :

  1. Permission : S'assurer d'avoir les droits d'utilisation de l'échelle
  2. Formulation exacte : Utiliser le texte verbatim des questions et des options de réponse
  3. Notation : Suivre les algorithmes de notation publiés
  4. Interprétation : Utiliser les normes et les seuils publiés
  5. Citation : Citer l'article original de développement de l'échelle

Échelles validées courantes :

  • Dépression : PHQ-9, BDI-II, CES-D
  • Anxiété : GAD-7, STAI, BAI
  • Personnalité : Big Five Inventory (BFI), HEXACO
  • Plaintes cognitives : Cognitive Failures Questionnaire (CFQ)
  • Sommeil : Pittsburgh Sleep Quality Index (PSQI)

Considérations pour l'analyse des données

Quantitatif :

  • Calculer les scores d'échelle (somme, moyenne ou pondérée)
  • Tester la cohérence interne (alpha de Cronbach)
  • Corréler avec les mesures comportementales
  • Différences entre groupes (tests t, ANOVA)

Qualitatif (questions ouvertes) :

  • Analyse thématique des réponses textuelles
  • Codage de contenu
  • Analyse de fréquence de mots / analyse de sentiment

Données manquantes :

  • Rapporter les taux de manquant
  • Utiliser une imputation appropriée si nécessaire (moyenne, régression, imputation multiple)
  • Considérer la suppression par liste vs. par paire

Références

Les questionnaires sont des outils généraux ; les références dépendent des échelles spécifiques utilisées. Pour la conception de questionnaires :

  • Krosnick, J. A., & Presser, S. (2010). Question and questionnaire design. In P. V. Marsden & J. D. Wright (Eds.), Handbook of Survey Research (2nd ed., pp. 263-313). Emerald Group Publishing.

  • DeVellis, R. F. (2016). Scale Development: Theory and Applications (4th ed.). SAGE Publications.

Pour les échelles validées spécifiques, citer l'article de développement original (p. ex., Spitzer et al., 2006 pour le GAD-7).

Voir aussi

  • Instructions - Pour présenter des informations sans collecter de réponses