Този сайт използва бисквитки (cookies). Ако желаете можете да научите повече тук. Разбрах
IDG  •  PC World  •  Computerworld  •  CIO  •  CFO  •  Networkworld  •  Дискусии  •  Кариерна зона  •  Събития
COMPUTERWORLD | Софтуер
22 ное
2016
 
 

Софтуерът става по-сложен за разработка и по-лесен за ползване

Софтуерните разработчици разполагат с богат набор от инструменти, за да реализират подходящите за всеки тип клиенти приложения, обясняват специалистите от Experian, Infragistics и VMware на форума ISTA 2016

2898 прочитания, 0 коментара

Шестото издание на международната конференция за софтуерни разработчици и експерти в софтуерното инженерство, осигуряването на качеството и автоматизация на тестването ISTA 2016 се проведе на 15 и 16 ноември в Sofia Event Center (SEC) в Mall Paradise в София. Конференцията се организира от пет български ИТ компании: Experian Bulgaria, Infragistics Bulgaria, Musala Soft, SAP Labs Bulgaria и Vmware Bulgaria. Двудневното събитие включваше лекции по темите Интернет на нещата, облачни технологии и инженерство, софтуерна автоматизация и тестване, софтуерни разработки (DevOps) и потребителско изживяване и дизайн (UX & Design). За тенденциите в софтуерната индустрия разговаряме с трима от лекторите на конференцията - Кирил Върбанов, Experian, Веселин Арнаудов, VMware, и Константин Динев, Infragistics.

Кирил Върбанов, Experian, има 12-годишен ИТ опит, както и почти 10 г. практика в областта на Quality Assurance. Има задълбочени интереси в областта на сигурността, използваемостта, дизайна и производителността на софтуерните системи.

Кирил Върбанов, Experian, има 12-годишен ИТ опит, както и почти 10 г. практика в областта на Quality Assurance. Има задълбочени интереси в областта на сигурността, използваемостта, дизайна и производителността на софтуерните системи.

Прочетете още: Шестото издание на ISTA Con ще се проведе на 15 и 16 ноември

Веселин Арнаудов, VMware, ръководител развитие на иновациите във VMware. Той отговаря за изследователската дейност и развиването на иновативни идеи в офиса на компанията в България. В ролята си на софтуерен инженер с 12-годишен опит в софтуерните разработки и изследвания, през последните 9 г. Веселин е част от екипа на VMware България, а интересите са му в областите на криптографията, сигурността, потребителския интерфейс и разпределените мрежи

Веселин Арнаудов, VMware, ръководител развитие на иновациите във VMware. Той отговаря за изследователската дейност и развиването на иновативни идеи в офиса на компанията в България. В ролята си на софтуерен инженер с 12-годишен опит в софтуерните разработки и изследвания, през последните 9 г. Веселин е част от екипа на VMware България, а интересите са му в областите на криптографията, сигурността, потребителския интерфейс и разпределените мрежи.

Константин Динев, Infragistics, с над 6 години опит в ИТ сферата, главно фокусиран върху разработката на клиентски уеб платформи (frameworks). Ръководи разработката на Ignite UI, както и на останалите продукти и инструменти за уеб на Infragistics.

Константин Динев, Infragistics, с над 6 години опит в ИТ сферата, главно фокусиран върху разработката на клиентски уеб платформи (frameworks). Ръководи разработката на Ignite UI, както и на останалите продукти и инструменти за уеб на Infragistics.

Какви са основните тенденции от конференцията ISTA 2016?

Веселин Арнаудов, VMware: „Сложността на софтуера се увеличава, системите стават по-големи, по-разпределени, по-дълбоки и по-богати като „софтуерен стак“. Това което наблюдаваме на подобни технологични конференции са две неща. На първо място разнообразяването на набора от умения на хората, които ги посещават. Темата на презентацията ми например беше за Polyglot Developers, т.е. разработчици, на които се налага да специализират повече от един (програмен) език. Тези умения са им нужни, за да могат да обхванат и да се справят с новите системи от типа Интернет на нещата, новите разпределени програми за управление на финанси и др. Така че забелязваме диверсификация на уменията, но и специализация в нови области. Все повече навлиза тенденцията DevOps (бел. ред. методология за разработка на софтуер, насочена към активно взаимодействие и интеграция на софтуерни разработчици и ИКТ специалисти по поддръжка и обслужване). Контейнерите като технология също се използва все по-често.

