mardi 25 février 2025

Ingénierie, maintenance - 8 - Gestion technique du cycle de vie

 Les processus d’ingénierie, de maintenance numériques, incluent la gestion technique du cycle de vie des ensembles matériels et logiciels. 

Processus généraux

Le cycle de vie de des ensembles matériels et logiciels est à gérer sur le plan technique, sous le contrôle d’un donneur d’ordres. La réalisation initiale, les modifications, les mises en exploitation sont à contrôler, à planifier, dans le but de maîtriser la qualité, de conserver les propriétés attendues de l’architecture. Le contenu des versions est à définir.

Les processus correspondants nécessitent des informations sur :

– les évolutions fonctionnelles prévisibles ;

– la volumétrie constatée, prévisionnelle ;

– les performances, la fiabilité constatées des matériels ou logiciels ;

– les évolutions de l’environnement technique (protocoles de communication et d’interopérabilité, logiciels malveillants…) ;

– les produits et services externes utilisés (nouvelles versions, pérennité des fournisseurs, des technologies…), les équipes internes (maintenance/évolution, exploitation).

Les besoins portent parfois sur des informations détaillées, déclinées si nécessaire par élément constitutif : volumétrie (volumes traités, taux d’utilisation des ressources, volumes d’informations stockées) ; délais de traitement des flux, performances, congestions constatées ; nombre de dysfonctionnements, de non-conformités, d’intrusions, nombre de défauts signalés, qualifiés, de corrections, de modifications effectuées ; taux de succès des algorithmes.

Les processus sont susceptibles d’inclure des contrôles de l'existant technique : qualité du code, de la documentation, de la gestion de la configuration, disponibilité des compétences internes et externes nécessaires, gestion des ressources, contrats de maintenance, pérennité des fournisseurs de produits et services... Des analyses des risques sont effectuées si nécessaire. Des audits techniques sont réalisables.

Des fonctions permettent les inventaires, la gestion de configuration, des versions, de la documentation, de la cartographie des réseaux, des dossiers de tests (cas de test, données de test...), des anomalies de fonctionnement, des fiches de maintenance...

Pour les logiciels, on gère en général les codes source et objet. La gestion des bibliothèques logicielles conserve les routines, les programmes, et offre une indexation permettant de les retrouver. Des fonctions de gestion de portefeuille d'applications sont utilisables.

Les évolutions techniques envisageables sont l'optimisation, la restructuration des bases de données, la réingénierie, la mise en place de nouvelles versions, l’évolution des capacités... Elles peuvent conduire à des évolutions des architectures.

Les fournisseurs de produits, les éditeurs de logiciels standard proposent régulièrement de nouvelles versions des logiciels installés sur les produits ou vendus séparément, évolutives ou correctives, notamment de protection contre les logiciels malveillants. Des choix sont à faire relatifs à l’installation ou non de ces versions, aux dates, modalités d'installation. Ils peuvent avoir un impact sur les spécifications détaillées, le paramétrage…

Des choix sont également à faire sur les modalités de mise à jour des logiciels de sécurité.

Les processus relèvent du PLM (product lifecycle management).

Des choix sont à faire sur la documentation des ensembles matériels ou logiciels, à établir, à gérer, à livrer, à refondre, dans le cadre des travaux d’ingénierie, de maintenance : documents à établir, modalités de conservation, de mise à jour, de consultation, d’archivage... 

On distingue les documentations d’utilisation, de déploiement, d’exploitation, d’ingénierie, de maintenance, de formation. Des choix sont à faire sur leur contenu, sur les responsables de leur établissement.

La documentation doit faciliter, voire rendre possibles les opérations correspondantes. L’existence d’une documentation pertinente est cruciale pour le cycle de vie des ensembles matériels ou logiciels.

Les documents suivants sont établis ou utilisés dans le cadre des activités numériques : 

– Définitions des besoins, spécifications générales et détaillées.

– Définition des algorithmes.

– Architecture des SI : liste, spécifications des éléments constitutifs (logiciels, équipements, SI, liaisons filaires ou sans fil...), nombre, implantation géographique, modalités de liaison et d’interfonctionnement entre les éléments, points d’accès aux réseaux de télécommunications, informations à stocker, éléments relatifs à la sécurité.

– Architecture des équipements, des composants matériels, des dispositifs numériques : liste, spécifications des éléments constitutifs (composants matériels, logiciels...), nombre, modalités de liaison et d’interfonctionnement entre les éléments, accès aux réseaux de communication, informations à stocker, éléments relatifs à la sécurité.

