Zephyrnet-logo

Generatieve AI bij de modernisering van applicaties – IBM Blog

Datum:



Applicatiemodernisering is het proces waarbij bestaande applicaties worden geüpdatet met behulp van moderne technologieën, waardoor de prestaties worden verbeterd en deze aanpasbaar worden gemaakt aan de evoluerende bedrijfssnelheden door het inbrengen van cloud-native principes zoals DevOps, Infrastructure-as-code (IAC) enzovoort. Applicatiemodernisering begint met het beoordelen van de huidige legacy-applicaties, data en infrastructuur en het toepassen van de juiste moderniseringsstrategie (rehost, re-platform, refactor of restart) om het gewenste resultaat te bereiken.

Terwijl herbouwen maximaal voordeel oplevert, is er een hoge mate van investeringen nodig, terwijl rehosten gaat over het verplaatsen van applicaties en gegevens als zodanig naar de cloud zonder enige optimalisatie en dit vereist minder investeringen terwijl de waarde laag is. Gemoderniseerde applicaties worden geïmplementeerd, gemonitord en onderhouden, met voortdurende iteraties om gelijke tred te houden met de technologische en zakelijke ontwikkelingen. Typische gerealiseerde voordelen variëren van grotere flexibiliteit, kosteneffectiviteit en concurrentievermogen, terwijl uitdagingen onder meer de complexiteit en de vraag naar middelen omvatten. Veel ondernemingen realiseren zich dat de overstap naar de cloud hen niet de gewenste waarde en flexibiliteit/snelheid oplevert die verder gaat dan de basisautomatisering op platformniveau. Het echte probleem ligt in de manier waarop de IT is georganiseerd, wat tot uiting komt in de manier waarop hun huidige applicaties/diensten worden gebouwd en beheerd (zie de wet van Conway). Dit leidt op zijn beurt tot de volgende uitdagingen:

  • Dubbele of overlappende mogelijkheden die door meerdere IT-systemen/componenten worden geboden, zorgen voor hardnekkige afhankelijkheden en proliferaties, die van invloed zijn op de productiviteit en de snelheid waarmee ze op de markt kunnen worden gebracht.
  • Duplicatiemogelijkheden tussen applicaties en kanalen leiden tot duplicatieve IT-middelen (bijvoorbeeld vaardigheden en infrastructuur)
  • Duplicatiemogelijkheden (waaronder gegevens) die resulteren in duplicatie van bedrijfsregels en dergelijke, leiden tot een inconsistente klantervaring.
  • Het gebrek aan afstemming van IT-capaciteiten op bedrijfscapaciteiten heeft gevolgen voor de time-to-market en business-IT. Bovendien bouwen ondernemingen uiteindelijk verschillende pleisters en architecturale lagen om nieuwe zakelijke initiatieven en innovaties te ondersteunen.

Daarom moeten initiatieven voor de modernisering van applicaties zich meer richten op de waarde voor het bedrijfsleven, en dit brengt een aanzienlijk deel van de transformatie met zich mee van de applicaties naar op bedrijfscapaciteiten afgestemde componenten en diensten. De grootste uitdaging hierbij is de hoeveelheid investeringen die nodig is, en veel CIO's/CTO's aarzelen om te investeren vanwege de kosten en tijdlijnen die gepaard gaan met het realiseren van waarde. Velen pakken dit aan via het bouwen van accelerators die kunnen worden aangepast aan bedrijfsconsumptie en die helpen specifieke gebieden van modernisering te versnellen. Een voorbeeld van IBM is IBM Consulting Cloud Accelerators. Terwijl we proberen de modernisering te versnellen en de kosten ervan te optimaliseren, wordt generatieve AI een cruciale factor in het aanjagen van veranderingen in de manier waarop we moderniseringsprogramma’s versnellen. We zullen de belangrijkste gebieden van versnelling verkennen met een voorbeeld in dit artikel.

Hieronder wordt een vereenvoudigde levenscyclus van applicatiemoderniseringsprogramma's weergegeven (niet uitputtend bedoeld). Discovery richt zich op het begrijpen van oudere applicaties, infrastructuur, data, interactie tussen applicaties, services en data en andere aspecten zoals beveiliging. De planning verdeelt het complexe portfolio van applicaties in iteraties die moeten worden gemoderniseerd om een ​​iteratieve routekaart op te stellen – en een uitvoeringsplan op te stellen om de routekaart te implementeren.