Константин Динев, Infragistics, добавя: „Отчетлива е тенденцията да правим старите неща по нов начин. Както спомена и Веселин, комплексността на самите разработки нараства, вече имаме по 3 - 4 системи, които „знаят една за друга“, навсякъде навлизат автономни системи, които оперират заедно. В същото време тенденцията е крайният потребител да не вижда тази комплексност, да е защитен от всичко, което се случва „под капака“, и да използва софтуера по естествен начин, да не му се налага да си купува книга „Как да работя с Word” или „Как да си ползвам телефона“ например. Софтуерът трябва да е интуитивен, затова и на конференцията има цяла серия презентации за по-доброто потребителско изживяване, докато през 2015 г. имахме една дискусия по темата.

Смята се, че по-старите приложения консумират твърде много процесорна мощ и памет. Трябва ли да се пренаписват тези приложения или те ще бъдат заменени изцяло от нови? В телекомуникациите също все повече се залага на софтуерна промяна (SDN), а не на подмяна на хардуерното оборудване. Вертикални приложения или хоризонтални, мащабируеми приложения?

Веселин Арнаудов: Промяната ще дойде естествено с нуждите на бизнеса. Телекомуникационната индустрия няма изведнъж да внедри SDN, само защото е удобно, тя ще го направи, защото ще спести разходи и ще има ползи за нейните крайни потребители – било то корпоративни клиенти, на които предоставят облачни услуги, или крайни абонати.

А по въпроса дали бъдещата архитектура ще е вертикална с нужда от повече изчислителна мощ и тежки задачи, или хоризонтална (scale-out) с повече на брой, но по-леки задачи, смятам, че и за двете има място. За някои неща е по-правилна вертикалната архитектура и тези приложения трябва да бъдат изградени така. Хоризонталната архитектура върши отлична работа когато имаме огромен брой потребители. Има редица подобни услуги, но не всички са такива. Подобна архитектура е трудна за писане, трудна е за тестване, трудна е за подсигуряване от гледна точка на сигурност, а не винаги инвестицията в нея е смислена. С две думи, трябва да използваме правилния инструмент за правилната задача. Днес имаме на разположение повече инструменти и това е в помощ на разработчиците.

Константин Динев: Стари системи няма да се прехвърлят към нова инфраструктура. Те са писани за вертикална архитектура и не могат да се използват за разпределени системи, облачни услуги и др. В същото време „изскачат“ нужди от нови системи, които изискват нова архитектура. Tелекомите например вече трябва да ни дават не само телефонни услуги, а и добра интернет свързаност, за да използваме своя смартфон на 100% и ни трябват друг тип услуги.

Операторите в телеком сектора вече не искат да предлагат само свързаност и пренос на данни, те са установили връзка със своите клиенти и са тип доверен партньор на по-големи фирми и вероятно ще се стремят към предоставянето на нови услуги – например мултимедия, поточно видео, облачни услуги, а те ще имат нужда от тази хоризонтална мащабируема архитектура, добавя Константин Динев.

Темата за сигурността и за отворения код изглеждат противоречиви на пръв поглед. Но вече има предложение държавните ИТ системи по поръчка да са с отворен код, така че външни експерти да проверяват за сериозни пропуски в сигурността им?

Кирил Върбанов, Experian: Ако някой пренебрегне темата с ИТ сигурността, може да плати висока цена – било то като имидж, като финансова глоба или дори загуба на бизнес. Бихме могли да поспорим дали продуктът трябва да е с отворен код. Има и добри, и лоши страни.

Една от лошите страни е, че ако продуктът е с отворен код, но не генерира достатъчен интерес, някой може да открие уязвимост тип „нулев ден“ и да я използва за себе си или да я продаде на друга страна. Отвореният код е нож с две остриета. Той е чудесен, ако се използва в по-големи мащаби.

При отворения код обаче съществува и нещо, което аз наричам „масова безотговорност“, т.е. да разчиташ на някого, който да направи преглед на кода, може да се получи така, че дадена работа никога да не бъде свършена. Така че затвореният софтуер все още си има своите приложения, още повече когато става дума за конфиденциални системи.

Веселин Арнаудов: Говорейки си за сигурността в отворения код трябва да отчетем и следния момент: доколко този код се поддържа. Една чудесна библиотека с отворен код може да се използва в приложение на корпоративен клиент. Тя може да не е огромна и да се поддържа от един или два доброволни сътрудници по проекта. Но в даден момент тези двама човека спират да я поддържат, спират да правят обновления. Тогава в компанията, която е разчитала, макар и малко, на тази общност сигурността остава под въпрос, получава се точно това, което каза Кирил - „масова безотговорност“.

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

