База знань
Якість ПЗ за ISO 25010:2011
Стандарт якості ПЗ ISO 25010:2011 визначає модель якості програмного забезпечення, яка охоплює різні характеристики якості. Основні характеристики включають:
1.1. Функціональна повнота (Functional completeness): ступінь, в якому набір функцій програмного забезпечення задовольняє вимоги користувачів.
1.2. Функціональна коректність (Functional correctness): ступінь, в якому програмне забезпечення виконує відповідні функції відповідно до вимог.
1.3. Функціональна взаємозамінність (Functional interchangeability): можливість заміни однієї функції іншою з аналогічною функціональністю.
2.1. Збірність (Maturity): ступінь, в якому програмне забезпечення є стабільним і вільним від дефектів.
2.2. Відновлюваність (Recoverability): здатність програмного забезпечення відновитися після відмови або збою.
2.3. Витривалість (Fault tolerance): спроможність продовжувати роботу під час виникнення відмов.
3.1. Відгук (Response time): швидкість реагування програмного забезпечення на вхідні події.
3.2. Пропускна здатність (Throughput): обсяг опрацьованих даних за одиницю часу.
3.3. Ресурсна ефективність (Resource efficiency): оптимальне використання ресурсів, таких як пам’ять та процесор.
4.1. Співіснування (Coexistence): здатність програмного забезпечення функціонувати разом з іншими системами без взаємного впливу.
4.2. Замінність (Substitutability): можливість програмного забезпечення замінити аналогічне програмне забезпечення у сумісному оточенні без втрати якості.
Безпека відіграє важливу роль у програмному забезпеченні, оскільки вона забезпечує захист від потенційних загроз, таких як несанкціонований доступ, зловживання даними та системні атаки. Безпека включає такі підпункти:
5.1. Конфіденційність (Confidentiality)
Конфіденційність полягає у забезпеченні захисту інформації від несанкціонованого доступу. Це можна досягти за допомогою різних методів, таких як шифрування даних, аутентифікація користувачів та контроль доступу.
Приклад: Платіжний шлюз, що використовує шифрування для передачі даних про кредитні картки між клієнтом, торговцем та банком, забезпечуючи конфіденційність інформації.
5.2. Цілісність (Integrity)
Цілісність полягає у забезпеченні точності та повноти інформації та запобіганні несанкціонованим змінам. Це включає захист від зміни, видалення або додавання даних без дозволу.
Приклад: Інформаційна система медичного закладу, яка використовує контроль доступу та цифрові підписи для забезпечення цілісності медичних записів пацієнтів.
5.3. Відмовостійкість (Availability)
Відмовостійкість означає забезпечення доступності програмного забезпечення та його функцій, коли вони потрібні користувачам. Це включає розробку системи з високою доступністю, резервне копіювання даних та плани відновлення після аварії.
Приклад: Веб-сайт електронної комерції, який використовує розподілені сервери та балансування навантаження для забезпечення доступності сайту навіть під час високого трафіку або атаки DDoS.
5.4. Відповідальність (Accountability)
Відповідальність включає можливість відстеження дій користувачів та системи для виявлення і вирішення проблем безпеки. Це вимагає аудиту системи, журналів дій користувачів та системи виявлення та реагування на вторгнення.
Приклад: Банківська система, яка веде записи всіх транзакцій та взаємодій між користувачами та системою, що дозволяє відстежувати будь-які підозрілі дії та вживати відповідних заходів для попередження зловживань.
Для забезпечення безпеки програмного забезпечення важливо розглядати ці підпункти на всіх етапах розробки, від проектування до випуску та підтримки. Це включає застосування відповідних політик безпеки, процедур тестування, оновлення програмного забезпечення та навчання користувачів. Врахування всіх цих аспектів безпеки сприяє створенню надійного та безпечного програмного продукту, який захищає дані та приватність користувачів.
6.1. Економічність ресурсів (Resource economy): ефективне використання ресурсів, таких як пам’ять, процесор, мережа та дискове простір.
6.2. Стислість (Compactness): ступінь, в якому програмне забезпечення використовує мінімальний обсяг ресурсів.
7.1. Аналізованість (Analyzability): здатність легко виявляти дефекти та проблеми в програмному забезпеченні.
7.2. Змінюваність (Modifiability): здатність легко модифікувати програмне забезпечення для внесення змін у вимоги або для виправлення дефектів.
7.3. Стабільність (Stability): відсутність негативного впливу змін на існуючу функціональність.
7.4. Тестованість (Testability): зручність проведення тестування для підтвердження відповідності програмного забезпечення вимогам.
8.1. Адаптивність (Adaptability): здатність програмного забезпечення пристосовуватися до різних апаратних та операційних середовищ без потреби в значних змінах.
8.2. Встановлюваність (Installability): легкість встановлення та налаштування програмного забезпечення в новому середовищі.
8.3. Замінність середовища (Environment replaceability): можливість програмного забезпечення функціонувати в різних середовищах заміни, забезпечуючи аналогічні результати.
8.4. Сумісність зі стандартами (Standards conformance): ступінь, в якому програмне забезпечення відповідає визначеним стандартам або конвенціям, пов’язаним з переносимістю.
Кожна з цих характеристик відображає важливі аспекти якості програмного забезпечення, які варто розглядати під час розробки, тестування та впровадження. Розуміння цих характеристик та їх підпунктів допомагає забезпечити високу якість програмного продукту, що задовольняє потреби користувачів і відповідає вимогам ринку.
Використаність (Usability) – ступінь, до якого продукт або система можуть бути використані визначеними користувачами для досягнення визначених цілей з ефективністю, продуктивністю та задоволенням у визначеному контексті використання.
Ця характеристика складається з наступних підхарактеристик:
Доступність (Accessibility)
Доступність важлива для забезпечення того, щоб програмне забезпечення було корисним та легким у використанні для людей з різними фізичними та розумовими можливостями.
Приклад: Веб-сайт, який враховує потреби людей з вадами зору, надаючи можливість збільшення розміру тексту, використання контрастних кольорів та сумісності зі спеціальними технічними засобами, такими як екранні читачі. Це полегшує доступ до інформації та взаємодію з сайтом для осіб з вадами зору або слабким зором.
Вам потрібні приклади та пояснення для всіх підпунктів, крім зазначених у запиті.
Невід’ємність (Non-repudiation) – ступінь, до якого дії або події можуть бути доведені, що відбулися, так що події або дії не можуть бути заперечені пізніше.
Приклад: Механізм цифрового підпису, який використовується на платформі електронної комерції, гарантує, що коли користувач здійснив транзакцію, він не може заперечити (відмовитися від) своєї участі в цій транзакції пізніше.
Відповідальність (Accountability) – ступінь, до якого дії суб’єкта можуть бути простежені унікально до цього суб’єкта.
Приклад: Система охорони здоров’я фіксує всі дії користувачів, включаючи доступ, зміни та видалення медичних записів пацієнтів. Це дозволяє адміністраторам відстежувати будь-які несанкціоновані або зловмисні дії та притягнути до відповідальності відповідну сторону.
Автентичність (Authenticity) – ступінь, до якого ідентичність суб’єкта або ресурсу може бути доведена як та, що заявляється.
Приклад: Двофакторна аутентифікація (2FA) для захищеного веб-сайту перевіряє ідентичність користувача, вимагаючи введення пароля та тимчасового коду, надісланого на мобільний пристрій користувача. Це гарантує, що користувач є тим, за кого він себе видає, тим самим додаючи додатковий рівень безпеки.