- •Інженерія програмного забезпечення
- •Загальні вимоги до програмного забезпечення
- •Процеси життєвого циклу програмного забезпечення
- •Керування процесом проектування програмного забезпечення
- •Прототипування програмних систем.
- •Архітектурне проектування програмних систем
- •Архітектура розподілених систем
- •Проектування систем реального часу
- •Об‘єктно-орієнтоване проектування програмних систем.
- •Візуальне проектування об‘єктно-орієнтованих систем
- •Динамічні моделі об‘єктно-орієнтованих систем
- •Моделі реалізації об‘єктно-орієнтованих програмних систем
- •Проектування інтерфейсу користувача
- •Тестування програм та систем
- •Структурне тестування програмного забезпечення.
- •Методи та засоби автоматизації тестування програмного забезпення
- •Системне програмування
- •Дати оцінку основним правилам автоматичного перетворення типів.
- •Розкрити сутність адресної арифметики при роботі з вказівниками.
- •Обґрунтувати алгоритм та представити програмний код для реалізації програми, що сумує з 0 по 3 біт першого числа та з 3 по 6 біт другого числа.
- •Розкрийте поняття програмна модель мікропроцесора.
- •Проаналізувати типи даних в мові асемблер.
- •Проаналізувати особливості роботи із масивами в мові асемблер.
- •Проаналізувати структуру програми мовами програмування з родини асемблерів(синтаксис ассемблера).
- •Організувати на асемблері ехе-програму, щоб перекодувати символи строки шляхом додавання до літери строки кодів символів таблиці(Код мовою Asembler).
- •Організувати ехе-програму , щоб перекодувати символи з однієї таблиці в іншу(код мовою асемблера).
- •Організація баз даних
- •Моделі даних: ієрархічна, мережева, реляційна, об‘єктно-реляційна, нереляційна.
- •NoSql або постреляційні бази даних
- •Реляційна модель даних. Операції реляційної алгебри.
- •Нормалізація відношень при проектування реляційної моделі.
- •Поняття первинних ключів. Роль функціональних залежностей. Зовнішні та батьківські ключі.
- •Нормалізація відношень: перша, друга та третя нормальні форми
- •Визначення другої нормальної форми. Правило приведення. Повна функціональна залежність.
- •Визначення третьої нормальної форми. Правило приведення. Транзитивна залежність.
- •Семантичне моделювання та когнітивний аспект.
- •Проектування баз даних: концептуальне, логічне, фізичне
- •Модель «сутність-зв‘язок» або er-модель
- •Нормалізація даних в er-моделі
- •Case-засоби проектування баз даних.
- •Мова маніпулювання даними sql. Побудова запитів.
- •Адміністрування даних. Засоби підтримки цілісності баз даних
Керування процесом проектування програмного забезпечення
Потреба керувати програмними проектами випливає з того факту, що процес створення професійного ПЗ завжди є суб’єктом бюджетної політики організації, у якій його розробляють, і має часові обмеження. Робота керівника програмного проекту полягає в гарантуванні виконання цих бюджетних і часових обмежень з урахуванням бізнес-цілей організації щодо розроблюваного ПЗ.
Ефективне керування програмним проектом залежить безпосередньо від правильного планування робіт, необхідних для його виконання. План допомагає менеджеру передбачати проблеми, які можуть виникнути на будь-яких етапах створення ПЗ, і розробити превентивні заходи для їх попередження або вирішення. План, розроблений на початковому етапі проекту, розглядається всіма його учасниками як керівний документ, виконання якого передбачає успішне завершення проекту. Цей початковий план повинен максимально детально описувати всі етапи реалізації проекту.
У міру надходження нової інформації про хід виконання проекту можливий перегляд первинних оцінок параметрів проекту. Це, своєю чергою, може призвести до зміни графіка робіт. Якщо в результаті цих змін порушуються терміни завершення проекту, необхідно переглянути і узгодити із замовником ПЗ проектні обмеження.
Складання графіка – одна з найбільш відповідальних робіт, виконуваних менеджером проекту. Тут менеджер оцінює тривалість проекту, визначає ресурси, необхідні для реалізації окремих етапів робіт, і подає їх у вигляді узгодженої послідовності робіт. Якщо цей проект подібний до раніше реалізованого, то графік робіт останнього проекту береться за основу цього проекту. У цей проект вносяться зміни, що відповідають створюваному проекту.
У процесі складання графіка весь обсяг робіт, необхідних для реалізації проекту, поділяють на окремі етапи і оцінюють час, потрібний для виконання кожного етапу. Зазвичай багато етапів виконуються одночасно. У графіку робіт потрібно це передбачати і оптимально розподіляти виробничі ресурси між ними. Нестача ресурсів для виконання будь-якого критичного етапу – часта причина затримання виконання всього проекту.
Важливою частиною роботи менеджера проекту є оцінювання ризиків, які можуть вплинути на графік робіт або на якість створюваного програмного продукту, і розроблення заходів щодо запобігання ризикам. Результати аналізу ризиків мають бути відображені в плані проекту. Визначення ризиків і розроблення заходів щодо зменшення їх впливу на хід виконання проекту називається керуванням ризиками.
Можна виокремити три типи ризиків:
ризики для проекту, що впливають на графік робіт або ресурси, необхідні для виконання проекту;
ризики для розроблюваного продукту, що впливають на якість або продуктивність розроблюваного програмного продукту;
бізнес-ризики, що стосуються організації-розробника або постачальників.
Моніторинг ризиків полягає в регулярному перегляді ймовірностей ризиків і збитку, яких вони можуть завдати. Для цього необхідно постійно відслідковувати фактори, які впливають на ймовірність ризиків і можливий збиток: технологічні ризики; ризики, пов‘язані з персоналом; організаційні ризики; інструментальні ризики; ризики, пов‘язані із системними вимогами; ризики оцінювання.