Organizzazzjoni tal-proċess tax-xogħol f'tim fuq proġett tal-IT

Hello ħbieb. Spiss, speċjalment fl-esternalizzazzjoni, nara l-istess stampa. Nuqqas ta’ workflow ċar fit-timijiet fuq diversi proġetti.

L-iktar ħaġa importanti hija li l-programmaturi ma jifhmux kif jikkomunikaw mal-klijent u ma 'xulxin. Kif tibni proċess kontinwu ta 'żvilupp ta' prodott ta 'kwalità. Kif tippjana l-ġurnata tax-xogħol u l-isprints tiegħek.

U dan kollu fl-aħħar mill-aħħar jirriżulta fi skadenzi mitlufa, sahra, showdowns kostanti fuq min għandu t-tort, u nuqqas ta 'sodisfazzjon tal-klijent dwar fejn u kif kollox miexi. Spiss, dan kollu jwassal għal bidla tal-programmaturi, jew saħansitra timijiet sħaħ. Telf ta 'klijent, deterjorazzjoni tar-reputazzjoni, eċċ.

F'ħin minnhom, jien biss spiċċajt fuq proġett bħal dan, fejn kien hemm dawn id-delights kollha.

Ħadd ma ried jieħu r-responsabbiltà għall-proġett (suq ta 'servizz kbir), il-fatturat kien terribbli, il-klijent kien sempliċement imqatta' u frustrat. Darba ġie għandi s-CEO u qal li għandek l-esperjenza meħtieġa, allura hawn il-karti f’idejk. Ħu l-proġett għalik innifsek. Jekk tħaffef, aħna nagħlqu l-proġett u nkeċċu lil kulħadd. Se taħdem, se tkun friska, imbagħad imexxiha u tiżviluppaha kif tara xieraq. B’riżultat ta’ dan, sirt il-mexxej tat-tim għall-proġett u kollox waqa’ fuq spalli.

L-ewwel ħaġa li għamilt kienet niżviluppa fluss tax-xogħol mill-bidu li allinjat mal-viżjoni tiegħi dak iż-żmien, u ktibt deskrizzjoni tax-xogħol għat-tim. L-implimentazzjoni tagħha ma kinitx faċli. Iżda fi żmien xahar jew hekk kollox issetilja, l-iżviluppaturi u l-klijent draw biha, u kollox mar fil-kwiet u komdu. Sabiex nuri lit-tim li din ma kinitx biss "maltempata f'tazza tat-tè", iżda mod reali ta 'ħruġ mis-sitwazzjoni, ħadt l-ammont massimu ta' responsabbiltajiet, neħħi r-rutina spjaċevoli mit-tim.

Diġà għaddiet sena u nofs, u l-proġett qed jiżviluppa mingħajr sahra, mingħajr "tiġrijiet tal-firien" u kull tip ta 'stress. Xi nies fit-tim l-antik ma ridux jaħdmu hekk u telqu; oħrajn, għall-kuntrarju, kienu kuntenti ħafna li dehru regoli trasparenti. Iżda fl-aħħar mill-aħħar, kulħadd fit-tim huwa motivat ħafna u jaf il-proġett enormi bis-sħiħ, inklużi kemm front-end kif ukoll back-end. Inklużi kemm il-bażi tal-kodiċi kif ukoll il-loġika tan-negozju kollha. Saħansitra wasal sal-punt fejn aħna mhux biss "qaddiefa", iżda aħna stess noħorġu b'ħafna proċessi tan-negozju u karatteristiċi ġodda li n-negozju jirriżulta li jogħġobhom.

Grazzi għal dan l-approċċ min-naħa tagħna, il-klijent iddeċieda li jordna suq ieħor mill-kumpanija tagħna, li hija aħbar tajba.

Peress li dan jaħdem fuq il-proġett tiegħi, forsi jgħin ukoll lil xi ħadd. Allura, il-proċess innifsu li għenna nsalvaw il-proġett:

Il-proċess tax-xogħol f'tim fuq il-proġett "My Favorite Project"

a) Proċess intern tat-tim (bejn l-iżviluppaturi)

  • Il-kwistjonijiet kollha huma maħluqa fis-sistema Jira
  • Kull kompitu għandu jiġi deskritt kemm jista 'jkun u jwettaq strettament azzjoni waħda
  • Kwalunkwe karatteristika, jekk tkun kumplessa biżżejjed, hija maqsuma f'ħafna ħidmiet żgħar
  • It-tim jaħdem fuq karatteristiċi bħala kompitu wieħed. L-ewwel, aħna lkoll naħdmu flimkien fuq karatteristika waħda, ibgħatha għall-ittestjar, imbagħad ħu dik li jmiss.
  • Kull kompitu huwa mmarkat, għall-backend jew il-frontend tiegħu
  • Hemm tipi ta 'kompiti u bugs. Għandek bżonn tindikahom b'mod korrett.
  • Wara li tlesti kompitu, jiġi trasferit għall-istatus ta 'reviżjoni tal-kodiċi (f'dan il-każ, tinħoloq talba ta' ġibda għal kollega)
  • Il-persuna li temmet il-kompitu immedjatament issegwi l-ħin tagħha għal dan il-kompitu.
  • Wara li jiċċekkja l-kodiċi, il-PR japprova u wara dan, dak li wettaq dan il-kompitu jingħaqad b'mod indipendenti fil-fergħa prinċipali, u wara jibdel l-istatus tiegħu għal lest għall-iskjerament fis-server dev.
  • Il-kompiti kollha lesti għall-iskjerament fis-server dev huma skjerati mill-mexxej tat-tim (il-qasam tar-responsabbiltà tiegħu), xi drabi minn membru tat-tim, jekk xi ħaġa tkun urġenti. Wara l-iskjerament, il-kompiti kollha minn lesti għall-iskjerament għal dev jiġu trasferiti għall-istatus - lesti għall-ittestjar fuq dev
  • Il-kompiti kollha huma ttestjati mill-klijent
  • Meta l-klijent ikun ittestja l-kompitu fuq id-dev, jittrasferih għall-istatus lest għall-iskjerament għall-produzzjoni
  • Għall-iskjerament għall-produzzjoni, għandna fergħa separata, fejn ngħaqqdu l-kaptan biss qabel l-iskjerament
  • Jekk waqt l-ittestjar il-klijent isib bugs, huwa jirritorna l-kompitu għal reviżjoni, billi jistabbilixxi l-istatus tiegħu bħala rritornat għar-reviżjoni. B'dan il-mod nisseparaw ħidmiet ġodda minn dawk li ma għaddewx mill-ittestjar.
  • B'riżultat ta' dan, il-kompiti kollha jmorru mill-ħolqien sat-tlestija: X'tagħmel → Fl-Iżvilupp → Reviżjoni tal-Kodiċi → Skjerament lest għal dev → QA fuq dev → (Irritorna għad-dev) → Skjerament lest għal prod → QA fuq prod → Magħmul
  • Kull żviluppatur jittestja l-kodiċi tiegħu b'mod indipendenti, inkluż bħala utent tas-sit. Mhux permess li jingħaqad fergħa f'waħda ewlenija sakemm ma jkunx magħruf b'ċertezza li l-kodiċi jaħdem.
  • Kull kompitu għandu prijoritajiet. Il-prijoritajiet huma stabbiliti jew mill-klijent jew mill-mexxej tat-tim.
  • L-iżviluppaturi jlestu l-kompiti prijoritarji l-ewwel.
  • L-iżviluppaturi jistgħu jassenjaw kompiti lil xulxin jekk instabu bugs differenti fis-sistema jew kompitu wieħed jikkonsisti fix-xogħol ta 'diversi speċjalisti.
  • Il-kompiti kollha li joħloq il-klijent imorru għand il-mexxej tat-tim, li jevalwahom u jew jitlob lill-klijent biex jimmodifikahom jew jassenjahom lil wieħed mill-membri tat-tim.
  • Il-kompiti kollha li huma lesti għall-iskjerament għal dev jew prod imorru wkoll għand il-mexxej tat-tim, li jiddetermina b'mod indipendenti meta u kif iwettaq l-iskjerament. Wara kull skjerament, il-mexxej tat-tim (jew il-membru tat-tim) għandu jinnotifika lill-klijent dwar dan. U wkoll ibiddel l-istatus għall-kompiti għal lesti għall-ittestjar għal dev/kont.
  • Kuljum fl-istess ħin (għalina huwa fin-12.00) nagħmlu laqgħa bejn il-membri kollha tat-tim
  • Kulħadd fil-laqgħa jirrapporta, inkluż il-mexxej tat-tim, dwar dak li għamel ilbieraħ u dak li qed jippjanaw li jagħmlu llum. X'ma jaħdimx u għaliex. B'hekk it-tim kollu jkun konxju ta' min qed jagħmel xiex u f'liema stadju jinsab il-proġett. Dan jagħtina l-opportunità li nbassru u naġġustaw, jekk meħtieġ, l-istimi u l-iskadenzi tagħna.
  • Fil-laqgħa, il-mexxej tat-tim jitkellem ukoll dwar il-bidliet kollha fil-proġett u l-livell ta 'bugs attwali li ma nstabux mill-klijent. Il-bugs kollha jiġu rranġati u assenjati lil kull membru tat-tim biex isolvuhom.
  • Fil-laqgħa, il-mexxej tat-tim jassenja kompiti lil kull persuna, filwaqt li jqis l-ammont ta 'xogħol attwali tal-iżviluppaturi, il-livell ta' taħriġ professjonali tagħhom, u jqis ukoll il-prossimità ta 'kompitu partikolari għal dak li qed jagħmel l-iżviluppatur bħalissa.
  • Fil-laqgħa, il-mexxej tat-tim jiżviluppa strateġija ġenerali għall-arkitettura u l-loġika tan-negozju. Wara dan it-tim kollu jiddiskuti dan u jiddeċiedi li jagħmel aġġustamenti jew jadotta din l-istrateġija.
  • Kull żviluppatur jikteb kodiċi u jibni algoritmi b'mod indipendenti fi ħdan il-qafas ta 'arkitettura waħda u loġika tan-negozju. Kulħadd jista’ jesprimi l-viżjoni tiegħu tal-implimentazzjoni, iżda ħadd mhu qed iġiegħel lil ħadd jagħmel dan b’dan il-mod u mhux mod ieħor. Kull deċiżjoni hija ġustifikata. Jekk hemm soluzzjoni aħjar, iżda m'hemmx ħin għaliha issa, allura jinħoloq kompitu fix-xaħam għar-refactoring futur ta 'ċerta parti tal-kodiċi.
  • Meta żviluppatur jieħu biċċa xogħol, jittrasferih għall-istatus ta 'żvilupp. Il-komunikazzjoni kollha dwar il-kjarifika tal-kompitu mal-klijent taqa' fuq l-ispallejn tal-iżviluppatur. Jistgħu jsiru mistoqsijiet tekniċi lill-mexxej tat-tim jew lill-kollegi.
  • Jekk l-iżviluppatur ma jifhimx l-essenza tal-kompitu, u l-klijent ma setax jispjegaha b'mod ċar, allura jipproċedi għall-kompitu li jmiss. U t-tim ewlieni jieħu dak attwali u jiddiskutiha mal-klijent.
  • Kull jum, l-iżviluppatur għandu jikteb fiċ-chat tal-klijent dwar liema kompiti ħadem fuqhom ilbieraħ u liema kompiti se jaħdem fuqhom illum
  • Il-proċess tax-xogħol iseħħ skont Scrum. Kollox huwa maqsum fi sprints. Kull sprint idum ġimgħatejn.
  • Sprints huma maħluqa, mimlija u magħluqa mill-mexxej tat-tim.
  • Jekk il-proġett għandu skadenzi stretti, allura nippruvaw nistmaw bejn wieħed u ieħor il-kompiti kollha. U npoġġuhom flimkien fi sprint. Jekk il-klijent jipprova jżid aktar kompiti mal-isprint, allura nistabbilixxu prijoritajiet u nittrasferixxu xi kompiti oħra għall-isprint li jmiss.