– Architecture des logiciels : liste des composants logiciels, spécifications des composants, modalités de liaison et d’interfonctionnement entre les logiciels, les composants, éléments relatifs à la sécurité.

– Dossiers de conception, de construction.

– Documentation des éléments constitutifs achetés à l'extérieur : appels d'offres, contrats, documentation technique des produits et services numériques, livraisons, comptes rendus d’interventions…

– Dossiers de paramétrage des logiciels, des équipements, des SI. Documentation des développements spécifiques complémentaires, fichiers associés.

– Stratégie de test, dossiers, comptes rendus de tests, fiches d'anomalies.

– Préparation de l’exploitation des SI, de leur déploiement (outils de reprise des données...), de leur maintenance/évolution, procédures d'exploitation, de sécurité.

– Préparation de la fabrication, de l'assistance utilisateurs, documentation utilisateurs.

– Historique de la vie des ensembles matériels ou logiciels : évolutions, analyses qualité, échanges d'informations entre les acteurs, comptes rendus des réunions...

Ces documents sont à conserver pour les différentes versions. La documentation est à mettre à jour, à remettre à niveau si nécessaire.

Il est souvent intéressant de conserver un historique des évolutions des caractéristiques des logiciels, des produits, des SI, des décisions prises, de leurs justifications. La gestion des versions est fondamentale pour les logiciels : le débogage des régressions, par exemple, exploite les différences entre les versions des programmes sources.

Des IA génératives sont utilisables pour générer la documentation technique (spécifications fonctionnelles, commentaires de code…).

Des choix sont à faire pour la mise en place de processus de gestion de la configuration des ensembles matériels et logiciels, outillés, intégrés aux processus d’ingénierie, de maintenance, sur leur intégration aux processus de réalisation des autres activités.

La gestion de configuration porte sur leurs versions initiales et leurs modifications. C’est un sujet majeur pour les opérateurs de télécommunications, les gestionnaires de grands SI. Les résultats obtenus, les informations enregistrées sont utiles à l’exploitation des SI, parfois aussi au déploiement, à l’assistance aux utilisateurs. Connaître précisément la configuration est nécessaire pour gérer la sécurité des SI.

Dans le cas des logiciels, elle s’appuie sur la gestion de leurs versions des logiciels (software version control system). 

Un des objectifs des processus est la maîtrise de la configuration. Le gestionnaire technique du cycle de vie des ensembles matériels et logiciels s’assure que leur configuration est conforme aux exigences définies. Il autorise ou réalise lui-même les évolutions, les maintenances, définit des procédures de gestion de la configuration, veille à leur respect.

Un autre objectif de la gestion de configuration est la connaissance de la structure des ensembles matériels ou logiciels. Elle est nécessaire pour les développer, les construire, les déployer, les exploiter, assurer leur maintenance, fournir une assistance à leurs utilisateurs, les faire évoluer.

Des choix sont à faire sur le contenu, la structure des informations à gérer : définition des éléments à gérer, des versions, liens entre les éléments, implantation physique des SI, topologie, cartographie des réseaux, documentation, fichiers associés, comme les fichiers de test.

Des règles d’identification, de nommage sont à définir pour les éléments à gérer en configuration, les versions.

La gestion de configuration a des liens avec la gestion des actifs de l’entreprise (asset management), les outils d’approvisionnement. Elle permet d’appuyer la gestion financière et comptable des actifs techniques sur des bases de données techniques a priori fiables et à jour.

Elle a des liens avec la gestion de la propriété intellectuelle (des logiciels, des données), des brevets. A priori la gestion des brevets relatifs au numérique n’est pas différente de celle des autres catégories de brevets. En dehors des aspects techniques de la conservation et de la protection des logiciels appartenant à l’entreprise (bibliothèques de programmes sources, gestion de configuration logicielle), leur gestion comporte des aspects juridiques. Les collaborateurs ont à être sensibilisés dans ce domaine, pour protéger les droits de l'entreprise, et respecter ceux des tiers.

Des solutions sont à définir pour garder des traces des changements réalisés par rapport à l'état de départ, de leur origine, mettre à jour l’ensemble de la documentation concernée par le changement, réaliser des études d’impact. Des méthodes, des règles sont à définir pour l’archivage des anciennes versions des programmes et des documents, leur élimination.

Des audits de configuration sont réalisables, pour vérifier la conformité entre les informations enregistrées dans l’outil de gestion de configuration et la réalité du code source, de la documentation, du matériel.

Aucun commentaire:

Enregistrer un commentaire