Розквіт та хаос програмного забезпечення
Розквіт програмного забезпечення припадає на 70-і роки, але для поборників якості програмного забезпечення вони виявилися далеко не кращими. Проблеми 60-х років – складніші завдання і менш кваліфіковані програмісти – в 70-х роках тільки посилилися. З іншого боку, недоступна та трудомістка компіляція пішла у минуле. Поява ПК змінила правила гри, знявши обмеження, які змушували досягати високої якості програм у 60-і роки.
Настільні обчислення перетворили комп’ютер на інструментарій, дійсно доступний для всіх, а не тільки для математиків, університетських вчених та військових. Нікому більше не доводилося годинами, днями та тижнями чекати, поки буде надана можливість скористатися компілятором, оскільки вбудований компілятор мав кожен ПК. Компілятор можна було запустити у будь-який час, коли програміст хотів швидко перевірити синтаксис. Навіщо, сидячи за столом, ретельно аналізувати кожен рядок, коли можна запустити компілятор – хай перевіряє він?
Можливо подібну «лінь» програмістів стимулював той факт, що змінився і вид завдань, для яких створювалося програмне забезпечення. Програмісти, в основному, більше не займалися кодуванням математичних алгоритмів. Вони створювали системи, які дозволяли працювати швидше і ефективніше. Вони писали програми, про які раніше не доводилося і мріяти.
У 60-х роках компетентні розробники самі виконували весь аналіз та тестування. Але у 70-х, коли почався бум у створенні автоматизованих рішень для нових завдань (і в додаванні нових можливостей до існуючих систем), з’явився великий попит на програмістів. Тому кожен, хто хоч щось знав про програми, почав займатися програмуванням, і в цьому ажіотажі про тестування просто забули.
Звичайно, організації, що займалися розробкою програмного забезпечення, не хотіли зовсім відмовлятися від тестування, але багато хто з них віддав його на відкуп нефахівцям, по суті перетворивши на тестувальників підсобний персонал. Зараз тестувальники, як і раніше, вимушені миритися з непрестижністю своєї роботи, коріння якої занурюється у ті роки.
Код, що був написаний у 70-х роках – найгірше, що є у сучасному програмуванні. Для нього навіть існує спеціальна назва: «успадкований код». Він лякає, він заплутаний, і з ним дуже складно працювати. Більшість фахівців прагнуть усіма можливими засобами уникнути необхідності його підтримувати. Врешті-решт, чужий код іноді зрозуміти дуже складно, і одна помилка, яка зроблена у модифікованому коді, може породити непередбачувані побічні ефекти, незалежно від того, наскільки ретельно цей код протестований.
Нарешті, ще одним важливим нововведенням 70–х років стали метрики –показники, що, як передбачалося, повинні характеризувати «якість» коду, але часто їх інтерпретували дуже суб’єктивно. Десятиліття хаосу виявилося не самим кращим часом для введення метрик. Ця теорія будується на кількісних аспектах початкових текстів – кількості циклів, розгалужень, умовних виразів, кількості перфорядків тощо. Замість того, щоб намагатися визначити, чи є дане програмне забезпечення функціонально коректним, розробники могли просто підрахувати кількість елементів у коді, щоб встановити його складність.
У 70-х роках це було цікаве заняття, і, можливо, давало багатьом розробникам відчуття задоволеності своїм кодом. Проте на даний час використання метрик залишається виключенням з правил. Більшість розробників ігнорують параметри, розуміючи, що хороші програмісти можуть створити дуже хороший код, у якого окремі метрики опиняться далеко не кращими, а погані програмісти можуть написати поганий код, який за своїми метриками буде просто блискучим. Отже, на жаль, «репутація» метрик була зіпсована, оскільки спочатку вони не відображали дійсність. Хороші, сучасні метрики функціональної коректності і зараз не користуються довірою через асоціації з метриками складності коду, які були запропоновані у 70–х роках минулого століття.
В цілому про це десятиліття розвитку програмного забезпечення можна сказати, що воно було орієнтоване на код, а не на якість. До кінця 70-х років стало зрозуміло, що зміни в галузі просто необхідні. І перші книги з тестування програмного забезпечення (Glenford Myers, The Art of Software Testing, Wiley, 1979; Р. Майерс, Надійність програмного забезпечення. М. “Мир”, 1980) з’явилися у кінці цього десятиліття. Це була вірна ознака того, що насуваються зміни.
У 1975 р. січневий номер журналу Popular Electronics розбурхав ентузіастів комп’ютерної техніки. У цьому номері була опублікована стаття, в якій був описаний перший у світі набір для зборки міні-комп’ютера, що був здатний конкурувати з комерційними моделями, – “Альтаїр-8800”. У наступні дні сотні чеків, кожен на суму 397 дол. (сьогодні це близько 1,5 тисяч доларів), прийшли на адресу компанії Micro Instrumentation and Telemetry System, яка розташована у м. Альбукерк, шт. Нью-Мексіко. “Альтаїр” побудували офіцер ВПС США з дипломом інженера-електронщика Едвард Робертста Джим Байбіна основі мікропроцесора “Intel-8080”, поклавши початок цілій галузі – роздрібній торгівлі комп’ютерами для приватних та юридичних осіб. Мікропроцесор “Intel-8080” – перший 8-розрядний мікропроцесор, на якому було розміщено декілька інтегральних мікросхем на одному кремнієвому кристалі, створив у 1970 р. співробітник компанії Intel Едвард Хофф. Це революційний винахід кардинально перевернув уявлення про комп’ютери як про громіздких, ваговитих монстрів.
Дата добавления: 2015-09-28; просмотров: 617;