Comment mettre en œuvre Atlassian Jira + Confluence dans une entreprise. Problèmes techniques

Vous envisagez d'introduire le logiciel Atlassian (Jira, Confluence)? Voulez-vous faire de graves erreurs de conception que vous devrez résoudre au dernier moment?


Alors vous êtes ici - nous envisageons l'introduction d'Atlassian Jira + Confluence dans une entreprise en tenant compte de divers aspects techniques.
Bonjour, je suis le chef du centre de compétence produit d'Atlassian à la Banque agricole russe (Rosselkhozbank) et je suis responsable du développement du système de gestion du cycle de vie (SLC) basé sur les produits logiciels Jira et Confluence.

Dans cet article, je décrirai les aspects techniques de la construction d'un LMS. L'article sera utile à quiconque envisage de mettre en œuvre ou de développer des systèmes basés sur le logiciel Atlassian dans un environnement d'entreprise. L'article ne nécessite pas de connaissances particulières et est conçu pour le niveau initial de connaissance des produits Atlassian. L'article sera utile aux administrateurs, propriétaires de produits, chefs de projet, architectes, à tous ceux qui envisagent de mettre en œuvre des systèmes basés sur le logiciel Atlassian.

introduction


L'article abordera les problèmes techniques de la mise en œuvre d'un système de gestion du cycle de vie (LMS) dans un environnement d'entreprise. Déterminons d'abord ce que cela signifie.

Que signifie une décision d'entreprise?


Cela signifie une solution:

  1. Évolutif. En cas d'augmentation de la charge, il existe une possibilité technique d'augmenter la capacité du système. Mise à l'échelle horizontale et verticale séparée - avec la mise à l'échelle verticale, la capacité des serveurs augmente, avec la mise à l'échelle horizontale, le nombre de serveurs pour que le système fonctionne augmente.
  2. . . , . .
  3. . . .
  4. Self-managed (On-premise). Self-managed — , . , SaaS. Self-managed.
  5. Possibilité de développement et de test indépendants. Pour organiser des changements prévisibles dans le système, un système distinct pour le développement (changements dans le système), un système de test (Staging) et un système productif pour le travail des utilisateurs sont nécessaires.
  6. Autre Il prend en charge divers scénarios d'authentification, prend en charge les journaux d'audit, dispose d'un modèle de rôle personnalisé, etc.

Ce sont les principaux éléments des solutions d'entreprise et, malheureusement, ils sont souvent oubliés lors de la conception d'un système.

Et qu'est-ce qu'un système de gestion du cycle de vie (LMS)?


En bref, dans notre cas, c'est Atlassian Jira et Atlassian Confluence - un système qui fournit des outils pour organiser le travail d'équipe. Le système n'impose pas les règles d'organisation du travail, mais fournit une variété d'outils pour le travail, tels que Scrum, des tableaux Kanban, un modèle en cascade et un Scrum évolutif, etc.
Le nom du LCMS n'est pas un terme de l'industrie ou un terme commun, c'est simplement le nom du système dans notre banque. Pour nous, SLC n'est pas un système de suivi des bogues, ce n'est pas un système de gestion des incidents ou un système de gestion des changements.
Dans le système, bien sûr, il existe des fonctionnalités pour le suivi des bogues, l'enregistrement des incidents et la gestion des modifications. Et pour certaines tâches, cette fonctionnalité est utilisée. Mais on ne peut pas dire que tous les bugs ou tous les incidents ou tous les changements sont enregistrés dans notre système. Dans chaque cas, ses spécificités. Si une unité utilise Jira et y fait un changement, alors pour ce changement, cette équipe peut décider de garder là tous les bugs, tous les changements, tous les incidents. Mais il s'agit d'une solution locale pour une équipe distincte, pour une tâche spécifique.

Que comprend la mise en œuvre?


La mise en œuvre de la solution se compose de nombreux problèmes techniques et organisationnels:

  • Répartition des capacités techniques.
  • Achat de logiciel.
  • Création d'une équipe pour implémenter la solution.
  • Installation et configuration de la solution.
  • Développement d'architecture de solution. Modèle.
  • Développement de la documentation opérationnelle, y compris les instructions, les règlements, la conception technique, les règlements, etc.
  • Changer les processus de l'entreprise.
  • Création d'une équipe de support. Développement SLA.
  • La formation de l'utilisateur.
  • Autre

