Dans le sens le plus usuel du terme, la compilation est une transformation que l’on fait subir à un programme écrit dans un langage évolué pour le rendre exécutable. Fondamentalement, c’est une traduction : un texte écrit en Pascal, C, Java, etc., exprime un algorithme et il s’agit de produire un autre texte, spécifiant le même algorithme dans le langage d’une machine que nous cherchons à programmer. Nous avons mis en oeuvre ce processus en créant un pseudo langage C grâce aux outils lex et yacc. Pour compléter le tout, nous avons effectué la conception d’un microprocesseur RISC avec pipe-line. Ce projet complet nous a permis de mieux comprendre le mécanisme ainsi que l'architecture des systèmes informatiques.
Afin de mettre en application les éléments de cours étudiés, il nous a été proposé de développer un logiciel temps réel permettant la gestion du mouvement d'un bras mécanique à deux axes.
L'élaboration de ce logiciel à pour but la familiarisation des étudiants avec les concepts et outils nécessaires au développement d'un système temps réel.
Nous pourrons ainsi réaliser l'étude du logiciel à partir de la décomposition fonctionnelle SART mise à notre disposition et de divers autres documents.
Le codage du logiciel se fera à l'aide du système temps réel VxWorks qui a comme support le langage C.
A travers la réalisation de ce projet, nous avons pu approfondir les concepts appris cette année et les appliquer au sein d'un travail concret.
Mise en place d’un système de fichiers virtuels à l’aide de la librairie FUSE (userspace) à partir d’un fichier XML qui contiendra l’arborescence du répertoire de l’utilisateur. L’échange devra être sécurisé, une authentification de l’utilisateur doit être faite au préalable.
En préalable aux études effectuées pour notre future entreprise, nous présenterons le contexte entourant ce projet : son origine ainsi que les différents acteurs impliqués. Soucieux de lutter contre le réchauffement climatique puisque nous sommes les premiers concernés, nous avons longuement cherché comment prendre part au combat pour la protection de notre planète. Réunis autour d’un but commun, il s’est dessiné peu à peu la possibilité de s´établir en tant que prestataire de service, important, commercialisant et installant « clef en main » des systèmes innovants ayant montrés leurs performances en matière d’écologie et pourtant toujours inexistant sur le territoire français. Notre entreprise aura pour vocation d'être spécialiste dans la pose d'appareils de micro-cogénération à biomasse. Ce type d'appareil permet à la fois le chauffage mais aussi la génération d'électricité pour répondre aux besoins des clients et ce, en leur fournissant une totale indépendance énergétique. Actuellement, les machines permettent l’approvisionnement en électricité et chauffage d’une maison de 150m² habitée par 4 personnes.
Projet complet pour la représentation d'une base de données semi-structurées en XML avec la mise en œuvre d’une base de données permettant la gestion des heures de cours au DGEI, en collaboration avec une application Java (BE programmation orientée objet). Cette base de donnée semi-structurée devait être réalisée en XML, nous permettant une approche structurelle de ce métalangage, ainsi que des applications variées (transformation de requêtes à l’aide de feuilles de style, génération d’une documentation au format DocBook, traitement des données via un CMS…) A travers la réalisation de ce projet, nous avons également pu approfondir les concepts UML appris cette année et les appliquer au sein d’un travail concret.
Chaque litre de gazole consomme l'oxygène de l'air et charge, inexorablement, l'atmosphère en gaz carbonique, oxyde d'azote, particules toxiques… qui accroissent sans cesse l'effet de serre. C'est pourquoi il a fallu, afin de préserver notre belle planète bleue, se tourner vers des véhicules moins polluants tels que les véhicules électriques. Un bon nombre de stations ont donc du répondre à cette nouvelle demande, notamment en permettant la recharge ou l'échange de batteries pour les usagers car, malheureusement, les batteries ont une autonomie limitée et ne permettent que de courts trajets inférieur à 150km.
Ce marché émergent et en nette croissance a permis à des sociétés tel que MonTrajetElectrique.com de proposer des solutions adaptées aux utilisateurs de véhicule électriques afin de répondre à leurs attentes en leur proposant des trajets adaptées à leurs contraintes et, notamment, leur permettant de ne plus jamais tomber en panne de batteries.
Ce projet a pu être mené à bien par une équipe de 4 jeunes étudiants ingénieurs qui ont su répondre au cahier des charges en implémentant des algorithmes optimisés. Algorithmes permettant de calculer les itinéraires les plus courts sans ou avec contraintes telle que la gestion des batteries du véhicule afin d'indiquer une station de ravitaillement. Ils ont aussi pu implémenter un programme pour la représentation graphique des cartes s'appuyant sur les utilitaires graphviz et neato. Ceci pour le plus grand bonheur des clients de MonTrajetElectrique.com !
Ce rapport, reflet de l’avancement étape par étape d'un projet de création d’une base de données pour une société de transport et la gestion de son parc de véhicules, contient premièrement le cahier des charges ainsi que le modèle entité/association et relationnel avec la validation associée et le bilan global du projet puis, en annexe, le dictionnaire des données ainsi que l’implantation, insertion des données dans la base et les requêtes demandées.
Le but du Puissance 4 est d’aligner 4 pions de votre couleur (jaune ou rouge) verticalement, horizontalement ou diagonalement avant votre adversaire sur un plateau de jeu de 6 lignes et 7 colonnes. Vous jouez à tour de rôle. Une fois le logiciel lancé, celui-ci va vous proposer de rentrer les noms des joueurs. Si vous décidez de ne pas en mettre, ils s’appelleront Joueur1 et Joueur2 par défaut. Vous pouvez à tout moment changer le nom du joueur grâce au menu déroulant en haut de la fenêtre (partie Options). Une fois les noms choisis, la partie commence. Par défaut, c’est une partie « Joueur contre Joueur ». Si jamais vous souhaitez jouer contre l’ordinateur, le menu déroulant vous propose de choisir le mode pour chacun des deux joueurs. Pour le mode ordinateur, trois niveaux de difficulté sont proposés, du plus facile au plus difficile. Il est impossible de lancer une partie ordinateur contre ordinateur (ce qui n’a pas grand intérêt). Pour gagner la partie, vous devez donc aligner 4 pions dans n’importe quelle direction. Pour disposer un pion, sélectionnez la colonne voulue. Une fois la partie terminée, vous pouvez recommencer autant de fois que vous le désirez. Pour quitter à n’importe quel moment, utilisez le menu déroulant. Pour de plus amples informations, une barre d’état en bas à gauche de la fenêtre de jeu vous indique à qui est le tour, et quelques autres informations (accueil…). La couleur du joueur est indiquée entre parenthèses au dessus des noms des joueurs.
La sécurité des informations peut être compromise par des moyens simples, identifier les attaques avec les IDS (Intrusion Detection System) comme Prelude-IDS.
Dans le cadre de l'association LoLiTa (Logiciel Libre à Tahiti) dont j'étais membre actif, j'ai participé à un projet de lutte contre la fracture numérique en Polynésie Française. L'idée initiale était de proposer un CD ou une clef USB avec une sélection de logiciels libres. Le tout dans une interface conviviale facilement exploitable sous Windows.