2010-12-12 3 views
1

J'ai à la fois des problèmes et des solutions à plus de vingt ans d'examens de qualification de doctorat en physique que je voudrais rendre plus accessibles, consultables et utiles.Comment concevoir un problème de physique Base de données?

Les problèmes sur les Quals sont organisés en plusieurs catégories différentes. La première catégorie est les problèmes de premier ou de deuxième cycle. (Le premier jour de l'examen est Undergraduate, le deuxième jour est Graduate). Dans ces catégories, plusieurs sujets sont testés: Mécanique, Électricité & Magnétisme, Mécanique statistique, Mécanique quantique, Méthodes mathématiques et Divers. Autres caractéristiques d'identification: année, saison et numéro de problème. Je suis particulièrement intéressé par la conception d'un système de base de données basé sur le Web qui peut stocker le problème et la solution et toutes les informations d'identification d'une certaine manière afin que les types d'actions suivants puissent être effectués.

  • Rechercher et renvoyer tous Électricité & Problèmes de magnétisme.
  • Rechercher et retourner tous les problèmes de mécanique statistique des diplômés.
  • Créer un examen de qualification aléatoire - ce qui signifie un nouveau test de 20 questions choisissant au hasard 2 problèmes de mécanique de premier cycle, 2 problèmes Undergrade E & M, etc. des examens de qualification antérieurs (sur une période restreinte).
  • Vous avez la possibilité de masquer ou d'afficher les solutions sur les résultats.

Toute suggestion ou tout commentaire sur la meilleure façon de réaliser ce projet serait grandement apprécié!

J'ai écrit quelques plus de détails here si vous êtes intéressé.

+2

Sûrement cela se résume à marquer ou indexer plus que la conception des tables? – dmckee

+0

Peut être une bonne application pour une solution NoSQL comme MongoDB ou CouchDB. – duffymo

+0

essayez [WeBWorK] (http://webwork.maa.org/wiki/Main_Page). –

Répondre

1

Pour votre situation, il semble qu'il est plus important de mettre en œuvre l'interface que le stockage de données. Pour stocker les données, vous pouvez utiliser une table ou des balises de base de données.Chaque enregistrement dans la base de données (ou tag) doit avoir les propriétés suivantes:

  1. Année
  2. Saison
  3. Undergradure ou supérieures
  4. Objet: CM, EM, QM, SM, Méthodes mathématiques et Divers
  5. problème numéro (est-il neccesary?)
  6. question
  7. réponse

  • Recherche et retourner tous les problèmes d'électricité & Magnétisme.

Directement interroger la base de données et vous obtiendrez un tableau, puis afficher certaines ou toutes les questions.

  • Créer un examen aléatoire de qualification - ce qui signifie un nouveau test de 20 questions choisissant au hasard 2 problèmes de mécanique de Undergrad, 2 Undergrade E & M problèmes, etc. des examens de qualification passés (sur une plage de dates restreinte).

Pour générer un examen aléatoire, vous devez d'abord indiquer le nombre de questions pour chaque catégorie et les années d'où elle provient. Par exemple, si vous voulez une question 2 UG EM. Interrogez la base de données pour toutes les questions UG EM, puis effectuez un mélange aléatoire sur le tableau de questions. Enfin, sélectionnez les deux premiers et affichez cette question à l'étudiant. Continuez avec les autres catégories et vous obtiendrez un papier d'examen aléatoire complet.

  • Vous avez la possibilité de masquer ou d'afficher les solutions sur les résultats.

Il est de votre devoir de déterminer si vous voulez que les étudiants voient la réponse. Il devrait être contrôlé par une seule variable.

0

Les catégories "Électricité & Magnétisme" et "Mécanique statistique" sont-elles mutuellement exclusives, selon la même dimension? Y a-t-il plusieurs dimensions dans les catégories que vous souhaitez rechercher?

Si la réponse est oui aux deux, alors je vous suggère de vous pencher sur la modélisation de données multidimensionnelles. En tant que physicien, vous avez une longueur d'avance sur la plupart des gens quand il s'agit d'évaluer le nombre de dimensions du problème. Analyser la réalité de manière multidimensionnelle est l'une des choses que font les physiciens. Parfois, l'obtention et l'apprentissage d'un outil MDDB sont exagérés. Une fois que vous avez étudié la modélisation multidimensionnelle, vous pouvez décider que vous aimez le concept de modélisation, mais vous souhaitez toujours l'implémenter à l'aide de bases de données relationnelles utilisant l'interface SQL.

Dans ce cas, la prochaine chose à regarder est la conception de schémas en étoile. Le schéma en étoile est très différent de la normalisation en tant que principe de conception, et il n'offre pas les mêmes avantages et limitations. Mais cela vaut la peine de savoir dans le cas où le problème est vraiment multidimensionnel.

Questions connexes