1 Модуль 2. Основи інженерії вимог Лекції 6-8 Загальний обсяг 6 год. Вступ до програмної інженерії.

Презентация:



Advertisements
Похожие презентации
Лекція 1. Інформаційні системи в управлінні економікою. 1.Поняття інформаційної системи. 2.Класифікація інформаційних систем. 3.Структура інформаційної.
Advertisements

Інформаційне забезпечення
Модель Виконали: студенти групи маг МІ-3 Волошин Андрій.
Загальні відомості про системне, службове та прикладне програмне забезпечення. Класифікація, основні функції та складові операційних систем. Поняття про.
Дипломний проект Виконав: студент гр. П Ярошенко Я.І. Керівник дипломного проекту Сібрін Ю.І. Розробка програми Продаж друкованої продукції.
Запити в Access Запити в базі даних Запити використовуються для перегляду, зміни й аналізу даних різними способами. Основні операції з використанням.
ІНФОРМАТИКА. 9 КЛАС Програмне забезпечення комп'ютерних систем Навчальна презентація вчителя Большакової Кристини Сергіївни ЗОШ 9 м. Ізмаїл.
База даних (БД) це структурована сукупність взаємопов'язаних даних певної предметної області (реальних об'єктів, процесів, явищ тощо). це структурована.
Дипломний проект Виконав: студент гр. П Карачевцев О.М. Керівник дипломного проекту Висоцька О.І. Електронне замовлення обідів.
Основи алгоритмізації і програмування. Тема 2. Моделі та моделювання (3 год) Етапи розв'язування задач на комп'ютері.
Виконала: Пономарець Марія Група: МАГ-СІ 2. Проект-це унікальний процес, в ході якого отримується унікальний продукт.
Кожен оточуючий нас обєкт має свої властивості. Обєкт – цілісна частина навколишнього світу. Наприклад, стіл має такі властивості, як розміри, форму,
Бази даних Поняття про моделі даних. Види моделей даних Бази даних.
1 Модуль 3. Вступ до моделювання систем та процесів формування вимог Лекції 8-9 Загальний обсяг 4 год. Вступ до програмної інженерії.
фундаменталізація освіти; фундаменталізація освіти; навчання на основі власних відкриттів; навчання на основі власних відкриттів; практична спрямованість.
Модель – це опис істотних для поставленої задачі властивостей і закономірностей поведінки обєктів, що забезпечує її розвязання. Основними моделями є:
Запам'ятай! Операційна система (ОС) – комплекс програм, що забезпечує: керування роботою пристроїв компютера та обмін даними між ними; зберігання даних.
Урок 17 7 клас. Електронні таблиці. Табличний процесор MS Excel.
РОЗДІЛ 2 ОБ'ЄКТИ ТА ІНФОРМАЦІЙНІ СИСТЕМИ Інформатика 9 клас.
Використання довідкової системи інтерактивна довідкова система До складу операційної системи Windows XР входить інтерактивна довідкова система, яка забезпечує.
Транксрипт:

1 Модуль 2. Основи інженерії вимог Лекції 6-8 Загальний обсяг 6 год. Вступ до програмної інженерії

2 Основні питання Класифікація вимог до програмного забезпечення та програмних систем. Класифікація вимог до програмного забезпечення та програмних систем. Специфікація вимог Специфікація вимог Що означає процес формулювання вимог? Що означає процес формулювання вимог?

3 Класифікація вимог до програмного забезпечення та програмних систем. Класифікація вимог до програмного забезпечення та програмних систем. Специфікація вимог Специфікація вимог Що означає процес формулювання вимог? Що означає процес формулювання вимог?

4 Класифікація вимог. Функціональні- перелік функцій, які система повинна чи не повинна виконувати, її поведінка в певних умовах. Функціональні- перелік функцій, які система повинна чи не повинна виконувати, її поведінка в певних умовах. Автоматизація функцій персоналу; Автоматизація функцій персоналу; Керування пристроями; Керування пристроями; Узагальнення та надання певної інформації для прийняття рішень. Узагальнення та надання певної інформації для прийняття рішень. Не функціональні – характеристики системи та її оточення, обмеження на функції, але не поведінка, Не функціональні – характеристики системи та її оточення, обмеження на функції, але не поведінка, Функціональні та не функціональні вимоги предметної області – характеристики предметної області експлуатації системи. Функціональні та не функціональні вимоги предметної області – характеристики предметної області експлуатації системи.

