Ohjelmistokehitysmaailmassa koodin tarkistus ja hyväksyntä ovat tärkeitä prosesseja kehitettävän ohjelmiston laadun, turvallisuuden ja toimivuuden varmistamiseksi. Johtajat, joiden tehtävänä on valvoa näitä kriittisiä prosesseja, kohtaavat kuitenkin usein lukuisia haasteita, kuten seuraavat:
- Teknisen asiantuntemuksen puute – Esimiehillä ei ehkä ole syvällistä teknistä ymmärrystä käytetystä ohjelmointikielestä tai he eivät ole olleet mukana ohjelmistosuunnittelussa pitkään aikaan. Tämä johtaa tietopuutteeseen, jonka vuoksi heidän on vaikea arvioida tarkasti ehdotettujen koodimuutosten vaikutusta ja luotettavuutta.
- Aikarajoitteet – Koodin tarkistaminen ja hyväksyminen voi olla aikaa vievä prosessi, etenkin suuremmissa tai monimutkaisemmissa projekteissa. Johtajien on tasapainotettava tarkastelun perusteellisuuden ja projektin aikataulujen noudattamisen paineen välillä.
- Muutospyyntöjen määrä – Suurien muutospyyntöjen käsittely on yleinen haaste esimiehille, varsinkin jos he valvovat useita tiimejä ja projekteja. Kuten aikarajoituksen haaste, johtajien on kyettävä käsittelemään nämä pyynnöt tehokkaasti, jotta ne eivät hidasta projektin edistymistä.
- Manuaalinen vaiva – Koodin tarkistus vaatii johtajilta manuaalista työtä, ja automaation puute voi vaikeuttaa prosessin skaalaamista.
- Dokumentaatio – Sääntöjen tarkistus- ja hyväksymisprosessin asianmukainen dokumentointi on tärkeää avoimuuden ja vastuullisuuden kannalta.
Kun nousee generatiivista tekoälyä (AI), johtajat voivat nyt valjastaa tämän muuntavan teknologian ja integroida sen AWS-käyttöönottotyökalujen ja -palveluiden kanssa virtaviivaistaakseen tarkistus- ja hyväksymisprosessia tavalla, joka ei ole aiemmin ollut mahdollista. Tässä viestissä tutkimme ratkaisua, joka tarjoaa integroidun päästä päähän -käyttöönoton työnkulun, joka sisältää automaattisen muutosanalyysin ja yhteenvedon sekä hyväksynnän työnkulkutoiminnot. Käytämme Amazonin kallioperä, täysin hallittu palvelu, joka mahdollistaa johtavien tekoälyyritysten ja Amazonin perusmallit (FM:t) saataville API:n kautta, joten voit valita laajasta FM-valikoimasta löytääksesi käyttötilanteeseesi parhaiten sopivan mallin. Amazon Bedrockin palvelimettoman kokemuksen avulla voit aloittaa nopeasti, muokata FM:itä yksityisesti omilla tiedoillasi ja integroida ja ottaa ne käyttöön sovelluksiisi AWS-työkalujen avulla ilman, että sinun tarvitsee hallita mitään infrastruktuuria.
Ratkaisun yleiskatsaus
Seuraava kaavio kuvaa ratkaisuarkkitehtuuria.
Työnkulku koostuu seuraavista vaiheista:
- Kehittäjä työntää uudet koodimuutokset koodivarastoonsa (esim AWS CodeCommit), joka käynnistää automaattisesti an AWS-koodiputki käyttöönottoa.
- Sovelluskoodi käy läpi koodinrakennusprosessin, suorittaa haavoittuvuustarkistuksia ja suorittaa yksikkötestejä haluamillasi työkaluilla.
- AWS CodeBuild hakee arkiston ja suorittaa git show -komennon purkaakseen koodierot nykyisen toimitusversion ja edellisen toimitusversion välillä. Tämä tuottaa rivi riviltä tulosteen, joka ilmaisee tässä julkaisussa tehdyt koodimuutokset.
- CodeBuild tallentaa tulosteen an Amazon DynamoDB taulukko lisäviitteineen:
- CodePipeline-ajon tunnus
- AWS-alue
- CodePipeline-nimi
- CodeBuild-koontinumero
- Päivämäärä ja aika
- Tila
- Amazon DynamoDB-virrat kaappaa datan muutokset tehty pöytään.
- An AWS Lambda DynamoDB-virta laukaisee toiminnon kaapatun tietueen käsittelemiseksi.
- Toiminto kutsuu Anthropic Claude v2 -mallin Amazon Bedrockissa Amazon Bedrockin kautta InvokeModel API puhelu. Koodierot yhdessä kehotteen kanssa syötetään malliin analysointia varten, ja koodimuutosten yhteenveto palautetaan ulostulona.
- Mallin tulos tallennetaan takaisin samaan DynamoDB-taulukkoon.
- Johtajalle ilmoitetaan kautta Amazonin yksinkertainen sähköpostipalvelu (Amazon SES) koodimuutosten yhteenvedosta ja että käyttöönotto edellyttää niiden hyväksyntää.
- Johtaja tarkistaa sähköpostin ja antaa päätöksensä (joko hyväksyä tai hylätä) sekä tarkistuskommentit CodePipeline-konsolin kautta.
- Hyväksymispäätös ja tarkistuskommentit tallennetaan Amazon EventBridge, joka käynnistää Lambda-toiminnon, joka tallentaa ne takaisin DynamoDB:hen.
- Jos se hyväksytään, putki ottaa sovelluskoodin käyttöön haluamillasi työkaluilla. Jos hylätään, työnkulku päättyy eikä käyttöönottoa jatketa.
Seuraavissa osissa otat ratkaisun käyttöön ja varmistat päästä päähän työnkulun.
Edellytykset
Jotta voit noudattaa tämän ratkaisun ohjeita, tarvitset seuraavat edellytykset:
Ota ratkaisu käyttöön
Ota ratkaisu käyttöön suorittamalla seuraavat vaiheet:
- Valita Käynnistä pino käynnistääksesi CloudFormation-pinon
us-east-1
: - varten Sähköpostiosoite, anna sähköpostiosoite, johon sinulla on käyttöoikeus. Yhteenveto koodin muutoksista lähetetään tähän sähköpostiosoitteeseen.
- varten mallitunnus, jätä oletusarvoksi anthropic.claude-v2, joka on Anthropic Claude v2 -malli.
Mallin käyttöönotto kestää noin 4 minuuttia.
- Kun saat sähköpostin Amazon SES:ltä sähköpostiosoitteesi vahvistamiseksi, valitse annettu linkki vahvistaaksesi sähköpostiosoitteesi.
- Saat sähköpostiviestin, jonka otsikko on "Muutosten yhteenveto", joka koskee mallivaraston ensimmäistä siirtoa CodeCommit-palveluun.
- Siirry AWS CloudFormation -konsolissa kohtaan Lähdöt käyttöönotetun pinon välilehti.
- Kopioi RepoCloneURL:n arvo. Tarvitset tätä päästäksesi mallikoodivarastoon.
Testaa ratkaisu
Voit testata työnkulkua päästä päähän ottamalla kehittäjän roolin ja tekemällä joitain koodimuutoksia. CodeCommitissa on sinulle laadittu joukko esimerkkikoodeja. Vastaanottaja päästä CodeCommit-arkistoon, kirjoita seuraavat komennot IDE:llesi:
Löydät seuraavan hakemistorakenteen an AWS Cloud Development Kit (AWS CDK) -sovellus, joka luo Lambda-funktion suorittaakseen kuplalajittelun kokonaislukujen merkkijonolle. Lambda-toiminto on käytettävissä julkisesti saatavilla olevan URL-osoitteen kautta.
Teet kolme muutosta sovelluskoodeihin.
- Parantaaksesi toimintoa tukemaan sekä pikalajittelu- että kuplalajittelualgoritmia, ota käyttöön parametri, joka sallii käytettävän algoritmin valinnan, ja palauta sekä käytetty algoritmi että lajiteltu matriisi tulosteessa, korvaa koko
lambda/index.py
seuraavalla koodilla:
- Voit vähentää toiminnon aikakatkaisuasetusta 10 minuutista 5 sekuntiin (koska emme odota toiminnon toimivan muutamaa sekuntia pidempään), päivitä rivi 47
my_sample_project/my_sample_project_stack.py
seuraavasti:
- Jos haluat rajoittaa funktion kutsumista IAM:n avulla turvallisuuden lisäämiseksi, päivitä rivi 56 in
my_sample_project/my_sample_project_stack.py
seuraavasti:
- Työnnä koodin muutokset antamalla seuraavat komennot:
Tämä käynnistää CodePipeline-käyttöönoton työnkulun vaiheista 1–9, kuten ratkaisun yleiskatsauksessa on kuvattu. Kun vedoimme Amazon Bedrock -malliin, annoimme seuraavan kehotteen:
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- PlatoData.Network Vertical Generatiivinen Ai. Vahvista itseäsi. Pääsy tästä.
- PlatoAiStream. Web3 Intelligence. Tietoa laajennettu. Pääsy tästä.
- PlatoESG. hiili, CleanTech, energia, ympäristö, Aurinko, Jätehuolto. Pääsy tästä.
- PlatonHealth. Biotekniikan ja kliinisten kokeiden älykkyys. Pääsy tästä.
- Lähde: https://aws.amazon.com/blogs/machine-learning/enhance-code-review-and-approval-efficiency-with-generative-ai-using-amazon-bedrock/
- :on
- :On
- :ei
- $ YLÖS
- 1
- 10
- 100
- 11
- 17
- 200
- 27
- 58
- 7
- 8
- 9
- a
- pystyy
- Meistä
- kiihdyttää
- pääsy
- saatavilla
- vastuullisuutta
- tarkasti
- Saavuttaa
- todella
- lisä-
- Lisäksi
- lisä-
- osoite
- Lisää
- Etu
- AI
- algoritmi
- algoritmit
- sallia
- pitkin
- Amazon
- Amazon Web Services
- an
- analyysit
- analyysi
- analysoida
- ja
- Antropinen
- Kaikki
- api
- sovelluksen
- Hakemus
- sovellukset
- hyväksyminen
- hyväksyä
- hyväksytty
- arkkitehtuuri
- OVAT
- noin
- Ryhmä
- keinotekoinen
- AS
- arvioida
- auttaa
- Avustaja
- attribuutteja
- täydennetty
- todennettu
- Authentication
- valtuuttaa
- Automatisoitu
- automaattisesti
- Automaatio
- saatavissa
- AWS
- AWS-pilven muodostuminen
- takaisin
- Balance
- perustua
- BE
- koska
- ollut
- ovat
- PARAS
- välillä
- elin
- sekä
- tuoda
- kupla
- rakentaa
- Rakentaminen
- by
- soittaa
- CAN
- Voi saada
- kiinni
- tapaus
- CD
- haaste
- haasteet
- muuttaa
- muuttunut
- Muutokset
- Valita
- puhdas
- pilvi
- koodi
- Koodin tarkistus
- koodit
- kommentit
- sitoutumaan
- Yhteinen
- täydellinen
- monimutkainen
- suppea
- Suorittaa
- toimintatapoja,
- Seuraukset
- näkökohdat
- muodostuu
- Console
- pitoisuus
- tausta
- luotu
- luo
- kriittinen
- Nykyinen
- räätälöidä
- tiedot
- tytär
- tekemisissä
- päätös
- oletusarvo
- määritelty
- sijoittaa
- käyttöön
- levityspinnalta
- käyttöönotto
- lauennut
- Malli
- haluttu
- Detailing
- Määrittää
- kehitetty
- Kehittäjä
- Kehitys
- kaavio
- erot
- eri
- vaikea
- hakemisto
- dokumentointi
- ei
- Dont
- kesto
- helpottaa
- tehokkuus
- tehokkaasti
- vaivaa
- myöskään
- muu
- loppu
- päittäin
- päättyy
- Tekniikka
- parantaa
- varmistamalla
- enter
- kirjoittamalla
- Koko
- ympäristö
- erityisesti
- tapahtuma
- esimerkki
- Paitsi
- odottaa
- experience
- kokeiluja
- tutkia
- Tutkii
- laajennettu
- uute
- Kasvot
- kohtasi
- perhe
- harvat
- taloudellinen
- Rahoituslaitokset
- Löytää
- Joustavuus
- seurata
- jälkeen
- seuraa
- varten
- perusta
- Ilmainen
- alkaen
- täysin
- toiminto
- toiminnallinen
- toiminnallisuus
- edelleen
- kuilu
- syntyy
- generatiivinen
- Generatiivinen AI
- saada
- saada
- mennä
- Go
- Goes
- suurempi
- ohjaus
- kahva
- valjaat
- Olla
- ottaa
- he
- Korkea
- erittäin
- hänen
- pitää
- Miten
- Kuitenkin
- HTML
- http
- HTTPS
- ihmisen
- i
- ID
- if
- havainnollistaa
- Vaikutus
- täytäntöönpano
- täytäntöönpanosta
- vaikutukset
- tärkeä
- parantaa
- in
- perusteellinen
- sisältää
- indeksi
- ilmaisee
- tiedot
- Infrastruktuuri
- ensimmäinen
- panos
- laitokset
- ohjeet
- yhdistää
- integroitu
- integroi
- tulee
- Esittelee
- vedotaan
- osallistuva
- IT
- json
- Tietää
- tuntemus
- Lack
- Kieli
- suurempi
- käynnistää
- johtava
- jättää
- vähemmän
- antaa
- linja
- LINK
- Lista
- kauemmin
- tehty
- tärkein
- merkittävä
- tehdä
- TEE
- hoitaa
- onnistui
- johtaja
- Päättäjät
- tapa
- manuaalinen
- Saattaa..
- tarkoitti
- Tavata
- Metadata
- ehkä
- minuuttia
- malli
- mallit
- Muutokset
- lisää
- eniten
- moninkertainen
- Navigoida
- Tarve
- Uusi
- seuraava
- Nro
- Ei eristetty
- nyt
- numerot
- useat
- of
- Tarjoukset
- usein
- on
- vain
- or
- Muut
- muuten
- ulos
- hahmoteltu
- ulostulo
- ulkopuolella
- yleinen
- valvoa
- yleiskatsaus
- oma
- parametri
- odotettaessa
- Suorittaa
- suorittaa
- aika
- putki
- Tappi
- Platon
- Platonin tietotieto
- PlatonData
- mahdollinen
- Kirje
- mahdollinen
- teho
- Suositut
- valmis
- edellytyksiä
- paine
- edellinen
- aiemmin
- jatkaa
- prosessi
- Prosessit
- tuottaa
- tuottaa
- Profiili
- Ohjelmointi
- Edistyminen
- projekti
- hankkeet
- ohjeita
- asianmukainen
- ehdotettu
- toimittaa
- mikäli
- tarjoaa
- julkisesti
- tarkoitus
- työntää
- Työnnä
- laatu
- kysymys
- nopea
- nopeasti
- alue
- vastaanottaa
- ennätys
- vähentää
- Vähentynyt
- vähentää
- viite
- Hylätty..
- vapauta
- korvata
- säilytyspaikka
- pyynnöt
- tarvitaan
- vaatimukset
- Vaatii
- Esittelymateriaalit
- vastaus
- rajoittaa
- tulokset
- palata
- Tuotto
- arviot
- Arvostelut
- Nousta
- Rooli
- ajaa
- s
- sama
- näyte
- Säästä
- tallennettu
- skaalautuva
- Asteikko
- skannaa
- sekuntia
- osiot
- turvallinen
- turvallisuus
- valinta
- vanhempi
- lähetetty
- serverless
- palvelu
- Palvelut
- setti
- asetus
- shouldnt
- näyttää
- samankaltainen
- Yksinkertainen
- Singapore
- So
- Tuotteemme
- ohjelmistokehitys
- ohjelmistotuotanto
- ratkaisu
- Ratkaisumme
- jonkin verran
- lähde
- määritelty
- nopeus
- viettää
- pino
- Alkaa
- alkoi
- alkaa
- Startups
- Vaihe
- Askeleet
- virta
- tehostaa
- jono
- rakenne
- niin
- sviitti
- sopiva
- YHTEENVETO
- tuki
- taulukko
- ottaa
- ottaen
- tiimit
- Tekninen
- Elektroniikka
- sapluuna
- testi
- testit
- kuin
- että
- -
- maailma
- heidän
- Niitä
- Siellä.
- Nämä
- ne
- tätä
- ne
- kolmella
- Kautta
- kiristyy
- aika
- aikaavievä
- aikataulut
- nimeltään
- että
- yhdessä
- työkalu
- työkalut
- transformatiivinen
- Läpinäkyvyys
- laukeaa
- yrittää
- kaksi
- tyypillinen
- ymmärtäminen
- yksikkö
- Päivitykset
- päivitetty
- URL
- us
- käyttää
- käyttölaukku
- käytetty
- Käyttäjät
- käyttötarkoituksiin
- käyttämällä
- v1
- arvo
- eri
- todentaa
- versio
- kautta
- tilavuus
- vs
- alttius
- oli
- we
- verkko
- verkkopalvelut
- HYVIN
- olivat
- kun
- joka
- leveä
- Laaja valikoima
- tulee
- with
- sisällä
- ilman
- Referenssit
- työnkulku
- työskentely
- toimii
- maailman-
- X
- yaml
- Voit
- Sinun
- zephyrnet