Стандарт якості ПО

Основним стандартом якості в області інженерії програмного забезпечення в даний час є є  стандарт ISO/IEC 9126. Він визначає номенклатуру, атрибути і метрики вимог якості програмного забезпечення. Відносно недавно цей стандарт став одним з визначальних чинників при моделюванні якості програмного забезпечення і залишається їм до цих пір.

На додаток до нього випущений набір стандартів ISO/IEC 14598, що регламентує способи оцінки цих характеристик. У сукупності вони утворюють модель якості, відому під назвою SQuaRE (Software Quality Requirements and Evaluation).

Загальний підхід до моделювання якості програмного забезпечення полягає в тому, щоб спочатку ідентифікувати невеликий набір атрибутів якості найвищого рівня абстракції і потім в напрямі зверху "вниз" розбити ці атрибути на набори підлеглих атрибутів. Стандарт ISO/IEC 9126 є типовим прикладом такого підходу.

В рамках моделі SQuaRE виділяються наступні шість основних характеристик якості.

   1. Функціональність (точність, узгодженість, інтероперабельность, безпека, придатність). Функціональні вимоги традиційно складають основний предмет специфікації, моделювання, реалізації і атестації програмного забезпечення. Вони формулюються у вигляді тверджень в імперативній модальності, що описують поведінку системи. Іпользованіє формальних методів дозволяє довести рівень відхилення фактичної поведінки системи від потрібного практично до нуля. Це досягається шляхом виразу функціональних вимог у вигляді пропозицій відповідних формальних числень, так що верифікація зводиться до строгого доказу.


   2. Надійність (стійкість, завершеність, відновлюваність). Показники надійності характеризують поведінку системи при виході за межі штатних значень параметрів функціонування унаслідок збою в оточенні або в самій системі. При оцінці атрибутів надійності застосовуються методи теорії вірогідності і математичної статистики. Вимоги до надійності особливо важливі при розробці критичних систем забезпечення безпеки життєдіяльності (dependable systems). Хоча використання формальних методів сприяє зниженню кількості внутрішніх помилок (т.е. зростанню завершеності системи), забезпечення надійності в цілому вимагає спеціальних підходів, що зважають на специфіку різних типів систем.

   3. Зручність (ефективність освоєння, ергономічность, понімаємость). Відповідність системи вимогам до зручності надзвичайно важко піддається оцінці. Пропоновані підходи включають виміри витрати нормативних одиниць праці (нормо-годинника), що витрачається користувачами на оволодіння системою, а також проведення і аналіз експертних оцінок, зокрема із застосуванням методів нечіткої логіки (fuzzy logic). У контексті використання формальних методів якнайкращим рішенням представляється початкова орієнтація на формалізми, здатні максимально точно відобразити структуру початкової наочної області. Наприклад, при створенні обчислювальних систем критерієм адекватності формалізму з погляду майбутнього користувача є підтримка абстрактної математичної мови, не залежної від концептуальних обмежень, що накладаються комп'ютерними технологіями.

   4. Ефективність(по ресурсах і за часом). Атрибути ефективності традиційно належать до найважливіших кількісних показників якості програмних систем. Їх значення підлягають фіксації в експлуатаційній документації до програмних і апаратних виробів. Є високорозвинутий інструментарій для вимірювання цих значень. Розроблені також методики, що дозволяють прогнозувати інтегральні значення показників ефективності системи виходячи із значень цих показників для компонентів самої системи і її оточення. Вибору формальних методів забезпечення ефективності слід приділяти особливу увагу. При цьому слід мати на увазі, що, хоча є тісний взаємозв'язок між продуктивністю і ресурсоємкостью, підходи до забезпечення кожної з цих вимог в загальному випадку мають різну природу.
  

   5. Сопровождаємость (простота аналізу, змінність, стабільність, проверяємость). Вимоги до сопровождаємості направлені в першу чергу на мінімізацію зусиль по супроводу і модернізації системи, що витрачаються експлуатаційним персоналом. Для їх оцінки використовуються різні методики прогнозування витрат на виконання типових процедур супроводу. Інтегральна вартість супроводу довгоживучих систем може істотно перевищувати вартість їх розробки. Супровід істотно спрощуються у разі, коли розробка велася з використанням формальних методів, оскільки є в певному значенні вичерпний комплект технологічної документації і перевірочних тестів.

   6. Переносимість (адаптується, узгодженість із стандартами і правилами, гнучкість інсталяції, замінюваність). Переносимість системи характеризує міра свободи у виборі компонентів системного оточення, необхідних для її функціонування. Оцінці переносимості важко принциповою незавершеністю, динамічністю списку можливих варіантів оточення, обумовленою швидким прогресом у сфері інформаційних технологій. Системи, що розробляються з використанням формальних методів, як правило, відрізняються високим рівнем переносимості. Зокрема, якщо така система не підтримує деяку цільову технологічну платформу, створення "клона" реалізації її абстрактної моделі з використанням цільових засобів програмування вимагає істотно менших витрат, чим заміна самої системи або платформи.

Модель якості, що створюється в рамках даного стандарту, визначається загальними характеристиками продукту. Характеристики ж у свою чергу можуть бути уточнені, іншими словами, ієрархично розбиті на підхарактеристики якості. Так, наприклад, характеристика сопровождаємості може бути представлена такими підхарактеристиками як простота аналізу, змінність, стабільність, проверяємость.

І, нарешті, нижній рівень ієрархії представляють безпосередньо атрибути програмного забезпечення, що піддаються точному опису і вимірюванню. Вимоги якості у свою чергу можуть бути представлені як обмеження на модель якості. Оцінка якості продукту у такому разі відбувається по наступній схемі. Спочатку оцінюються атрибути програмного виробу. Для цього вибирається метрика і градирується шкала оцінки залежно від можливих ступенів відповідності атрибуту обмеженням, що накладаються. Для кожної окремої оцінки атрибуту градація зазвичай вибирається наново і залежить від вимог якості, що накладаються на нього. Набір "зміряних" атрибутів є критерій для оцінки підхарактеристики і характеристик, і як результат якості продукту в цілому.

mira-teth.ocm.ua © 2005-2008