5 Приклад функціональних вимог для підсистеми бронювання місць у готелі Користувач повинен мати можливість пошуку місць згідно критеріїв: ціна, тип номера, кількість осіб, зручності, додаткові послуги, розміщення, термін. Користувач повинен мати можливість пошуку місць згідно критеріїв: ціна, тип номера, кількість осіб, зручності, додаткові послуги, розміщення, термін. Система повинна надавати користувачу необхідний засіб для перегляду місць. Система повинна надавати користувачу необхідний засіб для перегляду місць. Кожне бронювання повинно мати ідентифікатор, який записується у формуляр. Кожне бронювання повинно мати ідентифікатор, який записується у формуляр. Система повинна забезпечувати оплату броні усіма доступними платіжними системами та готівкою. Система повинна забезпечувати оплату броні усіма доступними платіжними системами та готівкою. Система повинна анулювати бронь у випадку несплати за тиждень до вказаного терміну. Система повинна анулювати бронь у випадку несплати за тиждень до вказаного терміну.

6 Не функціональні вимоги Основні проблеми: важко перевірити їх виконання; нечіткість формулювання Основні проблеми: важко перевірити їх виконання; нечіткість формулювання Відображають цілі замовника: простота в експлуатації; можливість відновлення після збоїв; швидка відповідь на запити. Відображають цілі замовника: простота в експлуатації; можливість відновлення після збоїв; швидка відповідь на запити. Вимоги до продукту Вимоги до продукту Продуктивність системи, об'єм пам'яті, надійність, можливість перенесення на різні платформи. Продуктивність системи, об'єм пам'яті, надійність, можливість перенесення на різні платформи. Організаційні вимоги Організаційні вимоги Стандарти розробки програмного продукту, вимоги до реалізації, мови програмування терміни виготовлення та вимоги до супроводжуючої документації. Стандарти розробки програмного продукту, вимоги до реалізації, мови програмування терміни виготовлення та вимоги до супроводжуючої документації. Зовнішні вимоги Зовнішні вимоги Вимоги до взаємодії даної системи з іншими системами, юридичні вимоги (система буде розроблятися та функціонувати в межах існуючого законодавства), етичні вимоги. Вимоги до взаємодії даної системи з іншими системами, юридичні вимоги (система буде розроблятися та функціонувати в межах існуючого законодавства), етичні вимоги.

7 Приклад не функціональних вимог для підсистеми бронювання місць у готелі Вимоги до продукту Вимоги до продукту Усі взаємодії між інтерфейсом середовища програмування та користувачем здійснюються на основі стандартної множини символів мови С++. Усі взаємодії між інтерфейсом середовища програмування та користувачем здійснюються на основі стандартної множини символів мови С++. Організаційні вимоги Організаційні вимоги Розробка системи та супровідної документації здійснюється на основі стандарту ДСТУ-95 Розробка системи та супровідної документації здійснюється на основі стандарту ДСТУ-95 Зовнішні вимоги Зовнішні вимоги Системні оператори не повинні мати доступу до інформації про паспортні дані, платіжні можливості осіб, що забронювали номер. Системні оператори не повинні мати доступу до інформації про паспортні дані, платіжні можливості осіб, що забронювали номер.

8 Кількісні показники для не функціональних вимог. Швидкодія Швидкодія К-ть транзакцій за секунду; К-ть транзакцій за секунду; Час реакції на дії користувача, обновлення екрану; Час реакції на дії користувача, обновлення екрану; Об'єм пам'яті Об'єм пам'яті Складність експлуатації Складність експлуатації Час навчання персоналу Час навчання персоналу Обсяг довідкової системи Обсяг довідкової системи Надійність Надійність Проміжок часу між послідовністю помилок Проміжок часу між послідовністю помилок Ймовірність виходу з ладу Ймовірність виходу з ладу Стійкість до збоїв Стійкість до збоїв Час відновлення після збою; Час відновлення після збою; Відсоток подій, що призводять до збоїв; Відсоток подій, що призводять до збоїв; Ймовірність спотворення чи втрати даних при збоях; Ймовірність спотворення чи втрати даних при збоях; Можливість перенесення в інші середовища Можливість перенесення в інші середовища Відсоток машинно-залежних операторів; Відсоток машинно-залежних операторів; К-ть машинно-залежних підсистем;. К-ть машинно-залежних підсистем;.

9 Функціональні та не функціональні вимоги предметної області Проблеми опису- використовується мова та позначення даної предметної області. Проблеми опису- використовується мова та позначення даної предметної області. ускладнення розуміння розробниками ПЗ ускладнення розуміння розробниками ПЗ Нові функціональні вимоги; Нові функціональні вимоги; Приклад: Данні про особу, яка бронювала місця повинні вилучатися після виконання замовлення та друку платіжних документів. Приклад: Данні про особу, яка бронювала місця повинні вилучатися після виконання замовлення та друку платіжних документів. Нові чи додаткові обмеження на виконання функцій; Нові чи додаткові обмеження на виконання функцій; Приклад: Користувацький інтерфейс базується на інтерфейсі 1С Бухгалтерія. Приклад: Користувацький інтерфейс базується на інтерфейсі 1С Бухгалтерія. Вказівки на порядок проведення обчислень Вказівки на порядок проведення обчислень Приклад: Нарахування оплати проводиться за формулою… Приклад: Нарахування оплати проводиться за формулою…

