Դուք ծանոթ եք ծրագրավորմանը, բայց Extreme Programming-ը (կարճ՝ XP) դեռևս մի փոքր առեղծված է ձեզ համար:
Թույլ մի տվեք, որ անունը ձեզ շեղի, դուք վտանգում եք կորցնել օգտակար տեղեկատվություն:
Այս հոդվածում մենք կանդրադառնանք այն ամենին, ինչ դուք պետք է իմանաք Extreme Programming-ի մասին, որպեսզի կարողանաք օգտագործել այն ձեր օգտին:
Ծայրահեղ ծրագրավորումը ծրագրային ապահովման մշակման մեթոդաբանություն է, որը մաս է կազմում այն բանի, որը հավաքականորեն հայտնի է որպես արագաշարժ մեթոդոլոգիաներ: XP-ն կառուցված է արժեքների, սկզբունքների և պրակտիկայի վրա, և դրա նպատակն է թույլ տալ փոքր և միջին թիմերին արտադրել բարձրորակ ծրագրակազմ և հարմարվել անընդհատ փոփոխվող և զարգացող պահանջներին:
XP-ին տարբերվող այլ արագաշարժ մեթոդոլոգիաներից այն է, որ XP-ն ընդգծում է ծրագրային ապահովման մշակման տեխնիկական ասպեկտները: Ծայրահեղ ծրագրավորումը ճշգրիտ է այն մասին, թե ինչպես են աշխատում ինժեներները, քանի որ հետևյալ ինժեներական պրակտիկաները թույլ են տալիս թիմերին ապահովել բարձրորակ ծածկագիր կայուն տեմպերով:
Ծայրահեղ ծրագրավորումը, մի խոսքով, ծայրահեղության հասցված լավ պրակտիկա է: Քանի որ զույգ ծրագրավորումը լավ է, եկեք դա անենք անընդհատ: Քանի որ նախօրոք փորձարկումը լավ է, մենք փորձարկում ենք նախքան արտադրության ծածկագիրը նույնիսկ գրելը:
XP-ն, ի տարբերություն այլ մեթոդաբանությունների, հիմնված է արժեքների և սկզբունքների վրա, որոնք կարևոր և համապատասխան են ինժեներական պրակտիկայի առումով:
Արժեքները նպատակ են տալիս թիմերին: Նրանք հանդես են գալիս որպես «հյուսիսային աստղ»՝ ձեր որոշումները բարձր մակարդակով առաջնորդելու համար: Այնուամենայնիվ, արժեքները վերացական են և չափազանց մշուշոտ հատուկ ուղեցույցի համար: Օրինակ՝ ասելով, որ դուք գնահատում եք հաղորդակցությունը, կարող է հանգեցնել շատ տարբեր արդյունքների:
Պրակտիկան ինչ-որ իմաստով արժեքների հակառակն է: Նրանք կոնկրետ են և գետնին, defiսահմանելով անելիքների առանձնահատկությունները: Պրակտիկան օգնում է թիմերին հաշվետու լինել արժեքների համար: Օրինակ, տեղեկատվական աշխատանքային տարածքների պրակտիկան նպաստում է թափանցիկ և պարզ հաղորդակցությանը:
Սկզբունքները տիրույթին հատուկ ուղեցույցներ են, որոնք կամրջում են պրակտիկայի և արժեքների միջև առկա բացը:
XP արժեքներ՝ հաղորդակցություն, պարզություն, հետադարձ կապ, քաջություն և հարգանք: Դիտարկենք դրանցից յուրաքանչյուրին ավելի մանրամասն:
մշակումը BlogInnovazione.այն պատկերից alexsoft.com
ՀաղորդակցությունՀաղորդակցման բացակայությունը խանգարում է գիտելիքի հոսքին թիմում: Հաճախ, երբ խնդիր կա, ինչ-որ մեկն արդեն գիտի, թե ինչպես շտկել այն: Սակայն հաղորդակցության բացակայությունը խանգարում է նրանց իմանալ խնդրի մասին կամ նպաստել դրա լուծմանը: Այսպիսով, խնդիրն ավարտվում է կրկնակի լուծմամբ՝ առաջացնելով թափոններ։
ՊարզությունՊարզությունը ասում է, որ դուք միշտ ձգտում եք անել ամենապարզ բանը, որն աշխատում է: Այն հաճախ սխալ է հասկացվում և ընդունվում որպես ամենապարզ բան, կետ՝ անտեսելով «որ աշխատում է» մասը։
Կարևոր է նաև հիշել, որ պարզությունը խիստ համատեքստային է: Այն, ինչ պարզ է մի թիմի համար, բարդ է մյուսի համար և ամբողջովին կախված է յուրաքանչյուր թիմի հմտություններից, փորձից և գիտելիքներից:
հետադարձ կապԱվելի ավանդական, կասկադային ծրագրային ապահովման մշակման մեթոդոլոգիաներում հետադարձ կապը հաճախ «չափազանց քիչ է, շատ ուշ»:
XP-ն, այնուամենայնիվ, ընդունում է փոփոխությունները, և XP թիմերը ձգտում են ժամանակին և մշտական արձագանքների: Եթե դասընթացի շտկում է անհրաժեշտ, XPers-ը ցանկանում է իմանալ որքան հնարավոր է շուտ:
մշակումը BlogInnovazione.այն պատկերից alexsoft.com
Հետադարձ կապը գալիս է բազմաթիվ ձևերի և չափերի: Երբ դուք համագործակցում եք ծրագրավորման հետ, ձեր գործընկերոջ մեկնաբանությունները կարևոր արձագանք են: Այդպիսին են թիմի մյուս անդամների կարծիքները գաղափարի վերաբերյալ, ներառյալ հաճախորդը, ով իդեալականորեն թիմի անդամ է:
Թեստերը արժեքավոր հետադարձ կապի ևս մեկ աղբյուր են, որը դուրս է թեստի արդյունքներից: Թեստեր գրելը հեշտ է, թե դժվար, հետադարձ կապը նույնպես: Եթե դժվարանում եք թեստեր գրել, ձեր նախագիծը, հավանաբար, չափազանց բարդ է: Լսեք արձագանքները և պարզեցրեք ձեր դիզայնը:
Ինչ-որ բան, որը հնչում է որպես հիանալի գաղափար, կարող է գործնականում այնքան էլ լավ չաշխատել: Հետևաբար, պատրաստի կոդը նույնպես հետադարձ կապի աղբյուր է, ինչպես նաև բաշխված արտադրանքը:
Ի վերջո, հիշեք, որ արձագանքները չափազանց շատ են: Եթե թիմն ավելի շատ արձագանք է առաջացնում, քան կարող է կառավարել, կարևոր հետադարձ կապը կարող է ընկնել ռադարից: Այսպիսով, անհրաժեշտ է դանդաղեցնել և պարզել, թե ինչն է առաջացնում ավելորդ արձագանքը և ուղղել այն:
ՔաջությունՔենթ Բեկ defiխիզախությունը ի հայտ է գալիս որպես «արդյունավետ գործողություն վախի դիմաց»: Որպես ծրագրային ապահովման ինժեներ, դուք վախենալու շատ բան ունեք և, հետևաբար, քաջություն դրսևորելու շատ հնարավորություններ:
Ճշմարտությունն ասելու համար քաջություն է պետք, հատկապես՝ տհաճները, օրինակ՝ ազնիվ գնահատականները։ Հետադարձ կապ տալն ու ստանալը նույնպես քաջություն է պահանջում: Եվ խիզախություն է պահանջվում՝ խուսափելու ծախսերի խորտակված մոլորության մեջ ընկնելու և անհաջող լուծումից հրաժարվելու համար, որը զգալի ներդրումներ է ստացել:
ՀարգանքXP-ի հիմնական նախադրյալն այն է, որ յուրաքանչյուրը հոգ է տանում իր աշխատանքի մասին: Ոչ մի տեխնիկական գերազանցություն չի կարող փրկել նախագիծը, եթե չկա խնամք և հարգանք:
Յուրաքանչյուր մարդ արժանի է արժանապատվության և հարգանքի, և դա ներառում է, իհարկե, ծրագրային ապահովման մշակման նախագծում ներգրավված մարդիկ: Երբ դուք և ձեր թիմի անդամները հարգում և հոգ տանում եք միմյանց, հաճախորդի, նախագծի և նրա ապագա օգտագործողների համար, բոլորը շահում են
Սկզբունքները ավելի կոնկրետ ուղեցույց են տալիս, քան արժեքները: Դրանք ուղեցույցներ են, որոնք լուսավորում են արժեքները և դարձնում դրանք ավելի հստակ և ավելի քիչ երկիմաստ:
մշակումը BlogInnovazione.այն պատկերից alexsoft.com
Օրինակ՝ ելնելով միայն խիզախության արժեքից՝ դուք կարող եք եզրակացնել, որ նպատակահարմար է անմիջապես փոխել ձեր գրաֆիկը։ Այնուամենայնիվ, Baby Steps սկզբունքը մեզ ասում է, որ մեծ փոփոխությունները ռիսկային են: Այսպիսով, փոխարենը նախապատվություն տվեք փոքրերին:
ՈւմանիտաՄարդիկ ստեղծում են ծրագրակազմ մարդկանց համար, հաճախ անտեսված փաստ: Բայց հաշվի առնելով մարդու հիմնական կարիքները, ուժեղ և թույլ կողմերը՝ ստեղծում են ապրանքներ, որոնք մարդիկ ցանկանում են օգտագործել: Եվ աշխատանքային միջավայրը, որը ձեզ հնարավորություն է ընձեռում կատարելագործման և աճի, պատկանելության և տարրական ապահովության զգացում, այն վայրն է, որտեղ դուք ավելի հեշտությամբ եք հաշվի առնում ուրիշների կարիքները:
ՏնտեսությունXP-ում թիմերը միշտ ուշադրություն են դարձնում ծրագրային ապահովման մշակման տնտեսական իրողություններին, մշտապես գնահատում են տնտեսական ռիսկերը և նախագծի կարիքները:
Օրինակ, նրանք կիրականացնեն օգտատերերի պատմությունները՝ հիմնվելով իրենց բիզնեսի արժեքի վրա, այլ ոչ թե տեխնիկական խնդիրների վրա:
Փոխադարձ շահXP-ից հետո դուք խուսափում եք լուծումներից, որոնք շահում են մի կողմին՝ մյուսի հաշվին: Օրինակ, ընդլայնված բնութագրերը կարող են օգնել մեկ ուրիշին հասկանալ այն, բայց դա շեղում է ձեզ այն իրականացնելուց և հետաձգում այն ձեր օգտատերերի համար:
Փոխշահավետ լուծում է ընդունելության ավտոմատացված թեստերի օգտագործումը: Ստացեք ակնթարթային արձագանք ձեր կատարման վերաբերյալ, ձեր գործընկերները ստանում են ճշգրիտ բնութագրեր կոդի մեջ, և օգտատերերն առաջինը ստանում են իրենց հնարավորությունները: Բացի այդ, դուք բոլորդ կունենաք անվտանգության ցանց ռեգրեսիայի դեմ:
Նպաստ (Փոխշահավետ)Եթե տվյալ լուծումն աշխատում է մեկ մակարդակում, այն կարող է աշխատել նաև ավելի բարձր կամ ավելի ցածր մակարդակի վրա: Օրինակ, վաղաժամ և մշտական արձագանք ստանալը վտանգված է XP-ում տարբեր աստիճանի:
ԲարելավումԲարելավման սկզբունքի համաձայն՝ թիմերը ձգտում են կատարելության ոչ թե սկզբնական ներդրման ժամանակ, այլ իրականացնելու, որը բավական լավ է, այնուհետև շարունակաբար սովորել և կատարելագործել այն իրական օգտատերերի արձագանքներով:
ԲազմազանությունԴուք և ձեր գործընկերները օգտվում եք տարբեր տեսակետներից, հմտություններից և վերաբերմունքից: Նման բազմազանությունը հաճախ հանգեցնում է կոնֆլիկտի, բայց դա նորմալ է:
Կոնֆլիկտներն ու անհամաձայնությունները հնարավորություններ են ավելի լավ գաղափարների առաջացման համար, երբ բոլորը խաղում են խիզախության և հարգանքի արժեքներով: Հակառակ տեսակետներ արտահայտելու համարձակություն, դրանք քաղաքացիական և էմպատիկ կերպով արտահայտելու հարգանք: Եվ այս ամենը արդյունավետ հաղորդակցման վարժություն է:
ԱրտացոլումՄեծ թիմերը մտածում են իրենց աշխատանքի մասին և վերլուծում, թե ինչպես լինել ավելի լավը: XP-ն դրա համար շատ հնարավորություններ է առաջարկում: Ոչ միայն իր շաբաթական և եռամսյակային ցիկլերում, այլև յուրաքանչյուր պրակտիկայում այն նպաստում է:
Տրամաբանական վերլուծությունից բացի կարևոր է հաշվի առնել նաև զգացմունքները: Ձեր աղիքները կարող են ձեզ տեղեկացնել նախքան որևէ բանի մասին պատճառաբանելը: Եվ այսպես, նա կարող է խոսել ոչ տեխնիկական մարդկանց հետ, նրանք կարող են հարցեր տալ, որոնք բացում են բոլորովին նոր հնարավորություններ:
ՖլուսսոԾրագրային ապահովման մշակման ավանդական մեթոդոլոգիաներն ունեն հստակ փուլեր, որոնք երկար են տևում և հետադարձ կապի և դասընթացի ուղղման քիչ հնարավորություն ունեն: Փոխարենը, XP-ում ծրագրային ապահովման մշակումը տեղի է ունենում անընդհատ տեղի ունեցող գործողություններում, արժեքի հետևողական «հոսքի» մեջ:
ՀնարավորությունԾրագրային ապահովման մշակման մեջ խնդիրներն անխուսափելի են: Այնուամենայնիվ, յուրաքանչյուր խնդիր բարելավման հնարավորություն է։ Սովորեք նայել դրանց այս ձևով, և շատ ավելի հավանական է, որ կգտնեք կրեատիվ և նպատակաուղղված լուծումներ, որոնք նույնպես կկանխեն դրանց կրկնությունը:
ԱվելորդությունԱվելորդության սկզբունքն ասում է, որ եթե տվյալ խնդիրը կրիտիկական է, դուք պետք է կիրառեք բազմաթիվ մարտավարություններ դրան հակազդելու համար:
Վերցրեք թերությունները: Չկա որևէ մեկ մարտավարություն, որը կարող է կանխել բոլոր թերությունները, որպեսզի փախչեն արտադրությունից:
Այսպիսով, XP-ի լուծումը որակի մի շարք միջոցառումներ հավաքելն է: Զույգերի ծրագրավորում, փորձարկում, շարունակական ինտեգրում: Յուրաքանչյուրը մեկ պաշտպանական գիծ, միասին գրեթե անթափանց պատ:
ՁախողումԱնհաջողությունը վատնում չէ, երբ այն վերածվում է գիտելիքի: Գործողություններ անելը և արագ սովորելը, թե ինչն է անհաջող, շատ ավելի արդյունավետ է, քան անգործությունը, որն առաջացել է անվճռականության հետևանքով բազմաթիվ տարբերակներից ընտրելիս:
ՈրակՄարդիկ հաճախ մտածում են, որ որակի և արագության միջև երկընտրանք կա:
Դա հակառակն է. որակը բարելավելու մղումն այն է, ինչը ստիպում է ձեզ ավելի արագ գնալ:
Օրինակ՝ վերաֆակտորինգը՝ կոդի կառուցվածքի փոփոխություն՝ առանց դրա վարքագիծը փոխելու, պրակտիկա է, որը հեշտացնում է կոդը հասկանալն ու փոխելը: Արդյունքում, դուք ավելի քիչ հավանական է, որ կներկայացնեք կոդի թերությունները, ինչը թույլ է տալիս նախ ավելի մեծ արժեք ներկայացնել՝ չշտկելով սխալները:
Փոքրիկ քայլերՄեծ փոփոխությունները ռիսկային են: XP-ն նվազեցնում է այդ ռիսկը՝ փոփոխություններ կատարելով փոքր քայլերով, յուրաքանչյուր մակարդակում:
Ծրագրավորողները կոդ են գրում փոքր քայլերով՝ օգտագործելով թեստային մշակում: Նրանք օրական մի քանի անգամ ինտեգրում են իրենց կոդը հիմնական ցանցին, ոչ թե ընդամենը մի քանի շաբաթը կամ նույնիսկ ամիսը մեկ: Նախագիծն ինքնին տեղի է ունենում ոչ թե երկարատև, այլ կարճ ցիկլերով:
Պատասխանատվությունն ընդունված էXP-ում պատասխանատվությունը պետք է ընդունվի, երբեք չհանձնարարվի:
Պատասխանատվությունը պետք է ուղեկցի այն իրավասությանը, որը որոշումներ կայացնի այն մասին, թե ինչի համար եք պատասխանատու: Ճիշտ է նաև հակառակը. Դուք չեք ցանկանում, որ մարդիկ որոշումներ կայացնեն, եթե նրանք ստիպված չլինեն ապրել դրանց հետևանքների հետ:
Ծայրահեղ ծրագրավորումը, լինելով արագաշարժ մեթոդոլոգիա, կարելի է ընդունել և սկսել այն ընդունել՝ առանց կոշտ պլանների հետևելու: Սա ավելի շուտ կրկնվող դիզայն է, քան մեծ նախնական նախագիծ:
XP-ն էականորեն տարբերվում է ավանդական մեթոդոլոգիաներից, այսինքն՝ կասկադից՝ խուսափելով երկարատև փուլերից:
Ինչպե՞ս է XP-ն տարբերվում այլ արագաշարժ մեթոդոլոգիաներից:
Էքստրեմալ ծրագրավորումն իր բնույթով շատ ընդհանրություններ ունի այլ արագաշարժ մեթոդոլոգիաների հետ, բայց նաև եզակի է դրանց մեջ:
Զարգացման այլ մեթոդոլոգիաների մեծ մասը շատ բան չի ասում, եթե որևէ բան կա, այն մասին, թե ինչպես կարելի է ավարտին հասցնել աշխատանքը: XP-ն, մյուս կողմից, շատ կարծիքի է, երբ խոսքը վերաբերում է դրան և մեծ ուշադրություն է դարձնում ծրագրային ապահովման ինժեներական պրակտիկայի վրա:
Scrum-ը շրջանակ է, որն օգնում է թիմերին հարմարվողական եղանակով մշակել բարդ նախագծեր: Scrum-ը չի թելադրում, թե ինչպես են մշակողները կատարում իրենց աշխատանքը: XP-ն, ինչպես նշվեց, մեծ ուշադրություն է դարձնում լավ ծրագրավորման փորձին:
մշակումը BlogInnovazione.en Պատկեր ցանցային լուծումներ
Բացի այդ, XP-ն ակնհայտորեն ծրագրավորման մասին է: Scrum-ը, մյուս կողմից, կարող է կիրառվել ցանկացած նախագծի վրա, որն օգտվում է կրկնվող մոտեցումից:
XP-ն ընդունում է իր բաղադրիչների փոփոխությունները: Թիմերը լիազորված են և նույնիսկ խրախուսվում են փոփոխել պրակտիկան՝ ելնելով իրենց հատուկ կարիքներից: Scrum ուղեցույցը, մյուս կողմից, հաստատակամ է, որ «Չնայած Scrum-ի միայն մասերը կարող են իրականացվել, արդյունքը Scrum չէ»:
Բացի այդ, Scrum-ը շրջանակ է, որը պետք է լրացվի մեթոդաբանություններով և պրակտիկաներով՝ աշխատանքն ավարտելու համար:
Սա նշանակում է, որ էքստրեմալ ծրագրավորման և Scrum-ում աշխատելը խիստ խորհուրդ է տրվում:
Ըստ Քենթ Բեքի՝ հասուն XP թիմը չպետք է կոշտ դերեր նշանակի, բայց գիտակցի, որ դերերը կարող են օգտակար լինել նորաստեղծ թիմերի համար, մինչև նրանք սկսեն դանդաղեցնել կամ դժվարացնել համագործակցությունը:
Դիտարկենք մի քանի հիմնական դերեր.
Սրանք XP-ում ընդունված պրակտիկաներն են: Դրանք բաժանված են երեք հիմնական խմբի՝ ծրագրային ապահովման ճարտարագիտություն, աշխատավայր և նախագծերի կառավարում:
Զույգերի ծրագրավորումXP-ում դուք կոդ եք գրում զույգերով՝ նստած մեքենայի վրա: Դուք և ձեր զույգը զրուցում եք միմյանց հետ, երբ վերլուծում եք, իրականացնում և փորձարկում այն գործառույթը, որի վրա աշխատում եք: Զույգ ծրագրավորումը հատկապես լավ է ավելի քիչ սխալներով կոդ արտադրելու համար՝ միաժամանակ լինելով գրավիչ, զվարճալի և հոգնեցուցիչ:
Տասը րոպեի սահմանափակումՊահանջվում է Թույլ է տալիս 10 րոպե կառուցել ամբողջ նախագիծը, ներառյալ բոլոր ավտոմատացված թեստերը, առավելագույնը տասը րոպեում: Այս սահմանը թեստավորումը պարզեցված և արդյունավետ պահելու համար է:
Թեստեր ծրագրավորումից առաջԻրականացնել գործառույթներ՝ օգտագործելով թեստային առաջին մոտեցումը, որը նաև կոչվում է թեստի վրա հիմնված զարգացում (TDD). TDD-ն բաղկացած է մշակումից՝ օգտագործելով պարզ կրկնվող ընթացակարգ.
TDD-ն բերում է մի քանի առավելություններ.
Նախ, հետադարձ կապ. Եթե դժվար է թեստ գրել, ապա դիզայնը, որը փնտրում եք կամ ժառանգել եք, հավանաբար չափազանց բարդ է, և դուք պետք է այն պարզեցնեք:
Երկրորդ, TDD-ն թույլ է տալիս ծրագրավորողներին վստահել իրենց գրած ծածկագրին և ստեղծում է գեղեցիկ շրջադարձային ռիթմ, որտեղ հաջորդ քայլը միշտ պարզ է:
Վերջին, բայց ոչ պակաս կարևորը, TDD-ի օգտագործումն ի սկզբանե ապահովում է ծածկագրի 100% ծածկույթ: Փորձարկման փաթեթն այնուհետև իսկապես դառնում է անվտանգության ցանց ապագա փոփոխությունների համար՝ խրախուսելով ծածկագրի վերամշակումը և որակի առաքինի շրջանակ ստեղծելը:
Աճող ձևավորումԱվելացվող դիզայնի պրակտիկան նշանակում է, որ դուք պետք է ամեն օր ներդրումներ կատարեք ձեր հավելվածի նախագծման մեջ՝ փնտրելով կրկնօրինակումը հեռացնելու և փոքր բարելավումներ անելու հնարավորություններ՝ հասնելու հնարավոր լավագույն ձևավորմանը, ինչի կարիքն ունի ձեր համակարգն այսօր:
Շարունակական ինտեգրում. Որքան հնարավոր է շուտ և որքան հնարավոր է հաճախ ինտեգրվելը կտրուկ նվազեցնում է ինտեգրման արժեքը, քանի որ այն նվազեցնում է միաձուլումների և տրամաբանական հակամարտությունների առաջացման հավանականությունը: Այն նաև բացահայտում է բնապահպանական և կախվածության խնդիրները:
Ընդհանուր ծածկագիր (կոլեկտիվ սեփականություն)XP-ն խթանում է ընդհանուր ծածկագիրը կամ կոլեկտիվ սեփականությունը. յուրաքանչյուր մշակող պատասխանատու է բոլոր կոդի համար: Այն խրախուսում է տեղեկատվության փոխանակումը, նվազեցնում է թիմային ավտոբուսի գործոնը և բարձրացնում յուրաքանչյուր մոդուլի ընդհանուր որակը, եթե հաշվի առնենք բազմազանության սկզբունքը:
Single CodeBaseՄեկ կոդերի բազան հայտնի է նաև որպես «բեռնախցիկի վրա հիմնված զարգացում»: Դա նշանակում է, որ ճշմարտության միայն մեկ աղբյուր կա. Այսպիսով, երկար ժամանակ մեկուսացված զարգանալու փոխարեն, ձեր ներդրումները միաձուլեք մեկ հոսքի մեջ վաղ և հաճախ: Գործառույթների դրոշները օգնում են սահմանափակել ձեր գործառույթների օգտագործումը մինչև դրանք ավարտվեն:
Ամենօրյա բաշխումԱրտադրության մեջ օրական առնվազն մեկ անգամ տեղակայումը շարունակական ինտեգրման տրամաբանական հետևանք է. Փաստորեն, այսօր շատ թիմեր էլ ավելի հեռուն են գնում և կիրառում շարունակական իրականացում: Այսինքն, երբ ինչ-որ մեկը միանում է հիմնական ցանցին, հավելվածը տեղակայվում է արտադրության մեջ:
Կոդ և թեստերԱյս պրակտիկան նշանակում է, որ սկզբնական կոդը, ներառյալ թեստերը, ծրագրային նախագծի միակ մշտական արտեֆակտն է: Այլ տեսակի արտեֆակտների, այդ թվում՝ փաստաթղթերի արտադրության մեջ ներգրավվելը հաճախ վատնում է, քանի որ այն իրական արժեք չի ստեղծում հաճախորդի համար:
Եթե Ձեզ անհրաժեշտ են այլ արտեֆակտներ կամ փաստաթղթեր, ջանքեր գործադրեք դրանք ստեղծելու արտադրության կոդից և թեստերից:
Արմատային պատճառի վերլուծությունԱմեն անգամ, երբ թերությունը գնում է արտադրության, պարզապես մի շտկեք թերությունը: Համոզվեք, որ սկզբում պարզել եք, թե ինչն է դա առաջացրել, ինչու դուք և ձեր թիմակիցները չկարողացաք կանխել սահելը: Այնուհետև քայլեր ձեռնարկեք, որպեսզի համոզվեք, որ դա այլևս չի կրկնվի:
Նստեք միասինXP-ում թիմերը նախընտրում են միասին աշխատել բաց տարածքում: Այս պրակտիկան խթանում է հաղորդակցությունը և թիմին պատկանելու զգացումը:
Ամբողջ թիմըՅուրաքանչյուր ոք, ով անհրաժեշտ է նախագծի հաջողության համար, XP թիմի մասն է: Սա խիստ համատեքստային է` տարբեր յուրաքանչյուր թիմի համար, և դինամիկ, այն կարող է փոխվել թիմի ներսում:
Տեղեկատվական աշխատանքային տարածքներՏեղեկատվական աշխատանքային տարածքը օգտագործում է թիմի ֆիզիկական տարածքը՝ ցուցադրելու տեղեկատվություն, որը թույլ է տալիս յուրաքանչյուրին մի հայացքով իմանալ ծրագրի առաջընթացը: Ինչպես է դա արվում, կարող է տարբեր լինել՝ սկսած ֆիզիկական նշումներից և գրաֆիկներից մինչև սքրինշոթներ, որոնք ցույց են տալիս Kanban-ի տախտակները և ծրագրի կառավարման ծրագրաշարի վահանակները:
Լիցքավորված աշխատանքXP-ում դուք աշխատում եք միայն այնքան ժամանակ, քանի դեռ կարող եք էներգետիկ աշխատանք կատարել: Աշխատանքային ժամերը պետք է սահմանափակվեն շաբաթական 40-ով, առավելագույնը:
analisi- Գրեք օգտվողի պահանջները այնպիսի ձևաչափով, որը հայտնի է որպես օգտագործողի վերլուծություն: Օգտագործողի վերլուծությունը ունի կարճ, նկարագրական անվանում և նաև կարճ նկարագրություն, թե ինչ պետք է իրականացվի:
ԱնգործությունՑիկլ պլանավորելիս ավելացրեք փոքր առաջադրանքներ, որոնք թիմը կարող է հրաժարվել, եթե անհրաժեշտություն առաջանա: Ավելի շատ պատմություններ միշտ կարող են ավելացվել, եթե թիմը չափազանց շատ բան մատուցի:
Ցիկլեր (ամսական և շաբաթական)XP-ի զարգացումը տեղի է ունենում երկու հիմնական ցիկլով՝ շաբաթական և ամսական:
Հանդիպումներ, ցիկլեր, նախատեսված թողարկումներXP-ի մշակումն աշխատում է երկու հիմնական ցիկլով՝ շաբաթական և եռամսյակային: Սկզբում Քենթ Բեքը խորհուրդ տվեց երկշաբաթյա ցիկլ, բայց փոխեց այն իր գրքի երկրորդ հրատարակության մեջ:
Շաբաթական ցիկլՇաբաթական ցիկլը XP նախագծի «զարկերակն» է: Ցիկլը սկսվում է հանդիպումից, որի ժամանակ հաճախորդը ընտրում է, թե որ պատմություններն է ցանկանում ստեղծել շաբաթվա ընթացքում: Բացի այդ, թիմը վերանայում է իրենց աշխատանքը, ներառյալ անցյալ շաբաթվա առաջընթացը, և մտածում է իրենց գործընթացը բարելավելու ուղիների մասին:
Ամսական ցիկլԱմեն ամիս թիմն արտացոլում և բացահայտում է բարելավման հնարավորությունները իրենց գործընթացում: Հաճախորդը ընտրում է մեկ կամ մի քանի թեմաներ այդ ամսվա համար՝ այս թեմաների վերլուծությունների հետ մեկտեղ:
Ինչպե՞ս սկսել աշխատել էքստրեմալ ծրագրավորման հետ:
Տեխնիկական հմտությունները և XP-ի սովորությունները դժվար է սովորել: Որոշ պրակտիկա կարող է օտար թվալ ծրագրավորողների համար, որոնք սովոր չեն դրանց:
Ercole Palmeri
Veeam-ի Coveware-ը կշարունակի տրամադրել կիբեր շորթման միջադեպերի արձագանքման ծառայություններ: Coveware-ը կառաջարկի դատաբժշկական և վերականգնման հնարավորություններ…
Կանխատեսելի սպասարկումը հեղափոխություն է անում նավթի և գազի ոլորտում՝ կայանի կառավարման նորարարական և ակտիվ մոտեցմամբ:…
Մեծ Բրիտանիայի CMA-ն նախազգուշացում է տարածել արհեստական ինտելեկտի շուկայում Big Tech-ի վարքագծի վերաբերյալ: Այնտեղ…
Շենքերի էներգաարդյունավետության բարձրացման նպատակով Եվրոպական միության կողմից ձևակերպված «Քեյս Գրին» հրամանագիրը իր օրենսդրական գործընթացն ավարտել է…