De activiteiten in de blauwdruk/ontwerpfase veranderen op basis van de moderniseringsstrategie (van het ontleden van applicaties en het benutten van domeingestuurd ontwerp tot het opzetten van doelarchitectuur op basis van nieuwe technologie om uitvoerbare ontwerpen te bouwen). De daaropvolgende fasen zijn het bouwen, testen en implementeren in productie. Laten we de generatieve AI-mogelijkheden in deze levenscyclusgebieden verkennen.

Ontdekking en ontwerp

Het vermogen om verouderde applicaties te begrijpen met minimale betrokkenheid van het MKB is een cruciaal versnellingspunt. Dit komt doordat MKB-bedrijven over het algemeen bezig zijn met systeemverlichtingsinitiatieven, terwijl hun kennis beperkt kan zijn op basis van hoe lang ze de systemen al ondersteunen. Gezamenlijk wordt tijdens de modernisering veel tijd besteed aan ontdekking en ontwerp, terwijl ontwikkeling veel eenvoudiger is zodra het team de functionaliteit van de bestaande applicatie, integratieaspecten, logica en datacomplexiteit heeft gedecodeerd.

Moderniseringsteams voeren hun codeanalyse uit en nemen verschillende documenten door (meestal gedateerd); dit is waar hun afhankelijkheid van codeanalysetools belangrijk wordt. Verder moet men voor herschrijfinitiatieven functionele mogelijkheden in kaart brengen in de bestaande applicatiecontext om effectieve domeingestuurde ontwerp-/decompositieoefeningen uit te voeren. Generatieve AI wordt hier erg handig door het vermogen om domein-/functionele mogelijkheden te correleren met code en gegevens en bedrijfsmogelijkheden vast te stellen, applicatiecode en gegevens te bekijken en met elkaar te verbinden. Uiteraard moeten de modellen worden afgestemd/gecontextualiseerd voor een bepaald bedrijfsdomeinmodel of functionele capaciteit. kaart. De in dit artikel genoemde generatieve AI-ondersteunde API-mapping is hiervan een mini-voorbeeld. Hoewel het bovenstaande bedoeld is voor decompositie/ontwerp van applicaties, heeft event-storming proceskaarten nodig en dit is waar generatieve AI helpt bij het contextualiseren en in kaart brengen van extracten van process mining-tools. Generatieve AI helpt ook bij het genereren van gebruiksscenario's op basis van code-inzichten en functionele mapping. Over het geheel genomen helpt generatieve AI de risico's van moderniseringsprogramma's te verkleinen door te zorgen voor voldoende zichtbaarheid van zowel oudere applicaties als afhankelijkheden.

Generatieve AI helpt ook bij het genereren van een doelontwerp voor een specifiek raamwerk van cloudserviceproviders door de modellen af ​​te stemmen op basis van een reeks gestandaardiseerde patronen (ingang/uitgang, applicatieservices, dataservices, samengestelde patronen, enz.). Op dezelfde manier zijn er verschillende andere generatieve AI-gebruiksscenario's, waaronder het genereren van raamwerkspecifieke codepatronen voor doeltechnologie voor beveiligingscontroles. Generatieve AI helpt bij het genereren van gedetailleerde ontwerpspecificaties, bijvoorbeeld gebruikersverhalen, Wire Frames voor gebruikerservaringen, API-specificaties (bijvoorbeeld Swagger-bestanden), componentrelatiediagrammen en componentinteractiediagrammen.

Planning

Een van de moeilijke taken van een moderniseringsprogramma is het kunnen opstellen van een macro-roadmap, waarbij parallelle inspanningen worden afgewogen tegen opeenvolgende afhankelijkheden en het identificeren van co-existentiescenario's die moeten worden aangepakt. Hoewel dit normaal gesproken als een eenmalige taak wordt gedaan – voortdurende herschikking via Program Increments (PI’s) – is het plannen van oefeningen waarbij input op uitvoeringsniveau wordt gebruikt veel moeilijker. Generatieve AI is handig om routekaarten te kunnen genereren op basis van historische gegevens (toepassingen op domeingebiedkaarten, inspannings- en complexiteitsfactoren en afhankelijkheidspatronen en meer), en dit toe te passen op toepassingen in het kader van een moderniseringsprogramma – voor een bepaalde sector of domein.