10 Класифікація вимог за рівнями Вимоги користувачів - описи на звичайній мові функцій та обмежень Вимоги користувачів - описи на звичайній мові функцій та обмежень Менеджери, користувачі, спеціалісти від замовника, розробники архітектури системи. Менеджери, користувачі, спеціалісти від замовника, розробники архітектури системи. Системні вимоги- детальний опис функцій та обмежень- системна специфікація. Системні вимоги- детальний опис функцій та обмежень- системна специфікація. Основа для укладання угоди між замовником та розробником ПЗ. Основа для укладання угоди між замовником та розробником ПЗ. Користувачі, спеціалісти від замовника, розробники архітектури системи, розробники системи Користувачі, спеціалісти від замовника, розробники архітектури системи, розробники системи Системна специфікація проекту – узагальнений опис структури ПС – основа для детального проектування та реалізації, деталізує та доповнює специфікацію системних вимог. Системна специфікація проекту – узагальнений опис структури ПС – основа для детального проектування та реалізації, деталізує та доповнює специфікацію системних вимог. спеціалісти від замовника, розробники архітектури системи, розробники системи спеціалісти від замовника, розробники архітектури системи, розробники системи

11 Вимоги користувачів Особливості : функціональні та не функціональні; описують зовні поведінку системи. Особливості : функціональні та не функціональні; описують зовні поведінку системи. Проблеми: Проблеми: Відсутність чіткості та багатозначність опису; Відсутність чіткості та багатозначність опису; Вимоги змішані; Вимоги змішані; Об'єднані різноманітні вимоги. Об'єднані різноманітні вимоги. Рекомендації при складанні вимог Рекомендації при складанні вимог Використання стандартної форми для формулювання із додатковим обґрунтуванням; Використання стандартної форми для формулювання із додатковим обґрунтуванням; У формулюванні необхідно виділяти обов'язкові вимоги та описові, наприклад послідовність дій користувача; У формулюванні необхідно виділяти обов'язкові вимоги та описові, наприклад послідовність дій користувача; Ключові частини вимоги необхідно виділяти в документі; Ключові частини вимоги необхідно виділяти в документі; Використання технічних термінів предметної області, а не комп'ютерного сленгу. Використання технічних термінів предметної області, а не комп'ютерного сленгу.

12 Приклади опису вимог користувачів Приклад для опису вимог ПС для екологічного моніторингу Приклад для опису вимог ПС для екологічного моніторингу 3.1. Вимоги до підсистеми виведення полів концентрацій шкідливих викидів Вимоги до підсистеми виведення полів концентрацій шкідливих викидів. Для визначення значення концентрації шкідливих викидів у точці, користувач повинен мати можливість виводити сітку, параметри, якої задаються: крок вертикальних ліній - в метрах чи кілометрах; горизонтальних – в мг/м.куб чи мікр.г./м.куб шляхом вибору опції на панелі управління. По замовчуванню сітка не відображається. Крок сітки настроюється автоматично під розмір ділянки та рівня концентрацій. Для визначення значення концентрації шкідливих викидів у точці, користувач повинен мати можливість виводити сітку, параметри, якої задаються: крок вертикальних ліній - в метрах чи кілометрах; горизонтальних – в мг/м.куб чи мікр.г./м.куб шляхом вибору опції на панелі управління. По замовчуванню сітка не відображається. Крок сітки настроюється автоматично під розмір ділянки та рівня концентрацій. У прикладі змішано різні вимоги, зокрема: У прикладі змішано різні вимоги, зокрема: Важлива функціональна вимога: Система повинна надавати можливість виведення сітки Важлива функціональна вимога: Система повинна надавати можливість виведення сітки Не функціональна вимога (обмеження на функцію): Стосовно того в яких одиницях буде вимірюватися крок горизонтальних та вертикальних ліній Не функціональна вимога (обмеження на функцію): Стосовно того в яких одиницях буде вимірюватися крок горизонтальних та вертикальних ліній Нефункціональна вимога стосується інтерфейсу - у який спосіб користувач буде вибирати режими відображення /невідображення сітки Нефункціональна вимога стосується інтерфейсу - у який спосіб користувач буде вибирати режими відображення /невідображення сітки

13 Приклад реалізації інтерфейсу до підсистеми виведення полів концентрацій шкідливих викидів Показати сітку Вибрати крок гор. ліній Вибрати крок верт. ліній км мг/м куб

