Passer au contenu

Chaînes de blocs et contrats automatiques, informatique en nuage et développement agile

Auteur(s) : Wendy Gross, Simon Hodgett, Sam Ip

Le 13 décembre 2017

Cette dernière année a marqué l’accélération des technologies transformationnelles qui ont de plus en plus d’incidence sur les entreprises ainsi que la société en général. Ces nouveautés technologiques et, de façon plus générale, le rythme renouvelé et accéléré des progrès technologiques offrent d’immenses possibilités pour les entreprises.

Chaînes de blocs

De loin la nouveauté la plus importante qui a retenu l’attention des médias en 2017 est l’extraordinaire croissance de la technologie des chaînes de blocs. De façon générale, les chaînes de blocs sont une base de données (ou registre) de type particulier qui peut seulement être ajoutée à des réseaux de pairs à pairs ou distribuée sur ceux-ci, et sont supportées par cryptographie. Lorsqu’elle est déployée à une échelle suffisamment grande, une chaîne de blocs ne peut virtuellement pas être effacée. Ces caractéristiques font de la chaîne de blocs une plateforme idéale pour faciliter les versements directs de valeur ou pour stocker et exécuter le code machine qui fait partie d’une entente entre des parties (appelée « contrats automatiques »).

La poussée de la technologie des chaînes de blocs et son potentiel de devenir une technologie transformationnelle ont été comparés à l’avènement de l’Internet et du Web. Cet intérêt est stimulé en partie par l’ascension des « premières émissions de cryptomonnaies » comme moyen de financement de rechange et l’augmentation exponentielle de la valeur de la cryptomonnaie Bitcoin. Mais en plus d’être un moyen de financement de rechange et de la cryptomonnaie, cette technologie a le potentiel de grandement transformer les pratiques de secteurs importants de l’économie.

Entre autres choses, la technologie des chaînes de blocs écarte les intermédiaires qui agissaient auparavant à titre d’autorités centrales dans une vaste gamme d’opérations. Par exemple, dans le cas de transferts internationaux d’argent, la technologie des chaînes de blocs peut décentraliser de nombreux systèmes de paiement centralisés traditionnels nécessaires à l’exécution de ces transferts. Elle peut faciliter le transfert de valeur par-delà les frontières presque instantanément sans la participation d’un intermédiaire traditionnel comme une banque. Une autre utilisation populaire est de suivre de façon sécuritaire des produits alors qu’ils cheminent le long de chaînes d’approvisionnement complexes. Cela facilite la traçabilité des produits et permet de rappeler ceux qui sont visés par des questions de sécurité.

Lorsque de nouvelles technologies transformationnelles font leur apparition, souvent on ne sait pas comment les cadres juridiques réagiront et s’adapteront, ce qui donne lieu à une période d’incertitude. Dans le cas de la technologie des chaînes de blocs, beaucoup de questions de ce genre demeurent en suspens, notamment la gestion des risques, les modes exemplaires de passation de contrats, la protection de la vie privée et de la sécurité, la compétence, l’imposition et la gouvernance. Voici quelques questions émergentes à surveiller :

Normes

Des normes voient le jour afin de faciliter le foisonnement et l’adoption de la technologie des chaînes de blocs. Par exemple, le comité ISO/TC307, qui a été approuvé par l’Organisation internationale de normalisation en 2016, a tenu sa première réunion afin d’examiner la norme ISO/TC307 relative aux chaînes de blocs. Cette norme devrait définir, notamment, une architecture de référence pour les chaînes de blocs, la façon dont l’identité est gérée et une terminologie uniforme des chaînes de blocs. De plus, il y a une volonté d’établir certaines chaînes de blocs qui ont été implantées comme la norme de facto pour les entreprises. Par exemple, la Linux Foundation a lancé Hyperledger Fabric v.1.0, qui s’est imposée comme la première plateforme de chaînes de blocs adaptée aux besoins des entreprises.

Opposabilité des contrats automatiques

Bien qu’en théorie les contrats automatiques « s’autoexécutent », il n’est pas clair qu’ils soient opposables à travers le monde. Des mesures législatives portant sur l’opposabilité des contrats automatiques ont été prises cette année dans certains territoires, notamment dans l’État de l’Arizona. Des exemples de pratiques en matière de contrats automatiques qui atténuent les risques liés à l’opposabilité commencent également à apparaître (p. ex. des modèles de contrat fractionné, dont les conditions principales en matière de conformité à la loi sont présentées aux parties en dehors de la chaîne de blocs, mais liées au contrat automatique se trouvant dans la chaîne de blocs).

Vie privée et sécurité

Les chaînes de blocs présentent des risques et des occasions en matière de gestion de la vie privée et de la sécurité. Une cryptographie forte et la capacité de gérer les autorisations et l’accès aux renseignements offrent des occasions évidentes de gérer les exigences de consentement et de déterminer comment les renseignements sont utilisés. Inversement, le fait que les données saisies dans les chaînes de blocs soient distribuées à grande échelle et immuables entraîne des risques de distribution non autorisée de renseignements personnels et de données confidentielles, ainsi que des enjeux importants touchant la réparation et la minimisation de telles violations lorsqu’elles se produisent. Conscient de ces préoccupations, Vitalik Buterin, cofondateur d’Ethereum (une des plateformes de chaînes de blocs les plus répandues pour les contrats automatiques), a dévoilé les plans pour « Ethereum 2.0 », la version de nouvelle génération d’Ethereum conçue précisément pour répondre à ces préoccupations, entre autres.

