4. Utiliser des normes et des solutions ouvertes

[TODO: Ajouter / réviser le texte d'introduction]

Lignes directrices :

4.1 Profiter des normes ouvertes et adopter des pratiques exemplaires, y compris l’utilisation de logiciels libres, s’il y a lieu

Créez une technologie qui utilise des normes ouvertes pour garantir que votre système fonctionne et communique avec d'autres produits ou systèmes, et peut facilement être mis à niveau et étendu.

Adopter et utiliser des normes ouvertes signifie que vous pouvez:

  • passer d'une technologie à l'autre lorsque vous en avez besoin, en évitant le verrouillage des fournisseurs
  • changer rapidement et facilement votre service quand vous en avez besoin
  • augmenter la compatibilité avec toutes les parties prenantes
  • ouvrir la gamme des entreprises de qui vous pouvez acheter, car plus d'entre eux sont susceptibles d'utiliser la même norme que vous
  • accéder à un plus large éventail de fournisseurs de logiciels libres et propriétaires

Nos choix pour l'infrastructure d'hébergement, les bases de données, les plateformes logiciels, les langages de programmation et le reste de la pile technologique devraient éviter le verrouillage des fournisseurs et correspondre à ce que les entreprises modernes de logiciels grand public choisissent aujourd'hui. En particulier, les équipes de services numériques devraient envisager d'utiliser des logiciels libres, des solutions infonuagiques et des produits de base à travers la pile technologique, en raison de leur adoption généralisée et de leur soutien par les entreprises technologiques du secteur privé.

Les logiciels libres ont tendance à utiliser et à aider à définir des normes ouvertes et des spécifications accessibles au public. Les logiciels libres sont, par nature, des spécifications accessibles au public, et la disponibilité de leur code source favorise un débat ouvert et démocratique autour de leurs spécifications, les rendant à la fois plus robustes et interopérables.

Utiliser un logiciel libre signifie que vous pouvez bénéficier de:

  • résoudre les problèmes courants avec la technologie libre facilement disponible
  • plus de temps et de ressources pour des solutions personnalisées pour résoudre les problèmes rares ou uniques
  • réduction des coûts de mise enieuvre et de fonctionnement

Liste de contrôle

[TODO: Ajouter / modifier les éléments de la liste de contrôle]

  • Utiliser des normes ouvertes et des logiciels libres à chaque couche de la pile technologique
  • Tenir compte de l'utilisation de normes ouvertes et de logiciels libres lors du calcul du coût total de possession d'une solution, y compris les coûts de sortie ou de transition
  • Éviter le verrouillage à toutes les solutions propriétaires où des logiciels libres et / ou des normes ouvertes sont disponibles
  • Assurez-vous que le logiciel peut être déployé sur une variété de types de matériel de base

Stratégie d’adoption de l’informatique en nuage du gouvernement du Canada :

Guides d'implémentation

Solutions réutilisables

Ressources similaires

4.2 Concevoir des services et des plateformes que les Canadiens peuvent utiliser de façon intégrée au moyen de n’importe appareil ou réseau

In order to limit costs, avoid duplication of effort and provide a consistent client experience when using various services, the reuse and adaptation of existing technological solutions is encouraged. If the development of new solutions is required, consider the ability of others to reuse and adapt your work as this will provide additional value on an organizational level.

Using common, proven government solutions, approaches, and platforms will help the government:

  • meet the needs of your users by building with proven solutions
  • make users' experience of government more consistent, which generates trust
  • save time and money by reusing things that are already available

L’interopérabilité est la capacité que possède un produit ou un système, dont les interfaces sont intégralement connues, à fonctionner avec d'autres produits ou systèmes existants ou futurs et ce sans restriction d'accès ou de mise en oeuvre. L'interopérabilité technique devrait être assurée par l'utilisation de normes ouvertes.

Les interfaces de programme d'application (API) sont un moyen par lequel les fonctionnalités métier sont exposées numériquement. Ce sont des éléments essentiels à la prestation réussie des services numériques en direct du gouvernement et à l'expansion de la prestation de services à des fournisseurs tiers. Ils peuvent également permettre une plus grande interopérabilité entre les services, optimiser les expériences entre les appareils et même mener à de nouveaux services novateurs en permettant à des produits tiers de fonctionner de façon transparente avec les systèmes du gouvernement du Canada.

Liste de contrôle

  • Ensure content and functionality is optimized for a wide range of devices, including mobile devices and voice assistants, enabling users to be successful with their device of choice
  • Build services that are API-centric services, which execute most, if not all, functionality through API calls (e.g., connecting frontend to backend through an API)
  • Plan out API access from the beginning, designing services to be able to safely and securely expose functionality to other systems and the public.
  • Design APIs to be compete but also minimal, ensuring the expected functionality is provided but with as few public members per class and as few classes as possible. This makes it easier to understand, remember, debug and change the API.
  • Design APIs to have clear and simple semantics to make common tasks easy. Rare tasks should still be possible but not the focus. Avoid being overly general, optimizing specific use cases.
  • Design APIs to be intuitive so that a semi-experienced user can be successful with minimal assistance from the documentation and programmers can easily understand code that uses the API.
  • Design APIs to be easy to memorize by implementing a consistent and precise naming convention. Use plain language and recognizable patterns and concepts, avoiding abbreviations where possible.

Guides d'implémentation

Solutions réutilisables

Ressources similaires