14 Уточнення вимог до підсистеми виведення полів концентрацій шкідливих викидів 3.1. Вимоги до підсистеми виведення полів концентрацій шкідливих викидів 3.1. Вимоги до підсистеми виведення полів концентрацій шкідливих викидів Підсистема повинна мати засоби виведення на екран сітки, яка складається із горизонтальних та вертикальних ліній і повинна відображатися як фон для графіка. Підсистема повинна мати засоби виведення на екран сітки, яка складається із горизонтальних та вертикальних ліній і повинна відображатися як фон для графіка. Обгрунтування: Сітка є пасивний елемент, яка спрощує користувачу визначення значень концентрацій у заданій точці карти. Зроблені виправлення стосуються: Зроблені виправлення стосуються: Виділення виключно функціональних вимог Виділення виключно функціональних вимог Відсутня надмірна деталізація, яка не на користь замовнику обмежує можливості розробника. Відсутня надмірна деталізація, яка не на користь замовнику обмежує можливості розробника. Введено обґрунтування, яке дозволяє замовнику зрозуміти потребу у цій вимозі і наскільки ця вимога може змінюватися в майбутньому. Введено обґрунтування, яке дозволяє замовнику зрозуміти потребу у цій вимозі і наскільки ця вимога може змінюватися в майбутньому.

15 Системні вимоги Це деталізований опис вимог користувачів і є основою для початку проектування системи Це деталізований опис вимог користувачів і є основою для початку проектування системи Інструменти специфікації: модель потоків даних, сутнісно-реляційна модель, об'єктна модель. Інструменти специфікації: модель потоків даних, сутнісно-реляційна модель, об'єктна модель. Показують в першу чергу що повинна робити система, а також можливість відображення системної архітектури: Показують в першу чергу що повинна робити система, а також можливість відображення системної архітектури: Повинні описувати підсистеми із яких складається системаПовинні описувати підсистеми із яких складається система Вказувати обмеження на архітектуру системи, яка буде взаємодіяти із іншими системамиВказувати обмеження на архітектуру системи, яка буде взаємодіяти із іншими системами Можуть включати умову використання для даної системи спеціальної архітектуриМожуть включати умову використання для даної системи спеціальної архітектури

16 Класифікація вимог до програмного забезпечення та програмних систем. Класифікація вимог до програмного забезпечення та програмних систем. Специфікація вимог Специфікація вимог Що означає процес формулювання вимог? Що означає процес формулювання вимог? Класифікація вимог до програмного забезпечення та програмних систем. Класифікація вимог до програмного забезпечення та програмних систем. Специфікація вимог Специфікація вимог Що означає процес формулювання вимог? Що означає процес формулювання вимог?

17 Способи специфікації системних вимог Структурована природна мова Структурована природна мова Мови опису програм Мови опису програм Структуровані мови, подібні до мов програмування Структуровані мови, подібні до мов програмування Графічні нотації Графічні нотації Діаграми, блок-схеми, описані текстом. Діаграми, блок-схеми, описані текстом. Використання UML Використання UML Математичні специфікації Математичні специфікації Базуються на теорії скінченних автоматів та теорії множин. Базуються на теорії скінченних автоматів та теорії множин.

18 Структурована природна мова Структурованість досягається: використанням спеціальної термінології; шаблонів для опису вимог. Мовні конструкції взяті із мов програмування. Структурованість досягається: використанням спеціальної термінології; шаблонів для опису вимог. Мовні конструкції взяті із мов програмування. Шаблони враховують на основі чого розробляється система: на основі об'єктів, які керуватимуть системою, на основі функцій, виконуватиме система, на основі подій, які опрацьовуватиме система. Шаблони враховують на основі чого розробляється система: на основі об'єктів, які керуватимуть системою, на основі функцій, виконуватиме система, на основі подій, які опрацьовуватиме система. Форми для специфікації функцій включають: Форми для специфікації функцій включають: Опис функції чи об'єкта; Опис функції чи об'єкта; Опис вхідних даних та їх джерела; Опис вхідних даних та їх джерела; Опис вихідних даних із вказівкою пункту призначення; Опис вихідних даних із вказівкою пункту призначення; Вказівка, що необхідно для виконання функції; Вказівка, що необхідно для виконання функції; Опис попередніх умов до виконання функції та кінцевих умов після її завершення; Опис попередніх умов до виконання функції та кінцевих умов після її завершення; Опис сторонніх побічних ефектів, якщо вони виникають. Опис сторонніх побічних ефектів, якщо вони виникають.

