Testy a kontrola kvality
Věříme, že kvalita má být samozřejmostí. A to i v oblasti softwaru, kde často padá za oběť různým úsporám a dočasným řešením. Jak zajistit co nejvyšší kvalitu, aniž by se to drasticky projevilo na ceně vývoje?
Chyby vznikají neustále a všude, žádný softwarový vývoj jich není ušetřen. Asi nikdo nepochybuje, že u kritického softwaru může mít každá chyba rozsáhlé následky. I u běžných kancelářských aplikací však chyby ztrpčují život uživatelů, zhoršují efektivitu jejich práce a přinášejí nečekané náklady a rizika.
V AspectWorks považujeme kvalitu za mimořádně důležitou vlastnost softwaru. Neomezujeme se jen na kontrolu funkčnosti, kontrolujeme také kvalitu zdrojových kódů, uživatelských rozhraní, architektury, dokonce posuzujeme i kvalitu analýzy. Automatizované testy a mechanismy pro opravu chyb jsme začlenili přímo do vývojového procesu. Automatizace nám pomáhá vyloučit chyby lidského faktoru při rutinních úkolech a také snižuje náklady. Testování neprovádíme až na konci projektu, jak je častým zvykem, ale začínáme s ním ihned po zahájení projektu. Čím dříve jsou totiž chyby odhaleny, tím levnější je jejich oprava.
Testy analýzy
Vyhovuje zvolené technické řešení požadavkům? Řeší navržené uživatelské rozhraní všechny potřeby uživatelů? Bude aplikaci možno v budoucnu rozšiřovat, nebo ji nasadit v novém prostředí? Najít a opravit chyby v analýze je velice důležité. Chyba nalezená později totiž přijde podstatně dráž.
Automatické testy
Automatické testy kódu (unit testy, systém jUnit) udržují náš software neustále funkční, i během vývoje. Nedostáváme se tak do slepých uliček, kdy aplikace po týdnu vývoje nefunguje a nikdo ji nedokáže spravit. Provádíme samozřejmě i automatizované testy uživatelských rozhraní (systém Selenium), takže v kterémkoli okamžiku máme jistotu, že nově přidané funkce nenarušily činnost starších prvků systému.
Testy použitelnosti
Použitelnost aplikací testujeme na lidech. Samozřejmě že nejde o nějaké nelidské testy ve stylu doktora Mengele, testy použitelnosti jsou založeny na pozorování uživatelů při práci, odhalování jejich myšlenkových pochodů a uzpůsobení aplikace tak, aby co nejvíce odpovídala požadavkům a potřebám jejích uživatelů. Testy použitelnosti jsou překvapivě snadné a překvapivě efektivní.
Zátěžové testy
Potřebujete vědět, jak se váš systém bude chovat pod zátěží? Zátěžové testy vám umožní plánovat nákup hardwaru tak, aby nedocházelo k přetížení systému a s tím souvisejícím nepříjemnostem. Zákazníci vám odpustí lecos, ale ne pomalé servery.
Nezávislá kontrola kvality
Prakticky každý dodavatel softwaru se snaží snižovat svoje náklady a vyrábět levněji. Co když je ale taková snaha na úkor kvality? Dá se očekávat, že vás dodavatel na problémy nebude příliš upozorňovat, v lepším případě je potichu vyřeší, v horším případě je pouze zatají. Potíž je v tom, že čím později problém odhalíte, tím více peněz dáte za jeho opravu. Vyplatí se proto najmout si nezávislý dozor, který vás na takové utajené chyby včas upozorní. Do této role se nejlépe hodí konzultant nebo tým, který má vlastní zkušenosti s vývojem a testováním.