b) Proċess ta 'ħidma mal-klijent

  • Kull żviluppatur jista 'u għandu jikkomunika mal-klijent
  • Il-klijent ma jistax jitħalla jimponi r-regoli tal-logħba tiegħu stess. Huwa meħtieġ li nagħmluha ċara lill-klijent b'mod edukat u amikevoli li aħna speċjalisti fil-qasam tagħna, u aħna biss irridu nibnu proċessi ta 'xogħol u ninvolvu lill-klijent fihom
  • Huwa meħtieġ, idealment, qabel ma tibda timplimenta kwalunkwe funzjonalità, li tinħoloq flowchart tal-proċess loġiku kollu għall-karatteristika (fluss tax-xogħol). U ibgħatha lill-klijent għall-konferma. Dan japplika biss għal funzjonalità kumplessa u mhux ovvja, pereżempju, sistema ta' ħlas, sistema ta' notifika, eċċ. Dan jippermettilna nifhmu b'mod aktar preċiż x'għandu bżonn eżatt il-klijent, nissejvja d-dokumentazzjoni għall-karatteristika, u wkoll niżguraw lilna nfusna kontra l-fatt li l-klijent jista 'jgħid fil-futur li aħna ma għamilniex dak li talab.
  • Id-dijagrammi/flowcharts/loġika kollha eċċ. Aħna nissejvjah f'Confluence/Fat, fejn nitolbu lill-klijent jikkonferma l-korrettezza tal-implimentazzjoni futura fil-kummenti.
  • Aħna nippruvaw ma tagħbijax lill-klijent b'dettalji tekniċi. Jekk għandna bżonn nifhmu kif irid il-klijent, allura niġbed algoritmi primittivi fil-forma ta 'flowchart li l-klijent jista' jifhem u jikkoreġi/jimmodifika kollox hu stess.
  • Jekk il-klijent isib bug fil-proġett, allura nitolbuk tiddeskrivih fid-dettall kbir f'Fat. Taħt liema ċirkostanzi seħħet, meta, liema sekwenza ta 'azzjonijiet twettqet mill-klijent waqt l-ittestjar. Jekk jogħġbok ehmeż screenshots.
  • Nippruvaw kuljum, kull jum l-aktar, biex niskjeraw fis-server dev. Il-klijent imbagħad jibda jittestja l-funzjonalità u l-proġett ma jibqax idle. Fl-istess ħin, dan huwa markatur għall-klijent li l-proġett jinsab fl-iżvilupp sħiħ u ħadd mhu qed jgħidlu fairy tales.
  • Ħafna drabi jiġri li l-klijent ma jifhimx għal kollox dak li għandu bżonn. Għax qed joħloq negozju ġdid għalih innifsu, bi proċessi li għadhom ma ġewx stabbiliti. Għalhekk, sitwazzjoni komuni ħafna hija meta aħna tarmi biċċiet sħaħ ta 'kodiċi fit-Trash u disinn mill-ġdid il-loġika tal-applikazzjoni. Minn dan jirriżulta li m'għandekx tkopri assolutament kollox bit-testijiet. Jagħmel sens li tkopri biss funzjonalità kritika bit-testijiet, u mbagħad biss b'riżervi.
  • Hemm sitwazzjonijiet meta t-tim jirrealizza li mhux qed nilħqu l-iskadenzi. Imbagħad aħna nwettqu verifika ta 'malajr tal-kompiti u immedjatament ninfurmaw lill-klijent dwar dan. Bħala mod biex toħroġ mis-sitwazzjoni, nissuġġerixxu li tniedi funzjonalità importanti u kritika fil-ħin, u nħallu l-bqija għal wara r-rilaxx.
  • Jekk il-klijent jibda joħroġ b'kompiti differenti minn rasu, jibda jiffantasizza u jispjega b'subgħajh, allura nitolbuh jagħtina tqassim tal-paġna u fluss b'loġika li għandha tiddeskrivi bis-sħiħ l-imġieba tat-tqassim kollu u l-elementi tagħha.
  • Qabel ma nieħdu kwalunkwe kompitu, irridu niżguraw li din il-karatteristika ġiet inkluża fit-termini tal-ftehim/kuntratt tagħna. Jekk din hija karatteristika ġdida li tmur lil hinn mill-ftehimiet inizjali tagħna, allura għandna nipprezzaw din il-karatteristika ((ħin tat-tlestija stmat + 30%) x 2) u nindikaw lill-klijent li se nieħdu dan iż-żmien biex tlestiha, flimkien mal- l-iskadenza hija mċaqlaq biż-żmien tal-istima mmultiplikat bi tnejn. Ejja nagħmlu l-kompitu aktar malajr - kbir, kulħadd se jibbenefika minnu. Jekk le, allura aħna ngħaqadt kopert.