19 Приклад специфікації структурованою природною мовою Функція: Внесення джерела забруднень на карту Функція: Внесення джерела забруднень на карту Опис: Внесення додаткових джерел забруднення на існуючу карту міста. Користувач вибирає тип джерела забруднень та координати його розміщення переміщенням курсору миші по карті. Опис: Внесення додаткових джерел забруднення на існуючу карту міста. Користувач вибирає тип джерела забруднень та координати його розміщення переміщенням курсору миші по карті. Вхідні дані: Тип джерела, позиція на карті, розміри СЗЗ, ідентифікатор карти Вхідні дані: Тип джерела, позиція на карті, розміри СЗЗ, ідентифікатор карти Джерела даних: Тип джерела, позиція на карті, задаються користувачем, розміри СЗЗ, ідентифікатор карти – з баз даних, відповідно довідники СЗЗ та карти Джерела даних: Тип джерела, позиція на карті, задаються користувачем, розміри СЗЗ, ідентифікатор карти – з баз даних, відповідно довідники СЗЗ та карти Вихідні дані : ідентифікатор карти. Вихідні дані : ідентифікатор карти. Пункт призначення: база даних карти. Ідентифікатор розміщується після завершення функції. Пункт призначення: база даних карти. Ідентифікатор розміщується після завершення функції. Для виконання функції необхідна карта, яка визначається вхідним ідентифікатором. Для виконання функції необхідна карта, яка визначається вхідним ідентифікатором. Передумова: карта відкрита на екрані користувача. Передумова: карта відкрита на екрані користувача. Післяумова: карта не змінюється за виключенням нанесеного об'єкта. Післяумова: карта не змінюється за виключенням нанесеного об'єкта. Побічні ефекти : відсутні. Побічні ефекти : відсутні.

20 Документування системних вимог Документ, який включає системні вимоги - специфікація системних вимог за Хеннінгером: Документ, який включає системні вимоги - специфікація системних вимог за Хеннінгером: Описує зовнішню поведінку; Описує зовнішню поведінку; Задає обмеження на процес реалізації системи; Задає обмеження на процес реалізації системи; Передбачає можливість внесення змін до специфікації; Передбачає можливість внесення змін до специфікації; Служить довідником в процесі супроводу системи; Служить довідником в процесі супроводу системи; Відтворює життєвий цикл системи; Відтворює життєвий цикл системи; Передбачає реакцію системи та групи супроводу на нештатні ситуації. Передбачає реакцію системи та групи супроводу на нештатні ситуації.

21 Складові специфікації системних вимог (стандарт IEEE/ANSI ) Передмова Передмова Особи, для яких розробляють документ; Особи, для яких розробляють документ; Попередні версії та зміни внесені в ПЗ Попередні версії та зміни внесені в ПЗ Обґрунтування нової версії Обґрунтування нової версії Вступ Вступ Потреби в створенні системи Потреби в створенні системи Системні функції та пояснення роботи із іншими системами Системні функції та пояснення роботи із іншими системами Пояснення, який ефект для організації після впровадження системи Пояснення, який ефект для організації після впровадження системи Глосарій – опис технічних термінів документу Глосарій – опис технічних термінів документу Вимоги користувачів Вимоги користувачів Опис сервісів (функцій), які надаються користувачу; Опис сервісів (функцій), які надаються користувачу; Не функціональні системні вимоги; Не функціональні системні вимоги; Стандарти на ПЗ та на процес створення; Стандарти на ПЗ та на процес створення; Системна архітектура Системна архітектура Високорівневе представлення архітектури із розподілом функцій по компонентах системи із виділенням існуючих компонент Високорівневе представлення архітектури із розподілом функцій по компонентах системи із виділенням існуючих компонент Системні вимоги: Функціональні та не функціональні Системні вимоги: Функціональні та не функціональні Системні моделі Системні моделі Показують взаємодію між компонентами та зовнішнім середовищем Показують взаємодію між компонентами та зовнішнім середовищем Типи: моделі потоків даних; об'єктні; моделі даних Типи: моделі потоків даних; об'єктні; моделі даних Еволюція системи Еволюція системи Припущення на яких базується система Припущення на яких базується система Зміна апаратних засобів, необхідна для реалізації системи Зміна апаратних засобів, необхідна для реалізації системи Зміна системи відповідно до потреб користувачів в майбутньому Зміна системи відповідно до потреб користувачів в майбутньому Додатки Додатки Опис апаратних засобів (мінімальна та максимальна конфігурація) та баз даних(логічна структура із якою працюватиме ПЗ) із якими працюватиме система Опис апаратних засобів (мінімальна та максимальна конфігурація) та баз даних(логічна структура із якою працюватиме ПЗ) із якими працюватиме система

