Projet

Consultation 2021/61: Modification de l’ordonnance sur les droits politiques (ODP) et de l’ordonnance de la ChF sur le vote électronique (OVotE) · 48 pages

Fedlex · Projet · Page 44Fedlex · Projet

Ordonnance de la ChF sur le vote électronique RO …

25.9.2 Chaque module possède une responsabilité bien définie.

25.9.3 La responsabilité d’un module doit être restreinte et ciblée, et les

responsabilités de deux modules ne doivent pas se chevaucher.

25.9.4 Les modules ne partagent pas de données par le biais d’une mémoire

volatile commune (par ex. variable globale).

25.10 Simplicité

25.10.1 Définition : propriété du logiciel qui permet la mise en œuvre des

fonctions de la manière la plus compréhensible possible. En général, il s’agit d’éviter les pratiques qui augmentent la complexité.

25.10.2 Une approche top-down (structure hiérarchique) est adoptée dans la

conception.

25.10.3 La conception ne prévoit pas de fonction dupliquée entre les modules.

25.10.4 La conception ne prévoit pas de données de portée globale, c.-à-d. de

données pouvant être utilisées partout sans être passées en paramètre.

25.10.5 Les combinaisons booléennes compliquées sont évitées dans le code source. 25.10.6 Les variables ne sont pas réutilisées pour d’autres usages que ceux prévus

initialement dans le code source.

25.10.7 Le nombre d’imbrications est limité autant que possible dans le code

source.

25.10.8 La complexité cyclomatique et cognitive est limitée autant que possible

dans le code source.

25.11 Concision

25.11.1 Définition : propriété du logiciel qui permet la mise en œuvre d’une

fonction avec un minimum d’instructions dans le code source.

25.11.2 Le code source ne contient pas de code mort.

25.11.3 Le code source ne contient pas de variables inutiles.

25.11.4 Le code source ne contient pas de duplications.

25.12 Intelligibilité

25.12.1 Définition : propriété du logiciel qui permet aux destinataires d’en

déterminer les objectifs, les hypothèses, les contraintes, les entrées, les sorties, les composants et le statut.

25.12.2 Les classes, les fonctions et les étapes de traitement complexes sont

commentées dans le code source selon une convention établie par le développeur du logiciel.

25.12.3 Les variables et les fonctions ont des noms évocateurs.