Il est nécessaire de comprendre et de valider les partitions spéciales qui peuvent apparaître dans les données collectées afin de pouvoir effectuer les ajustements appropriés dans la façon dont vous exécutez le moteur d'IA. La validation garantit que les journaux d'exécution contiennent des traces associées uniquement aux cas d'utilisation métier.
À propos de cette tâche
Vous exécutez le moteur d'IA et son traitement peut incorporer l'utilisation de partitions spéciales au lieu de partitions régulières. Lorsque cette incorporation se produit, il est important de comprendre ces partitions spéciales afin que, lorsqu'elles se produisent, vous puissiez effectuer les ajustements nécessaires à la façon dont vous exécutez le moteur d'IA.
En fonction de la nature des données collectées, le moteur d'IA peut parfois placer des classes d'applications monolithiques Java® dans une ou plusieurs partitions spéciales lorsqu'il génère les recommandations de partition. Pour minimiser l'occurrence de ces partitions, exécutez des scénarios dans votre application uniquement lors de l'enregistrement des cas d'utilisation métier. Cela garantit que les journaux d'exécution contiennent les traces associées aux cas d'utilisation uniquement.
Avant de commencer
Exécutez le moteur d'IA pour générer trois rapports HTML détaillés: Oriole-Report, Cardinal-Reportet Héritage-Report.
Le Rapport d'héritage présente en détail toutes les hiérarchies d'héritage Java dans les classes d'application monolithique Java . Ce rapport permet d'analyser les partitions et les classes qu'elles contiennent dans l'application monolithique Java . Vous pouvez ensuite identifier les partitions présentées ici, qui n'appartiennent pas à vos cas d'utilisation métier.
Procédure
- Consultez Héritage-Rapport pour identifier les partitions et les classes qu'elles contiennent qui ne représentent pas vos cas d'utilisation métier. Le rapport comporte les partitions suivantes.
- Partition non observée
Cette partition contient des classes d'application monolithiques Java qui ont été vues dans l'analyse statique obtenue lors de l'exécution de l'analyseur de code. Toutefois, cette partition n'est pas observée dans les journaux de trace des cas d'utilisation d'exécution.
Les classes placées dans cette partition peuvent résulter d'un code qui n'est jamais utilisé dans l'ensemble des cas d'utilisation standard de l'application monolithique Java . Cette condition peut également être due à une couverture de cas d'utilisation insuffisante lorsque les données de l'application monolithique Java sont collectées. Pour plus d'informations, voir Business use cases and runtime traces.
- Partition d'utilitaire
Cette partition contient des classes d'application monolithiques Java que Mono2Micro identifie en tant que classes d'utilitaire potentielles ou code commun. Les classes d'utilitaire ont principalement des appels de méthode entrants provenant d'autres classes de l'application. Ils peuvent également avoir, ou avoir, principalement des champs et des méthodes de membres statiques, et diverses autres caractéristiques que le moteur d'IA détermine sont probablement utilitaires.
Pour les classes d'utilitaire potentielles, Mono2Micro recommande l'emplacement de chaque classe dans une partition normale s'il ne s'agit pas d'une classe d'utilitaire. Lorsque vous visualisez les recommandations de partition dans l'interface utilisateur du plan de travail, vous pouvez décider si la classe recommandée dans ce groupe spécial est réellement une classe utilitaire, puis la déplacer si nécessaire.
- Partition root_dest_undefined_use_case
Cette partition contient les classes d'application Java monolithiques de destination qui sont observées dans les journaux de trace de cas d'utilisation d'exécution, mais qui ne font partie d'aucun cas d'utilisation métier.
Par exemple, de telles classes de destination peuvent se produire lorsqu'un processus entre des classes d'application monolithique Java à partir de code en dehors du monolithe. Ces classes peuvent être utilisées pour du code d'application monolithique Java non instrumenté, des bibliothèques externes ou du code nonJava tel que des éléments d'interface utilisateur.
- Partition src_dest_undefined_use_case
Cette partition contient à la fois des classes d'application Java monolithique source et de destination qui sont observées dans les journaux de trace de cas d'utilisation d'exécution, mais qui ne font partie d'aucun cas d'utilisation métier.
- Partition self_undefined_use_case
Cette partition contient des classes d'applications monolithiques Java qui sont observées dans les journaux de trace de cas d'utilisation d'exécution. Toutefois, les classes d'applications monolithiques Java ne font partie d'aucun cas d'utilisation métier et la source et la destination du flux de code d'exécution observé sont identiques.
- Réexécutez le moteur d'IA et utilisez les scénarios applicables à votre application uniquement lors de l'enregistrement de cas d'utilisation métier. Cette procédure de réexécution peut permettre de réduire ces types de partitions.