22 Підсумки Класифікація вимог до програмного забезпечення та програмних систем. Специфікація вимог Вимоги до ПС –це описи того, що повинна виконувати система, а також обмеження на її поведінку та реалізацію Вимоги до ПС –це описи того, що повинна виконувати система, а також обмеження на її поведінку та реалізацію Функціональні вимоги – описи сервісів, що надаються системою та описи способів виконання обчислювальних операцій. Функціональні вимоги – описи сервісів, що надаються системою та описи способів виконання обчислювальних операцій. Вимоги предметної області – це функціональні вимоги предметної області, де буде експлуатуватися система Вимоги предметної області – це функціональні вимоги предметної області, де буде експлуатуватися система Не функціональні вимоги – це обмеження, які накладаються на систему, на процес її розробки та зовнішні вимоги, які описують властивості системи в цілому. Не функціональні вимоги – це обмеження, які накладаються на систему, на процес її розробки та зовнішні вимоги, які описують властивості системи в цілому. Вимоги користувачів призначені для осіб, які будуть експлуатувати систему – формулюються звичайною мовою із використанням графічних матеріалів. Вимоги користувачів призначені для осіб, які будуть експлуатувати систему – формулюються звичайною мовою із використанням графічних матеріалів. Системні вимоги – максимально точно описують функції системи. Для їх опису використовують структуровані мови, або спеціальні мови для специфікації вимог. Системні вимоги – максимально точно описують функції системи. Для їх опису використовують структуровані мови, або спеціальні мови для специфікації вимог. Специфікація вимог- офіційний документований їх опис, який використовують розробники та користувачі. Специфікація вимог- офіційний документований їх опис, який використовують розробники та користувачі.

23 Класифікація вимог до програмного забезпечення та програмних систем. Класифікація вимог до програмного забезпечення та програмних систем. Специфікація вимог Специфікація вимог Що означає процес формулювання вимог? Що означає процес формулювання вимог? Класифікація вимог до програмного забезпечення та програмних систем. Класифікація вимог до програмного забезпечення та програмних систем. Специфікація вимог Специфікація вимог Що означає процес формулювання вимог? Що означає процес формулювання вимог?

24 Особливості процесу формулювання вимог. Діючі особи процесу Діючі особи процесу Замовники, чи носії їх інтересів; Замовники, чи носії їх інтересів; Користувачі системи (оператори, обслуговуючий персонал); Користувачі системи (оператори, обслуговуючий персонал); Розробники системи. Розробники системи. Основні етапи процесу: Основні етапи процесу: Аналіз технічної можливості створення системи Аналіз технічної можливості створення системи Звіт про технічну можливість створення; Звіт про технічну можливість створення; Формування та аналіз вимог; Формування та аналіз вимог; Моделі системи; Моделі системи; Специфікація вимог Специфікація вимог Вимоги користувачів та системні вимоги Вимоги користувачів та системні вимоги Атестація вимог. Атестація вимог. Документація зі специфікацією вимог. Документація зі специфікацією вимог.

25 Аналіз технічної можливості створення системи Чи система відповідає загальним і функціональним цілям замовника та розробника? Чи система відповідає загальним і функціональним цілям замовника та розробника? Чи можливою є її реалізація із використанням існуючих технологій і не виходячи за межі розумної вартості? Чи можливою є її реалізація із використанням існуючих технологій і не виходячи за межі розумної вартості? Чи можливо об'єднати розроблювану систему із існуючими в експлуатації? Чи можливо об'єднати розроблювану систему із існуючими в експлуатації? Аналіз технічної можливості також включає: Аналіз технічної можливості також включає: Які зміни відбудуться в організації, якщо система буде введена в дію? Які зміни відбудуться в організації, якщо система буде введена в дію? Які існують поточні проблеми в організації і як з допомогою нової системи вони можуть бути розв'язані? Які існують поточні проблеми в організації і як з допомогою нової системи вони можуть бути розв'язані? Яким чином система буде забезпечувати функціональні цілі? Яким чином система буде забезпечувати функціональні цілі? Чи може бути система створена в межах технологій, які раніше використовувалися в даній організації? Чи може бути система створена в межах технологій, які раніше використовувалися в даній організації? Які джерела інформації необхідно використати для отримання відповіді на поставленні запитання? Які джерела інформації необхідно використати для отримання відповіді на поставленні запитання?

26 Формування та аналіз вимог Причини складності: Причини складності: Особи, які формулюють вимоги часто не знають, або не можуть сформулювати що вони хочуть від системи, висувають нереальні вимоги з точки зору вартості їх реалізації; Особи, які формулюють вимоги часто не знають, або не можуть сформулювати що вони хочуть від системи, висувають нереальні вимоги з точки зору вартості їх реалізації; Формують вимоги виходячи із власної точки зору та досвіду, мають різні приорітети і способи їх вираження Формують вимоги виходячи із власної точки зору та досвіду, мають різні приорітети і способи їх вираження Керівники можуть формулювати їх виходячи виключно із особистих інтересів Керівники можуть формулювати їх виходячи виключно із особистих інтересів Зовнішня ситуація може змінюватися в процесі формування вимог, що призведе до зміни важливості певних вимог, або появи нових від осіб, які не приймали участь у формуванні попередніх вимог. Зовнішня ситуація може змінюватися в процесі формування вимог, що призведе до зміни важливості певних вимог, або появи нових від осіб, які не приймали участь у формуванні попередніх вимог.

