
- •Основи програмної інженерії Тема 1. Поняття програмної інженерії. Вступ
- •Процес створення програмного забезпечення
- •Моделі технологічного процесу створення пз
- •Моделі процесу розробки по
- •Характеристики якісного пз
- •Тема 2. Види моделей систем. Поняття і класифікація вимог до програмної системи.
- •Способи запису специфікацій вимог.
- •Види моделей систем.
- •Мова моделювання uml.
- •Об'єктні моделі
- •Інструментальні case-засоби.
- •Тема 3. Поняття архітектурного проектування. Архітектурні моделі.
- •Архітектурний шаблон mvc.
- •Особливості шаблону mvc.
- •Модель проблемної сфери.
- •Тема 4. Важливі функціональні засоби мови c#. Автоматично реалізовані властивості.
- •Ініціалізатори об'єктів та колекцій.
- •Автоматичне виведення типу.
- •Анонімні типи.
- •Використання методів розширення Методи розширення
- •Застосування методів розширення до інтерфейсу
- •Створення фільтруючих методів розширення
- •Тема 5. Лямбда-вирази. Мова linq. Лямбда-вирази.
- •Мова linq.
- •Методи розширення linq.
- •Відкладені запити linq.
- •Тема 6. Створення слабо зв'язаних компонентів. Впровадження залежності.
- •Контейнери впровадження залежності.
- •Бібліотека Ninject.
- •Порядок роботи з Ninject.
- •Тема 7. Засоби доступу до даних. Технологія ado.Net.
- •Реалізація доступу до даних.
- •Робота з даними.
- •Тема 8. Тестування пз. Розробка через тестування. Автоматизоване тестування пз та його види.
- •Розробка через тестування. Робочий потік "червоний-зелений-рефакторинг".
- •Модель "організація.Дія.Твердження".
- •Використання бібліотеки Moq
- •Тема 9. Проектування інтерфейсу користувача. Інтерфейс користувача.
- •Переваги графічного інтерфейсу.
- •Процес проектування графічного інтерфейсу.
- •Принципи проектування інтерфейсів користувача.
- •Шаблони.
- •Тема 10. Основи інженерії вимог. Розробка вимог.
- •Формування і аналіз вимог.
- •Опорні точки зору.
- •Сценарії.
- •Атестація вимог.
- •Тема 11. Прототипування програмних систем. Поняття прототипування.
- •Переваги прототипування.
- •Види прототипування.
- •Технології швидкого прототипування.
- •Тема 12. Покомпонентна розробка. Компоненти і класи об'єктів.
- •Компоненти як постачальники послуг.
- •Рівні абстракції компонентів.
- •Вимоги до компонентів.
- •Тема 13. Шаблони проектування. Структурні шаблони.
- •Поняття шаблону проектування.
- •Основні елементи шаблону.
- •Механізми повторного використання.
- •Структурні шаблони проектування.
Опорні точки зору.
Будь-яка середня або велика система ПЗ зазвичай має різні типи кінцевих користувачів. Багато осіб, що беруть участь у формуванні вимог, у своїх вимогах до системи висловлюють власні інтереси.
Підхід з використанням різних опорних точок зору до розробки вимог визнає ці різні ( опорні) точки зору і використовує їх як основи побудови та організації як процесу формування вимог, так і безпосередньо самих вимог. Сильна сторона аналізу, орієнтованого на різні опорні точки зору, в тому, що він визнає безліч поглядів і забезпечує основу для виявлення протиріч у вимогах, запропонованих різними особами .
Різні методи пропонують різні трактування виразу "точка зору". Точки зору можна трактувати таким чином.
Як джерело інформації про системні дані. У цьому випадку на основі опорних точок зору будується модель створення і використання даних в системі. У процесі формування вимог відбираються всі такі точки зору, на їх основі визначаються дані, які будуть створені або використані в процесі роботи системи, і способи обробки цих даних. Методи SADT і CORE використовують цю інтерпретацію точок зору.
Як структура представлень. У цьому випадку точки зору розглядаються як особлива частина моделі системи. Наприклад, на основі різних точок зору можуть розроблятися моделі "сутність-зв'язок ", моделі кінцевого автомата і т.д.
Як одержувачі системних сервісів. У цьому випадку точки зору є зовнішніми (щодо системи) одержувачами системних сервісів. Точки зору допомагають визначити дані, необхідні для виконання системних сервісів або керування ними.
Кожна з цих інтерпретацій точок зору має сильні і слабкі сторони. Опорні точки зору як джерела інформації про системні дані і як представлення мають цінність для виявлення протиріч у вимогах. Але використовувати їх у процесі структурного аналізу вимог важко, оскільки тут не фіксуються зв'язки між точками зору і типами учасників формування вимог.
Інтерактивні системи поставляють сервіси кінцевим користувачам. Тому найбільш ефективним підходом до аналізу таких систем є використання зовнішніх опорних точок зору. Ці точки зору взаємодіють з системою, отримуючи від неї сервіси та продукуючи дані і керуючі сигнали.
Цей тип точок зору має ряд переваг.
Точки зору, зовнішні до системи, – це природний спосіб структурування процесу формування вимог.
Порівняно просто вирішити, які точки зору слід залишити в якості опорних: вони повинні відображати певний спосіб взаємодії з системою.
Даний підхід корисний для створення функціональних вимог, з якими можна пов'язати який-небудь сервіс. Різні точки зору, що багаторазово повторюються, дозволяють сформувати для сервісів різні нефункціональні вимоги.
На основі цього підходу розроблено метод VORD (Viewpoint Oriented Requirements Definition – визначення вимог на основі точок зору) для формування та аналізу вимог. Основні етапи методу VORD показані на рисунку 3.
Ідентифікація точок зору, які отримують системні сервіси, і ідентифікація сервісів, що відповідають кожній точці зору.
Структурування точок зору – створення ієрархії згрупованих точок зору. Загальносистемні сервіси надаються більш високим рівням ієрархії і успадковуються точками зору нижчого рівня.
Документування опорних точок зору, яке полягає в точному описі ідентифікованих точок зору і сервісів.
Відображення системи точок зору, яка показує системні об'єкти, що визначені на основі інформації, яка міститься в опорних точках зору.
Рис .3 - Основні етапи методу VORD
Точки зору та інформація про сервіси в методі VORD збираються за допомогою стандартних форм (шаблонів точок зору і шаблонів опису сервісів). У методі VORD також використовуються різні графічні представлення, включаючи діаграми ієрархії точок зору і сценарії подій.
Оскільки в методі VORD необхідно обробляти великі обсяги інформації, підтримка CASE-засобів значно полегшує використання цього методу.