c) Dak li ma naċċettawx f'tim:

  • Nuqqas ta’ impenn, nuqqas ta’ kalm, nisi
  • "Tmigħ il-kolazzjon." Jekk ma tistax tlesti kompitu u ma tafx kif, imbagħad trid tinnotifika lill-mexxej tat-tim dwarha immedjatament, u ma tistennax sal-aħħar minuta.
  • Brows u tiftaħar minn persuna li għadha ma ppruvatx il-kapaċitajiet u l-professjonalità tagħha. Jekk jiġi ppruvat, allura huwa possibbli, fil-limiti tad-deċenza :)
  • Qerq fil-forom kollha tiegħu. Jekk kompitu ma jitlestax, allura m'għandekx tibdel l-istatus tagħha għal komplut u tikteb fil-chat tal-klijent li hija lesta. Il-kompjuter tkisser, is-sistema ġġarraf, il-kelb jomgħod il-laptop - dan kollu huwa inaċċettabbli. Jekk isseħħ avveniment ta' force majeure reali, il-mexxej tat-tim għandu jiġi nnotifikat immedjatament.
  • Meta speċjalista jkun offline il-ħin kollu u jkun diffiċli li tilħaqh waqt il-ħin tax-xogħol.
  • It-tossiċità fit-tim mhix permessa! Jekk xi ħadd ma jaqbilx ma 'xi ħaġa, allura kulħadd jinġabar flimkien għal rally u jiddiskuti u jiddeċiedi dwarha.

