ክፍል 4 / 12

ኮድ ክለሳ፣ ማደስ እና ቴክኒካል ዕዳ

ትርፍ፡

  • ለተነባቢነት፣ ለሎጂክ እና ለደህንነት በኮድ ግምገማ AIን እንደ ሁለተኛ አይን የመጠቀም ችሎታ
  • ውስብስብ የኮድ ባህሪን ሳያስተጓጉል በ AI ድጋፍ የማሻሻያ እርምጃዎችን የማቀድ ችሎታ
  • የ AI ግምገማን የማረጋገጥ እና ምክሮችን በሙከራ እና በስሪት ቁጥጥር ንፅፅር የማስተካከል ችሎታ

በሶፍትዌር ኢንጂነሪንግ ውስጥ ኮድ የሚነበበው ከተፃፈው በላይ ነው። የኮድ መስመር አንድ ጊዜ ይጻፋል፣ ግን ይነበባል፣ ተሻሽሏል እና በወራት ጊዜ ውስጥ በደርዘን የሚቆጠሩ ጊዜዎች ይገነባሉ። ለዚህም ነው የኮድ ግምገማ (የሌላ ሰውን ወይም የራስዎን ኮድ ለሎጂክ፣ ተነባቢነት እና ደህንነት መገምገም) እና ማደስ (የኮዱን ባህሪ ሳይቀይሩ ማሻሻል) የምህንድስና እምብርት የሆኑት። AI ለእነዚህ ሁለት ተግባራት ኃይለኛ "ሁለተኛ ዓይን" ይሆናል: በፍጥነት ማንበብን ይጠቁማል, ችላ የተባሉ አመክንዮ እና የደህንነት ጉዳዮችን ይጠቁማል, እና ትልቅ ለውጥ ወደ ትናንሽ አስተማማኝ ደረጃዎች ይሰብራል. ነገር ግን አንድ ወሳኝ ህግ አለ: ማደስ ባህሪን መቀየር የለበትም, እና ለዚህ ዋስትና የሚሆነው ብቸኛው ነገር መፈተሽ ነው.

በዚህ ክፍል እንዴት AIን በተዋቀረ መንገድ ለኮድ ግምገማ እንዴት መጠቀም እንደሚቻል፣ ባህሪውን ሳይጥስ ውስብስብ ኮድ እንዴት ማስተካከል እንደሚቻል እና የቴክኒክ ዕዳን እንዴት ማስተዳደር እንደሚቻል (ፈጣን ግን ውድ የሆኑ የኮድ ውሳኔዎች) እናያለን።

ፅንሰ-ሀሳቦች-የቴክኒክ እዳ፡- ለወደፊት ጥገናን አስቸጋሪ ለሚያደርጉ የፍጥነት ጥያቄዎች ዛሬ የተደረጉ የኮድ ውሳኔዎች። የኮድ ሽታ: እራሳቸው ስህተት ያልሆኑ ቅጦች ግን ችግሮችን ያመለክታሉ (በጣም ረጅም ተግባራት, ተደጋጋሚ ኮድ). ማፈግፈግ፡- ለውጥ ከዚህ ቀደም ሲሰራ የነበረውን ነገር ሲሰብር።

በተዋቀረ ኮድ ግምገማ ውስጥ AI መጠቀም

ጊዜው ሲገደብ, በጣም አደገኛ በሆኑ ጉዳዮች ላይ ማተኮር ያስፈልጋል. አውቶማቲክ ቅርጸቱ እንደ ውስጠ-ገብ እና ክፍተት ያሉ የቅርጸት ጉዳዮችን ይቆጣጠራል; የሰውን ትኩረት ወደ አመክንዮ፣ ደህንነት እና የጠርዝ ጉዳይ ባህሪ መስጠት አለቦት። የ AI ክለሳ ሲኖር, ቅድሚያ የሚሰጠውን ዝርዝር ይጠይቁ, የግምገማዎች ግልጽነት አይደለም.

  1. ወሰን ይስጡ. ምን ኮድ, ምን ማድረግ እንዳለበት, በየትኛው አውድ ውስጥ እንደሚሰራ.
  2. ቅድሚያ የሚሰጠውን ዘንግ ይግለጹ. ትክክለኛነት እና ደህንነት በመጀመሪያ ፣ ተነባቢነት ሁለተኛ።
  3. የኮንክሪት ማስተካከያ ይጠይቁ. ለእያንዳንዱ ግኝት "ለምን ችግሩ" እና "የሚመከር ማስተካከያ"
  4. ግኝቶቹን አረጋግጠዋል። AI በተጨማሪም የውሸት አወንታዊ ውጤቶችን ያመጣል; እያንዳንዱን ግኝት በኮድ እና በመሞከር ያረጋግጡ።

