40 грешни схващания на програмистите (или защо QA е нужен)?

Вече 10 години работя като специалист по осигуряване качеството на софтуера или, казано на чист български – QA. QA е професия, в чиято основа са валидацията и верификацията, т.е. дали софтуерът изпълнява изискванията за него, дали работи според очакванията на клиента, по правилния начин, дали е достатъчно бърз, надежден и удобен за ползване, ще издържи ли десетки потребители и т. н. Днес попаднах на чудесен пример за 40 грешни схващания при нещо толкова просто, като да си въведеш имената в ей-такова поле на някоя обществена система, да речем, илюстриращи за колко много неща трябва да мислят тестващите, докато си вършат работата:

Въведете Вашите имена:

 

Ето го и списъкът с 40 погрешни схващания на типичния програмист:

  1. Хората имат точно три официални имена.
  2. Трите имена винаги вървят последователно: име, презиме, фамилия
  3. Хората имат само официални имена… Петър си е винаги Петър, какви са тия Петьо, Пепи, Пешо…
  4. Хората никога не пропускат презимето си.
  5. Да го кажем така: Хората имат точно N имена, където N е някъде между 2 и 4.
  6. Имената на хората се побират в Х на брой символа.
  7. Абе вие ме бъзикате! Как ще има човек, който реално се казва Adolph Blaine Charles David Earl Frederick Gerald Hubert Irvin John Kenneth Lloyd Martin Nero Oliver Paul Quincy Randolph Sherman Thomas Uncas Victor William Xerxes Yancy Wolfeschlegelsteinhausenbergerdorff?
  8. Имената на хората не се променят.
  9. Добре, де, променят се, но само при конкретен и краен брой поводи: сватба, осиновяване и обидно име.
  10. Уф, добре, променят се по всяко време и всякакви поводи.
  11. Имената на хората винаги са на кирилица.
  12. Тези, които не са на кирилица, се пишат на латиница. Какво искате да кажете с 辉龙, да се напише Hui Long просто!
  13. Сигурен съм, че модулът за филтриране на мръсни думи няма имена на хора в речника си… Е, не може ли да го напишем Хуи вместо Хуй този китаец?
  14. Има супер голямо значение дали имената са с главни или малки букви…
  15. Всъщност, май няма никакво значение.
  16. Принципно имената започват с главни букви, ама колко идиоти ги мързи да си натиснат shift-а?
  17. Само ЧЪК НОРИС пише името си изцяло с главни букви, идиоти такива!
  18. Някои имена имат префикси и суфикси, ама кой нормален ще се напише като Lt Col John-Alexander van der Sar Maria de la Salete Jr.
  19. Ще ги махна тия титли… Е, как ще има „д-р Драгомир Драгостинов“? И ще вземе да се напише Dr. Dr. Dragostinov?!
  20. Имената на хората не съдържат номера, как ще се казваш в днешно време Александър Иванов XVI? И ще се напишеш като Александър Иванов 16?!
  21. Името и фамилията са различни имена. Ако се казваш Yang Yang Yang, как да разбера дали си „Yang Yang  Yang“ или „Yang  Yang Yang“? Ох, обърках се…
  22. Хората имат глобално уникални имена. Не може 10 души да се казват Иван Иванов Иванов… аз как ще ги различа сега?
  23. Добре, добре… но да знаете, че не повече от милион души в целия свят имат съвпадащо име с някой друг.
  24. Как така Ива Иванов? Или си Ива Иванова, или Иво Иванов!
  25. Добре, имало и Вовеки Веков Иванов. Ясна е работата.
  26. Добре, де, почти всички хора имат глобално уникални имена, трябва ли да пренаписвам цялата система за това, че на някой можели да му съвпаднат имената?
  27. Е, много важно, че вместо Sørensen излизало S?rensen… Той си знае как се казва, разбира се.
  28. Виж, тази система е за България, никога няма да се ползва с имена на латиница…
  29. Или от японци. 猿も木から落ちる
  30. Или от корейци. Как така ще са различни символи от японските? 원숭이도 나무에서 떨어진다.
  31. Този О’Хара въобще не му пишете апострофа, чупи цялата база!
  32. Да, сега ще кажеш, че и 1′ or ‘1’ = ‘1’ е валидно име… SQL инжекция ли? Това пък какво е?
  33. Знам алгоритъм, който транслитерира без проблеми от кирилица на латиница и обратно. Пътка Пътева ли? Ами…
  34. Естествено, че ако има две свързани информационни системи за даден човек, те използват абсолютно същото име за този човек.
  35. Разбира се, че всеки оператор на системата въвежда имената по еднакъв начин…
  36. Кк тка ще прпусне или рзамени няккви бкуви, докаот пише?! Къде гледа?!
  37. Имената на хората винаги се дават при раждането, нали?
  38. Е, не веднага при раждането, но много, много скоро след това…
  39. Пет години? И как сте му викали докато стане на пет?!
  40. Хората имат имена. Винаги! Как така няма име… ХОРАТА ВИНАГИ ИМАТ ИМЕНА! Напускам.

