Fiche Technique IKAN ALM

Aperçu

IKAN ALM est une solution Web multi-plateformes pour la gestion du cycle de vie des applications. Il combine des initiatives DevOps (construction et intégration continue) et la gestion du cycle de vie pour prendre en charge la complexité des architectures orientées services et des systèmes hautement distribués.

IKAN ALM englobe tous les aspects du processus de gestion du cycle de vie des applications, offrant la gestion des constructions, l’intégration continue, la reconstruction, la construction manuelle, la gestion des versions, les processus d’approbation et la gestion du déploiement. Au sein d’IKAN ALM, vous définissez, mettez en œuvre et appliquez des processus de cycle de vie logiciel adaptés à votre organisation, y compris le développement, les tests, l’assurance qualité et la production finale.

IKAN ALM est un outil indépendant de la méthodologie et neutre pour le référentiel (permettant le développement multi-plateformes). IKAN ALM est conforme aux normes de l’industrie, telles que CMMI, ITIL et PRINCE. Il aide votre organisation à appliquer, contrôler, auditer, générer des rapports et faciliter les meilleures pratiques et directives pour la gestion du cycle de vie des applications, et fournit des avantages qui garantissent la conformité aux exigences d’audit et améliore les communications entre les différents intervenants du système informatique.

N’hésitez pas à nous contacter si vous souhaitez plus d’informations sur notre solution IKAN ALM pour la gestion du cycle de vie d’une application.

Fonctionnalités techniques

Fonctionnalités de Construction

  • Support de projets multiples

  • Intégration continue: planification temporelle des Constructions du projet

  • Possibilité d’initialiser une Construction manuellement

  • Construire/reconstruire toute version de projet

  • Construire/reconstruire sur des environnements multiples

  • Flux de travail de Construction personnalisé: possibilité d’adapter le flux des sous-processus (les Phases) devant être exécutés pour une Construction

  • Paramètres de Construction dynamiques et sécurisés pouvant être modifiés juste avant l’exécution de la Construction

  • Balisage du Référenciel de Contrôle de Version configurable: balisage basé sur des modèles de balise définis pour chaque Branche (utilisant des variables telles que le nom du projet, le numéro de construction, la date et l’heure, le préfixe de la Branche Secondaire, le suffixe, …​) Le balisage (basé sur des modèles) par défaut peut être révisé au moment de la création de la construction, par exemple, pour permettre l’utilisation de libellés tels que "RC1" ou "BaseLine4.0".

  • Dépendances de projets:

    • inclure le dernier résultat, un résultat spécifique ou le résultat de construction de production d’un projet dépendant

    • inclure et construire le dernier Source ou une version spécifique d’un Source de production d’un projet dépendant

  • Constructions incrémentielles:

    • uniquement construire les Sources modifiés par rapport à la Construction précédente

    • uniquement construire les Sources modifiés par rapport à la Construction en production

    • uniquement construire les Sources modifiés par rapport à une balise du Référenciel de Contrôle de Version spécifique

  • Constructions basées sur une version balisée: Constructions basées sur une balise spécifique au lieu de sur le dernier code.

Fonctionnalités de déploiement

  • Déploiement des Constructions réussies

  • Planification temporelle des Déploiements du projet

  • Possibilité d’initialiser un Déploiement manuellement

  • Déploiement de toute version de projet

  • Déploiement sur des environnements multiples en séquence ou en parallèle

  • Flux de travail de Déploiement personnalisé avec possibilité d’adapter le flux des sous-processus (les Phases) devant être exécutés pour un Déploiement

  • Paramètres de Déploiement dynamiques et sécurisés pouvant être modifiés juste avant l’exécution du Déploiement

  • Déploiement partiel: uniquement déployer les fichiers résultants modifiés par rapport au résultat de déploiement précédent