የተዋቀረ የግምገማ ጥያቄ፡ "የሚቀጥለውን ተግባር እንደ ከፍተኛ መሐንዲስ መርምር። ግኝቶቹን በቅደም ተከተል ይዘርዝሩ እና በእነዚህ መለያዎች ምልክት ያድርጉባቸው፡ [ወሳኝ] አመክንዮ/ደህንነት፣ [መካከለኛ] የጠርዝ መያዣ/አፈጻጸም፣ [ዝቅተኛ] ተነባቢነት/ስም። ለእያንዳንዱ ግኝት፡ ለምንድነው፣ የኮንክሪት መጠገኛ ጥቆማን አትዝለል። ኮድ ቅርጸት/ማስገባት ጉዳዮችን ይቆጣጠራል።

በደህንነት ላይ ያተኮረ የግምገማ ጥያቄ፡ "ይህን ኮድ ለደህንነት ሲባል ብቻ ይገምግሙ፡ የግቤት ማረጋገጫ እጥረት፣ የመርፌ አደጋ፣ የፈቃድ ቁጥጥር እጥረት፣ ሚስጥራዊ መረጃ መፍሰስ፣ ደህንነታቸው ያልተጠበቁ ነባሪዎች። በእያንዳንዱ ግኝቶች ላይ የጥቃት ሁኔታን ምሳሌ ያክሉ። ምንም የደህንነት ጉዳይ ከሌለ፣ 'ምንም ወሳኝ የደህንነት ጉዳዮች አላገኘሁም'' የሚለውን በግልፅ አስቀምጡ። ኮድ፡ [ኮድ]"

ጥንቃቄ፡ AI "ችግር የለም" ስላለ ብቻ ምንም ችግር እንደሌለበት ማረጋገጫ አይሆንም። AI የውሸት አሉታዊ ውጤቶችን ሊያመጣ ይችላል; እውነተኛውን የደህንነት ጉዳይ ማለፍ ይችላል. AI ክለሳ ማሟያዎች እንጂ መተካት አይደለም, የሰው ግምገማ እና የደህንነት ሙከራ. በደህንነት-ወሳኝ ኮድ ውስጥ, ብቃት ያለው መሐንዲስ የመጨረሻውን አስተያየት አለው.

በሙከራ-የተጠበቀ ማደስ

የመልሶ ማቋቋም ወርቃማው ህግ፡ መጀመሪያ ፈትኑ፣ በኋላ ይቀይሩ። ኮዱን ከመስተካከሉ በፊት፣ ለውጡ የሆነ ነገር ከጣሰ ወዲያውኑ እንዲያውቁ፣ አሁን ያለውን ባህሪ የሚቆልፉ ሙከራዎች ሊኖሩ ይገባል። የ AI refactoring ጊዜ ትዕዛዙን አይጥሱ።

  1. አሁን ያለውን ባህሪ ፈትኑ። ያለበለዚያ ፣ AI “የባህሪ ሙከራ” (የአሁኑን ባህሪ የሚይዝ ሙከራ) እንዲያመርት ያድርጉ።
  2. በትንሽ ደረጃዎች ያስተካክሉት. ሙከራ በእያንዳንዱ ደረጃ አረንጓዴ ሆኖ መቆየት አለበት።
  3. ከእያንዳንዱ እርምጃ በኋላ ያሂዱት. ቀደም ብሎ ማገገሚያ ይያዙ።

ደህንነቱ የተጠበቀ የማሻሻያ ዕቅድ ጥያቄ: "የሚከተለው የ 60-መስመር ተግባር በጣም ብዙ እና ለማንበብ አስቸጋሪ ነው. ባህሪውን ሳይቀይር ማስተካከል እፈልጋለሁ. በመጀመሪያ: የአሁኑን ባህሪ ለመቆለፍ የሚያስፈልጉኝን የፈተና ጉዳዮች ይዘርዝሩ. ከዚያም: ማደስን ወደ ትናንሽ ደረጃዎች ይሰብሩ, እያንዳንዳቸው ፈተናዎቹ አረንጓዴ ሲሆኑ ሊፈጸሙ ይችላሉ. ኮዱን ገና አይጻፉ, እቅዱን መጀመሪያ ይስጡት.

