Banner Top

Досега, iOS 11 се считаше за най-неуспешната версия на операционната система. Apple трябваше да прави корекции на грешки шест пъти, и изминаха близо 2 месеца преди iOS 11 да функционира коректно.

iOS 13 счупи този рекорд: за фиксване на бъговете бяха необходими осем поправки, но корекциите все още не са приключили, и кога ще тръгне гладко – никои не може да каже със сигурност.

С други думи, Apple провежда експерименти върху живи хора, без дори да ги информира за това (разбира се, това е шега). Осемте поправки на версията не са единственият проблем на iOS 13.

Първата версия на операционната система за iPhone е разработвана няколко (между три и пет) години и функционираше безупречно. След това Apple рязко намали времето за разработка на около 12 месеца, и проблемите не закъсняха. Опитах се да намеря поне още един софтуерен продукт, сравним с iOS по сложност, който да е реализиран със същото темпо. Не успях! И не е изненадващо това, което се случи с 11-та и 13-та версия. Същото важи, но в по-малка степен и за 7-ма, 8-ма и 10-та версия. Единствено iOS 9 и iOS 12 се оказаха сравнително безпроблемни. Но да си мислим, че Apple не са направили нищо по този въпрос, и всичко се е случило от самосебе си, би било погрешно.

Как започнаха проблемите с iOS

В началото на 2018 г., в Apple Park се проведе среща за резултатите от приказния дебют на iOS 11. Крейг Федеричи обяви промени в технологията за разработка на iOS, организацията на тестване и въвеждането на нови правила. Няма да коментирам промените през 2018 г., това не е публичен документ. Отбелязвам само, че тези промени, ме изненадаха в две направления. Първо, тогава беше предложено да се организира разработването, тестването, проследяването на „бъгове“ и други елементи от създаването на нови версии по начина, по който това беше организирано преди….десет години!!!

Второ, iOS 12, разработена в съответствие със старите нови правила, бе най-добрата от всички версии на iOS през последните години. През 2009 г. размерът на изходния код на iOS се приближаваше до десет милиона реда. За десет години той нарастна на няколко десетки милиона реда.

Разработчиците (включително разработчиците на iOS), които напуснаха Apple през последните години, обвиняват за проблемите  мениджърите, които по правило никога не са програмисти или тестери, а се грижат само за спазването на сроковете и за  получаването на бонуси за това. Всъщност, работата на  мениджърите се състои в точно това. Това пише в длъжностните им характеристики. Факт е, че без мениджъри, нито един сериозен софтуерен продукт няма да има и най-малкия шанс да бъде реализиран в срок. Датите са определени по стратегически причини, като се отчитат пазарната ситуация и плановете на конкурентите. И всичко казано през 2018 г. беше адресирано до мениджърите. По някаква причина, поради прибързаност, или за да не опъват нервите на подчинените си за пореден път, те пренебрегнаха някои от правилата. Това е моето предположение.

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

Основни проблеми на iOS 13

През 2018 г., мениджърите “натиснаха” разработчиците. Всички правила и “глупави забрани” бяха стриктно спазвани, всичко беше  своевременно координирано, и iOS 12 се оказа изненадващо чист. Проблеми имаше, но те бяха изненадващо малко, и очевидно радостното висше ръководство престана да следи отблизо за  стриктното спазване на “законоустановените” правила. И  резултатите не закъсняха – iOS 13 счупи всички рекорди по брой на поправки, които да елиминират бъговете.

Разработката на iOS 14 и iPadOS 14 е строго контролирана от Крейг Федеричи и неговите „лейтенанти“, а Крейг изглежда е строго контролиран от Тим ​​Кук. Има много планове за iOS / iPadOS 14, някои от тях са амбициозни и грандиозни, но поради факта, че нещо не е наред, всичко това се случва болезнено, и с цената на много нерви. Страничният ефект от цялото това напрежение е, че “системата” може да не издържи. 

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

И освен проекта с кодово име Azul ( iOS 14 и iPadOS 14), техническата задача за Azul + 1 (iOS 15) вече се формира, като и двете версии са много важни за бъдещето на Apple.

Как да се коригират проблемите в iOS 13