Support de Gestion des Cycles de vie

  • reconstruire des Constructions précédentes sur d’autres plateformes Cibles

  • Déployer des Constructions exécutées précédemment sur d’autres Serveurs Cibles

  • Définir le flux du processus, c’est-à-dire, la migration des Constructions depuis l’environnement BUILD vers l’environnement TEST jusqu’en PRODUCTION (ces environnements sont appelés des Niveaux en langage IKAN ALM)

  • Personnaliser les étapes de Construction et de Déploiement pour le déploiement vers un Niveau

  • Possibilité de définir un processus d’approbation hiérarchique après et/ou avant le déploiement vers un Niveau

  • Possibilité de définir les notifications requises après et/ou avant le déploiement vers un Niveau

  • Fonctionnalités pour délivrer, re-délivrer et restaurer le logiciel construit/déployé

  • Fonctionnalité de "gel" pour bloquer le processus de construction continue ou toute autre nouvelle construction sur un Niveau de Construction

  • Niveaux optionnels: possibilité d’ignorer un Niveau dans un Cycle de Vie permettant de déployer dans les niveaux suivants

  • Niveaux "importants ou logiques": non rattachés à des Environnements pour supporter un processus d’approbation et de notification avancé

  • Définir un ou plusieurs environnements physiques ((Windows, Linux, Mainframe, …​) pour chaque Niveau

Interface Utilisateur Web

  • L’Interface Utilisateur Web permet de configurer le système complet (il ne faut plus modifier les fichiers de configuration manuellement)

  • Suivi de l’Historique de toutes les modifications administratives assurant une traçabilité maximale

  • Liste pratique de tous les projets et les résultats de leurs dernières Constructions codés à l’aide de couleurs (réussies/échouées)

  • Aperçus incluant des possibilités de recherche avancées pour rapidement vérifier le statut et l’historique du Cycle de vie d’un Projet.

  • Bureau personnalisé par Tuiles ou Style Classique (table) fournissant un aperçu clair des projets des Utilisateurs

  • Aperçu bidirectionnel des Dépendances de construction.

  • Interface pratique pour approuver, rejeter et rechercher les approbations.

  • Projet intranet utilisant Javadoc, des résultats de test JUnit, des statistiques et des artefacts téléchargeables

  • Interface pour rapidement identifier et supprimer les artefacts de construction obsolètes

  • Internationalisation: la langue de l’interface peut être modifiée via la définition de l’Utilisateur

  • Aide contextuelle disponible en ligne (https://docs.ikanalm.com) en format HTML

  • Interface pratique pour facilement pouvoir réutiliser les paramètres de Construction ou de Déploiement définis en clonant les paramètres et les environnements, ou en définissant des paramètres de Machine qui seront hérités par les environnements

Systèmes de Contrôle de version supportés

  • Subversion

  • Git et GitHub

  • Microsoft Team Foundation Version Control (TFVC)

  • Azure DevOps Services Version Control

  • CVS

  • Support de tout Système de Contrôle de version disponible via l’interface API

Interaction avec des Référenciels de Contrôle de version

  • Récupérer ou synchroniser les sources du Projet

  • Appliquer un libellé basé sur le numéro de version actuel du Projet

  • Lister les différences avec le logiciel construit ou déployé précédemment

  • Montrer les Sources (avec info sur la version) associés à une Construction ou un Déploiement

  • Possibilité de sélectionner et déplacer des fichiers ou des composants individuels à travers le Cycle de vie (Git, GitHub, Subversion, TFVC and Azure DevOps)

  • Les méta-propriétés Subversion sont automatiquement récupérées pendant la Phase "Récupération des Sources" et peuvent être utilisées par l’Outil de script de Construction ou de Déploiement

Constructeurs et Déployeurs Ant, Gradle, NAnt, Maven 2/3

  • Possibilité d’exécuter tout script Ant, Gradle, NAnt, Maven pour construire et déployer le Projet

  • Aucune intrusion dans le script de Construction/Déploiement

  • Possibilité de fournir des propriétés Ant/Gradle/NAnt/Maven supplémentaires et de les modifier juste avant la Construction ou le Déploiement

  • Ajouter un script Ant/Gradle/NAnt/Maven à une Phase personnalisée avec des propriétés spécifiques. Ainsi vous pouvez facilement le distribuer et le réutiliser dans différents Projets ou installations IKAN ALM

  • Possibilité de spécifier des options JVM telles que -Xms et -Xmx

  • Support de plusieurs versions de Ant/Gradle/NAnt/Maven

  • Chemin de classe Ant/Maven configurable

  • Possibilité d’exécuter Ant via le "Lanceur Ant"

  • Support de plusieurs JDK ou .NET Frameworks

Protocoles de transfert supportés

  • FileCopy en utilisant des "Windows shares" et "Linux mounts"

  • Transfert de fichier sécurisé en utilisant Secure Copy (SSH)

  • FTP

Suivi des Incidents

  • Associer des Constructions à des Incidents (manuellement ou automatiquement)

  • Possibilité de manuellement associer des Incidents à des Constructions

  • Synchroniser des propriétés d’Incidents (statut, description, etc.) avec un Système de Suivi des Incidents externe

  • Ajouter automatiquement des Commentaires aux Incidents chaque fois qu’une Construction avance dans le Cycle de vie

  • Afficher les détails des Incidents dans l’interface graphique d’IKAN ALM

  • Intégration spécialisée avec JIRA (on-premise et Cloud), Team Foundation Server, Azure DevOps Services, MicroFocus ALM and GitHub

  • Intégration avec tout Système de Suivi des Incidents tiers via API

Construction et Déploiement de type Paquets

  • Possibilité de sélectionner et déplacer des fichiers ou des composants individuels à travers le Cycle de vie (Git (Hub), Subversion and TFVC). Support de développement Mainframe

  • Sélection de révisions/versions spécifiques de fichiers individuels

  • Génération d’un journal de l’Historique, permettant d’auditer les modifications dans le contenu d’un Paquet (fichiers ajoutés/supprimés/modifiés)

  • L’entité "Groupe de Paquets de Construction" gère les dépendances entre les Paquets.

Notification de Constructions/Déploiements

  • Sont supportés:

    • SMTP

    • RSS

  • Modèles personnalisés et internationalisés pour des courriels en texte brut ou en format HTML

  • Envoyer des courriels informant les parties concernées des résultats de construction/déploiement

  • Recevoir des courriels d’information concernant toutes les Constructions et tous les Déploiements, uniquement concernant les Constructions et les Déploiements échoués ou uniquement concernant les Constructions et les Déploiements réussis

  • Notification quand une Construction ou un Déploiement est demandé(e), approuvé(e) ou rejeté(e).

  • Notification quand l’approbation est demandée/approuvée/rejetée.

  • Les courriels contiennent un lien automatique vers les informations détaillées dans l’Interface utilisateur

  • Flux RSS affichant les données des dix dernie(è)r(e)s Constructions/Déploiements qui répondent aux critères spécifiés

Historisation

  • Toutes les modifications administratives sont enregistrées avec leur version dans un journal

  • Journaux de Construction/Déploiement pour chaque flow de Construction/Déploiement de chaque projet

  • Aperçu du statut indiquant quelle Construction se trouve sur quelle Machine ou sur quel Niveau

  • Historique du logiciel construit ou déployé au cours du cycle de vie d’un projet

  • Relation "source-objet": aperçu des Sources utilisés pour obtenir le résultat de construction, et des fichiers binaires déployés

Architecture modulaire

  • Une architecture Serveur/Agent permettant les Constructions et/ou les Déploiements distribué(e)s

  • Possibilité de définir plusieurs Agents de construction

  • Possibilité de définir plusieurs Agents de déploiement

  • Interface de Ligne de Commande et REST permettant les lancements d’exécution de Constructions et/ou de Déploiements basée sur des déclencheurs externes

Installation

  • Installeur textuel pour le produit complet

  • Installation automatisée configurée depuis l’Interface Utilisateur (à distance) des serveurs des Agents de construction et/ou de déploiement

Sécurité - Intégration avec JAAS

  • Intégration avec un Système de sécurité opérationnel

  • Authentification des Utilisateurs

  • mots de passe et phrases de passe pour tous les paramètres IKAN ALM (paramètres du système, définitions RCV, Secure Shell, …​) lecture impossible pour tout Utilisateur IKAN ALM

  • Toutes les valeurs sécurisées sont cryptées avant d’être sauvegardées dans la Base de données pour garantir une sécurité maximale

  • Possibilité de crypter toute communication entre les composants IKAN ALM

  • Autorisation des Utilisateurs

    • pour demander des Constructions

    • pour demander des déploiements vers les Niveaux

    • pour approuver ou rejeter des Constructions et/ou des Déploiements

    • pour gérer les projets

    • pour l’administration des paramètres de construction et/ou de déploiement

    • pour gérer IKAN ALM

Interface de Ligne de Commande (C) et REST (R)

  • Exécuter une Construction ou un Déploiement à partir d’une fenêtre de commande ou un point d’accès REST (C+R)

  • Permettre de planifier des Constructions et des Déploiements en utilisant un Planificateur externe (Task Scheduler, Cron, Planificateurs,…​) (C+R)

  • Générer un rapport à partir d’une fenêtre de commande (C)

  • Créer ou modifier un Paquet à partir d’une fenêtre de commande ou un point d’accès REST (C+R)

  • Approuver ou rejeter la livraison d’une construction au niveau suivant (R)

  • Exporter un projet à partir d’une instance IKAN ALM (par exemple, test) et l’importer ensuite dans une autre instance (par exemple, Production) (R)

  • Récupérer les détails de la configuration globale, des projets, des constructions, des déploiements,…​ au format json ou xml (R)

Rapports personnalisés

  • L’aperçu des constructions et des déploiements est disponible sous forme d’un rapport personnalisé en plusieurs formats (pdf, csv, xls, rtf). Ces rapports peuvent être générés à partir de l’Interface utilisateur ou via l’Interface de ligne de commande. Le rapportage via la ligne de commande permet l’intégration avec d’autres outils (par exemple, pour la planification) ou la génération de rapports en mode batch.

  • L’outil ALM_Reports permet d’obtenir plusieurs autres rapports d’administration ou de suivi de l’activité avec de nombreux critères de sélection.

Besoins techniques

Besoins système minimum

Environnement Java requis

  • Un Serveur Java SDK version 11.

  • Oracle Java SE JDK11, OpenJDK11, Adoptium OpenJDK 11 et Azul OpenJdk 11 sont supportés.

Serveur Web supporté

  • Tomcat 8.5.x ou 9.0.x, recommandé 9.0.x

Bases de données de production supportées

  • MySQL

  • PostgreSQL

  • Base de données Oracle

  • Microsoft SQL Server

  • IBM DB2 for Linux, Unix et Windows

Systèmes d’exploitation supportés

  • Serveur Windows 8.1/2012 R2

  • Serveur Windows 10/2016/2019

  • Linux: testé sous Redhat Fedora, CentOS, Oracle Linux, Suse Linux Enterprise, OpenSUSE, Debian, Ubuntu, Mandriva, zLinux. D’autres distributions Linux récentes devrait également fonctionner.

Navigateurs Web (JavaScript doit être activé)

  • Microsoft Edge

  • Mozilla Firefox

  • Google Chrome

Systèmes de Contrôle de version supportés

  • Subversion 1.4.x, recommandé 1.6 et supérieure

  • Git 1.8, recommandé 2.27 et supérieure

  • GitHub

  • Microsoft Team Foundation Version Control (TFVC) 2013

  • Azure DevOps Services Version Control

  • CVS 1.x, recommandé 1.12 et supérieure

  • CVSNT 2.x, recommandé 2.5.x et supérieure

Intégrations avec des Outils de construction supportés

  • Ant 1.4.x, recommandé 1.10.3 et supérieure

  • NAnt 0.9.x, NAnt2

  • Maven 2.1.x, 3.x, recommended 3.6.1 et supérieure

Intégrations avec des Outils de Déploiement supportés

  • Ant 1.4.x, recommandé 1.10.3 et supérieure

  • NAnt 0.9.x, NAnt2

  • Maven 2.1.x, 3.x, recommended 3.6.1 et supérieure

Intégrations de courriel supportées

  • SMTP

Exigences de matériel minimum

IKAN ALM est constitué de 4 composants majeurs:

  • Application Web

  • Serveur

  • Agent

  • Interface de Ligne de Commande

Le Serveur IKAN ALM et l’Application Web doivent être installés sur la même machine. L’Agent et l’Interface de Ligne de Commande IKAN ALM peuvent être installés sur des machines distantes.

Application Web IKAN ALM

  • RAM: minimum 512 Mo (Mégaoctets), recommandé 1 Go (Gigaoctets) ou plus

  • Espace de stockage disque: minimum 1 Go, recommandé 5 Go ou plus

IKAN ALM Server

  • RAM: minimum 512 Mo, recommandé 1 Go ou plus

  • Espace de stockage disque: minimum 10 Go, recommandé 40 GB ou plus

Il n’existe pas de règle absolue concernant l’espace de stockage disque requis. L’espace de stockage nécessaire dépendra du nombre et de la taille des projets gérés dans IKAN ALM et de la taille des résultats de construction sauvegardés dans les Archives de construction. Plus il y a de projets et de résultats de construction, et plus ceux-ci sont larges, plus vous aurez besoin d’espace de stockage disque.

Agent IKAN ALM

  • RAM: minimum 512 Mo, recommandé 2 Go ou plus

  • Espace de stockage disque: minimum 1 Go

La quantité de RAM et d’espace disque nécessaire à une machine qui exécute un agent IKAN ALM dépend en grande partie de la quantité de ressources nécessaires aux scripts de construction et de déploiement et aux phases personnalisées utilisées par les projets qui y sont construits et déployés.

Interface de Ligne de Commande IKAN ALM

  • RAM: minimum 256 Mo, recommandé 256 Mo

  • Espace de stockage disque: minimum 100 Mo