ደካማ ፈጣን/ጠንካራ ፍጥነት

ደካማ፡ "ይህን ኮድ የተሻለ ያድርጉት።" (ውጤት: ምን ማሻሻል እንዳለበት ግልጽ አይደለም; AI የዘፈቀደ ለውጦችን ያደርጋል, ባህሪን በጸጥታ ሊለውጥ ይችላል.) ጠንከር: "ይህን የክፍያ ስሌት ተግባር ለንባብ ችሎታ እንደገና ያስተካክሉት. ገደብ: ባህሪው በትክክል አንድ አይነት ሆኖ መቆየት አለበት, የመመለሻ ዋጋዎች መለወጥ የለባቸውም. ረጅም ተግባሩን ወደ ትርጉም የፍጆታ ተግባራት ይከፋፍሉት, አስማታዊ ቁጥሮችን ወደ ቋሚ ቋሚዎች በመጨመር. ኮድ በንጥል ይቀይራል እና ለምን አይለወጥም." እያንዳንዱ ንጥል ነገር አይለወጥም.

ኃይለኛው ጥያቄ በግልጽ "ባህሪው በትክክል አንድ አይነት መሆን አለበት" ገደቦች እና ምን መሻሻል እንዳለበት ይናገራል። ያለዚህ ገደብ, AI በ "ማሻሻያ" ስም አመክንዮ መቀየር እና ጸጥ ያለ መመለሻን ሊያመጣ ይችላል.

የቴክኒክ ዕዳ ማስተዳደር

አቀራረብ

በአጭር ጊዜ ውስጥ

በረጅም ጊዜ ውስጥ

ዕዳን ችላ ማለት

ፈጣን እድገት

የጥገና ሽባ ፣ የቡድኑ ፍጥነት ይቀንሳል

ሁሉንም ነገር እንደገና ጻፍ

የቋሚ ባህሪ ልማት

እርግጠኛ ያልሆነ መመለስ, ከፍተኛ አደጋ

የሚለካ፣ በሙከራ የተጠበቀው ማደስ

ጥቃቅን መቀዛቀዝ

ዘላቂ ፍጥነት

በጣም ጤናማው መንገድ ሦስተኛው ነው፡ ዕዳው እንዲታይ ያድርጉ (በዝርዝር ውስጥ ይከታተሉት)፣ በጣም የሚጎዳውን ቦታ ይጀምሩ እና እያንዳንዱን ጥገና ያረጋግጡ። AI የዕዳ ዕቃዎችን ለመለየት እና ቅድሚያ ለመስጠት ጥሩ እገዛ ነው, ነገር ግን የትኛው ዕዳ መክፈል ያለበት የንግድ ሥራ ውሳኔ ነው.

ሚኒ ጉዳዮች

ጉዳይ 1 - ጸጥ ያለ መመለስ. አንድ ገንቢ AI “ይህን ተግባር ቀለል እንዲል” ይነግረዋል ፣ AI አንድን ሁኔታ በስህተት ይተረጉመዋል እና የመመለሻ ስሌት ተሰብሯል። ምንም ሙከራ ስለሌለ ስህተቱ ከ 3 ሳምንታት በኋላ ከደንበኛ ቅሬታ ጋር ይከሰታል. ቡድኑ መጀመሪያ የባህሪ ፈተና በመፃፍ ተመሳሳይ ስራ ይሰራል እና በመጀመሪያው ሩጫ ላይ በቀይ ፈተና ስህተቱን ይይዛል።

ጉዳይ 2 - ጠቃሚ ሁለተኛ ዓይን. በኮድ ግምገማ ውስጥ፣ AI የተጠቃሚ ፍቃድ የሚፈተሸው በይነገጹ ውስጥ ብቻ እንጂ በአገልጋዩ ላይ እንዳልሆነ ይገነዘባል። ይህ ያልተፈቀደ የመዳረሻ ተጋላጭነት ነው። ኢንጂነር የአገልጋይ-ጎን ፍቃድ ማረጋገጥን ይጨምራል; የ AI ፍተሻ ትክክለኛ የደህንነት ችግርን ይከላከላል።

ጉዳይ 3 - የውሸት አዎንታዊ። AI "ይህ ተለዋዋጭ በጭራሽ ጥቅም ላይ አይውልም, ይሰርዙት" ይላል; ሆኖም ግን በተዘዋዋሪ በተለዋዋጭ ነጸብራቅ ዘዴ በኩል ጥቅም ላይ ይውላል. መሐንዲሱ በፈተናው ላይ የቀረበውን ሃሳብ ካላረጋገጠ ይሰረዛል እና የሩጫ ጊዜ ስህተት ይከሰታል። እያንዳንዱ AI ግኝት ከመተግበሩ በፊት መረጋገጥ አለበት.

