Try   HackMD

Principes et techniques de production de projets numériques

Syllabus Sorbonne CFA des sciences – 2023

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

© Julien Noyer - All rights reserved for educational purposes only


Avant-propos

Depuis les années 1990 et l'avènement des Internets, un grand nombres de stratégies de développements ont été mis en place qui correspondent à la fois aux possibilités offertes par les différents langages de programmation et à l'évolution des pratiques l'informatiques d'une population qui se connecte toujours plus.

Les dix dernières années ont permis de voir qu'un langage de programmation se dégage dans la mise en place d'outils disponibles sur les Internets, sans pour autant avoir pour objectif de remplacer les autres langages, le Javascript à démontrer sa valeur aussi bien pour développer des applications dites « FrontEnd » que des applications dites « BackEnd ».

Au delà des notions strictement techniques, les Internet et plus précisément le Web ont permis à toutes les personnes qui les utilisent d’augmenter leur connaissances sur le monde qui les entour et sur les outils qu'elles manipulent. Si en 1990 la notion d'intelligence artificielle était réservé à la science fiction, elle se retrouve aujourd'hui au cœur des discussions, en politique comme dans nos relations de tous les jours.

Dans le cadre de la production de projets numériques, quasiment plus aucune ligne de code n'est écrite sans l'aide d'une ou plusieurs IA, et l'évolution du matériel que nous utilisons nous permet de tirer avantage de certains algorithmes qui sont devenus accessibles selon différents protocoles. Les enjeux de production deviennent alors multiples, et ne peuvent plus uniquement être vues à travers le prisme technique, car les aspects philosophiques et sociaulogiques prédominent.


Présentation du cursus

Nos trois sessions de cours sont organisées autour de la création d'un projet qui permet de mettre en avant les principales réflexions à avoir pour produire un projet a destination du grand publique. Les cours prendrons la forme d'un travail dirigé à faire par groupe de 3 ou 4 dont chaque membre devra rédiger un compte rendu du travail qu'il ou elle aura réalisé. L'objectif du cursus n'est pas de finir le projet à 100% mais de présenter une réflexion générale suffisamment aboutie et argumenter pour valider la faisabilité et la pertinence du projet présenter.

Pour organiser au mieux votre travail durant nos 3 sessions de cours, chaque journée sera organisées de la façon suivante :

  • début de matinée : recherches, Q&R
  • milieu de matinée : définition de la problématique principale (JN)
  • fin de matinée : proposition de solution(s) technique(s)
  • début d'après-midi : définition des étapes de productions
  • fin d'après-midi : travail de groupe, fourniture de code de départ (JN)

Cette organisation peut-être amenée à évoluer selon l'avènement des équipes





Présentation du projet de groupe

Chatons, c'est mignon un chaton

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Définition

Vous avez à développer un projet d'apparence simple, très largement utilisé par les internautes et qui représente un des socles principaux des Internets : un système de messagerie instantanée. La définition de ce projet est volontairement simple pour vous laisser l'opportunité de réfléchir aux problématiques relatives à la mise en place d'un tel système, l'enjeu étant de vous permettre de définir des stratégies et de les confirmer.


Enjeux pédagogiques

Ce travail de groupe nous permettra de mettre en avant les notions théoriques de la mise en production de projets numériques, c'est pourquoi nous vous amènerons à réfléchir sur les 3 axes principaux suivant :

  • définir une structure serveur
  • définir un système d'informations
  • structurer un projet (BackEnd / FronEnd)

Pour vous aider à répondre à ces enjeux il vous sera apporté durant les sessions de recherches et de questions/réponses à la fois des supports de cours et des retours d’expériences qui vous seront présenté par Julien Noyer.


Cas utilisateur

Vous avez, sans aucun doute, déjà utilisé un système de messagerie instantanée, ce qui vous permet d'avoir une idée globale de ce à quoi un internaute peut s'attendre lors de l'utilisation d'un tel système. Nous allons néanmoins définir quelques cas utilisateur pour vous aider à initier votre réflexion :

  1. aucune inscription nécessaire
  2. chaque conversation à une URL unique
  3. chaque conversation à un mot de passe défini par son créateur
  4. pour créer ou accéder à une conversation il faut définir son pseudo
  5. il est possible de publier des messages, des liens et des images

D'autres cas utilisateur peuvent être définis selon les problématiques soulevé lors des sessions.


Enjeux technico-philosophiques

La simplicité des cas utilisateur définies ci-dessus est faite pour vous amener à une réflexion qui va au-delà de vos compétences techniques pour vous permettre de définir vos propres critères de faisabilité d'un projet. S'il vous avait été demandé de développer une plateforme de « fishing » pour cette exercice, l'auriez-vous fait ? Sans aller jusqu'à vous autoriser à ne pas développer ce système de messagerie instantanée, il vous est demandé d'exercer un regard critique sur les fonctionnalités que vous allez définir selon les cas utilisateur.

Vous pouvez considérer par exemple qu'une inscription est nécessaire pour accéder à un tel système, vous pouvez dans ce cas changer le principe défini ci-dessous pour y intégrer un tunnel d'inscription. En revanche vous aurez à préciser les avantages que vous avez identifier à changer de système et les problématiques qui sont résolues grâce à ce changement.

Autre piste de réflexion relatif à la réglementation générale pour la protection de données personnelles, comment faire avec un tel système pour assurer la non-divulgation d'informations sensibles ainsi que leur portabilité malgré l'absence d'inscription préalable ? Enfin, et pour répondre à un problème majeur dans les échanges en ligne, comment éviter insultes, intimidations et harcèlements alors qu'aucune inscription n'est requise ?





Ressources

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

La liste ci-dessous contient les liens utiles et des ressources qui pourrons vous permettre de définir les meilleures solutions pour la mise en production d'un projet web :

Hébergement

Nom de domaine

Base de données