-
Notifications
You must be signed in to change notification settings - Fork 1k
Développement logiciel
Par uniformité avec les bibliothèques standard fournies par les langages de programmation, les objets (méthode, fonctions, variables…) manipulés dans le code seront nommés en anglais.
Exemples :
getCurrentYear()
,var total = sum(1, 2)
.
En application des principes du DDD et des bonnes pratiques de programmation, les éléments du domaine métier conservent leur nom intact, y compris dans le code, et sans traduction s’ils sont en français.
Exemples :
getRevenuFiscal()
,var total = sum(chefDeFamille, conjoint)
.
Par souci de lisibilité pour les partenaires, notamment administratifs, la langue utilisée pour la description et le suivi de fonctionnalités est le français.
En revanche, pour éviter le coût du changement de contexte, les discussions techniques, notamment par le biais de commentaires ou d'échanges par des logiciels spécialisés, peuvent se faire en anglais, la langue la plus utilisée dans le cadre du développement logiciel.
Attention à ne pas rédiger un README
intégralement en anglais. Un simple résumé en français (exemple) vous permettra de respecter la loi.
Fais ce que tu veux. Mais prévois que tu ne seras probablement pas le seul à intervenir sur ton produit… s'il marche 😉
Un service commercial externe est un outil ou un composant logiciel sur lequel la DINSIC n'a pas tout à la fois :
- la liberté d'utiliser le logiciel ;
- la liberté de copier le logiciel ;
- la liberté d'étudier le logiciel ;
- la liberté de modifier le logiciel et de redistribuer les versions modifiées.
Il s'agit des quatre libertés fondamentales du logiciel libre.
Cela n'implique pas nécessairement qu'il s'agisse d'un logiciel libre. Un logiciel sous propriété intellectuelle DINSIC peut ainsi respecter ces critères.
Un outil ou composant logiciel dont une défaillance empêche le produit de remplir une promesse faite à l'utilisateur ne devrait pas être un service commercial externe.
Le logiciel doit pouvoir être réutilisé par d'autres acteurs que la DINSIC… et si un composant critique disparaît, on est coincés !
Exemples :
- Framework applicatif.
- Serveur.
- Composant de compilation.
- Moteur de recherche.
Un outil ou composant logiciel qui n'est pas nécessaire pour que le produit tienne les promesses faites à l'utilisateur est dit « support ». Les outils supports à la production peuvent être des services commerciaux externes.
Exemples :
- Outil de suivi d'avancement.
- Outil de déploiement continu.
- Composant de suivi d'usage.
Voir la page licences.
Si tu veux que ton projet ait une adresse de la forme monprojet.beta.gouv.fr, il faut en faire la demande sur le canal #incubateur-ops du Slack de beta.gouv: quelqu'un doit ajouter une ligne sur le DNS.
Concernant l'HTTPS, il faut également:
- demander l'accès au repository infra/nginx-shared (non public pour des raisons évidentes de sécurité)
- ajouter sa configuration nginx via une Merge Request
- demander à quelqu'un la validation/merge de la MR en question sur #incubateur-ops
Une instance de Matomo (anciennement appelé Piwik) est disponible. Elle est gracieusement mis à disposition par Etalab et n'a pas de SLA. Demande la création d'un compte pour ton projet sur le canal #etalab-ops du Slack de beta.gouv. Tu pourras ensuite intégrer le code de suivi fourni par Matomo dans le code de ton application.