U għadd ta’ mistoqsijiet/teżijiet li kultant nistaqsi lill-klijent tiegħi biex jiċċara n-nuqqas ta’ ftehim kollu:

  1. X'inhuma l-kriterji ta' kwalità tiegħek?
  2. Kif tiddetermina jekk proġett għandux problemi jew le?
  3. Billi tikser ir-rakkomandazzjonijiet u l-pariri kollha tagħna dwar il-bidla/titjib tas-sistema, ir-riskji kollha jinġarru minnek biss
  4. Kwalunkwe tibdil kbir fil-proġett (per eżempju, kull tip ta 'fluss żejjed) iwassal għad-dehra possibbli ta' bugs (li, ovvjament, se nirranġaw)
  5. Huwa impossibbli li wieħed jifhem fi żmien ftit minuti x'tip ta 'problema seħħet fuq il-proġett, wisq inqas tiffissa immedjatament
  6. Naħdmu fuq fluss ta 'prodott speċifiku (Kompiti f'Zhira - Żvilupp - Ittestjar - Skjerament). Dan ifisser li ma nistgħux nirrispondu għall-fluss kollu ta’ talbiet u lmenti fiċ-chat.
  7. Il-programmaturi huma programmaturi, mhux testers professjonali, u ma jistgħux jiżguraw il-kwalità xierqa tal-ittestjar tal-proġett
  8. Ir-responsabbiltà għall-ittestjar finali u l-aċċettazzjoni tal-kompiti tal-produzzjoni hija kompletament tiegħek
  9. Jekk diġà ħadna biċċa xogħol, ma nistgħux naqilbu immedjatament għal oħrajn sakemm inlestu dak attwali (inkella dan iwassal għal aktar bugs u żieda fil-ħin tal-iżvilupp)
  10. Hemm inqas nies fit-tim (minħabba vaganzi jew mard), iżda hemm aktar xogħol u fiżikament mhux se jkollna ħin biex nirrispondu għal dak kollu li trid
  11. Nitolbuk tagħmel skjerament għall-produzzjoni mingħajr kompiti ttestjati fuq id-dev - dan huwa biss ir-riskju tiegħek, mhux l-iżviluppaturi
  12. Meta tissettja kompiti mhux ċari, mingħajr fluss korrett, mingħajr layouts tad-disinn, dan jeħtieġ ħafna aktar sforz u ħin ta 'implimentazzjoni minna, peress li għandna nagħmlu ammont addizzjonali ta' xogħol minflokek
  13. Kwalunkwe ħidma fuq bugs, mingħajr deskrizzjoni dettaljata tal-okkorrenza tagħhom u screenshots, ma tagħtinax l-opportunità li nifhmu x'mar ħażin u kif nistgħu nirranġaw dan il-bug
  14. Il-proġett jeħtieġ irfinar u titjib kostanti biex itejbu l-prestazzjoni u s-sigurtà. Għalhekk, it-tim iqatta’ parti mill-ħin tiegħu fuq dan it-titjib
  15. Minħabba l-fatt li għandna sahra bis-siegħa (riparazzjonijiet urġenti), irridu nikkumpensawhom f’jiem oħra