Вариантът да “не се прави нищо” вече определено е невъзможен. iOS и iPadOS са сред основните конкурентни предимства на Apple, и  въпреки всичките им „детски болести“, които се елиминират след спешна работа от два до три месеца след пускането на версията, това са най-добрите мобилни операционни системи в света. И качеството на тези системи сега е в зоната на “специално внимание”. С усилията на всички, може би Apple ще успее да реализира една или две страхотни  версии. Колкото и да им е трудно, всички разработчици, тестери и мениджъри в компанията, няма да напуснат, тъй като сред тях е най-голямата концентрация на фанатици на тема “Apple”. Но е невъзможно да се контролира плътно (дори жестоко) процеса, който излиза извън контрол година след година, без прекъсване. И напрежението само ще се увеличава. Новите версии iOS и iPadOS ще стават все по-сложни отново и отново.

Доброжелатели от трети страни,  предлагат два варианта за излизане от ситуацията. Първият е, да се удължи времето за разработване на операционната система. Примерно, обявява се предварително, че след iOS 15, новата версия ще излезе не следващата, а след две години. Това обаче не е най-доброто възможно решение, щетите от което могат да бъдат много сериозни, дори фатални. Вторият вариант е стратегия в стил Intel Corporation. Версиите, “наситени” с нови функции, трябва да се редуват с версии, чиято основна задача е рефакторинг, оптимизация, почистване и отстраняване на съществуващи бъгове. Възможно е изобщо да няма нови функции или може да има много малко (ако е необходимо). 

Вторият вариант е далеч по-добър, тъй като например версиите на macOS „без нови функции“, бяха много успешни и оставиха добър спомен след себе си. iOS сега е в много по-трудна позиция, отколкото macOS 10.5 „Leopard“, която се появи  през 2007 година.

Междувеменно, в Купертино се проведе поредната вътрешна среща за “качеството на софтуера“, на която присъстваха Крейг Федеричи и неговите най-близки сътрудници и служители, занимаващи се с разработка на софтуер, и бе обявено въвеждането на някои нови методи. Най-вероятно в iOS 14 и iOS 15 грешките в софтуера ще бъдат отстранявани по нов начин, тъй като Apple вече не иска да прави нови грешни стъпки в областта на оптимизацията на софтуера.

Грешките, които се появиха при пускането на iOS 13, принудиха  компанията от Купертино да промени на метода за разработка на своите операционни системи. Ефектите ще започнат да се усещат още от iOS 14, но новите методи ще се прилагат и за iPadOS, watchOS, macOS и tvOS.

Подробности за техниката за реализиране на операционните системи, беше предоставена от Марк Гурман от Bloomberg, който се позовава на информацията, която се появи по време на тази вътрешна среща. Основната новост се състои във факта, че в така наречените “ежедневни билдове“ – вътрешните тестови версии, които се правят ежедневно, ще бъдат деактивирани по подразбиране  функциите, които все още не са завършени или бъговете не са изчистени. Софтуерният екип, който отговаря за тестовата фаза, ще има възможност да ги активира избирателно, чрез специално меню, като по този начин ще може да се оцени въздействието им върху работата на системата.

Както самият Федеричи обясни,  някои екипи са въвеждали функции, които не са били тествани напълно, докато други екипи са провеждали тестове ежеседмично. Резултатът от това е, че всички в Apple са били наясно, че iOS 13.0 няма да успее да покрие обичайните стандарти за качество, но сроковете е трябвало да бъдат спазени с цената на всичко. Все пак е немислимо iPhone 11 да се появи без операционна система !

И от момента, в който вече е било ясно, че iOS 13.0 ще бъде в реализация незавърена, на всички екипи е възложено да се съсредоточат върху първата актуализация на платформата – iOS 13.1, която вътрешно се е считала за истинската публична версия на iOS 13, и е трябвало да бъде с качество, сравнимо с iOS 12. Реализацията на публичната версия е по-малко от 10 дни след появата на  iOS 13.0. Резултатът го видяхме !

Ясно е, че в Купертино в момента стрелят на посоки и работят на принципа проба-грешка. Какво ще бъде крайното решение, все още не е известно и единственото, което ни остава е да чакаме !

0 Comments

Leave a Comment

Категории

Social

How to…

Видеа

Избрано