De enige manier om dit aan te pakken is door het bruikbaar te maken via een reeks assets en accelerators die de complexiteit van ondernemingen kunnen aanpakken. Dit is waar generatieve AI een belangrijke rol speelt bij het correleren van applicatieportfoliodetails met ontdekte afhankelijkheden.

Bouwen en testen

Het genereren van code is een van de meest bekende toepassingen van generatieve AI, maar het is belangrijk om een ​​reeks gerelateerde codeartefacten te kunnen genereren, variërend van IAC (Terraform of Cloud Formation Template), pijplijncode/configuraties, het insluiten van beveiligingsontwerppunten ( encryptie, IAM-integraties, enz.), het genereren van applicatiecode op basis van swaggers of andere code-inzichten (uit legacy) en firewallconfiguraties (bijvoorbeeld als bronbestanden op basis van geïnstantieerde services). Generatieve AI helpt bij het genereren van al het bovenstaande via een georkestreerde aanpak op basis van vooraf gedefinieerde applicatiereferentiearchitecturen die zijn opgebouwd uit patronen, terwijl de output van ontwerptools wordt gecombineerd.

Testen is een ander belangrijk gebied: generatieve AI kan de juiste set testgevallen en testcode samen met testgegevens genereren om de testgevallen die worden uitgevoerd te optimaliseren.

Implementeren

Er zijn verschillende last mile-activiteiten die doorgaans dagen tot weken duren, afhankelijk van de complexiteit van de onderneming. De mogelijkheid om inzichten te genereren voor beveiligingsvalidatie (uit applicatie- en platformlogboeken, ontwerppunten, IAC, enz.) is een belangrijk gebruiksscenario dat zal helpen bij versnelde beveiligingsbeoordelings- en goedkeuringscycli. Het genereren van configuratiebeheerinvoer (voor CMDB) en het wijzigen van managementinvoer op basis van release-opmerkingen die zijn gegenereerd op basis van werkitems van de Agility-tool die per release zijn voltooid, zijn belangrijke generatieve AI-hefboomgebieden.

Hoewel de hierboven genoemde gebruiksscenario’s in de moderniseringsfasen een wondermiddel lijken te zijn, zullen de complexiteiten van ondernemingen contextuele orkestratie van veel van de bovengenoemde op generatieve AI-gebruiksscenario’s gebaseerde versnellers noodzakelijk maken om waarde te kunnen realiseren, en we zijn nog lang niet klaar met het vaststellen van contextuele bedrijfspatronen. die de moderniseringsprogramma’s helpen versnellen. We hebben aanzienlijke voordelen gezien door vooraf (en doorlopend) tijd en energie te investeren in het aanpassen van veel van deze generatieve AI-versnellers voor bepaalde patronen op basis van potentiële herhaalbaarheid.

Laten we nu een potentieel bewezen voorbeeld onderzoeken:

Voorbeeld 1: API Discovery opnieuw vormgeven met BIAN en AI voor zichtbaarheid van domeintoewijzing en identificatie van dubbele API-services

Het probleem: Large Global Bank heeft meer dan 30000 API's (zowel intern als extern) ontwikkeld in de loop van de tijd in verschillende domeinen (bijvoorbeeld retail banking, wholesale banking, open banking en corporate banking). Er is een enorm potentieel aan dubbele API's in alle domeinen, wat leidt tot hogere totale eigendomskosten voor het onderhouden van het grote API-portfolio en operationele uitdagingen bij het omgaan met API-duplicatie en overlap. Een gebrek aan zichtbaarheid en ontdekking van de API's leidt ertoe dat API-ontwikkelingsteams dezelfde of vergelijkbare API's ontwikkelen in plaats van relevante API's te vinden voor hergebruik. Het onvermogen om de API-portfolio te visualiseren vanuit het perspectief van het Banking Industry Model beperkt de Business- en IT-teams om de mogelijkheden te begrijpen die al beschikbaar zijn en welke nieuwe mogelijkheden nodig zijn voor de bank.

Generatieve, op AI gebaseerde oplossingsaanpak: De oplossing maakt gebruik van het BERT Large Language Model, Sentence Transformer, Multiple Negatives Ranking Loss Function en domeinregels, verfijnd met BIAN Service Landscape-kennis om het API-portfolio van de bank te leren kennen en de mogelijkheid te bieden om API's te ontdekken met automatische mapping naar BIAN. Het wijst de API-eindpuntmethode toe aan niveau 4 BIAN Service Landscape Hiërarchie, dat wil zeggen BIAN Service Operations.

