Ce n'est pas un hasard si les développeurs parlent d'« architecture logicielle ». Un développeur construit une infrastructure, un backend, un frontend. Un architecte fait exactement la même chose. La différence tient en un mot : le réel.
L'architecte construit dans la réalité, avec une réalité de marché. Le développeur produit un logiciel, un site web, une application : ce n'est pas un bâtiment, mais c'est bien une construction, et elle a besoin d'une machine pour fonctionner.
Cette allégorie est très utile pour les architectes qui veulent devenir des superusers. La voici, pièce par pièce.
Le backend : ce qui tient le projet
Pour un développeur, le backend, c'est tout ce que l'utilisateur ne voit pas : les serveurs, les bases de données, la logique qui fait tourner l'application.
Pour l'architecte, le backend, c'est la structure et les réseaux : les fondations, les poteaux et les poutres, la plomberie, l'électricité, la ventilation. Personne ne les regarde, mais si le backend est mal pensé, tout le reste s'effondre, dans les deux métiers.
Le frontend : ce que l'on vit
Le frontend du développeur, c'est l'interface : ce que l'utilisateur voit, touche, parcourt.
Le frontend de l'architecte, c'est la façade, les espaces, la lumière, les parcours : l'expérience de celui qui habite ou traverse le bâtiment. Dans les deux cas, un bon frontend sur un mauvais backend ne dure pas.
Le hardware : les matériaux
Un logiciel ne tourne pas dans le vide : il lui faut du hardware, des processeurs, de la mémoire, des serveurs, avec leurs limites.
Le hardware de l'architecte, ce sont les matériaux de construction, avec leurs capacités techniques et structurelles. Une portée, une résistance, une épaisseur, un coefficient thermique : ce sont nos spécifications machine. Un projet qui ignore son hardware plante, comme un programme trop lourd pour la machine qui l'exécute.
Là où l'allégorie s'arrête
L'architecte et le développeur travaillent tous deux pour un marché, des utilisateurs, des contraintes de budget et de délai. Mais l'architecte livre une seule version, dans le monde physique. On peut mettre à jour une application chaque semaine ; on ne met pas à jour une dalle coulée. C'est ce qui rend l'architecture plus exigeante sur la préparation, et ce qui la rend aussi plus durable.
Ce que les architectes peuvent emprunter aux développeurs
C'est là que l'allégorie devient un outil de travail. Les développeurs ont inventé des méthodes que les agences gagneraient à copier :
| Chez le développeur | Chez l'architecte |
|---|---|
| Versions du code, historique des modifications | Indices des plans (A, B, C), archivage des versions de maquette |
| Tests automatiques avant de livrer | Contrôles avant émission, détection des conflits dans la maquette |
| Bibliothèques réutilisables | Bibliothèques de détails, de familles, de scripts Grasshopper |
| Découper un gros programme en modules | Découper un script en petits composants lisibles |
| Documentation pour l'équipe suivante | Fichiers rangés, nommés, compréhensibles par un collègue |
Dans Superusers (2019), Randy Deutsch rapporte l'avis d'un architecte néerlandais selon lequel toutes les agences deviendront des agences technologiques, et devront aussi être, en partie, des pratiques logicielles. Sept ans plus tard, avec des outils qui transforment le code en géométrie, cette prédiction n'a jamais été aussi proche.
Deux métiers qui montent ensemble
Le métier du développeur a connu un essor fulgurant parce qu'il a su s'outiller, se standardiser et apprendre en continu. Le métier d'architecte est à la veille du même mouvement. Ceux qui se préparent pour les années qui viennent sont ceux qui pensent déjà comme les deux : avec la rigueur d'un développeur, et la responsabilité de quelqu'un qui construit dans le réel.
Un conseil aux nouveaux superusers : cultivez ces allégories. Chaque fois qu'un outil vous paraît étranger, demandez-vous à quoi il correspond dans votre métier. C'est souvent la manière la plus rapide de l'apprendre, et de l'apprendre bien.
C'est l'esprit de nos formations. Envie d'apprendre ? Inscrivez-vous.
Sources : réflexion de l'auteur ; Randy Deutsch, Superusers: Design Technology Specialists and the Future of Practice (Routledge, 2019), résumé et paraphrasé.
