- •Інженерні основи програмного забезпечення
- •Поняття програмна інженерія. Що вивчає дисципліна «Програмна інженерія»?
- •Поняття системотехніка, бізнес-реінжиніринг.
- •Історія виникнення програмної інженерії.
- •Еволюційна модель розробки програмного забезпечення. Переваги та недоліки.
- •Формальна модель розробки програмного забезпечення. Переваги та недоліки.
- •Модель розробки програмного забезпечення на основі раніше створених компонентів. Переваги та недоліки.
- •Ітераційні моделі розробки програмного забезпечення. Переваги та недоліки.
- •Модель покрокової розробки програмного забезпечення. Переваги та недоліки.
- •Инструменты тестирования:
- •Мови моделювання програмного забезпечення.
- •Методи структурного аналізу.
- •Інформаційне моделювання Мартіна.
- •Структура та архітектура програмного забезпечення
- •Архітектура програмного забезпечення. Проектування архітектури.
- •Архітектурна модель клієнт-сервер.
- •Архітектурна модель абстрактної машини.
- •Архітектурні моделі управління (виклик-повернення та централізоване).
- •Проблемно-залежні архітектури програмного забезпечення.
- •Архітектура розподілених систем.
- •Багатопроцесорна архітектура програмного забезпечення.
- •Архітектура 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 іі.
- •Поняття ризику у проекті. Причини ризику в проекті.
- •Види ризиків. Моніторинг і контроль ризиків.
- •Поняття конфігурації. Елементи конфігурації.
- •Поняття супроводу програмного забезпечення. Хто здійснює супровід.
- •Поняття підтримки програмного забезпечення. Структура іт-супроводу.
- •Поняття програмна археологія. Інструменти і методи програмної археології.
Поняття Проект (Project). Менеджмент проекту (Project Management). Масштаб проекту (Project Scope).
Головні цілі менеджменту проекту.
Процес менеджменту проекту.
Процес управління проектом залежить від обраної моделі ЖЦ розробки ПЗ. Як правило процеси управління проектами можуть бути поділені на шість основних груп, що реалізують різні функції управління:
1) процеси ініціації - ухвалення рішення про початок виконання проекту;
2) процеси планування - визначення цілей і критеріїв успіху проекту і розробка робочих схем їхнього досягнення;
3) процеси виконання - координація людей і інших ресурсів для виконання плану;
4) процеси аналізу - визначення відповідності плану і виконання проекту поставленим цілям і критеріям успіху і прийняття рішень про необхідність застосування коригувальних дій;
5) процеси управління - визначення необхідних коригувальних впливів, їхнє узгодження, затвердження і застосування;
6) процеси завершення - формалізація виконання проекту і підведення його до упорядкованого фіналу. Крім того, процеси управління проектами зв'язані своїми результатами - результат виконання одного стає вихідною інформацією для іншого... І, нарешті, є взаємозв'язки груп процесів різних фаз проекту. Наприклад, закриття однієї фази може бути входом для ініціації наступної фази (приклад: завершення фази проектування вимагає схвалення замовником проектної документації, що необхідна для початку реалізації). У реальному проекті фази можуть не тільки передувати один одному, але і накладатися. Повторення ініціації на різних фазах проекту допомагає контролювати актуальність виконання проекту. Якщо необхідність його здійснення відпала, чергова ініціація дозволяє вчасно це установити й уникнути зайвих витрат.
Модель процесу керування проектом.
Учасники проекту з розробки програмного забезпечення.
Учасники процесу розробки ПЗ
Ініціатор проекту - це співробітник, який ідентифікує потребу в проекті і вносить «пропозиція» про ініціювання проекту. Ця людина може бути представником будь-якого функціонального підрозділу або рівня всередині або поза організації.
Спонсор (куратор) проекту - співробітник (як правило, керівник вищої ланки) організації, що реалізує проект, який курирує проект з боку організації (власника проекту), забезпечує загальний контроль і підтримку проекту (фінансові, матеріальні, людські та інші ресурси). Спонсор (куратор) проекту відповідає за досягнення проектом кінцевих цілей і реалізацію вигод для організації. Спонсор проекту несе відповідальність перед генеральним директором / президентом або перед керуючим радою. Спонсор проекту призначає менеджера проекту і забезпечує йому необхідну підтримку.
Менеджер проекту (керівник проекту) - особа, відповідальна за управління проектом. Менеджер проекту несе відповідальність за досягнення цілей проекту в рамках бюджету, в термін і з заданим рівнем якості.
Керівник проекту забезпечує щоденне управління проектом, командою проекту, в розрізі всіх основних управлінських функцій (управління по термінах, витрат, ризиків тощо.). Залежно від розміру проекту, менеджер проекту може отримувати підтримку з боку адміністратора проекту, або команди підтримки (офісу проекту).
Можливими учасниками проекту в залежності від його типу, виду, складності та масштабу можуть бути:
Інвестор сторона, яка вкладає інвестиції в проект, наприклад, за допомогою кредитів. Якщо інвестор і замовник не є одним і тим же особою, то в якості інвесторів зазвичай виступають банки, інвестиційні фонди та інші організації.
Контрактор (генеральний контрактор) - сторона або учасник проекту, що вступає у відносини з замовником, і бере на себе відповідальність за виконання робіт і послуг за контрактом - це може бути весь проект або його частина.
Субконтракторами - вступає в договірні відносини з контрактором або субконтракторами вищого рівня. Несе відповідальність за виконання робіт і послуг відповідно до контракту.
Постачальники - субконтракторами, які здійснюють різні види поставок на контрактній основі - матеріали, обладнання, транспортні засоби та ін.
Органи влади - сторони висувають і підтримують екологічні, соціальні та інші суспільні і державні вимоги, пов'язані з реалізацією проекту.
Споживачі кінцевої продукції - юридичні та фізичні особи, які є покупцями і користувачами результату проекту, що визначають вимоги до продукції, що виробляється і послуги, що надаються, формують попит на них.
Склад групи розробників проекту. До складу учасників команди можуть входити архітектори, інженери, консультанти, підрядники, субпідрядники, постачальники, фахівці за операціями, з техобслуговування співробітники, менеджери по договорам, агенти із закупівель і інші ролі.