27 Етапи формування та аналізу вимог Особливості - процес є циклічним із зворотними зв'язками від одного етапу до іншого Особливості - процес є циклічним із зворотними зв'язками від одного етапу до іншого Аналіз предметної області Аналіз предметної області Збирання вимог Збирання вимог Класифікація вимог Класифікація вимог Розв'язування протиріч при формуванні вимог Розв'язування протиріч при формуванні вимог Призначення приорітетів по вимогах Призначення приорітетів по вимогах Перевірка повноти та не протиріч по вимогах Перевірка повноти та не протиріч по вимогах

28 Основні підходи до формулювання вимог Метод опорних точок зору Метод опорних точок зору Метод сценаріїв Метод сценаріїв Етнографічний метод Етнографічний метод Методи структурного аналізу Методи структурного аналізу Методи прототипування Методи прототипування

29 Метод опорних точок зору Особливості: Різні типи користувачів та розробників-різні точки зору, інтереси та вимоги. Особливості: Різні типи користувачів та розробників-різні точки зору, інтереси та вимоги. Точки зору слід розглядати: Точки зору слід розглядати: Як користувачів системи Як користувачів системи Як джерело інформації про системні дані; Як джерело інформації про системні дані; Як структуру представлень – особлива частина моделі; Як структуру представлень – особлива частина моделі; Як отримувачів системних сервізів – визначають данні для виконання системних сервізів; Як отримувачів системних сервізів – визначають данні для виконання системних сервізів; Переваги: Багато поглядів забезпечує базу для знаходження протиріч у вимогах. Переваги: Багато поглядів забезпечує базу для знаходження протиріч у вимогах. Недоліки: Складність використання в процесі структурного аналізу, оскільки відсутні зв'язки між точками зору. Недоліки: Складність використання в процесі структурного аналізу, оскільки відсутні зв'язки між точками зору.

30 Зовнішні опорні точки зору ( viewpoint-oriented requirements definition ) Особливості: Особливості: Найбільш придатні для побудови інтерактивних систем: банкомати, довідкові системи, тощо; Найбільш придатні для побудови інтерактивних систем: банкомати, довідкові системи, тощо; Зовнішні точки зору дозволяють структуризувати процес формування вимог; Зовнішні точки зору дозволяють структуризувати процес формування вимог; Усі опорні точки зору повинні відображати хоча б один спосіб взаємодії із системою; Усі опорні точки зору повинні відображати хоча б один спосіб взаємодії із системою; Підхід є корисним для формулювання не функціональних вимог з якими можна зв'язати певний сервіз Підхід є корисним для формулювання не функціональних вимог з якими можна зв'язати певний сервіз Етапи: Етапи: Ідентифікація точок зору і відповідних до них сервізів; Ідентифікація точок зору і відповідних до них сервізів; Структуризація – створення ієрархії згрупованих точок зору; Структуризація – створення ієрархії згрупованих точок зору; Документування опорних точок зору; Документування опорних точок зору; Відображення системних об'єктів на основі інформації із опорних точок зору. Відображення системних об'єктів на основі інформації із опорних точок зору.

31 Метод сценаріїв Особливості : Особливості : Спосіб доступного опису взаємодії з ПС; Спосіб доступного опису взаємодії з ПС; Корисні для деталізації опису вимог; Корисні для деталізації опису вимог; Надають інформацію для деталізації різних рівнів системи. Надають інформацію для деталізації різних рівнів системи. Етапи: Етапи: Опис стану системи перед початком реалізації сценарію; Опис стану системи перед початком реалізації сценарію; Опис нормального слідування подій; Опис нормального слідування подій; Опис виключних подій та способів їх опрацювання; Опис виключних подій та способів їх опрацювання; Опис інших дій, які можливо виконати під час виконання сценарію; Опис інших дій, які можливо виконати під час виконання сценарію; Опис стану системи після завершення сценарію. Опис стану системи після завершення сценарію. Варіанти описів: Варіанти описів: Сценарії подій (на прикладі методу VORD); Сценарії подій (на прикладі методу VORD); Варіанти використання (на прикладі UML) Варіанти використання (на прикладі UML)