Dans cet article, nous examinerons les aspects techniques de la mise en œuvre, sans détails sur la composante organisationnelle.

Caractéristiques Atlassian


Atlassian est un leader dans de nombreux segments:


Les produits Atlassian possèdent toutes les caractéristiques essentielles de l'entreprise. Je noterai les fonctionnalités suivantes:

  1. Atlassian - Java Tomcat. Apache Tomcat Atlassian, , - Apache Tomcat, Atlassian, . , , — Atlassian . , Atlassian, Apache Tomcat. , , Jira Apache Tomcat 8.5.42, Confluence Apache Tomcat 9.0.33 ( , Tomcat ).
    ( Max Max Atlassian User Group Moscow, Tomcat.)
  2. , .
  3. . .
  4. . : https://partnerdirectory.atlassian.com, 16 . Atlassian, , . .
  5. (): https://marketplace.atlassian.com. Atlassian. Atlassian , . , .
    , Data Center approved apps. .
    , , .
  6. : https://www.atlassian.com/university
  7. SSO, SAML 2.0.
  8. Data Center. 2014 (Jira 6.3). Data Center (, single node installation 2020 ). Data Center, 2018 Data Center approved apps.
  9. . , . .
  10. Long Term . Enterprise , , , 2 . , Enterprise , .
  11. ( ). https://www.atlassian.com/enterprise/support-services
  12. Plusieurs options de SGBD sont prises en charge. Le logiciel Atlassian est fourni avec un SGBD H2 gratuit; ce SGBD n'est pas recommandé pour une utilisation productive. Les SGBD suivants sont pris en charge pour une utilisation productive: Amazon Aurora (Data Center uniquement) PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server. Il existe des restrictions sur les versions prises en charge et souvent seules les anciennes versions sont prises en charge, mais pour chaque SGBD, il existe une version avec prise en charge par le fournisseur:
    plates - formes prises en charge Jira , plates -
    formes prises en charge Confluence .

Architecture technique




Explications du schéma:

  • Le schéma montre l'implémentation dans notre banque, cette configuration est donnée à titre d'exemple et n'est pas recommandée.
  • nginx fournit une fonctionnalité de proxy inverse pour Jira et Confluence.
  • La tolérance aux pannes du SGBD est implémentée par les outils du SGBD.
  • Les modifications entre les environnements sont transférées à l'aide du plug-in Configuration Manager for Jira.
  • AppSrv dans le diagramme est son propre serveur d'applications pour les rapports; il n'utilise pas le logiciel Atlassian.
  • La base de données EasyBI a été créée pour la création de cubes et la création de rapports à l'aide du plug-in eazyBI Reports and Charts for Jira.
  • Le service Confluence Synchrony (un composant qui permet la modification simultanée de documents) n'est pas alloué à une installation distincte et s'exécute conjointement avec Confluence sur le même serveur.

Licence


Les problèmes de licence Atlassian méritent un article séparé, je ne mentionnerai ici que les principes généraux.
Les principaux problèmes rencontrés ont été des problèmes de licence pour les éditions Data Center. Fonctions de licence pour les éditions Server et Data Center:

  1. Server . .
  2. 'JIRA Users' global permission. , — , . , 'JIRA Users' .
  3. Data Center . . , .
  4. . , , , . , .
  5. tier (, 1001-2000 ). tier, .
  6. , ('JIRA Users' global permission).
  7. , .
  8. Les licences ne nécessitent que des installations productives, pour le reste, vous pouvez obtenir une licence de développeur: https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html .
  9. Pour acheter la maintenance, vous devez acheter la maintenance Renew Software - le coût est d'environ 50% du coût du logiciel initial. Cette fonctionnalité n'est pas disponible pour Data Center et ne s'applique pas aux plugins - pour les prendre en charge, vous devrez payer le coût total chaque année.
    Ainsi, le support logiciel annuel coûte plus de 50% du coût total du logiciel dans le cas de l'édition Server et 100% dans le cas de l'édition Data Center - ce qui est nettement plus que la plupart des autres fournisseurs. À mon avis, il s'agit d'un inconvénient significatif du modèle économique d'Atlassian.

