Жасанды интеллект арқылы жасалған кодты шолу бойынша оқыту: әзірлеушілерге модель жазғандарды аудиттеуді қалай үйрету керек

Ешбір элемент табылмады.
Blog нобай кескіні

Әзірлеуші ​​көмекшіден пайдаланушының есепті жүктей алатынын тексеретін функцияны сұрайды. Код компиляцияланады. Happy-path сынағынан өтеді. Pull request реттелген көрінеді. Екі аптадан кейін әріптесі функцияның пайдаланушының жүйеге кіргенін тексеретінін, бірақ есептің оларға тиесілі екенін ешқашан тексермейтінін байқайды.

Бұл құжатталған оқиға емес, иллюстрациялық сценарий. Онда жасанды интеллект арқылы жасалған кодты шолу бойынша оқытудың жоюы керек олқылық сипатталған: негізгі тексеруден өткен генерацияланған кодта авторизация немесе параллельдік ақау болуы мүмкін, ал оны қарап шыққан адам оны тауып, оның неліктен маңызды екенін айтуы керек.

Бұл нұсқаулық инженерлік мүмкіндіктерді қамтамасыз ету жөніндегі жетекшілер мен инженерлік менеджерлерге арналған. Онда өнімділік мәселесін қалай сипаттау, олқылықтарды диагностикалау, жобалауға дайындық және тәжірибе, істі қалай шешу және дағдының нақты шолуларға ауысатынын бағалау қарастырылған. Бұл оқыту дизайны туралы. Бағдарламаңыздағы әрбір ақау, сынақ және шолу ережесі аға инженерлер мен сіздің қауіпсіздік тобыңызбен расталуы керек.

Жасанды интеллект арқылы жасалған кодты шолу бойынша оқыту дегеніміз не?

Жасанды интеллект арқылы жасалған кодты шолу бойынша оқыту әзірлеушілерге көмекшіге анық нұсқау беруді, содан кейін нәтижені бағалауды және тексеруді үйретеді: дұрыс па, қауіпсіз бе, бір мезгілде жүктеме кезінде жұмыс істей ме, жеткілікті тиімді ме? Бұл белгілі бір құрал бойынша курс емес. Ол құрал өзгерген кезде өзгеріссіз қалатын шолу әдетін үйретеді.

Жылдам фактілер

сұрақҚысқа жауап
Тапсырма қандай?Жасалған кодты тексеріп, әрбір тәуекелді тестпен дәлелдеңіз.
Сіз қанша ұпай жинайсыз?Тексеру сапасы және тиісті ақаулардың табылғаны.
Қауіпсіз кодтау ережелері бойынша викторина жеткілікті ме?Жоқ. Бұл алғышарттарды растайды, бірақ әзірлеушінің кодтағы ықтимал болып көрінетін кемшілікті анықтай алатындығын немесе таппайтынын емес.
Мазмұнды кім растайды?Инженерлік менеджер және сіздің қауіпсіздік тобыңыз.
Жаттығу нені түзете алмайды?Қарап шығу уақыты, құралдар, меншік құқығының түсініксіздігі және тез бірігуге қысым.
Оның жұмыс істегенін қайдан білесіз?Келісілген критерийлер бойынша бағаланған, нақты шолуларға негізделген жаңа, бұрын-соңды болмаған код жаттығуы.

1. Өнімділік мәселесін сипаттаңыз

Тапсырмадан бастаңыз: жасалған кодты аудиттеу және тесттермен тәуекелдерді негіздеу. Аудит дегеніміз - күдікпен оқу. Дәлелдеу дегеніміз - күдікті дәлелге айналдыру, әдетте сәтсіз тест немесе кемшілікті көрсететін көшірме.