По този японски оригинал на Патрик МакКензи (има и още поне шест имена, които ще пропусна): http://emptypage.jp/translations/kalzumeus/falsehoods-programmers-believe-about-names.html



Реклама:

„Шапка ти свалям…“, ама къде точно?

Моят приятел и съученик от МГ Георги написа във Facebook следното:

Така… Имаме следната задача с 3 подусловия:
1. Късен следобед.
2. Почва ‘а са стъмва.
3. Мръъсна жега цял ден.
Въпрос: Къде се намира лирическият герой и през кое време на годината се случва това, ако са изпълнени едновременно и трите подусловия?

Приятелите ме помолиха да публикувам в блога отговора си, така че ето го и него:

Не си написал цялото условие, Гоше!

Имайки предвид, че е късен следобед и е било мръсна жега цял ден, очевидно не става въпрос за полярен студ и полярно денонощие, но една голяма част от планетата ни остава в потенциалните места, където е лирическият герой.

От останалата част на песента можем да извлечем още важни факти:

4. Казва „алелуя“ и „бейбе“, т.е. е близо до християнска църква в страна с много англоговорящи.
5. Обажда се и взима телефони – тоест е на място с GSM обхват.
6. Сваля шапка – значи е на място, където се носят шапки.
7. Не е проблем жените да ходят по дантели на това място.
8. Лирическият герой е ударен от хормон, но и от циклон, тоест е на място с циклони.
9. Близо до лирическия герой има фитнес-зала, бира и мезета.
10. Жената е Playmate трето поколение внучка, т.е. продават сп. Playboy в тази държава.
11. Дупето на жената е баклава, а баклавата се произвежда предимно на Балканите и в Азия.
12. Става въпрос за Сандокан, а той е известен като тигъра от Малайзия, т.е. трябва да е някъде близо до Малайзия.

Съдейки по 3 и 6, става въпрос за Индонезия, Бруней, Малайзия или Сингапур, където се ползват известните шапки „songkok“ или „peci“. Възможно е също така да говорим за Хонг Конг, където се наричат „jin“ или Филипините („tabungaw“). Дубай отпада, тъй като тюрбаните не влизат в категория „шапка“.

Английският е официален език единствено в Сингапур, на Филипините и в Хонг Конг, с което частично покриваме факт No. 4. В тези държави и цените за роуминг са сравнително високи, което обяснява текста „звъня и ми затваряш“.

Трябва да се има предвид и „алелуя“, с което Хонг Конг отпада, тъй като там са предимно будисти, таоисти и конфуцианци. Остават Филипините и Сингапур.

Използваме факт 8 (за циклона), но те са популярни явления и в двете държави – в Сингапур е известният циклон Вамей, а на Филипините – Хайян. Подобно е положението с баклавите, дантелите, фитнес залите и бирата…

Едно-единствено нещо ни насочва към Сингапур и това е факт 12, а именно, че Сандокан е близо до Малайзия.

Така се ограничаваме до един много малък регион – Сингапур, островният град-държава в Югоизточна Азия, разположена в южната част на Малайския полуостров, където английският е официален език, по цял ден е „мръсна жега“, има циклони, хормони, бира, мезета, фитнес-зали, баклави, дантели и национални шапки за сваляне. С всичко това покриваме факти 1,2,3,5,6,8,10 и 12.
От факт 4 получаваме 15-тина християнски църкви в Сингапур, а от факт 7 получаваме единствения голям магазин за дантела на 1.311002, 103.908922. Това обаче са приблизителни координати, защото мацката може да си е купила дантелата от там и да ходи по лъскави места, за да се фука с нея. От факт 11 получаваме само два магазина за баклава – 1.301435, 103.838661 и 1.299790, 103.851978. Това е важно и трябва да се комбинира с факт 9, от където получаваме стотици фитнес зали, но само в десетина от тях се предлагат бири и мезета или в радиус 200 метра има ресторанти с такива.

Няма да ви занимавам с повече координати, но като съберем цялата тази информация, получаваме, че героят се намира близо до Beach Road в Сингапур…

Singapore-PARKROYAL-on-Beach-Road-1600x938По кое време се случва практически няма значение на Екватора.



Реклама:

10 инструмента за софтуерно тестване, предназначени за Open Source проекти

На 11 юли говорих на TuxCon за инструменти, улесняващи тестването на софтуер с отворен код. Ето я и презентацията:



Реклама: