what is technical debt
Deute tècnic és una idea metafòrica que argumenta que, de la mateixa manera que es poden trobar problemes de deute en finances, les organitzacions de programari es troben amb alguna cosa similar en l'acumulació de treballs inacabats durant projectes anteriors i versions / sprints de versions.
Què és el deute tècnic?
Representa l'esforç necessari per solucionar els problemes / defectes que queden al codi quan es publica una aplicació. En paraules simples: és la diferència (en termes d’errors) entre el que s’espera i el que es lliura.
Quan un equip de desenvolupament està ocupat treballant en un projecte i corregint errors, malauradament, apareixen molts errors nous. Fora de aquests, alguns són fixos i d'altres es diferencien per a la versió posterior. Quan aquesta diferència de problemes augmenta, en un moment determinat és realment difícil llançar el producte a temps sense cap problema. Aquesta és la pitjor conseqüència de Deute tècnic si no s’aborda a temps.
En aquest article, aprendreu: què és el deute tècnic, per què l’equip de control de qualitat s’hauria de preocupar i, sobretot, com gestionar-lo.
imatge font
Ward Cunningham , el fundador del programari wiki, concebuda aquesta idea ja en els anys noranta, establint paral·lelismes amb l’impacte del deute incobrable sobre la indústria financera, al·ludint literalment a l’experiència desagradable d’haver de pagar diners d’interès excessius després d’incomplir els préstecs.
Quina utilitat té el maven al seleni?
El desafiament de muntar el deute tecnològic per sprint es pot visualitzar a la figura 1.
Cal esmentar aquí, però, que hi ha una lleugera diferència en el significat del deute tècnic (també conegut com a deute de codi o deute de disseny) de la seva analogia corresponent en el món de les finances; el primer s’assembla més a idea abstracta , sense equacions matemàtiques per visualitzar com s’acumula realment l’interès.
Fig 1: Visualització de l’increment escalable del deute tecnològic entre els sprints
Què aprendreu:
- Per què pateixen més els equips de control de qualitat a causa del deute tècnic
- Un exemple del món real
- Gestió de deutes tècnics en pràctiques de control de qualitat
- Conclusió
- Lectura recomanada
Per què pateixen més els equips de control de qualitat a causa del deute tècnic
Durant un cicle de disseny i desenvolupament de programari típic, hi ha diverses coses que poden conduir a un ' deute tècnic ”Com a situació– documentació incorrecta , proves inadequades i la correcció d'errors, falta de coordinació entre equips, llegat codi i refactorització retardada , absència de integració contínua i altres factors fora de control.
Per exemple, s'ha observat que els esforços de duplicació de codi poden provocar qualsevol cosa entre 25 a 35% treball extra.
on és la clau de seguretat de la xarxa
Tanmateix, enlloc no hi ha els desafiaments a causa del deute tècnic són més evidents que en les proves de control de qualitat on els equips de proves han de complir uns terminis inesperats i tot pot quedar fora de l'equip.
Amb quina freqüència els vostres provadors han afrontat problemes en l'últim moment quan, inesperadament, va venir el responsable de lliurament i els va dir: 'Equip! Hem de desplegar el nostre producte d’aquí a una setmana, ens sap greu no poder comunicar-ho a temps. Acabeu amb totes les tasques de prova de manera urgent per poder estar preparats amb la demostració '.
Bàsicament, qualsevol prova perduda o enfocament de 'resoldre'l més tard' pot comportar un problema com el deute tecnològic. Manca de cobertura de les proves Les històries d'usuaris de grans dimensions, els sprints curts i altres exemples de 'tallar les cantonades' a causa de la pressió de lliurament juguen un paper enorme darrere de l'acumulació de deute tècnic a la pràctica de control de qualitat.
Un exemple del món real
Un minorista en línia amb seu als Estats Units amb una presència significativa en diversos llocs web i aplicacions mòbils es va trobar amb un repte del 'deute tècnic' del món real quan la complexitat de la malla de proves va començar a agrupar-se amb cada nova esprint .
Això va passar a causa del repunt sobtat del nombre de dispositius mòbils que es van provar, de múltiples idiomes que s’admeten i de més de mitja dotzena de llocs de xarxes socials que s’han d’aprofitar.
Amb una cobertura d’automatització inferior al 40%, el desafiament del deute tecnològic es presentaria de les maneres següents:
- Consum excessiu de temps en proves de llançament - Amb el nombre de navegadors, dispositius i scripts creixent amb cada sprint de prova, el cicle de llançament es retardaria, cosa que provocaria la pèrdua de temps de comercialització.
- L’increment del cost de la contractació - El nombre de verificadors necessaris per donar suport al projecte gairebé es va duplicar, cosa que es va traduir en costos addicionals de 500.000 dòlars
- Complexitat en el projecte - Amb la creixent complexitat del projecte, fer un seguiment dels casos de prova i dels errors es convertia en un repte
- Es perd massa temps perseguint falsos positius - De nou, una caiguda de les complexitats creixents del projecte.
- Increment de l'esforç de desenvolupament de proves fins a un 60% - Va amb el territori
Gestió de deutes tècnics en pràctiques de control de qualitat
La majoria dels gestors de control de qualitat consideren impulsivament el deute tecnològic com la conseqüència raonable de centrar tota l’energia en el sprint actual, cosa que condueix a assolir la cobertura de les proves d’alguna manera mitjançant mitjans manuals i ignoren completament l’automatització.
Això es coneix com el enfocament ràpid i brut que ha estat tractat en un bloc per Martin Fowler, l'autor del quadrant tècnic de deutes .
Els principis àgils ens dicten que visualitzem el problema del deute tecnològic com una incapacitat per mantenir i complir Paràmetres de control de qualitat .
De fet, basat en una enquesta pel National Institute of Standards and Technology (NIST), la insuficiència d’eines i mètodes de proves anuals costa l’economia nord-americana $ 22.2 i 59.500 milions de dòlars , amb aproximadament la meitat d’aquests diners gastats en proves addicionals per desenvolupadors de programari i aproximadament la meitat per usuaris de programari per evitar fallades.
En lloc de reaccionar a fallades quan es produeixi l'incident, un enfocament proactiu seria identificar defectes després de cada activitat o tasca que es pugui mesurar. Podeu fer-ho tot manualment, però tenint en compte els milers d’escenaris de casos de prova d’un projecte mitjà, el control automatitzat de les proves és una necessitat.
Clarament, proves efectives us pot ajudar a guanyar terreny seriós a la guerra contra el deute tècnic. Llavors, què significa bàsicament? Vol dir que el vostre sistema està ben equipat per identificar defectes en l’aplicació general.
com eliminar l'element de matriu a Java
Com mostra l’equació anterior, l’eficàcia dels casos de prova teòricament pot arribar fins al 100% si el nombre de defectes trobats pel client (és a dir, defectes de postproducció) s’hagués assignat amb precisió al nombre de defectes trobats en cada etapa de la cobertura de les proves.
Per tal de tenir un banc de proves ben dissenyat que pugui mesurar amb precisió els defectes tan aviat com s’introdueixin, l’automatització és un requisit previ.
Automatització de proves us ajuda a minimitzar el nombre d’escriptures que s’executen, informant dels resultats i comparant-los amb proves de proves anteriors. El mètode o procés que s’utilitza per executar l’automatització s’anomena prova automatització marc .
Exemples típics serien eines comercials o de venda gratuïta com Selenium, MonkeyTalk, robots , Borland SilkCentral, HP Quality Center i IBM Rational Rose .
En el passat, les organitzacions i els seus equips de programari sovint consideraven les proves de control de qualitat com una activitat de suport a productes comercials més importants i no una pràctica disciplinada per si mateixa que requeriria un enfocament bàsic i dedicat. De fet, un enfocament no bàsic de les proves de control de qualitat és precisament el que ha conduït al desafiament continu del deute tècnic en primer lloc.
Tenint en compte el ràpid ritme d’evolució de les habilitats de control de qualitat que s’ha produït en l’última dècada, a les organitzacions els costa molt actualitzar les seves habilitats i competències als nivells mínims desitjats segons els paràmetres actuals de la indústria.
De fet, hi ha una tendència creixent a la indústria per conformar-se amb res menys que els professionals més experimentats en automatització de proves, com els comandaments d’elit de proves / control de qualitat; se'ls coneix com a enginyers de programari en proves ( Des de ) i desenvolupadors de programari en prova ( SDiT ). Aquests professionals tenen molta demanda a causa de la seva àmplia experiència en una vertical escollida (per exemple, comerç electrònic) o en una categoria professional en particular.
La majoria de les empreses de desenvolupament de programari i producte, tal com parlem ara, lluiten per trobar els recursos tècnics qualificats desitjats davant de terminis de lliurament més curts. La solució a aquest repte és associar-se amb un jugador d’automatització de control de qualitat offshore que pugui solucionar la seva manca d’habilitats amb el conjunt adequat de recursos SDiT / SEiT.
Altres atributs desitjats d’un jugador d’externalització en proves i control de qualitat que resulten útils inclouen un enfocament àgil i disciplinat per a l’execució del projecte, experiència suficient en la indústria, inclòs l’accés directe a marcs d’automatització reutilitzables i casos de proves, i per últim, però no per això menys important, una intenció clara i capacitat per afrontar els desafiaments remots de l’equip i els enfrontaments culturals perquè el client no estigui carregat de treballs addicionals en la gestió de contractistes.
Conclusió
Com qualsevol altre deute, el deute tècnic pot demostrar-se que és el desastre de les empreses i la causa fonamental de la seva acumulació és que no s’implementa una pràctica de QA proactiva que elimina totes les restes d’automatització.
Sobre l'autor: Aquest és un missatge de convidat de l'equip d'eInfochips. Han elaborat un enfocament únic anomenat Tech Debt Zero que és una de les maneres més estructurades i eficients d’eliminar gradualment el deute tècnic en activitats d’automatització i control de qualitat. Per saber més sobre el deute tecnològic, mireu aquest vídeo sobre un enfocament per reduir el departament de tecnologia.
Espero que tingueu la idea clara de què és el deute tècnic. Feu-nos saber si teniu cap consulta relacionada amb ell o com gestionar-lo a la pràctica.
Lectura recomanada
- Prova de programari Treball freelance d'escriptor de contingut tècnic
- El negoci global de proves de programari arribarà aviat a 28,8 mil milions de dòlars
- Consells sobre proves de programari per a provadors novells
- Com mantenir la motivació viva als provadors de programari?
- El Zen i l’art de provar programari
- Les millors eines de prova de programari 2021 (Eines d'automatització de proves de control de qualitat)
- Els millors articles de proves de programari del 2008
- Prova de programari Treball d'assistent de control de qualitat