Зерттеу мұның неліктен әдейі тәжірибеден өту керектігін көрсетеді. GitHub Copilot зерттеуінде Пирс және оның әріптестері белгілі әлсіздік түрлері үшін таңдалған 89 сценарий бойынша 1,689 бағдарлама жасап, олардың шамамен 40 пайызы осал екенін анықтады (Пирс және әріптестері, 2021 ж.). Бұл алғашқы құрал және нақты сценарийлер жиынтығы болды, сондықтан бұл көрсеткішті бүгінгі көмекшілер үшін тариф ретінде қарастырмаңыз. Жеке пайдаланушы зерттеуінде қатысушылардан жасанды интеллект көмекшісімен және онсыз код жазу сұралды. Көмекшісі барлар әлдеқайда аз қауіпсіз код жазды және кодтарының қауіпсіз екеніне сенуі ықтимал (Перри және әріптестері, 2023 ж.Сол зерттеу көмекшіге аз сенетін және оның нұсқауларын көбірек орындайтын қатысушылардың осалдықтары аз екенін анықтады.

Оқыту дизайны бойынша екі сабақ қарастырылады. Сенімді нәтиже белсенді шолушыны қажет етеді. Ал сенімділік дәлел емес, сондықтан жаттығу пікірді емес, тестті сұрауы керек.

Өнімділік туралы мәлімдемені бір сөйлеммен жазыңыз және инженерлік менеджер оны тексерсін: «Жасалған өзгерісті ескере отырып, әзірлеуші ​​көретін қауіпсіздік, параллельдік және тиімділік тәуекелдерін тізімдейді және әрқайсысы үшін оны көрсететін тест сипаттайды немесе жазады».

2. Оқу мен контексттегі олқылықтарды анықтаңыз

Бірдеңе жасамас бұрын, тапсырманы ағымдағы бағдарламаңызда қолданылатын және бағаланатын нәрсемен салыстырыңыз. Әдетте үш сұрақ оқу алшақтығын басқа нәрседен ажыратады:

  1. Қазіргі тәжірибе нақты тапсырманы қолдана ма? Егер оқыту жедел жазуды қамтыса, бірақ әзірлеушілерден нәтижені қарап шығуды ешқашан сұрамаса, онда ешкім аудитпен айналыспаған. Егер бағалау қауіпсіз кодтау ережелері бойынша бірнеше таңдау нұсқасын таңдау арқылы жүргізілетін тест болса, ол еске түсіруді өлшейді.
  2. Когнитивті сұраныс дегеніміз не? Блумның қайта қаралған таксономиясында кодтың қауіпсіз екенін бағалау және оның талдау және бағалау деңгейлерінде екенін дәлелдейтін тестті таңдау, ал жақсырақ шақыру немесе түзетуді жобалау жасау деңгейіне жетеді. Әрекеттерді осы деңгейлерге сәйкестендіру біздің нұсқаулықта қарастырылған. оқу іс-әрекеттерін Блум таксономиясына сәйкестендіру.
  3. Шеберліктен басқа нәрсе кедергі келтіріп жатыр ма? Қарау уақытын, құрал-жабдықтарды және меншік құқығын тексеріңіз. Егер шолушыларға әрбір сұранысты орындау үшін бес минут уақыт берілсе, ешқандай оқыту аудит жүргізбейді. Егер құбырда статикалық талдау немесе сынақ құралы болмаса, әзірлеуші ​​тәуекелді анықтай алады, бірақ оны негіздей алмайды. Оқытудан тыс себептерді оларды түзете алатын адамдарға хабарлаңыз.

3. Дизайнды дайындау және тәжірибе

Жаттығу қандай олқылықтарды жаба алатынын білгеннен кейін, әр кезеңге жеке тапсырма беріңіз.

Дайындық. Алғышарттарды қысқаша диагностикамен тексеріңіз: сіздің стекіңіз кездесетін жалпы әлсіздік санаттары, тесттеріңіздің құрылымы, командаңыз пайдаланатын шолу тізімі. Өз бетінше жүргізілетін зерттеу бұл кезеңге сәйкес келеді. Қайталау тексеруі тек алғышарттарды растайды.

Тәжірибе. Шынайы жасалған кодтан жасалған аудит жаттығуларын пайдаланыңыз. Әрқайсысына меншік құқығын тексерудің болмауы, екі сұраныс арасындағы жарыс және тиімсіз цикл сияқты әртүрлі ақаулардың аз санымен, сондай-ақ жақсы кодпен себіңіз. Әзірлеуші ​​әрбір тәуекелді қарастырады, атайды, оның қаншалықты маңызды екенін айтады және оны көрсететін тест ұсынады. Жол нөмірлерінің тізімін емес, пайымдауды сұраңыз.

Кері байланыс. Оны жалпы ұпаймен емес, шешімдермен байланыстырыңыз. «Сіз циклды белгіледіңіз, бірақ ортақ есептегіштегі жарысты белгілемедіңіз, және сіздің тестіңіз оны анықтамас еді, себебі ол бір уақытта сұраныстарды орындайды» деген жауап «3-тен 2 табылды» деген жауапқа қарағанда пайдалырақ.

Тікелей енгізу немесе асинхронды шолу? Тікелей эфирдегі ақпарат тәуекел екіұшты болған кезде және әзірлеушілер аға инженердің біріктіруді неге бұғаттайтынын түсіндіруінен үйренген кезде ең көп құндылық қосады. Асинхронды шолу әзірлеушінің қорытындыларын аннотацияланған сараптамалық шолумен салыстыру үшін жеткілікті. Көптеген топтар екеуін де пайдаланады: алдымен өзіндік дайындық, содан кейін қиын жағдайлар бойынша жеңілдетілген сессия.

4. Нақты мысалмен жұмыс істеңіз

Мысал ретінде. Инженерлік менеджер қолданар алдында істі және жауап критерийлерін тексеруі керек.

Іс. Жасалған соңғы нүкте тұтынушының шот-фактурасын шот-фактура идентификаторы арқылы қайтарады. Ол қоңырау шалушының жарамды сеансы бар-жоғын, параметрленген сұранысты пайдаланатынын және негізгі сынақтан өткенін тексереді. Сол функция ортақ жүктеу санауышын құлыптаусыз арттырады.

Тапсырма. Әзірлеуші ​​​​көретін әрбір тәуекелді көрсетеді, оларды бағалайды және әрқайсысын растайтын сынақты сипаттайды.

Алғашқы әрекет. «Жақсы көрінеді. Сұрау параметрленген және тест сәтті өтті.» Әзірлеуші ​​тесттің сәтті өтуін дәлел ретінде қарастырды және тест нені қамтымайтынын сұрамады.

Кері байланыс және қайталап көріңіз. Сарапшы әзірлеушіден сеанс тексеруі нені дәлелдейтінін және нені дәлелдемейтінін атауды сұрайды. Қайталау әрекеті олардан екі түрлі тұтынушыны және бір уақытта екі сұранысты қарастыруды сұрайды.

Күштірек әрекет. «Сессияны тексеру шот-фактураның өзінікі екенін емес, кімнің қоңырау шалып жатқанын дәлелдейді. Мен А тұтынушысы В тұтынушысының шот-фактура идентификаторын сұрап, бас тартуды күтетін тест жазар едім. Есептегіш синхрондаусыз көбейтіледі, сондықтан бірден екі сұраныс жаңартуды жоғалтуы мүмкін. Мен бір мезгілде тест жүргізіп, санауды салыстырар едім. Сұраудың өзі параметрленген, сондықтан мен онда уақыт жұмсамас едім». Бұл жауап тәуекелдерді бағалайтынына және әрқайсысын тестпен байланыстыратынын ескеріңіз.

Неліктен әрбір жауап қорғалатын немесе толық емес. Әрқайсысын шолушының қалауына емес, бекітілген критерийлерге сәйкес бағалаңыз. Бірінші әрекет әдетке сәйкес келеді, бірақ дәлелдерді ескермейді. Күшті әрекет нақты, басымдыққа ие және тексерілетін болады.

5. Мүмкіндікті бағалау және жоспарды беру

Қабілеттіліктің дәлелі - оқушы көрмеген жаңа жаттығуды орындау. Бағаны тексеру сапасы және тиісті ақауларды анықтау. Қарапайым рубрика әрбір критерий бойынша 0-ден 2-ге дейінгі шкаланы пайдаланады:

критерийБақыланатын дәлелдер
Тапсырманы орындауЖасалған кодты тексереді және әрбір тұжырымның дәлелдерін жазып алады.
ДәлелдеуШектеулерді, баламаларды және белгісіз болып қалатын нәрселерді түсіндіреді және тәуекелдерді саралайды.
ШекараларТоптың шолу ережелерін сақтайды және тәуекел өз құзыретінен тыс болған кезде қауіпсіздік маманына жүгінеді.

Тіректер: 0 жоқ немесе қолдау таппайды, 1 тиісті кемшіліктері бар ішінара және 2 толық және келісілген критерийлерге сәйкес негізделген. Қорғалмаған кіру жолы бар кодты бекіту сияқты маңызды қателерді бөлек анықтаңыз, сонда жалпы балл оны жасыра алмайды. Бұл рубрика - бұл ұсыныс, расталған дайындық стандарты емес: оны инженерлік менеджермен бейімдеп, сынақтан өткізіңіз. Біздің нұсқаулық пайдалы кері байланыспен интерактивті тәжірибені жобалау шешімдерге сілтеме жасайтын кері байланысты қалай жазу керектігін көрсетеді.

Ауыстыруды әдейі жоспарлаңыз. Жаттығудан кейін әрбір әзірлеушіні генерацияланған кодты қамтитын нақты тарту сұрауымен жұптастырыңыз және олардың нәтижелерін бірге қарап шығыңыз немесе бір нәрсені жіберіп алған соңғы шолуға қысқаша ретроспектива жасаңыз.

Интерактивті жеткізу көмектесетін жерде

Интерактивті форматтар топты көрмес бұрын барлығының өздерін көрсетуі керек жерде көмектеседі. Тікелей эфирде фасилитатор жасалған үзіндіні көрсете алады, әрбір әзірлеушіден көрген тәуекелдерін және жазатын тестін теруді сұрай алады, содан кейін талқылау алдында спредті көрсете алады. Дайындық үшін дәл осы жаттығуды өз қарқынымен орындауға болады. AhaSlides интерактивті оқытуды және тікелей және өз бетінше жеткізу арасында ауысуды қолдайды. Бұл презентация және оқу құралы, кодты іске қосу орны емес, сондықтан код жаттығуларын өз ортаңызда орындаңыз. Өзіңіздің жұмыс процесіңізге сүйенуді жоспарлап отырған кез келген нақты авторлық, кері байланыс немесе есеп беру функциясын тексеріңіз. Пішімдерді таңдау бойынша нұсқаулық алу үшін біздің мақаланы қараңыз. бейімделгіш, интерактивті және тірі оқытуды қашан қолдану керек.

Не өзгергенін өлшеңіз

Әзірлеушілердің тапсырманы орындай алатынын не көрсететінін алдын ала шешіңіз. Көрінбейтін жаттығудағы тексеру сапасы мен ақауды анықтауды бастапқы сызықпен салыстырыңыз. Кімдердің кіретінін, бөлгішті және уақытты анықтаңыз. Егер нәтижелер жақсарса, оқытуды есептемес бұрын, сол кезеңде тағы не өзгергенін, мысалы, жаңа статикалық талдау ережесін, қайта қаралған шолу тізімі немесе көмекшінің ауысуын тексеріңіз.

Қалыптасуы мүмкін шектеулер

  • Қарастыру уақыты. Аудит шолудан ұзағырақ уақыт алады, ал мерзімдер шолуды жақындатады.
  • Құрал-саймандар. Егер сынақ белдігі немесе сканерлеу болмаса, қауіпті дәлелдеу қиын.
  • Құралдарды ауыстыру. Көмекшілер тез өзгереді, сондықтан бір ғана өнімге емес, шолу әдетіне қатысты жаттығуларды орындаңыз.
  • Істі қамту. Бір жаттығуда бірнеше ақау түрлері көрсетілген. Ұпай әзірлеушінің жалпы пікірін сипаттамайды.
  • Беру. Шеберханадағы өнімділік шолу кезегіндегі өнімділікпен бірдей емес.

Оларды демеушілерге ертерек атаңыз және бөлек түзетулерді жоспарлаңыз. Оқыту әзірлеушінің таба және дәлелдей алатын нәрселерін жақсартады. Ол уақытты немесе құралдарды жасамайды.

Жиі Қойылатын Сұрақтар

Жасанды интеллект арқылы жасалған кодты шолу бойынша оқыту дегеніміз не?

Ол әзірлеушілерге жасанды интеллект көмекшісі жасаған кодты шақыруды, бағалауды және аудиттеуді, қауіпсіздік, параллельдік және тиімділік мәселелерін табуды және әрқайсысын тестпен растауды үйретеді.

Түзілген код адам кодына қарағанда қауіпсіз емес пе?

Зерттеулер тәуекелге нұсқайды, бірақ нәтижелер құралға, тапсырмаға және зерттеу дизайнына байланысты. Бір пайдаланушы зерттеуі ассистенті бар қатысушылардың қауіпсіздігі төмен код жазғанын және оған сенімдірек болғанын анықтады, бұл шолу әдетін жаттықтыруға себеп болып табылады.

Әзірлеушілердің жасалған кодты тексере алатынын қалай бағалайсыз?

Жаңа код жаттығуын беріңіз және келісілген критерийлерге сәйкес сапасын тексеру және ақауды анықтау бағасын қойыңыз. Қауіпсіз кодтау ережелері бойынша викторина тек алғышарттарды растайды.

Тренинг үшін кодтық құмсалғыш қажет пе?

Жаттығуларды орындау үшін сізге бір жер қажет, әдетте ол сіздің жеке ортаңыз. Қолданар алдында кез келген құралдың сізге қажет нәрсені қолдайтынын тексеріңіз.

Неден бастау керек

Код базаңызда қайталанатын бір өзгеріс түрін таңдаңыз. Өнімділік туралы мәлімдеме жазыңыз, инженерлік менеджерге анықталған ақауларды және оларды көрсететін тесттерді тексертіңіз және 0-ден 2-ге дейінгі шкаламен және маңызды қателіктер тізімімен үш критерийлі рубриканы жасаңыз. Оны енгізбес бұрын шағын топпен сынақтан өткізіңіз.

Аудит жаттығуын өз командаңызбен қалай жүзеге асыруға болатынын және кейіннен өз қарқыныңызбен қайта пайдаланылатынын көру үшін зерттеңіз AhaSlides.

Аудиторияның белсенділігін арттыру үшін кеңестерге, түсініктерге және стратегияларға жазылыңыз.
Рақмет сізге! Сіздің өтінішіңіз қабылданды!
Қап! Пішінді жіберу кезінде бірдеңе дұрыс болмады.

Басқа жазбаларды қараңыз

AhaSlides Forbes America журналының ең үздік 500 компаниясы пайдаланады. Бүгін өзара әрекеттесудің күшін сезініңіз.

Тегін бастаңыз
© 2026 AhaSlides Pte Ltd