Cours 3.5 Flashcards
Définir la cognition inductive.
Étendre à l’ensemble d’une classe, ou d’un groupe, les caractères et propriétés et caractères observés sur un nombre limité de cas individuels.
Définir la cognition constuctive.
Assembler des éléments pour produire quelque chose de nouveau.
Quelles sont de nombreuses approches de résolution par heuristiques.
- Par la définition de sous-buts (séparation en parties)
- Par approximations successives
- Par essais-erreurs
- Par diagrammes (modèles UML, croquis, …)
- Par analogie (expérience, règles du pouce, problèmes et solutions similaires …)
Quelles sont les activités cognitives du concepteur?
- Acquisition : Obtenir de l’information
- Cristalliser : Produire des informations sur la solution
- Synchroniser : Communiquer de l’information
- Valider : Évaluer la qualité de l’information
Quelles sont les étapes d’analyse et conception selon l’UPEDU?
Define the achitecture :
- Architectural analysis: Générer des solutions de base.
- Use-case analysis : Trouver des objets principaux à partir des cas d’utilisation.
Grow the design:
- Use-case design : Spécifier les interactions entre les classes définies (héritage, association, public, privé, etc.)
- Class design: Ajouter les détails pour que chaque classe puisse être implémentée sans ambiguĩté
Review the architecture and design:
- Review the Architecture and Design: Révision des artéfacts produits.
Qu’est-ce qu’un problème “wicked” et comment le génie logiciel les attaque?
Un problème “wicked” est un problème difficile. Le problème n’est pas clairement défini et la solution non plus.
L’approche de résolution se fait par heuristique :
- Par la définition de sous-buts (séparation en parties)
- Par approximations successives
- Par essais-erreurs,
- Par diagrammes (modèles UML, croquis, …)
- Par analogie (expérience, règle du pouce, problèmes et solutions similaires, …)
etc.
Pourquoi nous faut-il un processus pour l’analyse et la conception?
- Parce qu’il est difficile d’absorber immédiatement tous les détails et de synthétiser une solution.
- Parce que les aspects importants d’un problème deviennent apparents au fur et à mesure qu’on tente de le résoudre.
- Parce que concevoir est opportuniste (le chemin d’exploration idéal ne peut pas être prédit d’avance).
- Parce que la conception est réflective (elle bénéficie de représentations afin de réfléchir sur des idées partiellement formées et elle bénéficie de la réflexion sur plusieurs niveaux d’abstraction).
Quelles sont les principales difficultés de génération de solutions?
- Fixation: Avoir déjà son idée en tête et être convaincu que c’est la meilleure.
- Manque de créativité : Incapacité de gérer des solutions alternatives.
- Se perdre dans la recherche d’informations, dans les aspects structurels.
Qu’est ce que l’approche rationnelle?
C’est ne pas prendre de décision avant d’avoir toutes les informations pertinentes. C’est une approche irréaliste en génie logiciel où il y a une infinité de détails pour chaque problème.
Qu’est ce que l’approche naturaliste?
C’est sauter sur la première solution qui semble marcher. Ce n’Est pas une approche idéale pour des problèmes complexes où un échec pourrait être critique.
Qu’est ce que l’approche satisficing?
C’est une approche entre l’approche rationnelle et l’approche naturaliste (point milieu). On recherche des informations jusqu’à trouver une gamme de solutions parmi laquelle s’en trouve une suffisamment satisfaisante.
Quels sont les diagrammes de comportement?
- Diagramme d’état
- Diagramme de cas d’utilisation
- Diagramme de séquence
Ces diagrammes font partie de l’étape de description du problème.
Quels sont les diagrammes de structure?
- Diagrammes de paquetages
- Diagrammes de composantes
- Diagrammes de classes
Ces diagrammes font partie de l’étape de description de la solution.