Caractéristiques de la transition de l'édition Server vers le Data Center:

  1. Server Data Center . https://www.atlassian.com/licensing/data-center.
  2. Server Data Center — Server . Data Center.
  3. , Data Center. , , .
  4. Data Center . Server - .
  5. Data Center Server , .
  6. Server Data Center. 5% ( ). .


La livraison de base du logiciel Atlassian comprend un grand nombre de fonctionnalités, mais souvent les capacités fournies par le système font grandement défaut. Parfois, même les fonctions les plus simples ne sont pas disponibles dans la distribution de base, de sorte que les plug-ins ne peuvent pas être supprimés avec presque toutes les implémentations. Il est important de comprendre que Jira est une plate-forme, ici vous pouvez programmer toutes les fonctionnalités et plugins - il s'agit d'une implémentation payante de fonctionnalités supplémentaires. Pour le système Jira, nous utilisons les plugins suivants (l'image est cliquable): Pour le système Confluence, nous utilisons les plugins suivants (l'image est cliquable): Commentaires sur les tableaux avec plugins:







  • Tous les prix sont basés sur 2000 utilisateurs;
  • Les prix sont donnés sur la base des prix indiqués sur https://marketplace.atlassian.com , le coût réel (avec remises) est inférieur;
  • Comme vous pouvez le voir, le montant total est pratiquement le même pour les éditions de Data Center et Server;
  • Seuls les plug-ins prenant en charge l'édition Data Center ont été sélectionnés pour utilisation. Les plugins restants que nous avons exclus des plans de stabilité du système.

La fonctionnalité est brièvement décrite dans la colonne Commentaire. Des plugins supplémentaires ont étendu les fonctionnalités du système:

  • Ajout de plusieurs outils visuels;
  • Amélioration des mécanismes d'intégration;
  • Ajout d'outils pour les projets selon le modèle de cascade;
  • Ajout d'outils pour Scrum évolutif, pour organiser le travail des grandes équipes de projet;
  • Fonctionnalité ajoutée pour le suivi du temps;
  • Ajout d'outils pour automatiser les opérations et configurer les solutions;
  • Ajout de fonctionnalités pour simplifier et automatiser l'administration de la solution.

De plus, nous utilisons un plug-in de notre propre conception.
Nous prévoyons d'installer l' application Atlassian Companion sur les postes de travail des utilisateurs . Cette application vous permet de modifier des fichiers dans des applications externes (MS Office) et de les renvoyer à Confluence (enregistrement).
L'application pour les postes de travail des utilisateurs (client lourd) ALM Works Jira Client https://marketplace.atlassian.com/apps/7070 a décidé de ne pas l'utiliser en raison du mauvais support du fournisseur et des critiques négatives.
Pour l' intégration avec MS Project , nous utilisons une application auto-écrite qui vous permet de mettre à jour les états des problèmes dans MS Project à partir de Jira et vice versa. À l'avenir, aux mêmes fins, nous prévoyons d'utiliser un plug-in payantCeptah Bridge - JIRA MS Project Plugin , qui est installé en tant que module complémentaire sur MS Project.
L'intégration avec des applications externes est implémentée via des liens d'application. Dans le même temps, pour les applications Atlassian, les intégrations sont préconfigurées et fonctionnent immédiatement après la configuration, par exemple, vous pouvez afficher des informations sur les problèmes dans Jira sur la page Confluence.
Pour accéder aux serveurs Jira et Confluence, l'API REST est utilisée: https://developer.atlassian.com/server/jira/platform/rest-apis .
SOAP et l'API XML-RPC sont obsolètes et ne sont pas disponibles dans les nouvelles versions pour utilisation.

Conclusion


Nous avons donc examiné les caractéristiques techniques de la mise en œuvre du système basé sur les produits Atlassian. La solution proposée est l'une des solutions possibles et est bien adaptée à l'environnement d'entreprise.

La solution proposée est évolutive, tolérante aux pannes, contient trois environnements pour organiser le développement et les tests, contient tous les éléments nécessaires pour travailler ensemble dans le système et fournit une large gamme d'outils de gestion de projet.

Je me ferai un plaisir de répondre aux questions dans les commentaires.

All Articles