- •Інженерні основи програмного забезпечення
- •Поняття програмна інженерія. Що вивчає дисципліна «Програмна інженерія»?
- •Поняття системотехніка, бізнес-реінжиніринг.
- •Історія виникнення програмної інженерії.
- •Еволюційна модель розробки програмного забезпечення. Переваги та недоліки.
- •Формальна модель розробки програмного забезпечення. Переваги та недоліки.
- •Модель розробки програмного забезпечення на основі раніше створених компонентів. Переваги та недоліки.
- •Ітераційні моделі розробки програмного забезпечення. Переваги та недоліки.
- •Модель покрокової розробки програмного забезпечення. Переваги та недоліки.
- •Инструменты тестирования:
- •Мови моделювання програмного забезпечення.
- •Методи структурного аналізу.
- •Інформаційне моделювання Мартіна.
- •Структура та архітектура програмного забезпечення
- •Архітектура програмного забезпечення. Проектування архітектури.
- •Архітектурна модель клієнт-сервер.
- •Архітектурна модель абстрактної машини.
- •Архітектурні моделі управління (виклик-повернення та централізоване).
- •Проблемно-залежні архітектури програмного забезпечення.
- •Архітектура розподілених систем.
- •Багатопроцесорна архітектура програмного забезпечення.
- •Архітектура corba.
- •Моделі об’єктно-орієнтованого проектування програмного забезпечення.
- •Проектування систем реального часу.
- •Проектування з повторним використанням компонентів.
- •Проектування інтерфейсу програмного забезпечення.
- •Документування програмних продуктів.
- •Поняття документація на програмне забезпечення, програмний документ. Типи документації.
- •Організації що публікують стандарти.
- •Типовий набір документації проекту.
- •Основні стандарти розробки програмних систем і програмного забезпечення.
- •Стандарти вимог, архітектури, якості і тестування програмного забезпечення.
- •Стандарти серії гост 34.Ххх та гост 19.Ххх.
- •Процеси за стандартом iso/іec 12207.
- •Процеси за стандартом iso/іec 15288.
- •Поняття вимоги. Етапи формування вимог. Рівні вимог.
- •Які розділи містить звіт про виконану роботу та заявку на розробку програмного забезпечення?
- •Склад і зміст робіт на стадії «Опис програмного забезпечення».
- •Поняття ескізний проект. Склад і зміст робіт на стадії «Ескізний проект».
- •Що описує Технічне завдання (тз). З яких етапів складається розробка тз та на основі якого стандарту?
- •З яких розділів складається технічне завдання?
- •Що описує Технічний проект (тп)? з яких етапів складається розробка технічного проекту?
- •Види забезпечень.
- •Статичні і динамічні методи тестування.
- •Тестування «білої скриньки»
- •Тестування «чорної скриньки».
- •Метод "сірої скриньки".
- •Види тестування.
- •Рівні тестування.
- •Помилки на етапах життєвого циклу програмного забезпечення.
- •Поняття помилки, дефекту та відмови.
- •Класи помилок в програмному забезпеченні.
- •Тест план (Test Plan). Тестовий сценарій (Test Cases). Процедури тестування (Test Procedures). Баг Репорт (Bug Report).
- •Моделі якості та надійності програмних систем
- •Якість програмного забезпечення. Модель якості за рівнями.
- •Показники якості.
- •Атрибути функціональності, надійності та зручності застосування.
- •Атрибути ефективності, супроводу та переносимості.
- •Метрики програмного продукту.
- •Метрики процесу створення продукту та використання.
- •Методи оцінки значень показників якості.
- •Методи управління програмним проектом
- •Поняття надійності програмного забезпечення.
- •Класифікації моделей надійності за Гоєлем.
- •Класифікації моделей надійності за Хетчем.
- •Інженерія надійності програмного забезпечення та її складові.
- •На яких процесах жц здійснюється перевірка надіності?
- •Поняття сертифікація програмного забезпечення. Види сертифікації продукту.
- •Евристична модель надійності.
- •Модель надійності Нельсона.
- •Модель надійності Джелінскі-Моранді.
- •Статистична модель надійності Міллса.
- •Поняття Проект (Project). Менеджмент проекту (Project Management). Масштаб проекту (Project Scope).
- •Головні цілі менеджменту проекту.
- •Процес менеджменту проекту.
- •Модель процесу керування проектом.
- •Учасники проекту з розробки програмного забезпечення.
- •Ролі в групі розробників проекту.
- •Мережні методи планування і керування проектом.
- •Метод критичного шляху – срм.
- •Метод аналізу й оцінки проекту – pert.
- •Види планів організації проекту.
- •Моніторинг проекту.
- •Модель оцінки вартості проекту cocomo.
- •Модель оцінки вартості проекту cocomo іі.
- •Поняття ризику у проекті. Причини ризику в проекті.
- •Види ризиків. Моніторинг і контроль ризиків.
- •Поняття конфігурації. Елементи конфігурації.
- •Поняття супроводу програмного забезпечення. Хто здійснює супровід.
- •Поняття підтримки програмного забезпечення. Структура іт-супроводу.
- •Поняття програмна археологія. Інструменти і методи програмної археології.
Атрибути функціональності, надійності та зручності застосування.
Функціональність - це сукупність властивостей, які визначають спроможність ПЗ виконувати в заданому середовищі упорядковану послідовність дій для задоволення споживчих властивостей, замовлених користувачем, відповідно до вимог обробки і загальносистемних засобів.
Атрибути функціональності ПЗ:
функціональна повнота - атрибут, який показує ступінь достатності основних функцій для вирішення спеціальних завдань відповідно до призначення ПЗ;
правильність - атрибут, який показує, як забезпечується досягнення правильних та погоджених результатів;
інтероперабельність або сумісність - атрибути, які вказують на спроможність ПЗ взаємодіяти з іншими системами і середовищами;
захищеність - атрибути, які вказують на можливість запобігати несанкціонованому доступу до програм і даних;
узгодженість - атрибут, який вказує на відповідність заданим стандартам, угодам, правилам, законам і розпорядженням.
Надійність - це множина атрибутів, які вказують на спроможність ПЗ коректно перетворювати вхідні дані на результати. Зниження надійності ПЗ відбувається внаслідок помилок у вимогах, проектуванні і виконанні.
Атрибути надійності ПЗ:
безвідмовність - атрибути, які визначають частоту відмов внаслідок наявності помилок у ПЗ;
стійкість до помилок - атрибути, які вказують на забезпечення спроможності виконувати функції в аномальних умовах (збої апаратури, помилки в даних та інтерфейсах, порушення в діях оператора тощо);
відновлюваність - атрибути, які вказують на спроможність програми до перезапуску для повторного виконання й відновлення даних після відмов;
узгодженість - атрибут, який показує відповідність діючим стандартам, угодам, правилам, законам і розпорядженням.
Деякі типи систем (реального часу, радарні, безпеки, комунікації, медичного устаткування тощо) містять особливі вимоги до забезпечення високої надійності з такими атрибутами, як недопустимість помилок, безпека, захищеність і зручність застосування, а також достовірність як основний критерій надійності.
Зручність застосування - це множина атрибутів, що характеризують умови взаємодії користувача з ПЗ.
Атрибути зручності застосування ПЗ:
зрозумілість - визначається, наскільки зрозумілі для розпізнавання логічні концепції ПЗ та умов їх застосування;
легкість навчання - визначається, наскільки доступні (легкі) для вивчення умови використання;
оперативність - характеризується швидкістю реакції системи на дії користувача;
узгодженість - визначається відповідністю розробки вимогам діючих стандартів, угод, правил, законів і розпоряджень.
Атрибути ефективності, супроводу та переносимості.
Ефективність - це зв'язок між результатами використання ПЗ та кількістю задіяних для цього ресурсів (апаратура, матеріали, послуги обслуговуючого персоналу тощо).
Реактивність/часова ефективність (час відклику, обробки і виконання функцій)
Ефективність ресурсів (к-сть і тривалість використання ресурсів при функціонуванні ПЗ)
Узгодженість (визначається відповідністю розробки вимогам діючих стандартів, угод, правил, законів і розпоряджень)
Супроводжуваність - зусилля, які необхідно витратити на коригування, вдосконалення й адаптацію ПЗ у разі зміни середовища, вимог або функціональних специфікацій.
Атрибути супроводжуваності ПЗ:
аналізованість - показник, який визначає необхідні зусилля для діагностики причин відмов або ідентифікації частин, що потрібно модифікувати;
змінюваність показник, який визначає зусилля на модифікацію, усунення помилок або внесення змін у зв'язку з помилками чи новими можливостями середовища функціонування;
стабільність - атрибут, що характеризує імовірність модифікації;
тестованість- атрибут, що характеризує зусилля щодо проведення валідації та верифікації.
Переносимість - це здатність ПЗ пристосовуватися до роботи у разі зміни середовища виконання.
Адаптованість (зусилля потрібні для адаптації)
Простота налагодження\зручність установки (зусилля потрібні для запуску та інсталювання ПЗ)
Співіснування (можливість використання спеціального ПЗ з діючим ПЗ)
Замінність (можливість застосування даного ПЗ замість інших для вирішення тих же задач)
Узгодженість (визначається відповідністю розробки вимогам діючих стандартів, угод, правил, законів і розпоряджень)
