На этот раз мы решили рассказать вам о тех, кто обеспечивает высокий уровень качества при разработке ПО, а именно о профессии инженера-тестировщика.
Ðа ÑÑÐ¾Ñ Ñаз Ð¼Ñ ÑеÑили ÑаÑÑказаÑÑ Ð²Ð°Ð¼ о ÑÐµÑ , кÑо обеÑпеÑÐ¸Ð²Ð°ÐµÑ Ð²ÑÑокий ÑÑÐ¾Ð²ÐµÐ½Ñ ÐºÐ°ÑеÑÑва пÑи ÑазÑабоÑке ÐÐ, а именно о пÑоÑеÑÑии инженеÑа-ÑеÑÑиÑовÑика.
СледÑÑ Ñже ÑложивÑейÑÑ ÑÑадиÑии, пÑедоÑÑавлÑем Ñлово ÑÐ°Ð¼Ð¾Ð¼Ñ Ð¿ÑедÑÑавиÑÐµÐ»Ñ Ð¿ÑоÑеÑÑии:
Ñ Ð½Ð°Ñ Ð² гоÑÑÑÑ ÐндÑей ÐÑеÑкелÑ, ÑоÑÑÑдник компании EPAM Systems.
ÐндÑей ÐÑеÑкелÑ, 25 леÑ
- Ð 2005 Ð³Ð¾Ð´Ñ Ð¾ÐºÐ¾Ð½Ñил ÐелоÑÑÑÑкий гоÑÑдаÑÑÑвеннÑй ÑнивеÑÑиÑÐµÑ Ð¸Ð½ÑоÑмаÑики и ÑадиоÑлекÑÑоники (ÑакÑлÑÑÐµÑ ÐºÐ¾Ð¼Ð¿ÑÑÑеÑнÑÑ ÑеÑей и ÑиÑÑем, ÑпеÑиализаÑÐ¸Ñ «ÐнÑоÑмаÑика»).
- С 2004-го года-ÑоÑÑÑдник оÑдела ÑÑнкÑионалÑного ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð¼Ð¿Ð°Ð½Ð¸Ð¸ EPAM Systems. ÐедÑÑий Ð¸Ð½Ð¶ÐµÐ½ÐµÑ Ð¿Ð¾ ÑеÑÑиÑованиÑ/ Lead Software Testing Engineer. УвлекаеÑÑÑ Ð¼ÑзÑкой и лиÑеÑаÑÑÑой. ÐиÑÐµÑ ÑÑÐ¸Ñ Ð¸ и мÑзÑкÑ. Ðногда вÑÑÑÑÐ¿Ð°ÐµÑ Ð² клÑÐ±Ð°Ñ Ñо Ñвоими пеÑнÑми под пÑевдонимом «ÐÑ ÐµÐ»Ñ».
Software Quality Assurance вообÑе и ÑÑнкÑионалÑное ÑеÑÑиÑование — в ÑаÑÑноÑÑи
Ð ÑеÑÑиÑовании, как о неоÑÑемлемой ÑаÑÑи пÑоÑеÑÑа ÑазÑабоÑки пÑогÑаммного обеÑпеÑениÑ, вÑеÑÑез заговоÑили в конÑе 80-Ñ Ð³Ð¾Ð´Ð¾Ð². Ð ÑÐ¾Ð¼Ñ Ð¼Ð¾Ð¼ÐµÐ½ÑÑ Ð½Ð° ÑÑнке Ñже наÑали поÑвлÑÑÑÑÑ ÑложнÑе коммеÑÑеÑкие пÑиложениÑ.
ТеÑÑиÑованием же пÑогÑаммнÑÑ Ð¿ÑодÑкÑов Ñогда в оÑновном занималиÑÑ ÐºÑÑпнÑе ÑиÑмÑ, вÑпÑÑкавÑие ÑзкоÑпеÑиализиÑованнÑе пÑогÑаммнÑе пÑодÑкÑÑ: ÐÐ Ð´Ð»Ñ ÑпеÑиÑиÑеÑÐºÐ¸Ñ Ð°Ð¿Ð¿Ð°ÑаÑнÑÑ Ð¿Ð»Ð°ÑÑоÑм, наÑÑнÑе ÑазÑабоÑки, Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , пÑогÑаммное обеÑпеÑение Ð´Ð»Ñ Ð²Ð¾ÐµÐ½Ð½Ð¾Ð¹ индÑÑÑÑии и Ñ.п. Ðо вÑÐµÐ¼Ñ Ð½Ðµ ÑÑÐ¾Ð¸Ñ Ð½Ð° меÑÑе, Ñ Ñ Ð¾Ð´Ð¾Ð¼ вÑемени аппаÑаÑнÑе моÑноÑÑи компÑÑÑеÑов непÑеÑÑвно ÑвелиÑиваÑÑÑÑ, а ÑооÑвеÑÑÑвенно, ÑÑложнÑÑÑÑÑ Ð¸ ÑÑнкÑионалÑнÑе возможноÑÑи пÑогÑаммного обеÑпеÑениÑ, ÑÑо неизбежно влеÑÐµÑ Ð·Ð° Ñобой повÑÑение ÑеÑÑÑÑоемкоÑÑи Ñамого пÑоÑеÑÑа по его ÑазÑабоÑке.
РазвиÑие ÑÑандаÑÑов и меÑодов ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑоекÑами по ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÐРпÑивело к поÑÐ²Ð»ÐµÐ½Ð¸Ñ Ñакого напÑавлениÑ, как обеÑпеÑение каÑеÑÑва ÐÐ-Software Quality Assurance, или пÑоÑÑо QA.
ЧÑо же Ñакое Software Quality Assurance? РпеÑвÑÑ Ð¾ÑеÑÐµÐ´Ñ Ñ Ð¾Ñел Ð±Ñ Ð¾ÑмеÑиÑÑ, ÑÑо вÑÑÑеÑаÑÑееÑÑ Ð² поÑледнее вÑÐµÐ¼Ñ Ð¾ÑождеÑÑвление понÑÑий «Quality Assurance» и «Ð¤ÑнкÑионалÑное ÑеÑÑиÑование» не ÑовÑем коÑÑекÑно. Ð Ð²Ð¾Ñ Ð¿Ð¾ÑемÑ: Quality Assurance пÑедÑÑавлÑÐµÑ Ñобой Ð½Ð°Ð±Ð¾Ñ Ð¿ÑоÑеÑÑов и меÑодов, иÑполÑзÑемÑÑ Ð´Ð»Ñ Ð¾Ð±ÐµÑпеÑÐµÐ½Ð¸Ñ ÐºÐ°ÑеÑÑва пÑогÑаммнÑÑ Ð¿ÑодÑкÑов вообÑе, а ÑÑнкÑионалÑное ÑеÑÑиÑование-ÑÑо один из инÑÑÑÑменÑов, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼ÑÑ Ð´Ð»Ñ Ð´Ð¾ÑÑÐ¸Ð¶ÐµÐ½Ð¸Ñ ÑÑой благоÑодной Ñели.
Ðва главнÑÑ ÑезиÑа ÑеÑÑиÑованиÑ
Ð¢ÐµÐ·Ð¸Ñ â1. Ðе бÑÐ²Ð°ÐµÑ Ð¿ÑогÑамм без оÑибок.
Ð¢ÐµÐ·Ð¸Ñ â2. ÐбнаÑÑжение и иÑпÑавление оÑибки на ÑÑадии ÑазÑабоÑки и ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐÐ Ð¾Ð±Ñ Ð¾Ð´Ð¸ÑÑÑ Ð½ÐµÑоизмеÑимо деÑевле, Ñем поÑле Ñого, как гоÑовÑй пÑодÑÐºÑ Ð¿Ð¾Ð¿Ð°Ð´ÐµÑ Ðº конеÑÐ½Ð¾Ð¼Ñ Ð¿Ð¾Ð»ÑзоваÑелÑ.
ЧÑÐ¾Ð±Ñ Ð¾Ð±Ð¾ÑноваÑÑ ÑÑи ÑезиÑÑ Ð¿ÑÐ¸Ð²ÐµÐ´Ñ Ð¿ÑимеÑ. ÐÑÑÑÑ Ð¾Ð½ бÑÐ´ÐµÑ Ð³Ð»Ð¾Ð±Ð°Ð»ÑнÑм, ÑÑÐ¾Ð±Ñ Ð±Ð¾Ð»ÐµÐµ наглÑдно пÑодемонÑÑÑиÑоваÑÑ Ð¿Ð¾ÑенÑиалÑнÑе негаÑивнÑе поÑледÑÑÐ²Ð¸Ñ Ð¾Ñибок в пÑогÑаммном пÑодÑкÑе, не обнаÑÑженнÑÑ Ð½Ð° ÑÑадии ÑеÑÑиÑованиÑ. Ð ÑÑо Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð±Ð¾Ð»ÐµÐµ глобалÑнÑм, Ñем главное деÑиÑе компании Microsoft-опеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема Windows (да пÑоÑÑÑÑ Ð¼ÐµÐ½Ñ Ð²Ñе поклонники Linux). ÐÑим пÑогÑаммнÑм пÑодÑкÑом полÑзÑÑÑÑÑ Ð¼Ð¸Ð»Ð»Ð¸Ð¾Ð½Ñ Ñеловек во вÑем миÑе. Таким обÑазом, еÑли в оÑигиналÑной копии ÑÑой опеÑаÑионной ÑиÑÑÐµÐ¼Ñ Ð¾ÑÑанеÑÑÑ ÐºÐ°ÐºÐ¾Ð¹-либо незамеÑеннÑй изÑÑн (ÑÐµÐ·Ð¸Ñ â1), Ñо он ÑÐ¾Ñ ÑаниÑÑÑ Ð¸ в каждой ее копии.
ÐопÑÑÑим, полÑзоваÑÐµÐ»Ñ Windows в ÑÐ¾Ñ Ð¸Ð»Ð¸ иной Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð¾Ð±Ð½Ð°ÑÑÐ¶Ð¸Ð²Ð°ÐµÑ ÑÑÑ Ð¾ÑÐ¸Ð±ÐºÑ Ð¸ Ð·Ð²Ð¾Ð½Ð¸Ñ Ð² ÑлÑÐ¶Ð±Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки. Ðемного ÑиÑÑ: Ñмножим колиÑеÑÑво копий ÐС на ÑÑедний показаÑÐµÐ»Ñ Ð²Ñемени, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾Ð³Ð¾ опеÑаÑоÑÑ Ð´Ð»Ñ Ð¾Ð¿Ð¸ÑÐ°Ð½Ð¸Ñ Ð¾Ñибки. РиÑоге полÑÑаем ÑиÑло, Ñавное вÑемени ÑабоÑÑ ÑоÑÑÑдника ÑлÑÐ¶Ð±Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки. Роно ÑÑÐ¾Ð¸Ñ Ð´ÐµÐ½ÐµÐ³. ÐоÑле Ñого как вÑе бÑмаги, каÑаÑÑиеÑÑ ÑÑой оÑибки, оÑоÑмленÑ, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑеÑиÑÑ ÑÐ°Ð¼Ñ Ð¿ÑоблемÑ. Ðа ÑÑом ÑÑапе в бой вÑÑÑпаÑÑ Ð¿ÑогÑаммиÑÑÑ, локализÑÑÑие и иÑпÑавлÑÑÑие обнаÑÑженнÑй баг (Ð¾Ñ , ÑкоÑо Ñказка ÑказÑваеÑÑÑ, да неÑкоÑо дело делаеÑÑÑ). Так как опеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема-пÑодÑÐºÑ Ð¼Ð½Ð¾Ð³Ð¾Ð³ÑаннÑй и вÑÑокоинÑегÑиÑованнÑй, Ñо внеÑение изменений в Ð¾Ð´Ð½Ñ ÑаÑÑÑ ÑиÑÑÐµÐ¼Ñ Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑивеÑÑи к ÑеÑÑезнÑм поÑледÑÑвиÑм-в дÑÑгой.
Ðменно поÑÑÐ¾Ð¼Ñ ÑоÑÑÑдникам оÑдела ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑидеÑÑÑ Ñнова ÑабоÑаÑÑ ÑовÑем набоÑом ÑеÑÑов, коÑоÑÑе Ñже бÑли пÑÐ¾Ð²ÐµÐ´ÐµÐ½Ñ Ð² пÑедÑелизной ÑÑадии ÑазÑабоÑки пÑодÑкÑа. ÐамеÑÑ, ÑÑо на ÑабоÑÑ Ñ Ð¸ÑпÑавленной веÑÑией пÑодÑкÑа бÑÐ´ÐµÑ Ð¿Ð¾ÑÑаÑено дÑагоÑенное вÑемÑ, коÑоÑое можно бÑло иÑполÑзоваÑÑ Ð´Ð»Ñ ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð¹ веÑÑии. РвÑеменнÑе заÑÑаÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑпÑаведливо пÑиÑавнÑÑÑ Ðº денежнÑм. ÐаплаÑкÑ, Ñак назÑваемÑй «Ð¿Ð°ÑÑ», впоÑледÑÑвии нÑжно доÑÑавиÑÑ Ð²Ñем полÑзоваÑелÑм ÑиÑÑемÑ. Ð ÑÑо заÑÑаÑÑ Ð¿ÑоизводиÑÐµÐ»Ñ Ð½Ð° ÑеÑвеÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ð¹ (доÑÑÑпнÑе и обÑлÑживаемÑе 24 ÑаÑа в ÑÑÑки), заÑÑаÑÑ Ð½Ð° ÑкаÑивание ÑÑÐ¸Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ð¹, вÑÐµÐ¼Ñ Ð¸ ÑÑаÑик конеÑного полÑзоваÑелÑ.
ÐÑвод оÑевиден: ÑÐ°ÐºÐ¸Ñ ÑлÑÑаев лÑÑÑе избегаÑÑ, иÑпÑавлÑÑ Ð¾Ñибки Ñже на ÑÑадии ÑазÑабоÑки ÐÐ (ÑÐµÐ·Ð¸Ñ â2).
Так ÑÑо же Ñакое ÑеÑÑиÑование пÑогÑаммного обеÑпеÑениÑ? ÐонÑÑÐ¸Ñ «ÑеÑÑиÑование» и «Ð¸ÑпÑÑание» ÑинонимиÑнÑ, а пÑимениÑелÑно к пÑогÑамме ÑеÑÑ Ð¿Ð¾Ð¹Ð´ÐµÑ Ð¾Ð± иÑпÑÑании пÑогÑаммного пÑодÑкÑа в ÑÑловиÑÑ , макÑималÑно пÑиближеннÑÑ Ðº ÑеалÑнÑм. ÐÑоÑе говоÑÑ, ÑÑо не ÑÑо иное, как пÑовеÑка на ÑабоÑоÑпоÑобноÑÑÑ ÐÐ.
РазÑÑÑним Ð´Ð»Ñ ÑиÑаÑелей неÑколÑко ÑеÑминов, иÑполÑзÑемÑÑ Ð² ÑеÑÑиÑовании: ÑиÑÑемнÑе ÑеÑÑÑ, меÑÐ¾Ð´Ñ «Ð±ÐµÐ»Ð¾Ð³Ð¾ ÑÑика» и «ÑеÑного ÑÑика».
СиÑÑемнÑе ÑеÑÑÑ Ð°Ð½Ð°Ð»Ð¸Ð·Ð¸ÑÑÑÑ ÐºÑиÑиÑеÑкие моменÑÑ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑогÑаммой ÑиÑÑемнÑÑ ÑеÑÑÑÑов компÑÑÑеÑа. РкаÑеÑÑве пÑимеÑа можно пÑивеÑÑи нагÑÑзоÑное ÑеÑÑиÑование-ÑмÑлÑÑÐ¸Ñ Ð¼Ð½Ð¾Ð³Ð¾Ð¿Ð¾Ð»ÑзоваÑелÑÑкой ÑабоÑÑ Ñ Ð¿Ñиложением и поÑледÑÑÑий анализ полÑÑеннÑÑ ÑезÑлÑÑаÑов иÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ ÑеÑÑÑÑов ÑеÑÑиÑÑемой конÑигÑÑаÑии (напÑимеÑ, 1000 полÑзоваÑелей одновÑеменно ÑабоÑаÑÑ Ñ web-ÑайÑом).
ТеÑÑиÑование меÑодом «Ð±ÐµÐ»Ð¾Ð³Ð¾ ÑÑика» пÑедÑÑавлÑÐµÑ Ñобой анализ иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода пÑогÑаммного пÑодÑкÑа и ÑаÑе вÑего ÑводиÑÑÑ Ðº иÑÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ Ð»Ð¾Ð³Ð¸ÑеÑкой ÑÑÑÑкÑÑÑÑ Ð¸ ÑооÑвеÑÑÑÐ²Ð¸Ñ Ð·Ð°Ð»Ð¾Ð¶ÐµÐ½Ð½Ð¾Ð¼Ñ Ð°Ð»Ð³Ð¾ÑиÑÐ¼Ñ ÐºÐ¾Ð´Ð°.
ТеÑÑиÑование меÑодом «ÑеÑного ÑÑика» подÑазÑмеваеÑ, ÑÑо внÑÑÑеннÑÑ ÑÑÑÑкÑÑÑа пÑогÑÐ°Ð¼Ð¼Ñ Ð½ÐµÐ¸Ð·Ð²ÐµÑÑна, извеÑÑен лиÑÑ ÐµÐµ ÑÑнкÑионал. Т.е. пÑÐ¸Ñ Ð¾Ð´Ð¸ÑÑÑ Ð¾Ð¿ÐµÑиÑоваÑÑ Ð²Ñ Ð¾Ð´Ð½Ñми знаÑениÑми и даннÑми, а Ñакже анализиÑоваÑÑ Ð¿Ð¾Ð»ÑÑеннÑе и ожидаемÑе ÑезÑлÑÑаÑÑ.
ÐнаÑе говоÑÑ, Ñ Ð½Ð°Ñ ÐµÑÑÑ ÐÑогÑамма, коÑоÑÐ°Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° вÑдаваÑÑ Ð¾Ð¿ÑеделеннÑй РезÑлÑÑÐ°Ñ (ÐаннÑе) поÑле вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¾Ð¿Ñеделенного ÐейÑÑÐ²Ð¸Ñ (Ð²Ð²ÐµÐ´ÐµÐ½Ð¸Ñ ÐºÐ°ÐºÐ¸Ñ -Ñо даннÑÑ ). СÑÐ°Ð²Ð½Ð¸Ð²Ð°Ñ Ð¿Ð¾Ð»ÑÑеннÑй РезÑлÑÑÐ°Ñ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм, Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ ÑÑдиÑÑ Ð¾ коÑÑекÑноÑÑи ÑабоÑÑ «ÑеÑного ÑÑика». Ð ÑÑнкÑионалÑном ÑеÑÑиÑовании иÑполÑзÑеÑÑÑ, как пÑавило, меÑод «ÑеÑного ÑÑика».
ÐÑоÑеÑÑ ÑеÑÑиÑованиÑ
ÐÑоÑеÑÑ Ð¾Ð±ÐµÑпеÑÐµÐ½Ð¸Ñ ÐºÐ°ÑеÑÑва ÑÑаÑÑÑÐµÑ Ð½Ð° Ñамом Ñаннем ÑÑапе ÑазÑабоÑки пÑогÑаммного пÑодÑкÑа, во вÑÐµÐ¼Ñ ÑоÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÑÐµÑ Ð½Ð¸ÑеÑкого Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ð¸ пÑоекÑиÑованиÑ. Ðак пÑавило, пеÑвое ÑеÑÑиÑование пÑоводÑÑ ÑиÑÑемнÑе аÑÑ Ð¸ÑекÑоÑÑ, коÑоÑÑе ÑеÑаÑÑ, какие ÑÑедÑÑва и ÑÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ ÑледÑÐµÑ Ð¸ÑполÑзоваÑÑ Ð¿Ñи ÑазÑабоÑке, пÑодÑмÑваÑÑ ÐµÐ³Ð¾ аÑÑ Ð¸ÑекÑÑÑÑ, ÑоÑÑавлÑÑÑ ÑпеÑиÑикаÑии.
ÐоÑле Ñого как бÑдÑÑ ÑоÑÑÐ°Ð²Ð»ÐµÐ½Ñ ÑпеÑиÑикаÑии и ÑÑнкÑионалÑнÑе ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ Ðº пÑоекÑÑ, до напиÑÐ°Ð½Ð¸Ñ Ð¿ÐµÑвÑÑ ÑÑÑок кода Ñже можно пÑиÑÑÑпаÑÑ Ðº ÑоÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÑеÑÑовой докÑменÑаÑии и ÑеÑÑовÑÑ ÑÑенаÑиев, Ñ.н. ÑеÑÑ ÐºÐµÐ¹Ñов (test case*), коÑоÑÑе впоÑледÑÑвии бÑÐ´Ñ Ð¿ÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ñ Ðº пеÑвÑм ÑабоÑим веÑÑиÑм пÑодÑкÑа.
ТеÑÑовÑе ÑÑенаÑии — ÑÑо ÑолÑко одна из ÑоÑÑавлÑÑÑÐ¸Ñ Ð¿Ð°ÐºÐµÑа ÑеÑÑовой докÑменÑаÑии, игÑаÑÑей клÑÑевÑÑ ÑÐ¾Ð»Ñ Ð² обеÑпеÑении каÑеÑÑва.
ÐедоÑÑаÑоÑно пÑоÑÑо ÑообÑиÑÑ, ÑÑо пÑогÑамма пÑоÑеÑÑиÑована и «Ñ оÑоÑо ÑабоÑаеѻ, нÑжно пÑивеÑÑи ÑакÑÑ: на оÑнове ÐºÐ°ÐºÐ¸Ñ ÑеÑÑов бÑл Ñделан ÑÑÐ¾Ñ Ð²Ñвод, каков бÑл кÑиÑеÑий доÑÑаÑоÑноÑÑи, какие ÑÑнкÑионалÑнÑе ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±Ñли покÑÑÑÑ ÑеÑÑовÑми ÑÑенаÑиÑми, как и когда пÑоводилиÑÑ ÑеÑÑÑ, какие меÑÐ¾Ð´Ñ Ð¿ÑÐ¾Ð²ÐµÐ´ÐµÐ½Ð¸Ñ ÑеÑÑов иÑполÑзовалиÑÑ, какие инÑÑÑÑменÑÑ Ð±Ñли задейÑÑвованÑ, какие конÑигÑÑаÑии бÑли покÑÑÑÑ ÑеÑÑами. Ðменно благодаÑÑ ÑеÑкой ÑоÑмализаÑии пÑоÑеÑÑа обеÑпеÑÐµÐ½Ð¸Ñ ÐºÐ°ÑеÑÑва на каждÑй из пÑиведеннÑÑ Ð²Ð¾Ð¿ÑоÑов оÑÐ²ÐµÑ Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ.
ÐÐ¾Ñ Ñже около 5 Ð»ÐµÑ Ñ ÑабоÑÐ°Ñ Ð² компании EPAM Systems, в даннÑй моменÑ-в должноÑÑи ведÑÑего инженеÑа по ÑеÑÑиÑованиÑ. Ð ÑеÑение ÑÑого вÑемени мне довелоÑÑ ÑабоÑаÑÑ Ð½Ð°Ð´ Ñозданием ÑазнÑÑ Ð¿ÑоекÑов: кÑÑпнÑÑ , когда в ÑоÑÑав пÑоекÑной ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð²Ñ Ð¾Ð´Ð¸Ð»Ð¾ болÑÑе ÑоÑни Ñеловек, и неболÑÑÐ¸Ñ , когда в команде бÑло ÑолÑко 2 Ñеловека. РоÑновном ÑабоÑаÑÑ Ð¿ÑÐ¸Ñ Ð¾Ð´Ð¸Ð»Ð¾ÑÑ Ñ web-оÑиенÑиÑованнÑми пÑиложениÑми, ÑÑо вполне закономеÑно, Ð²Ð²Ð¸Ð´Ñ ÑенденÑий поÑледнего деÑÑÑилеÑиÑ. Я поÑÑаÑаÑÑÑ Ð¾Ð±ÑекÑивно опиÑаÑÑ Ð¿ÑоÑеÑÑ ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑогÑаммнÑÑ Ð¿ÑодÑкÑов, как ÑÑо пÑоиÑÑ Ð¾Ð´Ð¸Ñ Ð² компании EPAM Systems.
ЯвлÑÑÑÑ Ð»Ð¸Ð´Ð¸ÑÑÑÑей компанией на ÑÑнке ÑкÑпоÑÑно-оÑиенÑиÑованного пÑогÑаммиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð² ÐоÑÑоÑной ÐвÑопе, EPAM пÑедоÑÑавлÑÐµÑ Ñвои ÑÑлÑги кÑÑпнейÑим миÑовÑм компаниÑм. РкаждÑй из наÑÐ¸Ñ Ð·Ð°ÐºÐ°Ð·Ñиков заинÑеÑеÑован в Ñом, ÑÑÐ¾Ð±Ñ Ð½Ð°Ð´ его пÑогÑаммнÑм пÑодÑкÑом ÑабоÑали пÑоÑеÑÑионалÑ. ÐоÑÑомÑ, пÑежде Ñем кого-либо из ÑоÑÑÑдников оÑдела ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑивлекÑÑ Ðº ÑабоÑе над пÑоекÑом, Ð¼ÐµÐ½ÐµÐ´Ð¶Ð¼ÐµÐ½Ñ Ð½Ð°Ñей компании, а поÑом, как пÑавило, и Ñами заказÑики инÑеÑвÑÑиÑÑÑÑ ÑоÑÑÑдников, ÑÑÐ¾Ð±Ñ Ð¾Ð±ÑекÑивно оÑениÑÑ Ð¸Ñ Ð½Ð°Ð²Ñки и Ð·Ð½Ð°Ð½Ð¸Ñ Ð² пÑименении к пÑоекÑÑ. ÐоÑле ÑÑвеÑÐ¶Ð´ÐµÐ½Ð¸Ñ ÑоÑÑава ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð½Ð°ÑинаеÑÑÑ ÑабоÑа Ñ Ð´Ð¾ÐºÑменÑаÑией. Ðак пÑавило, к ÑÑÐ¾Ð¼Ñ Ð²Ñемени заказÑик Ñже Ð¸Ð¼ÐµÐµÑ Ð¿ÑедÑÑавление об оÑновнÑÑ ÑÑнкÑионалÑнÑÑ ÑÑебованиÑÑ , бизнеÑ-аналиÑики Ñже ÑоÑÑавили иÑÑ Ð¾Ð´Ð½Ñй Ð¿Ð°ÐºÐµÑ ÑпеÑиÑикаÑии, а инÑоÑмаÑионнÑе аÑÑ Ð¸ÑекÑоÑÑ Ð¸ GUI-дизайнеÑÑ ÑазÑабоÑали ÑÐ°Ð±Ð»Ð¾Ð½Ñ Ð¿Ð¾Ð»ÑзоваÑелÑÑкого инÑеÑÑейÑа.
РпеÑвÑÑ Ð¾ÑеÑÐµÐ´Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° инженеÑов по ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÑоÑÑавлÑÐµÑ ÑамÑй главнÑй докÑменÑ-ÑеÑÑовÑй план, в коÑоÑÑй ÑÑадиÑионно вклÑÑаÑÑ Ð²ÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼ÑÑ Ð´Ð»Ñ Ð¿Ð¾ÑледÑÑÑего ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ð½ÑоÑмаÑиÑ: здеÑÑ Ð¾Ð¿Ð¸ÑÑваеÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°; ÑпиÑки Ð·Ð°Ð´Ð°Ñ Ð¸ вÑÑ Ð¸ÑполÑзÑÐµÐ¼Ð°Ñ Ð¿ÑоекÑÐ½Ð°Ñ Ð´Ð¾ÐºÑменÑаÑиÑ, на оÑнове коÑоÑой ÑоÑÑавлÑÑÑÑÑ ÑеÑÑовÑе ÑÑенаÑии; вÑбиÑаÑÑÑÑ ÑÑебÑемÑе конÑигÑÑаÑии, меÑÐ¾Ð´Ñ ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ Ñ.д. Также опиÑÑваÑÑÑÑ Ð¼ÐµÑÐ¾Ð´Ñ Ð¿ÑÐ¾Ð²ÐµÐ´ÐµÐ½Ð¸Ñ ÑеÑÑиÑованиÑ, пÑогÑаммное обеÑпеÑение (вклÑÑÐ°Ñ ÑоÑнÑе веÑÑии иÑполÑзÑемÑÑ Ð¿Ñиложений) и веÑÑ Ð¸Ð½ÑÑÑÑменÑаÑий в Ñелом (багÑÑекинговÑе ÑиÑÑемÑ, меÑÑо Ñ ÑÐ°Ð½ÐµÐ½Ð¸Ñ ÑеÑÑовой докÑменÑаÑии, пеÑиодиÑноÑÑÑ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¾ÑÑеÑов).
ÐÑоме Ñого, опиÑÑваÑÑÑÑ Ð°Ð¿Ð¿Ð°ÑаÑнÑе и пÑогÑаммнÑе Ð´Ð»Ñ ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐºÑиÑеÑии ÑÑпеÑноÑÑи пÑÐ¾Ñ Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ ÑеÑÑов и Ð²Ð¸Ð´Ñ ÑеÑÑов, ÑоÑÑавлÑеÑÑÑ Ð³ÑаÑик ÑеÑÑиÑованиÑ, оговаÑиваÑÑÑÑ ÑÑоки и Ñ.д. ÐбÑÑно ÑÑÐ¾Ñ Ð±Ð°Ð·Ð¾Ð²Ñй докÑÐ¼ÐµÐ½Ñ Ð¿ÐµÑеÑмаÑÑиваеÑÑÑ Ð¸ ÑедакÑиÑÑеÑÑÑ Ð² пÑоÑеÑÑе ÑабоÑÑ Ð½Ð°Ð´ пÑоекÑом. Ðо некоÑоÑÑе его ÑаÑÑи, к пÑимеÑÑ, веÑÑии бÑаÑзеÑов и оÑновнÑе пÑогÑаммнÑе библиоÑеки, оÑÑаÑÑÑÑ Ð½ÐµÐ¸Ð·Ð¼ÐµÐ½Ð½Ñми на пÑоÑÑжении вÑÐµÑ Ñаз ÑазÑабоÑки и ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð½ÐºÑеÑного Ñелиза.
ÐоÑле ÑоÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÑеÑÑового плана ÑоздаÑÑÑÑ ÑеÑÑовÑе ÑÑенаÑии, коÑоÑÑе пÑименÑÑÑÑÑ Ðº пеÑвÑм билдам пÑогÑаммного пÑодÑкÑа. Ðак пÑавило, ÑазÑабаÑÑваÑÑÑÑ Ð´Ð²Ð° оÑновнÑÑ ÑеÑÑовÑÑ ÑÑенаÑиÑ, Ñак назÑваемÑе smoke test и acceptance test.
ÐеÑвÑй пÑедÑÑавлÑÐµÑ Ñобой минималÑнÑй Ð½Ð°Ð±Ð¾Ñ ÑеÑÑов, покÑÑваÑÑий базовÑй ÑÑнкÑионал пÑиложениÑ, позволÑÑÑий ÑдоÑÑовеÑиÑÑÑÑ Ð² ÑабоÑоÑпоÑобноÑÑи оÑновнÑÑ ÑÑнкÑий пÑиложениÑ: к пÑимеÑÑ, Ñоздание полÑзоваÑелей в админиÑÑÑаÑивной конÑоли; возможноÑÑÑ Ð²Ð¾Ð¹Ñи в оÑновнÑÑ ÑиÑÑемÑ; Ñоздание обÑекÑов, в оÑновном пÑиложений.
Acceptance test, Ñак назÑваемÑй пÑиемоÑнÑй ÑеÑÑ,-ÑÑо ÑаÑÑиÑеннÑй Ð½Ð°Ð±Ð¾Ñ ÑеÑÑов, в коÑоÑом макÑималÑно ÑÑÑÐµÐ½Ñ Ð²Ñе аÑпекÑÑ ÑабоÑÑ Ñ Ð¿Ñиложением: бизнеÑ-логика пÑиложениÑ, ÑазнообÑазнÑе ÑвойÑÑва обÑекÑов, оÑобенноÑÑи ÑиÑÑÐµÐ¼Ñ Ð¿Ñав и доÑÑÑпа.
ТÑадиÑионно ÑеÑÑиÑование на базе smoke test пÑоиÑÑ Ð¾Ð´Ð¸Ñ Ð´Ð¾ Ñак назÑваемого feature freeze-ÑÑадии ÑазÑабоÑки пÑогÑаммного пÑодÑкÑа, когда веÑÑ ÑÑнкÑионал пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñже Ñеализован. Ð ÑÑÐ¾Ð¼Ñ Ð¼Ð¾Ð¼ÐµÐ½ÑÑ, как пÑавило, пÑиложение должно пÑойÑи ÑеÑез болÑÑое ÑиÑло иÑеÑаÑий smoke test, а веÑÑ Ð±Ð°Ð·Ð¾Ð²Ñй ÑÑнкÑионал иÑпÑавно ÑабоÑаÑÑ.
ÐоÑле feature freeze ÑеÑÑиÑование пÑоводиÑÑÑ Ð½Ð° оÑнове пÑиемоÑного ÑеÑÑового ÑÑенаÑиÑ.
Само понÑÑие «web-пÑиложение» говоÑÐ¸Ñ Ð¾ Ñом, ÑÑо пÑиложение бÑÐ´ÐµÑ Ð¾Ð´Ð½Ð¾Ð²Ñеменно иÑполÑзоваÑÑÑÑ Ð±Ð¾Ð»ÑÑим колиÑеÑÑвом ÑеÑевÑÑ Ð¿Ð¾Ð»ÑзоваÑелей, каждÑй из коÑоÑÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ полÑÑиÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ ÑабоÑаÑÑ Ñ Ð¿ÑодÑкÑом комÑоÑÑно, не меÑÐ°Ñ Ð´ÑÑг дÑÑгÑ.
ÐопÑÐ¾Ñ Ð¿ÑоизводиÑелÑноÑÑи пÑогÑаммного пÑодÑкÑа пÑодÑмÑваеÑÑÑ ÐµÑе на ÑÑадии пÑоекÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÑиÑÑемÑ. Ðо пÑакÑиÑеÑки ÑделаÑÑ Ð²Ñвод о Ñом, наÑколÑко пÑодÑÐºÑ Ð¾Ð¿ÑимизиÑован Ð´Ð»Ñ Ð¼Ð½Ð¾Ð³Ð¾Ð¿Ð¾Ð»ÑзоваÑелÑÑкого Ñежима ÑабоÑÑ, а Ñакже о Ñом, какие ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ ÑледÑÐµÑ Ð¿ÑедÑÑвлÑÑÑ Ðº аппаÑаÑной ÑаÑÑи ÑеÑвеÑа, оÑÑавиÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ лиÑÑ Ð¿Ð¾Ñле пÑÐ¾Ð²ÐµÐ´ÐµÐ½Ð¸Ñ ÑеÑии ÑеÑÑов на пÑоизводиÑелÑноÑÑÑ, Ñ.н. performance-ÑеÑÑиÑованиÑ. ТеÑÑиÑование пÑоизводиÑелÑноÑÑи пÑоводиÑÑÑ Ð½Ð° ÑÑадии, когда пÑогÑаммнÑй пÑодÑкÑ, ÑоÑнее его ÑекÑÑий билд, ÑÑпеÑно пÑÐ¾Ñ Ð¾Ð´Ð¸Ñ smoke test.
СоÑÑавлÑÑÑÑÑ ÑпеÑиалÑнÑе ÑеÑÑовÑе ÑÑенаÑии, ÑмÑлиÑÑÑÑие ÑабоÑÑ Ñ Ð¿Ñиложением обÑÑнÑÑ Ð¿Ð¾Ð»ÑзоваÑелей, и пÑи помоÑи ÑпеÑиализиÑованнÑÑ Ð¿Ñиложений Ð´Ð»Ñ Ð½Ð°Ð³ÑÑзоÑного ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÑмÑлиÑÑеÑÑÑ ÑабоÑа болÑÑого колиÑеÑÑва полÑзоваÑелей — Ð¾Ñ Ð½ÐµÑколÑÐºÐ¸Ñ Ð´ÐµÑÑÑков до неÑколÑÐºÐ¸Ñ ÑÑÑÑÑ. ÐÑÐµÐ½Ñ ÑаÑÑо в ÑÑÐ¾Ñ Ð¿ÐµÑиод обнаÑÑживаÑÑÑÑ Ð¿ÑÐ¾Ð±Ð»ÐµÐ¼Ñ Ð¸ оÑибки в пÑиложении, коÑоÑÑе невозможно воÑпÑоизвеÑÑи поÑÑедÑÑвом ÑÑÑного вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÑеÑÑовÑÑ ÑÑенаÑиев, пÑÑÑÑ Ð¸ во вÑÐµÐ¼Ñ Ð¾Ð´Ð½Ð¾Ð²Ñеменной ÑабоÑÑ Ð±Ð¾Ð»ÑÑого колиÑеÑÑва ÑеÑÑиÑовÑиков.
Ðа завеÑÑаÑÑей ÑÑадии ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¾ÑÐµÐ½Ñ ÑаÑÑо обнаÑÑживаеÑÑÑ Ð±Ð¾Ð»ÑÑое колиÑеÑÑво оÑибок (ÑаÑÑ Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñ ÑÑебованиÑми, неожиданное поведение пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ Ñ.д.), вÑÑвление коÑоÑÑÑ Ð½Ðµ бÑло заложено в пÑиемоÑном ÑеÑÑе и коÑоÑÑе ÑледÑÐµÑ Ð¸ÑпÑавиÑÑ ÐµÑе до Ñелиза пÑогÑаммного пÑодÑкÑа.
Ðднако бÑваÑÑ ÑиÑÑаÑии, когда оÑеÑедной билд ÑÑпеÑно пÑÐ¾Ñ Ð¾Ð´Ð¸Ñ Ð¿ÑиемоÑнÑй ÑеÑÑ, пÑи ÑÑом имееÑÑÑ Ð½ÐµÐºÐ¾ÑоÑое колиÑеÑÑво извеÑÑнÑÑ Ð¸ докÑменÑалÑно заÑикÑиÑованнÑÑ Ð¾Ñибок в пÑиложении, а ÑÑок вÑпÑÑка пÑодÑкÑа Ñже подоÑел. Ð ÑÐ°ÐºÐ¸Ñ ÑиÑÑаÑиÑÑ ÑеÑение о вÑпÑÑке пÑогÑаммного пÑодÑкÑа Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÑинÑÑо, однако вÑе извеÑÑнÑе и Ð²Ð½Ð¾Ð²Ñ Ð¾Ð±Ð½Ð°ÑÑженнÑе оÑибки Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ Ð¾Ð¿Ð¸ÑÐ°Ð½Ñ Ð² докÑменÑаÑии к пÑодÑкÑÑ (ÑпиÑок known issues). Ðак пÑавило, допÑÑÑимое колиÑеÑÑво и ÑеÑÑезноÑÑÑ ÑÐ°ÐºÐ¸Ñ Ð¾Ñибок пÑедваÑиÑелÑно оговаÑиваеÑÑÑ Ð² ÑеÑÑ-плане, еÑе в Ñамом наÑале пÑоÑеÑÑа ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ (здеÑÑ Ñнова ÑледÑÐµÑ Ð½Ð°Ð¿Ð¾Ð¼Ð½Ð¸ÑÑ Ð¾ ÑезиÑе â1).
ÐоÑле Ñого, как вÑе ÑÑÐ°Ð¿Ñ ÑазÑабоÑки и ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÑÑпеÑно пÑойденÑ, ÑоÑÑавлена и пÑоÑеÑÑиÑована вÑÑ ÐºÐ¾ÑобоÑÐ½Ð°Ñ Ð´Ð¾ÐºÑменÑаÑÐ¸Ñ (а ÑÑо оÑделÑÐ½Ð°Ñ Ð¾Ð±Ð»Ð°ÑÑÑ ÑеÑÑиÑованиÑ, Ð²ÐµÐ´Ñ Ð½Ð¸ÐºÑо дÑÑгой, как ÑеÑÑеÑÑ, не Ð·Ð½Ð°ÐµÑ Ð½Ð°ÑÑолÑко Ñ Ð¾ÑоÑо пÑогÑаммнÑй пÑодÑкÑ), наÑÑÑÐ¿Ð°ÐµÑ Ð´Ð¾Ð»Ð³Ð¾Ð¶Ð´Ð°Ð½Ð½Ñй Ð¼Ð¾Ð¼ÐµÐ½Ñ Ñелиза.
ÐнÑÑÑÑменÑаÑий ÑеÑÑиÑовÑика
Ðак Ñже бÑло Ñказано, одна из главнÑÑ Ñелей ÑеÑÑиÑованиÑ-обнаÑÑжиÑÑ Ð¸ докÑменÑалÑно заÑикÑиÑоваÑÑ Ð½ÐµÐ²ÐµÑное поведение пÑогÑаммного пÑодÑкÑа и неÑооÑвеÑÑÑÐ²Ð¸Ñ ÑÑебований к пÑиложениÑ. Ðа пÑоÑеÑÑионалÑном ÑзÑке ÑÑо назÑваеÑÑÑ «Ð±Ð°Ð³Ð¾Ð¼» (Ð¾Ñ Ð°Ð½Ð³Ð». «Bug»). РпÑоÑеÑÑе ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑогÑаммного пÑодÑкÑа Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾Ð±Ð½Ð°ÑÑжено неÑÑеÑное колиÑеÑÑво ÑÐ°ÐºÐ¸Ñ Ð±Ð°Ð³Ð¾Ð².
ÐбÑÑно Ð´Ð»Ñ ÑÑеÑа вÑÐµÑ Ð¾Ñибок пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ÑполÑзÑÑÑÑÑ ÑпеÑиалÑнÑе пÑиложениÑ-багÑÑÑкинговÑе ÑиÑÑÐµÐ¼Ñ (bug tracking systems), без коÑоÑÑÑ Ñложно Ñебе пÑедÑÑавиÑÑ ÑазÑабоÑÐºÑ Ð»Ñбого оÑноÑиÑелÑно болÑÑого пÑиложениÑ. Ðак пÑавило, в Ð½Ð¸Ñ Ð·Ð°Ð½Ð¾ÑÑÑ Ð²Ñе оÑибки, обнаÑÑженнÑе в пÑогÑаммном пÑодÑкÑе, и не ÑолÑко Ð¸Ñ .
Скажем, можно вноÑиÑÑ Ñакже пÑÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ ÑлÑÑÑÐµÐ½Ð¸Ñ ÑеÑÑиÑÑемого пÑиложениÑ. РболÑÑинÑÑве Ñвоем багÑÑÑкинговÑе ÑиÑÑÐµÐ¼Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÑÑ Ð²Ð½ÐµÑÑи (докÑменÑиÑоваÑÑ) обнаÑÑженнÑÑ Ð¾ÑибкÑ, оÑÑледиÑÑ Ð¿ÑоÑеÑÑ ÐµÐµ ÑÑÑÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ обознаÑиÑÑ ÐµÐµ как Ñже ÑÑÑÑаненнÑÑ (поÑле пÑÐ¾Ð²ÐµÐ´ÐµÐ½Ð¸Ñ ÑооÑвеÑÑÑвÑÑÑего ÑеÑÑа).
ХоÑелоÑÑ Ð±Ñ Ð¾ÑмеÑиÑÑ, ÑÑо пÑоÑеÑÑ ÑазÑабоÑки пÑогÑаммного обеÑпеÑÐµÐ½Ð¸Ñ Ð¾Ñ Ð½Ð°Ñала и до конÑа подÑазÑÐ¼ÐµÐ²Ð°ÐµÑ Ð½ÐµÐ¿ÑеÑÑвное обÑение как заказÑика Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹, Ñак и Ñленов ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ (ÑеÑÑиÑовÑиков и ÑазÑабоÑÑиков) дÑÑг Ñ Ð´ÑÑгом.
РпÑоÑеÑÑе пÑавила игÑÑ, Ñ.е. ÑазÑабоÑки пÑоекÑа, могÑÑ Ð¼ÐµÐ½ÑÑÑÑÑ, Ñавно как и ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ Ðº пÑогÑÐ°Ð¼Ð¼Ð½Ð¾Ð¼Ñ Ð¿ÑодÑкÑÑ. Ðо обÑÑно ÑÑого ÑÑаÑаÑÑÑÑ Ð¸Ð·Ð±ÐµÐ³Ð°ÑÑ Ð¸ вноÑÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑолÑко в ÑлÑÑае Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи. ÐÑÑеÑÑвенно, вÑе Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑÑебований и ÑпоÑнÑе моменÑÑ Ð² лÑбой ÑаÑÑи пÑоекÑной докÑменÑаÑии и ÑÑнкÑионала обÑÑждаÑÑÑÑ Ð½Ðµ ÑолÑко Ñленами командÑ, но и Ñ Ð·Ð°ÐºÐ°Ð·Ñиком. СледоваÑелÑно, и ÑеÑÑ-план, и ÑеÑÑовÑе ÑÑенаÑии, и гÑаÑик Ð¸Ñ Ð¿ÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑÑ Ð±ÑÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ñ Ð² пÑоÑеÑÑе ÑабоÑÑ Ð½Ð°Ð´ пÑогÑаммнÑм пÑодÑкÑом.
РконÑе 90-Ñ Ð³Ð¾Ð´Ð¾Ð² на ÑÑнке ÑиÑокÑÑ Ð¿Ð¾Ð¿ÑлÑÑноÑÑÑ Ð¿ÑиобÑели пÑодÑкÑÑ, пÑедназнаÑеннÑе Ð´Ð»Ñ Ð°Ð²ÑомаÑизаÑии ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐÐ. ÐÑÑказÑвалиÑÑ Ð´Ð°Ð¶Ðµ мнениÑ, ÑÑо ÑеÑез неÑколÑко Ð»ÐµÑ 90% ÑабоÑÑ ÑеÑÑиÑовÑиков бÑÐ´ÐµÑ Ð²ÑполнÑÑÑÑÑ Ð¿Ð¾ÑÑедÑÑвом авÑомаÑизиÑованнÑÑ ÑеÑÑов. Ðднако на пÑакÑике каÑÑина оказалаÑÑ Ð½ÐµÑколÑко иной: пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð°Ð²ÑомаÑизаÑии пÑоÑвили ÑÐµÐ±Ñ ÐºÐ°Ðº Ñ Ð¾ÑоÑие помоÑники в пÑоÑеÑÑе ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑогÑаммного пÑодÑкÑа, но не как замениÑели ÑеловеÑеÑкого ÑÑÑда. Ðело в Ñом, ÑÑо пÑи доÑÑаÑоÑно болÑÑой ÑÑнкÑионалÑной ÑложноÑÑи пÑогÑаммнÑÑ Ð¿ÑодÑкÑов, доволÑно много вÑемени ÑÑ Ð¾Ð´Ð¸Ñ Ð½Ð° Ñо, ÑÑÐ¾Ð±Ñ Ð°Ð²ÑомаÑизиÑоваÑÑ Ñ Ð¾ÑÑ Ð±Ñ Ð±Ð°Ð·Ð¾Ð²Ñй smoke test. Ð ÑÑо Ñж говоÑиÑÑ Ð¾ пÑиемоÑном ÑеÑÑе.Ðак пÑавило, ÑабоÑа по авÑомаÑизаÑии ÑеÑÑов пÑоводиÑÑÑ Ð¿Ð°ÑаллелÑно Ñ Ð¾Ð±ÑÑнÑм, ÑÑÑнÑм ÑеÑÑиÑованием.
Ðа пÑоÑÑжении одного Ñелиза авÑомаÑизиÑованнÑй smoke test Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑÐµÐ½Ñ ÑпÑоÑÑиÑÑ Ð¿ÑоÑеÑÑ ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð½Ð°, Ñкажем, ÑазнÑÑ Ð¿Ð»Ð°ÑÑоÑÐ¼Ð°Ñ . Ð web-пÑиложениÑ, как пÑавило, ÑазÑабаÑÑваÑÑÑÑ Ñ Ð°ÐºÑенÑом на незавиÑимоÑÑÑ Ð¾Ñ Ð¿Ð»Ð°ÑÑоÑмÑ. Ðо впоÑледÑÑвии, пÑи ÑазÑабоÑке новой веÑÑии пÑодÑкÑа, ÑÑнкÑионал пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð¸Ð·Ð¼ÐµÐ½Ð¸ÑÑÑÑ, а некоÑоÑÑе ÑлеменÑÑ Ð¼Ð¾Ð³ÑÑ Ð±ÑÑÑ ÑÑложненÑ, Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ñ Ð½Ð¾Ð²Ñе, либо ÑÐ´Ð°Ð»ÐµÐ½Ñ ÑÑаÑÑе. Ð Ñакой ÑиÑÑаÑии нелÑÐ·Ñ Ð±ÑÐ´ÐµÑ Ð¸ÑполÑзоваÑÑ Ð´Ð°Ð¶Ðµ ÑамÑй гÑамоÑно пÑодÑманнÑй и гибко ÑеализованнÑй авÑомаÑизиÑованнÑй smoke test. ÐоÑÑÐ¾Ð¼Ñ ÑеÑение об авÑомаÑизаÑии ÑеÑÑовÑÑ ÑÑенаÑиев пÑинимаеÑÑÑ Ð¿Ð¾Ñле ÑÑаÑелÑного взвеÑÐ¸Ð²Ð°Ð½Ð¸Ñ Ð²ÑÐµÑ «Ð·Ð°» и «Ð¿ÑоÑив», а Ñакже поÑле подÑÑеÑа ÑкономиÑеÑкой вÑгодÑ, коÑоÑÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð¿Ð¾Ð²Ð»ÐµÑÑ Ð·Ð° Ñобой авÑомаÑизаÑиÑ.
ХоÑелоÑÑ Ð±Ñ Ð½ÐµÐ¼Ð½Ð¾Ð³Ð¾ ÑаÑÑказаÑÑ Ð¾ ÑамÑÑ Ð¾Ð±ÑденнÑÑ Ð½Ð° пеÑвÑй взглÑд пÑогÑаммнÑÑ ÑÑедÑÑÐ²Ð°Ñ , коÑоÑÑми каждÑй Ð´ÐµÐ½Ñ Ð¿Ð¾Ð»ÑзÑÑÑÑ Ñ Ð¸ мои коллеги, пÑебÑÐ²Ð°Ñ Ð½Ð° ÑÑÑаже каÑеÑÑва ÐÐ. РпеÑвÑÑ Ð¾ÑеÑÐµÐ´Ñ Ð½Ð°Ñими инÑÑÑÑменÑами ÑвлÑÑÑÑÑ ÑекÑÑовÑй ÑедакÑÐ¾Ñ Ð¸ ÑедакÑÐ¾Ñ ÑаблиÑ, где ведеÑÑÑ Ñоздание вÑей ÑеÑÑовой докÑменÑаÑии и ÑоÑÑавление ÑеÑÑовÑÑ ÑÑенаÑиев, маÑÑиÑ, гÑаÑиков и Ñ.д. ÐонеÑно же, пÑи ÑеÑÑиÑовании web-пÑиложений, оÑновнÑм инÑÑÑÑменÑом ÑвлÑеÑÑÑ web-бÑаÑÐ·ÐµÑ Ð»Ð¸Ð±Ð¾ ÑпеÑиализиÑованное ÑеÑевое пÑиложение, в коÑоÑом главнÑм обÑазом и ведÑÑÑÑ ÑабоÑÑ Ð¿Ð¾ ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑогÑаммного пÑодÑкÑа. Ðак пÑавило, Ñам же, в бÑаÑзеÑе, вÑегда оÑÐ