Bħala regola, il-klijent immedjatament jifhem li kollox mhuwiex daqshekk sempliċi fl-iżvilupp tas-softwer, u x-xewqa waħedha hija ċara li mhix biżżejjed.

B'mod ġenerali, dak kollu. Inħalli wara l-kwinti ħafna negozjati u d-debugging inizjali tal-proċessi kollha, iżda bħala riżultat, kollox ħadem. Nista 'ngħid li dan il-proċess sar tip ta' "Silver Bullet" għalina. Nies ġodda li ġew għall-proġett setgħu immedjatament jinvolvu ruħhom fix-xogħol mill-ewwel jum, peress li l-proċessi kollha ġew deskritti, u d-dokumentazzjoni u l-arkitettura fil-forma ta 'dijagrammi immedjatament taw idea ta' dak li konna nagħmlu lkoll hawn.

PS Nixtieq niċċara li m'hemm l-ebda project manager min-naħa tagħna. Huwa fuq in-naħa tal-klijent. Mhux techie xejn. proġett Ewropew. Il-komunikazzjoni kollha hija bl-Ingliż biss.

Xorti tajba lil kulħadd fil-proġetti tiegħek. Tinħaraqx u pprova ttejjeb il-proċessi tiegħek.

Sors fil-mini post blog.

Sors: www.habr.com