Vous êtes sur la page 1sur 4

Université de Ghardaia

Département des Mathématiques et d’Informatique 1ère Année MI/I/M (Semestre 2)

"‫"األعمال العظيمة ما هي االّ أعمال صغيرة كتب لها االستمرار‬

Algorithmique et Structures de Données 2 - Mini-Projet


Il s’agit de développer un programme (fichier source testé et opérationnel) dont le sujet est présenté dans
la suite de ce document. L’implémentation est réalisée en utilisant le langage de programmation Pascal.

Objectifs pédagogiques :
L’objectif pédagogique de ce mini-projet consiste à valider les compétences acquises en cours, en TD et
en TP du module Algorithmique et Structures de Données 2 (ASD2), à savoir :

• Analyse d’un problème.


• Conception d’un algorithme.
• Maîtrise de la notion de modularité.
• Maîtrise de la notion des enregistrements et des ensembles.
• Etablir une méthode de tri.
• Maîtrise du concept fichier.
• Implémentation d’une solution (langage de programmation Pascal).

Un autre objectif, jugé très important, consiste à s’entrainer à rédiger un rapport de programmation. Ci-
après, à titre indicatif, un plan à suivre, est présenté.

Énoncé du problème :

Gestion de la bibliothèque
La gestion de la bibliothèque est un domaine d'application important de l'informatique. Les
bibliothèques modernes sont devenues de plus en plus complexes avec une grande quantité de
données à gérer, telles que les informations sur les livres. La gestion manuelle de ces tâches est
très difficile et nécessite beaucoup de temps et d'efforts, ce qui peut conduire à des erreurs et
des incohérences dans les données. Pour résoudre ce problème, l'utilisation d'un programme
informatique est essentielle.

Ce travail est divisé en deux partie :

La première partie de ce travail consiste à gérer les livres en fournissant les opérations
nécessaires pour identifier un livre par son code, son auteur, son titre, son éditeur, son année
d'édition, sa catégorie et son prix. Les catégories des livres sont classées selon les spécialités de
l'université de Ghardaïa. Par exemple, le livre de la catégorie "Pi" est sous la catégorie des livres

Page 1 sur 4
mathématiques. Toutes les informations seront manipulées et sauvegardées dans un fichier. Les
opérations à réaliser sur les livres sont :

1. Ajouter un livre : cette méthode permet d'ajouter un livre à la bibliothèque.


L'utilisateur doit fournir les informations nécessaires sur le livre (code, auteur1, titre,
éditeur, année d'édition, catégorie, prix) qui seront ensuite stockées dans le fichier.
2. Modifier un livre : cette méthode permet de modifier les informations d'un livre.
L'utilisateur doit fournir les nouvelles informations (auteur, titre, éditeur, année
d'édition, catégorie, prix) qui seront ensuite enregistrées dans le fichier.
3. Supprimer un livre : cette méthode permet de supprimer un livre en utilisant son
code. Le livre correspondant sera supprimé du fichier.
4. Chercher un livre : cette méthode permet de chercher un livre en utilisant son code,
son titre ou son auteur. Le résultat de la recherche sera affiché à l'utilisateur.
5. Afficher la liste des livres : cette méthode permet d'afficher la liste de tous les livres
présents dans la bibliothèque.
6. Trier les livres : cette méthode permet de trier les livres par catégorie ou par année
de publication.

La deuxième partie du travail consiste à contrôler l'accès à l'application en demandant à


l'utilisateur d'identifier sa connexion et en enregistrant tous les accès dans un fichier binaire.
L'utilisateur doit saisir le nom d'un utilisateur et le mot de passe s'ils sont disponibles.

Le programme sera implémenté en utilisant des modules qui offrent une approche modulaire
pour résoudre le problème. Chaque module est responsable d'une tâche spécifique, telle que
l'ajout ou la suppression d'un livre, la recherche d'un livre, le tri des livres, la gestion de l'accès,
etc.

Le programme devra également utiliser les concepts de modularité et de gestion de fichiers


pour stocker les données de traitement dans des fichiers textes ou binaires.

Enfin, le programme devra être testé pour s'assurer que toutes les tâches fonctionnent
correctement et que les données sont stockées et récupérées de manière appropriée à partir des
fichiers.

1
L'auteur est identifié par son nom et prénom.

Page 2 sur 4
Documents à rendre et calendrier :

• Programme source complet soigneusement commenté.


• Un rapport de programmation.

Le 22/04/2023 est fixé comme dernier délai de remise des documents électroniques (tout retard ne sera
pas toléré). La soutenance du travail aura lieu une semaine plus tard.

Le projet doit être réalisé en binôme (l'enseignant du TP peur décider pour un groupe particulier que le
projet doit être réalisé en monôme). Ces derniers doivent s’identifier avant le 23/03/2023 auprès des
enseignants responsables du TP du module ASD2.

Évaluation du mini-projet :

L’évaluation repose sur les éléments suivants :

• Le programme source :
➢ Respect de l’énoncé et originalité du travail.
➢ Qualité de programmation : efficacité algorithmique, choix de structures de contrôle, …
➢ Présentation du programme : indentation, commentaires et nommage des objets
manipulés.
• Le rapport de programmation :
➢ Présentation.
➢ Argumentation.
➢ Rédaction personnel.
• Soutenance du travail :
➢ Démonstration du programme.
➢ Interrogation individuelle sur le travail réalisé.
Remarque : Tout plagiat sera sanctionné par la note 0.

Plan du rapport de programmation :

Afin de présenter un rapport de programmation, il est souhaitable de suivre le plan suivant :

• Introduction
• Problématique
• Analyse
• Algorithme
• Programmation
• Conclusion

Introduction
L’introduction contient essentiellement :

➢ Une définition du problème que le mini-projet essaye de résoudre ainsi que le contexte dans
lequel il s’inscrit.
➢ L’organisation du travail en montrant d’une façon synthétique et claire la méthodologie et la
philosophie choisie. On doit mettre en évidence l’apport personnel et éventuellement les
contraintes imposées lors de la réalisation du projet.

Page 3 sur 4
Problématique
Il s'agit de reprendre l'énoncé en présentant clairement la problématique. De plus, à ce niveau, il faut
définir toutes les données à manipuler et les objectifs désirés (résultats).

Analyse
Elle consiste à faire une analyse du problème en présentant toutes les entrées et toutes les sorties.
Donner l'arborescence qui est généralement le résultat d'une analyse descendante. Rappeler si nécessaire
les outils théoriques utilisés (par exemple le système combinatoire, etc)

Algorithme
Pour les algorithmes, donner seulement des pseudo-algorithmes et éviter d’écrire toute la solution action
par action. L’objectif est de tracer les grandes lignes de la solution. Le détail apparaîtra au niveau du
programme.

Programmation
Donner une grande importance au listing.

▪ Sauter des lignes (ou des pages) pour séparer les parties hétérogènes.
▪ Faire des titres, des commentaires.
▪ Présenter (Intenter) le programme de sorte à bien faire ressortir les structures de contrôle.
▪ Donner toutes les informations jugées utiles pour une bonne compréhension des programmes.

Conclusion
Dans la conclusion, les éléments suivants doivent figurer :

➢ Un rappel rapide du problème.


➢ Une Synthèse de votre apport au projet.
➢ Une Critique du travail.
➢ Des perspectives.

Page 4 sur 4

Vous aimerez peut-être aussi