Nouvelles voies dans le développement Abap avec Git et le cloud


Qu'il s'agisse d'une grande entreprise de développement ou d'une entreprise de taille moyenne ne comptant que quelques développeurs, c'est là que l'interaction entre SAP et des outils open source connus révèle tout son potentiel.
Presque tous les développeurs connaissent les avantages des outils open source autour de Git : des processus automatisés dans le processus de développement avec Continous Integration et Continous Deployment, le travail décentralisé d'équipes sur un logiciel, de nombreuses possibilités d'assurance qualité grâce à des processus de validation modernes et une gestion intégrée des versions ne sont que quelques-uns des points clés. Mais comment intégrer Git de manière judicieuse dans le développement SAP ?
Pour cela, il existe le projet abapGit du danois Lars Hvam, également connu sous son synonyme larshp. Le logiciel s'installe via la transaction SE38 ou SE80, en exécutant le code source complet de 75.000 lignes.
Les mises à jour fonctionnent alors directement à partir du rapport. Après l'installation, il est possible de cloner des projets logiciels Abap à partir de pratiquement n'importe quel Git dans le système Abap local. Le Git que l'on utilise ici ne joue d'ailleurs aucun rôle. Peu importe que le Git soit public ou sur site dans le centre de calcul propre ou externalisé.
Mais quel est maintenant le grand avantage d'établir une connexion avec un serveur Git dans un système SAP qui dispose déjà de mécanismes de développement sophistiqués ?
Une valeur ajoutée peut être que dans le cloud, chaque développeur reçoit son propre système de développement en dehors de la structure de transport normale, ce qui permet de faire avancer chaque développement de manière indépendante.
Comme ces systèmes ne sont nécessaires que lorsqu'ils sont développés, ils peuvent être exploités dans pratiquement n'importe quel cloud. Pour réduire les coûts, les systèmes inutilisés sont simplement éteints pendant les périodes de repos.
Les économies ainsi réalisées ne peuvent pas être obtenues avec une installation sur site, car le matériel doit toujours être conservé. Il est possible d'offrir aux jeunes professionnels pleins d'idées la possibilité de travailler sans impact direct sur le système de développement et de mettre en œuvre leurs idées sans risque.
Inversement, il est bien sûr aussi possible de développer de manière centralisée et classique et de mettre à disposition un état stable du logiciel de manière entièrement automatisée dans un système d'assurance qualité dans le nuage. Le logiciel y est alors testé automatiquement ou par un groupe d'utilisateurs test.
Ensuite, le système peut être supprimé ou mis en pause. L'automatisation ainsi que la documentation de ces processus sont effectuées dans Git. La première peut être étendue à n'importe quel niveau et ne doit pas se limiter aux tests fonctionnels.
Il est par exemple possible d'effectuer des tests de sécurité plus poussés. Avec abaplint, il est également possible d'effectuer des contrôles de code automatisés après chaque validation. L'exemple du développement d'abapGit lui-même, qui se déroule publiquement via Github à l'aide d'abapGit, montre à quel point cela peut fonctionner.
Les développements des partenaires logiciels de SAP présentent un autre avantage. Pour les logiciels individuels, il est vrai que des fonctions similaires sont toujours écrites et que la roue est toujours réinventée.
De nouvelles erreurs apparaissent régulièrement ou des fonctions utiles manquent. Le travail d'évaluation, de test et de maintenance devient alors très important. L'utilisation d'un Git central permet ici de conserver un stock d'outils sophistiqués auxquels on peut recourir en cas de besoin.
Cela peut se faire en interne ou être partagé avec la communauté open source. Sous https://dotabap.org/ il existe déjà une plateforme avec une collection de projets Abap dans le domaine open source.
Dans la communauté des développeurs SAP, l'idée des logiciels à code source ouvert n'est pas encore très répandue. Cependant, avec le changement de génération de développeurs, on peut s'attendre à ce que de plus en plus d'entreprises ou de développeurs participent à des programmes, petits ou grands, sur leur temps personnel.
Pour les candidatures ou les CV, il est aujourd'hui presque obligatoire de fournir ses développements dans un lien Github ou Gitlab.