De kernfuncties van de oplossing zijn het vermogen om:

  • Neem braniespecificaties en andere API-documentatie op en begrijp de API, eindpunten, de bewerkingen en de bijbehorende beschrijvingen.
  • Neem BIAN-details op en begrijp het BIAN-servicelandschap.
  • Verfijn met gematchte en ongeëvenaarde mapping tussen API Endpoint Method en BIAN Service Landscape.
  • Geef een visuele weergave van de mapping en matchingscore met BIAN Hiërarchische navigatie en filters voor BIAN-niveaus, API-categorie en matchingscore.

De algemene logische weergave (gebaseerd op Open Stack) is als volgt:

Gebruikersinterface voor API-detectie met industriemodel:

Belangrijkste voordelen: De oplossing hielp ontwikkelaars om eenvoudig herbruikbare API's te vinden, gebaseerd op BIAN-bedrijfsdomeinen; ze hadden meerdere filter-/zoekopties om API's te lokaliseren. Bovendien konden teams de belangrijkste API-categorieën identificeren voor het opbouwen van de juiste operationele veerkracht. De volgende herziening van de zoekopdracht zou gebaseerd zijn op natuurlijke taal en zal een gebruiksscenario voor conversaties zijn.

Het vermogen om duplicatieve API's te identificeren op basis van BIAN-servicedomeinen heeft geholpen bij het opzetten van een moderniseringsstrategie die duplicatieve mogelijkheden aanpakt en deze tegelijkertijd rationaliseert.

Deze use case werd binnen zes tot acht weken gerealiseerd, terwijl de bank een jaar nodig zou hebben gehad om hetzelfde resultaat te bereiken (er waren namelijk enkele duizenden API’s te ontdekken).

Voorbeeld 2: Geautomatiseerde modernisering van MuleSoft API naar Java Spring Boot API

Het probleem: Terwijl de huidige teams bezig waren om MuleSoft API's te moderniseren naar Java Spring-boot, hadden het enorme aantal API's, het gebrek aan documentatie en de complexiteitsaspecten invloed op de snelheid.

Generatieve, op AI gebaseerde oplossingsaanpak: De Mule API voor de modernisering van Java Spring Boot werd aanzienlijk geautomatiseerd via een generatieve, op AI gebaseerde accelerator die we hebben gebouwd. We zijn begonnen met het verwerven van een diepgaand inzicht in API's, componenten en API-logica, gevolgd door het finaliseren van responsstructuren en code. Dit werd gevolgd door het bouwen van aanwijzingen met behulp van IBM's versie van Sidekick AI om Spring-bootcode te genereren, die voldoet aan de API-specificaties van MuleSoft, unit-testcases, ontwerpdocument en gebruikersinterface.

Mule API-componenten werden één voor één in de tool ingevoerd met behulp van aanwijzingen en genereerden het overeenkomstige Spring Boot-equivalent, dat vervolgens met elkaar werd verbonden om de fouten die zich voordeden te verhelpen. De accelerator genereerde een gebruikersinterface voor het gewenste kanaal die kon worden geïntegreerd met de API's, unit-testcases en testgegevens en ontwerpdocumentatie. De ontwerpdocumentatie die wordt gegenereerd, bestaat uit een sequentie- en klassendiagram, verzoek, antwoord, eindpuntdetails, foutcodes en architectuuroverwegingen.

Belangrijkste voordelen: Sidekick AI vergroot het dagelijkse werk van Application Consultants door een multi-model generatieve AI-technische strategie te combineren, gecontextualiseerd door diepgaande domeinkennis en technologie. De belangrijkste voordelen zijn als volgt:

  • Genereert het grootste deel van de Spring Boot-code en testcases die zijn geoptimaliseerd, schoon en voldoen aan de best practices. De sleutel is herhaalbaarheid.
  • Eenvoudige integratie van API's met front-endlagen van kanalen.
  • Gemakkelijk begrip van de code van de ontwikkelaar en voldoende inzicht in het debuggen van de code.

De Accelerator PoC werd voltooid met vier verschillende scenario's van codemigratie, unit-testcases, ontwerpdocumentatie en UI-generatie in drie sprints gedurende zes weken.

Ontdek watsonx vandaag nog