32 Сценарії подій (на прикладі методу VORD); Особливості : Особливості : Кожна подія документується як сценарій; Кожна подія документується як сценарій; Описуються: потоки, системні операції та особливі події, що можуть виникнути. Описуються: потоки, системні операції та особливі події, що можуть виникнути. Використовуються такі елементи: Використовуються такі елементи: Дані, що поступають чи виходять із системи Дані, що поступають чи виходять із системи Опис системних операцій Опис системних операцій Інформація для управління Інформація для управління Внутрішньо системні дані Внутрішньо системні дані Особливі ситуації Особливі ситуації Наступна подія після завершення сценарію Наступна подія після завершення сценарію Pin-код Запит Pin-кода Підтвердження Запит Pin-кода Номер рахунку Запит Pin-кода Невірний Рin Повторне введ. Вибір сервісу

33 Варіанти використання (на прикладі UML) Особливості : Особливості : Використовуються для опису об'єктних моделей систем; Використовуються для опису об'єктних моделей систем; Описуються: діючі особи, тобто користувачі та назви типів взаємодії. Описуються: діючі особи, тобто користувачі та назви типів взаємодії. Зауваження: на початкових стадіях без конкретизації потоків подій Зауваження: на початкових стадіях без конкретизації потоків подій

34 Етнографічний метод Особливості : Особливості : Розробник знаходиться в середовищі де буде функціонувати розроблена система і протоколює реальні дії, що виконуються користувачами системи; Розробник знаходиться в середовищі де буде функціонувати розроблена система і протоколює реальні дії, що виконуються користувачами системи; Використовується для розуміння та формування соціальних та організаційних аспектів експлуатації системи; Використовується для розуміння та формування соціальних та організаційних аспектів експлуатації системи; Дозволяє деталізувати вимоги для критичних систем; Дозволяє деталізувати вимоги для критичних систем; Орієнтований на конкретного користувача і не може повністю врахувати вимоги предметної області та організаційного характеру; Орієнтований на конкретного користувача і не може повністю врахувати вимоги предметної області та організаційного характеру; Дозволяє виявити неявні вимоги до системи, оскільки; Дозволяє виявити неявні вимоги до системи, оскільки; Для забезпечення повноти вимог застосовується спільно із аналізом варіантів використання; Для забезпечення повноти вимог застосовується спільно із аналізом варіантів використання; Поєднується із прототипуванням Поєднується із прототипуванням Використовується для розв'язання конкретних проблем прототипування та оцінювання створеного прототипу. Використовується для розв'язання конкретних проблем прототипування та оцінювання створеного прототипу.

35 Атестація вимог. Мета: Перевірка, що вимоги визначають ту систему, яка відповідає баченню замовника Мета: Перевірка, що вимоги визначають ту систему, яка відповідає баченню замовника Реалізується різними типами перевірок: достовірності; непротирічності; повноти; реальності виконання. Реалізується різними типами перевірок: достовірності; непротирічності; повноти; реальності виконання. Методи атестування вимог: Методи атестування вимог: Системний аналіз рецензентами; Системний аналіз рецензентами; Прототипування; Прототипування; Генерування тестових завдань та їх аналіз Генерування тестових завдань та їх аналіз Автоматизований аналіз непротиріч Автоматизований аналіз непротиріч Можливе застосування, коли вимоги представлені у вигляді структурних чи формальних системних моделей. Можливе застосування, коли вимоги представлені у вигляді структурних чи формальних системних моделей.

36 Підсумки Особливості процесу формулювання вимог Процес розробки вимог включає: аналіз технічної можливості створення системи; формування та аналіз вимог; специфікацію, атестацію та управління вимогами. Процес розробки вимог включає: аналіз технічної можливості створення системи; формування та аналіз вимог; специфікацію, атестацію та управління вимогами. Аналіз вимог – ітераційний процес, який включає: Аналіз предметної області; збирання, класифікацію вимог; розв'язування протиріч при формуванні вимог; призначення приорітетів по вимогах; перевірка повноти та не протиріч по вимогах. Аналіз вимог – ітераційний процес, який включає: Аналіз предметної області; збирання, класифікацію вимог; розв'язування протиріч при формуванні вимог; призначення приорітетів по вимогах; перевірка повноти та не протиріч по вимогах. Особи, які формулюють вимоги мають різні приорітети та інтереси, тому складні системи необхідно аналізувати із різних точок зору. Особи, які формулюють вимоги мають різні приорітети та інтереси, тому складні системи необхідно аналізувати із різних точок зору. Соціальні та організаційні фактори суттєвим чином впливають на системні вимоги. Соціальні та організаційні фактори суттєвим чином впливають на системні вимоги. Атестація вимог – це перевірка їх на достовірності; непротирічності; повноти; реальності виконання. Атестація вимог – це перевірка їх на достовірності; непротирічності; повноти; реальності виконання. Основними методами атестації вимог є: системний аналіз рецензентами; прототипування; генерування тестових завдань та їх аналіз Основними методами атестації вимог є: системний аналіз рецензентами; прототипування; генерування тестових завдань та їх аналіз