Bienvenue.
Lecteur de diaporama
Situation d'Apprentissage et d'Évaluation S2.01
- Développement d'une application -
BUT Informatique 1ère année semestre 2 de l'IUT de Bayonne et du Pays Basque.
Tous les fichiers du projet sont consultables sur le dépôt Github.
Dans ce projet, il s'agit de concevoir une application permettant d'afficher des images sous
la forme d'un diaporama à l'aide du logiciel Qt Creator.
Le lecteur affiche les images du diaporama en cours. Chaque image est affichée accompagnée de son
intitulé / titre, de la catégorie à laquelle elle appartient, et de son rang au sein du diaporama.
Le lecteur dispose de deux modes de fonctionnement, un mode manuel et un mode auto.
L'utilisateur a la possibilité, de charger, enlever un diaporama ainsi que modifier la vitesse de défilement.
Les images sont stockées dans une base de données.
Dossier d'analyse et conception
Dans un premier temps, nous avons réalisé un dossier d'analyse et conception, dans lequel nous avons conçu plusieurs diagrammes d'état transition et diagrammes de classe UML, ainsi que des tests.
L'image ci-dessous représente le diagramme final d'état transition UML du lecteur de diaporama, dans lequel nous avons représenté les différentes étapes ou états que celui-ci va suivre pour concourir, à la réalisation de son objectif.
L'image ci-dessous représente le diagramme final de classe UML du lecteur de diaporama, dans lequel nous avons représenté tous les objets qui intéragissent dans le système, et effectuent des opérations. Ce diagramme nous a aidé pour l'implémentation de l'application.
Implémentation
Grâce au dossier de conception que nous avons préalablement réalisé, la programmation de l'application s'est faite plus rapidement, étant donné que nous n'avions plus qu'à reprendre les différents objets du diagramme de classe et les implémenter.
Extrait de code du fichier "lecteur_modele.h"
Extrait de code du fichier "lecteur_modele.cpp"
Equipe projet
- Damageux Lucas
- Dirchaoui El Mahdi
- Laborde Romain
Installation service réseau
Situation d'Apprentissage et d'Évaluation S2.03
- Installation de service réseau -
BUT Informatique 1ère année semestre 2 de l'IUT de Bayonne et du Pays Basque.
Tous les fichiers du projet sont consultables sur le dépôt Github.
Dans ce projet nous devions déployer le parc informatique d'une entreprise, réparti en 3 sous-réseaux spécifiques :
- 1 sous-réseau "serveur" avec un serveur hébergeant la partie serveur d'une application de gestion
commerciale ainsi qu'un serveur de fichiers FTP et un serveur hébergeant la partie serveur d’une
application de gestion d'entreposage.
- 1 sous-réseau "entrepôt" avec 4 machines utilisées uniquement par les salariés affection à
la gestion de l'entreposage (caristes, magasiniers, opérateurs de saisie).
- 1 sous-réseau "administratif" avec 6 machines de bureau destinées aux diverses tâches de gestion de l'entreprise.
Plan d'adressage
Pour commencer, nous avons dans un premier temps réalisé le plan d'adressage.
Notre adresse publique de classe C est 220.18.4.0 /24 , le masque de réseau est 255.255.255.0.
Nous avions besoin de trois sous-réseaux spécifiques à savoir :
- 1 sous-réseau “serveur” avec un serveur
- 1 sous-réseaux “entrepôt” avec 4 machines
- 1 sous-réseaux “administratif” avec 6 machines
Nous avons utiliser 2 bits afin de créer 4 sous réseaux, 2 puissance 2 = 4 , 4 > 3 sous réseaux.
11111111.11111111.11111111.11000000 => notre masque de sous réseau : 255.255.255.192 en notation CIDR /26.
Il nous reste donc 6 bits soit 2 puissance 6 qui nous donne 64 - 2 ( adresse du réseau et adresse du diffusion ).
Nous pouvons donc adresser 62 machines par sous-réseau.
Ensuite nous avons construit virtuellement le réseau à l'aide du logiciel Marionnette.
Paramétrages DHCP
Dans un deuxième temps, nous avons paramétré les routeurs et serveurs constituants le réseau.
Le code ci-après montre le paramétrage du serveur DHCP.
Le serveur DHCP délivre automatiquement des adresses IP aux équipements qui se connectent au réseau.
Le fichier dhcpd.conf nous a permis de configurer la manière dont vont être adressées les machines qui en feront la demande.
Pour le sous-réseau entrepôt la plage d’adresses disponible est de 220.18.4.130 à 220.18.4.189
(les adresses 220.18.4.129 et 220.18.4.190 étant déjà prises).
La route par défaut est définie vers le routeur 1 qui fait la passerelle entre le sous réseau-entrepôt et le sous réseau-serveur.
Pour le sous-réseau administratif la plage d’adresses disponible est de 220.18.4.67 à 220.18.4.125
(les adresses 220.18.4.65, 220.18.4.66 et 220.18.4.126 étant déjà prises).
La route par défaut est définie vers le routeur 3 qui fait la passerelle entre le sous réseau-administratif et la Gateway.
Extrait de code du fichier "dhcpd.conf"
Paramétrages serveur application
Dans un troisième temps, nous avons configuré le serveur d’application d’entreposage comme vous
pouvez le voir sur l'extrait de code ci-après.
Nous avons d’abord configuré son interface eth0 de manière statique en prenant
la dernière adresse encore disponible soit 220.18.4.62.
Nous ajoutons également deux routes vers les sous réseaux administratif et entreposage,
pour permettre au serveur de communiquer avec ces sous-réseaux.
Le serveur d’application doit permettre à n’importe quelle machine d’afficher
une page web (“index.html”) grâce à la commande netcat en mode écoute.
Le problème de cette commande est qu’elle ne répond qu’à une demande.
Ainsi nous avons créé une boucle infinie qui exécute la commande netcat en mode écoute sur
le port 80 afin de permettre à toutes les machines de demander l’accès à la page web n’importe quand.
Cette boucle est exécutée en fond, grâce à l’esperluette après le done, ainsi l’instruction ne bloque pas le terminal.
Extrait de code du fichier "serveur-appli-rc.local"
Equipe projet
- Dumolié Alexis
- Moreno Alex
- Laborde Romain
Exploration algorithmique
Situation d'Apprentissage et d'Évaluation S2.02
- Exploration algorithmique d'un problème -
BUT Informatique 1ère année semestre 2 de l'IUT de Bayonne et du Pays Basque.
Tous les fichiers du projet sont consultables sur le dépôt Github.
L'objectif dans ce projet était de mettre en pratique les algorithmes de recherche
de plus court chemin (Dijkstra, Bellmann Ford, Floyd Warshall...) sur un graphe,
puis de réfléchir à une représentation objet du graphe.
Et pour finir, de visualiser l'exécution des algorithmes précédents en utilisant une bibliothèque graphique.
Première étape
La première étape consistait à prendre en main, importer, nettoyer et préparer les données.
Les données décrivent les itinéraires de randonnées de la zone et sont partagées par la Communauté de Communes
Maurienne-Galibier, en Savoie.
Pour commencer nous avons constitué un dataframe à partir du fichier csv fourni.
Ce fichier comporte des informations relatives à des portions d'itinéraires de randonnées (point de départ et d'arrivée,
la longueur et la largeur du sentier, les coordonnées du tracé, l'identifiant).
Nous devions nous assurer que chaque point de départ possède un point d'arrivée réciproquement,
un point d'arrivée possède un point de départ.
Nous devions également nous assurer que chaque individu du dataframe possède un tracé.
Le code ci-après montre comment nous avons procédé.
Extrait de code du fichier "Etape1.py"
Deuxième étape
La deuxième étape consistait à créer des fonctions en utilisant les algorithmes de recherche de plus courts chemins
(Dijkstra, Bellmann, FloydWarshall, A-star).
Les fonctions retournent la liste des sommets composant le plus court chemin ainsi que sa distance.
Nous avons également implémenté un timer afin de mesurer et de comparer la durrée d'éxécution de chaque algorithme.
Dans l'exemple ci-dessous nous avons implémenté la fonction "Dijkstra" à partir de l'algorithme de Dijkstra.
Extrait de code du fichier "Etape2.py"
Troisième étape
La troisième étape consistait à réaliser une application graphique en python permettant d'afficher à l'écran l'ensemble des sommets, puis de représenter graphiquement le déroulement des différents parcours des algorithmes. L'extrait de code ci-après montre l'implémentation de la fonction "creationPoints" permettant de créer les points à partir des sommets, et la fonction "creationLignesChemin" permettant de créer les lignes constituant le plus court chemin.
Extrait de code du fichier "Etape3.py"
La vidéo qui suit est un aperçu de l'application permettant de visualiser graphiquement le parcours de l'algorithme, dans la recherche de plus court chemin.
Quatrième étape
La quatrième étape consistait à réaliser une représentation objet du graphe.
Dans l'extrait de code ci-dessous, nous avons implémenté l'entité "Sommet".
Extrait de code du fichier "Etape4.py"
Equipe projet
- Kessentini Nour
- Laborde Romain
Baionako Ostatüak
Situation d'Apprentissage et d'Évaluation S1.04
- Création d’une base de données -
BUT Informatique 1ère année semestre 1 de l'IUT de Bayonne et du Pays Basque.
Tous les fichiers du projet sont consultables sur le dépôt Github.
Dans ce projet nous devions étudier puis réaliser une base de données portant sur une partie du système d'information d'une mairie.
On s'intéresse, dans ce cas, au service des régies. Dans ce service, les agents communaux sont chargés, entre autres, de la gestion des prestations proposées par la ville, aux plus jeunes de ses habitants : centre aéré, colonies de vacances, classes de découverte, restauration scolaire, crèches, centre d'animation à la petite enfance (CAPE), etc.
Première étape
Dans un premier temps, nous avons réalisé une modélisation conceptuelle de données en utilisant un diagramme de classes UML, qui nous permet de décrire la structure statique du système, représenté par l'image ci-après.
Deuxième étape
Dans un deuxième temps, nous avons créé les tables à l'aide du schéma conceptuel de données, puis nous avons peuplé la base de données avec les commandes d'insertions.
Extrait de code du fichier "creation-table.sql"
Troisième étape
Pour finir, nous devions concevoir des requêtes qui pouvaient être utiles aux personnels de la mairie.
Dans l'extrait de code ci-après, quelques exemples des requêtes que nous avons conçues
Extrait de code du fichier "requetes.sql"
Equipe projet
- Crussière Lucas
- Dirchaoui El Mahdi
- Laborde Romain
Code Quest
Situation d'Apprentissage et d'Évaluation S2.05
- Gestion de projet -
BUT Informatique 1ère année semestre 2 de l'IUT de Bayonne et du Pays Basque.
Tous les fichiers du projet sont consultables sur le dépôt Github.
L'objectif de ce projet est de se familiariser à la conduite d'un projet à travers un sujet simple.
Pour cela nous devions imaginer une application informatique.
Pour ce projet nous avons imaginé une application nommée Code Quest, qui permet de s'initier et/ou
de se perfectionner aux concepts de l'informatique vu dans le BUT Informatique durant les deux premiers semestres,
sous forme de jeu.
Première étape
Dans cette première étape, nous devions délimiter l'objectif de notre application en définissant,
le genre de l'application, le public cible et son contexte d'utilisation.
Ensuite nous avons réalisé une étude de l'existant afin de positionner l'application et de s'assurer de l'utilité du développement de notre application. Pour finir nous avons établi un argumentaire fondé sur les enjeux auxquels répond l'application.
Deuxième étape
Dans cette deuxième étape, afin de caractériser l'application envisagée, nous avons réalisé un diagramme des Cas d'utilisation UML, voir l'image ci-après, qui nous permet d'identifier les possibilités d'intéraction entre l'application et les utilisateurs.
Ensuite nous avons réalisé plusieurs maquettes qui représentent les différents scénarios identifiés au préalable grâce au diagramme des Cas d'utilisation UML.
Troisième étape
Dans cette troisième étape, nous avons dans un premier temps réalisé
un découpage du projet (i.e. WBS), voir l'image ci-après
Ce découpage nous permet d'organiser le projet, en décomposant celui-ci en unités gérables et
compréhensibles par tous les membres de l'équipe.
Ensuite nous avons réalisé la plannification prévisionnelle à l'aide de l'outil Gantt Project.
Quatrième étape
Dans cette quatrième et dernière étape, nous devions réaliser le bilan de ce projet, dans lequel nous devions y préciser pour chacune des 6 compétences des semestres 3 et 4 du BUT Informatique, dans quelle mesure les tâches à réaliser permettent de mobiliser ces compétences.
Equipe projet
- Dumolié Alexis
- Moreno Alex
- Laborde Romain