3 points par GN⁺ 2023-10-28 | 1 commentaires | Partager sur WhatsApp
  • Un article sur la manière de dessiner des diagrammes d’architecture logicielle efficaces
  • L’auteur souligne l’importance des diagrammes dans le développement logiciel, où ils deviennent souvent le centre des discussions et des prises de décision
  • Le contenu des diagrammes doit être exact, à jour et non ambigu, et les entités ainsi que leurs relations doivent être représentées avec précision
  • L’auteur propose plusieurs caractéristiques d’un diagramme efficace :
    • Minimiser la distance entre voisins : garder les nœuds liés proches les uns des autres rend le diagramme plus facile à comprendre. Cela devient plus difficile à mesure que le diagramme grandit
    • Rechercher la symétrie : un diagramme symétrique est esthétiquement attrayant et plus facile à comprendre. Cela peut aussi renforcer le sens transmis par le diagramme
    • Alignement centré : un diagramme propre et bien aligné clarifie les concepts. Maintenir l’alignement à chaque nouvel ajout permet de garder le diagramme net
    • Utiliser des groupes de conteneurs : diviser le diagramme en plusieurs zones étiquetées le rend plus facile à comprendre. Les conteneurs peuvent ajouter du contexte, montrer l’abstraction ou regrouper des objets liés
  • L’auteur promet d’aborder davantage dans une deuxième partie le tracé des lignes, la taille et la position des étiquettes, les couleurs, les icônes, etc.
  • Cet article fait partie du blog Terrastruct, qui fournit des ressources aux ingénieurs logiciels et aux développeurs

1 commentaires

 
GN⁺ 2023-10-28
Avis Hacker News
  • Un utilisateur explique qu’il aime créer des diagrammes avec le langage D2 grâce à ses options de mise en forme et à sa syntaxe, et qu’il a rédigé un billet de blog à ce sujet.
  • VisualFlows.io prévoit de lancer prochainement sa v1.0, qui permettra aux utilisateurs de concevoir en quelques minutes une carte d’architecture animée de leur SaaS. Les principales fonctionnalités incluent Smart Sections, Smart Edges, Smart Node Deletion, les modes sombre/clair, l’intégration embarquée, le glisser-déposer d’images/svgs/gifs, des icônes AWS/Windows/Google, ainsi que la prise en charge de Markdown.
  • Un autre utilisateur affirme qu’il peut être difficile de conserver de « beaux » diagrammes lorsque le système commence à évoluer, et propose d’utiliser le diagrams-as-code comme alternative plus efficace.
  • Un utilisateur exprime sa frustration face au fait que, malgré les possibilités offertes par les grands modèles de langage, il n’existe pas d’outil local capable de réorganiser des blocs et des flèches pour obtenir un rendu esthétiquement agréable. Il se demande pourquoi il n’existe pas d’outil où l’utilisateur pourrait dessiner des boîtes et des flèches, et où l’outil alignerait ensuite l’ensemble pour le rendre plus propre.
  • Un utilisateur établit un parallèle entre les diagrammes d’architecture logicielle et les schémas électriques, les diagrammes de circuits et d’autres dessins d’ingénierie. Il soutient qu’il n’existe pas de « bonne réponse » unique et que le choix de bonnes abstractions et de bonnes méthodes de représentation est ce qui sépare une idée compréhensible d’un désordre regrettable.
  • Un utilisateur partage son expérience de création de diagrammes avec yEd. Avec cet outil, il est possible de mettre les boîtes et les flèches dans tous les sens, mais quelques clics dans le menu suffisent ensuite pour tout réorganiser automatiquement.
  • Un utilisateur remercie l’auteur pour cet article expliquant de façon concrète comment rendre quelque chose plus esthétique. Il dit qu’il se fie habituellement à son intuition.
  • Un utilisateur partage son expérience avec D2 pour générer automatiquement un grand diagramme D2 à partir d’un fichier serverless.yml. L’outil se met à jour automatiquement à mesure que le système grandit.
  • Un autre utilisateur ajoute le langage D2 à son billet de blog pour traiter de la conception en cybersécurité sous forme de code.
  • Un utilisateur suggère d’ajouter des blocs plantuml afin d’insérer des diagrammes dans des projets rédigés en documents Markdown. Il souligne que, sur GitLab, le rendu est correct lorsqu’on ouvre les fichiers .md dans un navigateur web, alors que GitHub ne propose pas encore cette fonctionnalité.