Octroi de licences pendant l’implémentation

La technologie des chaînes de blocs est couramment implantée sous la forme de logiciel ouvert, ce qui signifie que le code source peut être librement téléchargé et examiné. Cette approche de développement communautaire présente d’importants avantages. Cependant, l’octroi de licence de logiciel ouvert peut poser des difficultés. Par exemple, certaines licences de ce genre imposent, comme condition d’utilisation, que toutes les modifications soient divulguées lorsque le produit de travail est distribué. D’autre part, il est difficile de se conformer à d’autres licences tout en respectant d’autres modèles d’octroi de licence, comme ceux qui sont requis par des boutiques d’applications communément utilisées.

En 2018, nous nous attendons à ce que l’écosystème des chaînes de blocs évolue à un rythme croissant. L’attention passera probablement des cryptomonnaies et des jetons aux contrats automatiques, avec des répercussions perturbatrices sur une variété de secteurs, comme les services financiers et les chaînes d’approvisionnement. Le cadre juridique pourrait avoir à s’adapter rapidement pour faire face aux enjeux réglementaires soulevés par le foisonnement de ces technologies, mettant les entreprises au défi de se familiariser rapidement au paysage en rapide évolution.

Informatique en nuage

L’informatique en nuage est la fourniture de ressources informatiques suivant un modèle utilitaire à partir d’importants centres de données hautement sophistiqués. L’an dernier, l’informatique en nuage a continué à s’implanter dans de plus en plus d’entreprises et est sur le point de devenir la principale forme de mise à disposition de ressources et d’applications informatiques. Sa grande disponibilité, sa simplicité d’évolutivité et ses coûts relativement bas ont, entre autres, favorisé la montée d’une vigoureuse communauté de jeunes entreprises technologiques au Canada et ailleurs dans le monde. De plus, de grandes entreprises qui conservaient autrefois de vastes centres de données se tournent de plus en plus vers l’informatique en nuage pour accroître leur efficacité et réaliser des économies.

Encore cette année, les fournisseurs d’informatique en nuage ont continué d’investir dans d’importantes infrastructures au Canada, renforçant leur capacité à dissiper toute incertitude quant à l’emplacement à partir duquel les services seront fournis. Cela s’est soldé par une plus grande volonté des secteurs autrefois méfiants de l’informatique en nuage, comme les services financiers, le gouvernement et les soins de santé, d’envisager la possibilité de migrer vers cette technologie.

Les clients doivent prendre un certain nombre de questions en considération avant d’utiliser les services d’informatique en nuage. Pour les clients exerçant des activités dans des secteurs réglementés tels que les institutions financières canadiennes, les lignes directrices B-10 du Bureau du surintendant des institutions financières (le BSIF) prévoient certaines exigences ayant trait, notamment, à l’emplacement du service, aux droits de vérification requis et à la ségrégation des données, qui constituent des défis pour le modèle de ressources partagées de l’informatique en nuage. Dans le cas des fournisseurs de logiciels à la demande qui s’en remettent à un tiers fournisseur de services d’informatique en nuage, aucun contrat direct n’est conclu avec le fournisseur de services d’informatique en nuage, et des questions comme la sécurité des données et la responsabilité générale du service et de la conformité doivent être prises en compte.

Les entreprises qui envisagent de migrer vers l’informatique en nuage devront prendre en considération des questions touchant la conformité des licences d’utilisation des applications, et négocier des ententes de services d’informatique en nuage qui tiennent compte de leurs activités et des exigences réglementaires, y compris leur degré de tolérance au risque.

Méthode de développement de logiciels agile

Le développement de logiciels agile est un terme hyperonyme qui traduit différentes approches (p. ex. Scrum) de développement de logiciels qui mettent l’accent sur, entre autres, la collaboration avec les clients et les réactions rapides aux changements par des cycles itératifs de conception et d’élaboration. Cela va à l’encontre des modèles de développement traditionnels appelés le « modèle de la cascade », selon lequel il y a une seule phase de conception, après laquelle des efforts importants d’élaboration sont déployés. Les avantages possibles mentionnés de l’adoption d’une approche agile comprennent l’élaboration d’un logiciel de meilleure qualité et une plus grande satisfaction du client. Nous avons ainsi constaté une nette augmentation de l’intérêt à l’égard du développement de logiciels agile chez les entreprises.

La conclusion de contrats de services de développement de logiciels agile nécessite un cadre différent de celui utilisé aux fins de la conclusion de contrats de services de développement de logiciels traditionnels. Les projets agiles comportent la gestion du fournisseur de services, des produits à livrer et des coûts à l’aide d’outils qui reflètent le besoin de changement continu et rapide pendant le projet. Ce type de projet nécessite également un plus grand degré d’engagement du client, ce qui est souvent une nouveauté pour les organisations habituées à conclure des contrats de services de développement de logiciels traditionnels. La méthode de passation de contrats doit mettre l’accent sur une gouvernance et une responsabilisation vigoureuses tout en respectant la méthode agile.

Conclusion

Les chaînes de blocs, l’informatique en nuage et le développement de logiciels agile sont quelques exemples des remarquables progrès technologiques qui touchent actuellement tous les secteurs d’activité et la société. Les clients devront être proactifs s’ils veulent suivre ces progrès rapides et, ainsi, tirer parti des nouveaux débouchés et réduire les risques.