Veel CIO's/CTO's hebben hun eigen bedenkingen gehad bij het starten van moderniseringsinitiatieven vanwege de veelheid aan uitdagingen die in het begin werden genoemd: de hoeveelheid tijd die het MKB nodig heeft, de impact op het bedrijfsleven als gevolg van veranderingen, veranderingen in het operationele model op het gebied van beveiliging, verandermanagement en vele andere zaken. organisaties enzovoort. Hoewel generatieve AI geen wondermiddel is om alle problemen op te lossen, helpt het het programma door versnelling, verlaging van de kosten van modernisering en, nog belangrijker, door het verminderen van risico's door ervoor te zorgen dat geen enkele huidige functionaliteit wordt gemist. Men moet echter begrijpen dat het tijd en moeite kost om LLM-modellen en bibliotheken in de behoeften van de bedrijfsomgeving te brengen - aanzienlijke veiligheids- en nalevingsbeoordelingen en -scans. Het vereist ook enige gerichte inspanning om de datakwaliteit te verbeteren van de gegevens die nodig zijn voor het afstemmen van de modellen. Hoewel er nog geen samenhangende generatieve, door AI aangestuurde moderniseringsversnellers bestaan, zullen we mettertijd de opkomst gaan zien van dergelijke geïntegreerde toolkits die bepaalde, zo niet veel, moderniseringspatronen helpen versnellen.

Ontdek watsonx vandaag nog


Meer van Automatisering




Jouw Black Friday-waarneembaarheidschecklist

3 min gelezen - Black Friday (en eigenlijk de hele Cyberweek) is een tijd waarin u wilt dat uw applicaties optimaal presteren zonder uw operationele teams volledig uit te putten. Observability-oplossingen kunnen u helpen dit doel te bereiken, of u nu een klein team bent met één product of een groot team dat complexe e-commercetoepassingen beheert. Maar niet alle observatieoplossingen (of tools) zijn hetzelfde, en als u slechts één belangrijke mogelijkheid mist, kan dit problemen met de klanttevredenheid, tragere verkopen en zelfs top- en bedrijfsresultaten veroorzaken...




Zorgapps en -gegevens integreren met FHIR + HL7

3 min gelezen - De hedendaagse zorgaanbieders gebruiken een grote verscheidenheid aan applicaties en gegevens binnen een breed ecosysteem van partners om hun dagelijkse workflows te beheren. Het integreren van deze applicaties en gegevens is van cruciaal belang voor hun succes, waardoor ze patiëntenzorg efficiënt en effectief kunnen leveren. Ondanks moderne datatransformatie- en integratiemogelijkheden die zorgden voor een snellere en eenvoudigere data-uitwisseling tussen applicaties, is de gezondheidszorgsector achtergebleven vanwege de gevoeligheid en complexiteit van de betrokken data. Sommige gezondheidszorggegevens zijn zelfs...




IBM uitgeroepen tot leider in The Forrester Wave™: Digital Process Automation Software, Q4 2023

2 min gelezen - Forrester Research heeft zojuist “The Forrester Wave™: Digital Process Automation Software, Q4 2023: The 15 Providers That Matter Most And How They Stack Up” uitgebracht door Craig Le Clair met Glenn O'Donnell, Renee Taylor-Huot, Lok Sze Sung, Audrey Lynch, Kara Hartig en IBM zijn er trots op erkend te worden als leider. IBM uitgeroepen tot leider In het rapport beoordeelde Forrester Research 15 aanbieders van digitale procesautomatisering (DPA) op basis van 26 criteria in drie categorieën: huidig ​​aanbod, strategie en marktaanwezigheid. IBM…




IBM Tech Now: 13 november 2023

<1 min gelezen - Welkom IBM Tech Now, onze videowebserie met het laatste en beste nieuws en aankondigingen in de wereld van technologie. Zorg ervoor dat u zich abonneert op ons YouTube-kanaal, zodat u op de hoogte wordt gehouden telkens wanneer er een nieuwe IBM Tech Now-video wordt gepubliceerd. IBM Tech Now: aflevering 89 In deze aflevering behandelen we de volgende onderwerpen: AI versus menselijk bedrog: het nieuwe tijdperk van phishing-tactieken ontrafelen IBM MQ versie 9.3.4 17 IBM-aanbiedingen hebben een plaatsing op de TrustRadius veiliggesteld...

IBM-nieuwsbrieven

Ontvang onze nieuwsbrieven en onderwerpupdates die de nieuwste thought leadership en inzichten over opkomende trends bieden.

Abonneer nu

Meer nieuwsbrieven

spot_img

Laatste intelligentie

spot_img