የተለመዱ ስህተቶች

  • ያለ ሙከራ እንደገና ማደስ. ባህሪው መያዙን ለማረጋገጥ ምንም ነገር የለም.
  • የ AI ግኝቶችን ሳያረጋግጡ መተግበር። የውሸት አዎንታዊ እና የውሸት አሉታዊ ነገሮች ሁለቱም ይከሰታሉ.
  • በቅርጸት ችግሮች ላይ የሰውን ጊዜ ማባከን. በራስ-ሰር በሚሠሩ መሳሪያዎች ሊፈቱ በሚችሉ ተግባራት ላይ ማተኮር ትክክለኛዎቹን አደጋዎች ይሸፍናል።
  • "ችግር የለም" የሚለውን መልስ እንደ ዋስትና መውሰድ. AI ተጋላጭነትን ማለፍ ይችላል; የሰው ግምገማ ያስፈልጋል.
  • ዕዳውን በአንድ ጊዜ ለመክፈል መሞከር. ዋናዎቹ እንደገና መፃፍ አደገኛ ናቸው; በፈተና የሚለኩ እና የሚጠበቁ ደረጃዎች ይመረጣል.

በማጠቃለያው

የኮድ ግምገማ እና ማደስ የኮዱን ረጅም ዕድሜ ይወስናል። AI ኃይለኛ ሁለተኛ ዓይን እና እቅድ ጀነሬተር ነው፡ ቅድሚያ የሚሰጣቸውን ግኝቶች፣ የደህንነት ሁኔታዎችን እና አነስተኛ ደረጃ የማሻሻያ ዕቅዶችን ያቀርባል። ነገር ግን ማደስ ባህሪን መቀየር የለበትም፣ እና መሞከር ብቻ ለዚህ ዋስትና ይሰጣል። በኮድ እና በሙከራ ላይ ማንኛውንም የ AI ግኝት ያረጋግጡ; "ችግር የለም" የሚለውን መልስ እንደ ማስረጃ አትውሰድ። የቴክኒካዊ ዕዳ እንዲታይ ያድርጉ እና በተለካ ፣ በፈተና በተጠበቁ ደረጃዎች ይክፈሉት።

የመተግበሪያ ተግባር

ከ40-70 መስመር ይውሰዱ፣ እርስዎ ያለዎት ትንሽ ውስብስብ ተግባር (ወይም AI ያመነጫል)። በመጀመሪያ የተዋቀረውን የግምገማ ጥያቄ ይከተሉ እና ግኝቶቹን እንደ [ወሳኝ]/[መካከለኛ]/[ዝቅተኛ] ብለው ደርድሩ። በኮዱ ላይ ቢያንስ አንድ ግኝት በእጅ ያረጋግጡ። ከዚያም በአስተማማኝ የማሻሻያ ዕቅድ ፍጥነት መጀመሪያ የባህሪ ሙከራዎችን ያመነጫሉ እና ያካሂዱ፣ ከዚያም ማሻሻያውን በትንሽ ደረጃዎች ይተግብሩ እና ፈተናዎቹ በእያንዳንዱ ደረጃ አረንጓዴ መሆናቸውን ያረጋግጡ።

የማረጋገጫ ዝርዝር

  • [ ] ግምገማውን በቀዳሚ መለያዎች (ወሳኝ/መካከለኛ/ዝቅተኛ) አዋቅረዋለሁ።
  • [ ] ከኮዱ/ሙከራው አንጻር ቢያንስ አንድ የኤአይአይ ግኝት አረጋግጫለሁ።
  • [ ] እንደገና ከመፈጠሩ በፊት የአሁኑን ባህሪ ሞከርኩ።
  • [] ለውጦቹን በትንሽ ደረጃዎች አድርጌያለሁ እና በእያንዳንዱ ደረጃ ሙከራዎችን አደረግሁ።
  • [ ] በጥያቄው ውስጥ "ባህሪው አንድ አይነት ሆኖ መቀጠል አለበት" የሚለውን ገደብ ገልጫለሁ።
  • [ ] የደህንነት ግኝቶች የሰውን ማረጋገጫ እንደሚያስፈልጋቸው አረጋግጫለሁ።