Objectifs et consignes de rendu

De Wiki Cours Linux embarqué CPE-Lyon
Aller à : navigation, rechercher


Objectifs

  • Prise en main des outils de développement
  • Prise en main du système GNU/Linux pour le développement d'applicatifs embarqués
  • Découverte des contraintes de l'embarqué
  • Découvertes de la richesse des environnements Linux
  • Création d'une image déployable à grande échelle

Le but est de se familiariser au développement de systèmes embarqués utilisant le Noyau Linux. Chaque groupe devra mettre en œuvre les outils de développement spécifiques au développement de systèmes embarqués à travers la création d'une image système complète, la création ou l'installation et la configuration d'un applicatif spécifique et l'interaction avec la plateforme de développement.

Organisation

Le développement se fera au choix sur les postes CPE (démarrage sur clé USB fournie) ou sur vos ordinateurs personnels si vous disposez d'une distribution Debian GNU/Linux *NATIVE* en version SID (Pas de VM). Il n'est pas envisageable de réaliser le développement autrement qu'à partir d'un système Debian GNU/Linux.

Vous travaillerez par groupes en fonction du matériel disponible. Ces groupes resteront figés pour toute la durée du module.

La première séance sera consacrée à un TP d'introduction sur les outils de développement et la présentation du système qui sera utilisé pour le reste des séances.
Cette séance sera suivie d'un cours sur le développement de systèmes embarqués utilisant le Noyau Linux.
Les séances restantes seront consacrées à l'étude et la réalisation d'un exemple concret.

Chaque groupe devra choisir un axe de développement parmi ceux proposés (ou en proposer un en rapport avec l'optique générale du mini-projet, à faire valider) et le mettre en œuvre sur le matériel proposé.

Consignes

Points impératifs

Impératif :

  1. Qui exige ou prétend exiger l’obéissance à un ordre, en parlant des paroles et des gestes.
  2. (Droit) Loi, disposition impérative : Celle qui exprime un ordre absolu.

Rédaction

  • Merci d'écrire en Français (ou en anglais) correct. (Lire des torchons ne me passionne pas du tout)
  • Attention à l'orthographe (+ grammaire et conjugaisons)
pas de language SMS
moins de fautes que de mots dans le rapport
  • Utilisez les bons termes techniques ou votre crédibilité en prendra un sérieux coup !!!
  • Ne pas utiliser d'abréviations non expliquées, surtout quand elles peuvent porter à confusion.
  • Résumez les informations collectées, ne faites pas de copié-collé, sauf citations (en citant la source)

Format des rendus

Rendre tous les documents dans une archive unique (voir formats acceptés ci-dessous).

  • Documents au format "Portable Document Format" (PDF) version 1.3 ou 1.4
  • Images au format "Portable Network Graphics" (PNG) ou "Joint Photographic Experts Group" (JPEG)
  • Images vectorielles au format "Scallable Vector Graphics" (SVG)
  • Archives au format "Tape archiver" (tar) compressés avec GNU zip (gzip), bzip2 ou lzma
  • Fichiers source et textes au format "ASCII" unix ou "UTF-8 Unicode"

Décrivez bien les éléments rendus (dans leur nom), de façon à ce que l'on n'ait pas à deviner de quoi il s'agit.

Une somme MD5 permet de s'assurer qu'il s'agit bien du bon fichier.

Un fichier "readme" est intéressant si il ne contient pas tout votre rapport au format texte.

Ne mettez pas d'espaces dans les noms de fichiers, utilisez des points (.), des tirets (-) ou des underscore (_) !

Code

  • Il est impératif que vos rendus permettent de recréer votre travail en repartant des sources originales.
  • N'oubliez pas les fichiers nécessaires à la compilation (makefiles ou autres)
  • Incluez un fichier "readme" pertinent expliquant entre autres comment compiler, exécuter, installer .... et à quoi sert le code !!! (ce que fait votre programme)
  • Ne pas commenter le code en Français !! (mais en anglais)
  • N'incluez jamais vos fichiers source dans un rapport.
  • Utilisez éventuellement "diff" pour ne rendre que les différences apportées au code source d'un projet exisant
Noter les origines des sources
Indiquer comment les obtenir
Préciser les versions
Fournir des patchs en indiquant l'ordre d'application.

Respect de la propriété intellectuelle

Veillez à toujours respecter la propriété intellectuelle du code ou des logiciels que vous utilisez !

  • Quelle est la licence de chaque élément utilisé ?
  • Citez les sources.

Ceci est valable pour le travail en groupe aussi, citez les personnes ayant participé.

Conseils de rédaction

  • Votre compte rendu doit permettre de rendre compte du travail que vous avez effectué et synthétiser les éléments que vous avez compris. Il me semble cependant évident que vous devrez rendre compte d'un travail effectif, et que nous rendre une mauvaise présentation d'un projet existant n'a aucune valeur.
  • Au plus les rapports feront preuve d'un travail personnel et au plus les notes seront élevées et mes remarques seront détaillées.
  • Vous êtes ici pour devenir ingénieurs, votre travail doit avoir une qualité qui reflète votre niveau : esprit d'analyse, vision large du projet (alternatives, problèmes potentiels, performances, contraintes, évolutions, ...), prise d'initiatives.
  • Ne restez pas bloqués sur un problème, et rendez compte des échecs. Une recherche ne donne pas toujours de résultat, mais votre travail doit être correctement consigné et documenté pour permettre la poursuite du travail.
  • Il est inutile de détailler des standards ou d'étaler des connaissances techniques qui ne sont pas directement liées au projet ou utiles pour sa compréhension, et même dans ce cas, un lien vers un article pertinent est toujours préférable, quitte à ce que vous contribuiez à cet article.
  • Résumez les informations collectées : ne faites pas des "copier coller" d'internet, j'ai aussi internet chez moi. (Vous pouvez bien entendu citer un court passage pertinent, en citant vos sources)
  • Il s'agit d'un rapport technique, pas d'une rédaction.
Objectif(s)
Plan structuré
Glossaire
Pas d'abréviations

Conseils pour les séances de TP/Projet

  • Notez ce que vous faites
commandes utilisées
liens des sites consultés
sources utilisées
pistes à explorer
...
  • Sauvegardez un maximum de choses utiles (fichiers de configuration, liste des commandes, ...).
  • Sauvegardez régulièrement.
  • Le temps imparti est limité.
  • Gardez en tête les objectifs du projet.