Константин Динев: Аз съм на малко по-различно мнение и съм привърженик на отворения код. Предимството на отворената система е, че има видимост. При държаните ИТ проекти има два проблема. Първият е, че не може се разбере какво има „отдолу“ и често се допускат елементарни грешки в областта на сигурността, които стигат до крайния потребител (например нашумелият случай с матурите). На второ място можем да погледнем алгоритъм като MD5 hash, който бе създаден като отворен код. Отвореността дава възможност на алгоритъма да се докаже, тъй като с известни умения по математика може да се докаже, че това е необратим алгоритъм, т.е. машина не може да „отгатне“ паролата ти, криптирана с MD5 hash. Естествено, паролата може да бъде научена и по друг начин с помощта на методите на социалния инженеринг, но човешкият фактор винаги е носил най-големия риск за сигурността на системите.

Но при държавните системи със затворен код когато се прави поръчка към дадена софтуерна фирма, която при доставяне на готовата система разбива структурата на проекта така, че друг да не може да я поддържа. По този начин поддръжката на една система става по-скъпа от нейната изработка.

Нараства ли популярността на инструментите за автоматизиране на софтуерната разработка и доколко важна е функцията на QA отделът?

Кирил Върбанов: QA доби популярност в последните 10 г. и в момента няма отдел в софтуерна фирма без QA специалист. Същевременно автоматизираното тестване в момента е много модерно, има проекти, при които 80% от проверката се осъществя с автоматизирани инструменти. Има дори хора, които се доверяват на 100% на автоматизираното тестване – пуска се и ако издържи проверката, софтуерът се предава директно на клиента, т.е. развитието на автоматизацията е достигнало много високо ниво.

 Kонстантин Динев: Това ме връща към моята презентация от ISTA 2013, когато говорих за автоматизиране на резултатите от автоматизацията. Тогава разгледах въпроса по-скоро на теоретично ниво, но след това на базата на тази презентация реших, че това трябва да се реализира на практика. Внедряването на тази концепция не е нито толкова сложно, нито е неефективно. Оказа се, че ефектът е много по-голям от първоначално очаквания.

ИТ технологиите вече са толкова напреднали, че на потребителите често им липсва експертиза да формулират правилно заданията си. Как се справят с това ИТ фирмите и от какво се получават най-често грешките в ИТ системите – грешни задания, къси срокове или последващи допълнителни изисквания?

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

Освен това повечето ИТ фирми използваме методологията Agile, която включва т.нар. бизнес анализатори. Те са връзката между бизнеса и хората, които разработват софтуера.

За да разрешим проблема с липсата на достатъчно ясни изисквания в заданията, започваме да изграждаме звена, които да извлекат тази информация от клиента. Ролята на т.нар. бизнес анализатор е да говори първо с клиента, за да разбере какво точно иска и след това да го дефинира правилно пред софтуерните разработчици. „Често сме имали случаи, в които клиентът е бил наясно каква цел иска да постигне, но е напълно ненаясно със средствата и начините, чрез да я получи", добавя Върбанов.

Вече всички клиенти искат мобилност на корпоративните приложения, но е ясно, че на по-малките екрани не може да се види толкова информация, колкото на настолните компютри с големи монитори. Доколко желанието за мобилни версии затруднява разработчиците?

Константин Динев: Това не затруднява толкова разработчиците. Това затруднява повече самия клиент. Приложението, което подава информация на два компютърни екрана, и това за мобилен дисплей не е едно и също. Това са две приложения. Това са два различни frontend програми, които работят с едно и също backend базово приложение. Така че клиентите трябва да разбират, че заданието налага разработка на две приложения.

Кирил Върбанов: Сравнително редки са случаите, в които разработчикът може да работи с т.нар. responsive съдържание, което преоразмеряване за екрана на мобилно устройство ще показва горе долу същото, като на големия монитор.

Константин Динев: „Responsive” съдържанието работи в един сравнително ограничен сектор. Когато говорим за финансово приложение, в което има огромна таблица и гледаме борсови индекси, това приложение в същия формат не може да тръгне на мобилно устройство, по простата причина че потребителят ще трябва да превърта наляво и надясно по цял ден.

Разговора води Владимир Владков

НАЙ-НОВИ НАЙ-ЧЕТЕНИ ПРЕПОРЪЧАНИ
ТОП100 НА ТЕХНОЛОГИЧНИТЕ КОМПАНИИ

Фирмите представят

Слайдшоу
ИНТЕРВЮ
Стандартизирането към добрите практики на ITIL: приоритет за VIVACOMСтандартизирането към добрите практики на ITIL: приоритет за VIVACOM

Разговор с Росен Тончев, новият директор на дирекция „Информационни технологии“ на телекомуникационния оператор.

ПРИЛОЖЕНИЯ
АНКЕТА

Какво мислите за FireFox OS?

Информация за Вас