
- •Лекція 1. Тема: ядра знань swebok
- •1.1. Аналіз і характеристика областей знань swebok
- •1.1.1 Основи програмних вимог (Software Requirements)
- •1.1.2. Проектування пз (Software design)
- •1.1.3. Конструювання пз (Software Construction)
- •1.1.4 Тестування пз (Software Testing)
- •1.1.5 Супровід пз (Software maintenance)
- •1.1.6. Управління конфігурацією пз (Software Configuration Management– scm)
- •1.1.7. Управління інженерією пз (Software Engineering Management)
- •1.1.8. Процес інженерії пз (Software Engineering Process)
- •1.1.9. Методи і засоби інженерії пз (Software Engineering Tools and Methods)
- •Лекція 2. Тема: життєвий цикл і етапи розробки програмного забезпечення
- •Лекція 3. Тема: еволюція моделей життєвого циклу програмного забезпечення
- •1.6. Прискорення розробки пз.
- •Лекція 4. Тема: оцінка якості процесів створення програмного забезпечення
- •Лекція 5. Тема: визначення вихідних даних для проектування програмного забезпечення
- •5.1 Визначення вимог до пз
- •5.2 Формування і аналіз вимог
- •5.2.1 Опорні точки зору
- •5.2.2 Сценарії
- •5.2.3 Етнографічний метод
- •5.3 Специфікація вимог
- •5.4 Атестація вимог
- •5.5 Класифікація програмних продуктів за функціональною ознакою
- •5.6 Основні експлуатаційні вимоги до програмних продуктів
- •5.7 Передпроектні дослідження предметної області
- •Лекція 6. Тема: розробка технічного завдання
- •2. Підстави для розробки
- •3. Призначення
- •4. Вимоги до програми або програмного виробу
- •5. Вимоги до програмної документації
- •1. Вступ
- •2. Підстава для розробки
- •3. Призначення
- •4. Вимоги до програми або програмного виробу
- •4.1. Вимоги до функціональних характеристик
- •Лекція 7. Тема: принципові рішення початкових етапів проектування
- •Контрольні питання і завдання
- •Аналіз вимог і визначення специфікацій програмного забезпечення при структурному підході
- •Лекція 8. Тема: Специфікації програмного забезпечення при структурному підході
- •Flow-форми
- •Діаграми Насси-Шнейдермана
- •Контрольні питання та завдання:
- •Лекція 9. Тема: діаграми потоків даних
- •Словник даних
- •Вміст словника даних
- •Лекція 10. Тема: діаграми «сутність-зв’язок»
- •Лекція 11. Тема: приклади побудови діаграм та специфікації процесів
- •Лекція 12 Тема: діаграми переходів станів
- •13.1. Структурна схема майбутнього програмного забезпечення
- •13.2 Використання методу покрокової деталізації для проектування структури програмного забезпечення
- •13.3 Структурні карти Константайна
- •13.4.Структурні карти Джексона
- •13.5 Характеристики хорошої моделі реалізації
- •Зчеплення
- •Зв’язаність
- •13.6 Функціональна схема
- •Лекція 14. Тема: методології структурного аналізу і проектування
- •Контрольні питання та завдання
- •Лекція 15. Тема: синтаксис діаграм
- •Контрольні питання та завдання
- •Лекція 16. Тема: Синтаксис діаграм
- •Збір інформації
- •Контрольні питання та завдання:
- •Лекція 17. Тема: побудова sadt-діаграм
- •17.2. Побудова sadt-діаграми для процесу “Побудова таблиць/графіків функцій однієї змінної”
- •Типи зв'язків між функціями
- •Лекція 18. Тема: доповнення до діаграм і моделей
- •Критерії оцінки і вибору
- •Функціональні характеристики
- •3. Загальні функції:
Контрольні питання та завдання
Що таке батьківська діаграма і діаграма нащадок?
Що зв’язує ці дві діаграми?
Чому SADT – це методологія?
Що зв’язує зворотній зв’язок по управлінню?
Опишіть сутність всіх дуг.
Скільки точок зору може мати модель?
Лекція 16. Тема: Синтаксис діаграм
При створенні SADT-моделі одну і ту ж діаграму разом з її блоками і дугами деколи перерисовують по декілька раз, що приводить до появи різних її варіантів. Щоб розрізняти версії однієї і тієї ж діаграми, в SADT використовується схема контролю конфігурації діаграм, заснована на хронологічних номерах, або С-номерах. С-номерні коди утворюються з ініціалів автора і послідовних номерів. Ці коди ставляться в нижньому правому кутку SADT-бланка. Якщо діаграма замінює старішу версію, то автор поміщає в дужках попередній С-варіант в дужках, щоб вказати на зв'язок з попередньою роботою. Крім використання для ідентифікації версій діаграм, С-номера застосовуються для зв'язки діаграм при русі як вгору, так і вниз за ієрархією моделі. Зазвичай С-номер діаграми-нащадка, яка утворюється після декомпозиції деякого блока, вперше з'являється безпосередньо під цим блоком на батьківській діаграмі. Це утворює "направлений вниз" зв'язок від батьківської діаграми до діаграми-нащадка.
Як тільки утворюється направлений вниз зв’язок, на діаграмі-нащадку формується посилання на батьківську діаграму. В області контексту SADT (правий верхній кут) автор зображує кожен блок батьківської діаграми маленькими квадратиками, заштриховує цей квадратик, який піддає декомпозиції і розміщує С-номер батьківської діаграми. Це утворює "направлений вверх" (до батьківської діаграми) зв’язок.
Окрім цього, в SADT прийнята система позначень, яка дозволяє аналітику точно ідентифікувати і перевіряти зв'язки по дугах між діаграмами. Ця схема кодування дуг – "ICOM" – отримала назву по перших буквах англійських еквівалентів слів вхід (Input), керування (Control), вихід (Output) і механізм (Mechanism).
Р
исунок
16.1 – Діаграма АО
Рисунок 16.2 – Декомпозиція блоку А1
Існують правила привласнення коду ICOM зовнішнім дугам нової діаграми:
привласнити код кожній зовнішній дузі. Використовуйте I – для вхідних дуг, C – для зв'язків між дугами керування, O – для зв'язків між вихідними дугами, M – для зв'язків між дугами механізму.
додати після кожної букви цифру, відповідну положенню даної дуги серед інших дуг того ж типу, що стосуються батьківського блоку. Причому вхідні і вихідні дуги перераховуються зверху вниз, у дуги керувань і механізмів перераховуються зліва направо.
Створення функціональних моделей і діаграм
Збір інформації
Розглянемо методи, які використовує SADT-аналітик для вивчення наочної області і технології отримання від експертів відомостей про систему, що підлягають опису. Зазвичай на практиці цю технологію називають збором даних, а в інформатиці вона відома як опитування або витягування знань.
Зазвичай джерелами інформації служать експерти. Існує безліч різних стратегій для витягування інформації з цих джерел. Найбільш поширені стратегії:
читання документів;
спостереження за виконанням операцій;
анкетування;
використання власних знань;
складання опису.
Документи – найкраще джерело інформації, тому що вони найчастіше доступні і їх можна "опитувати" в зручному для себе темпі. Читання документів – прекрасний спосіб отримати первинне уявлення про систему і сформулювати питання до експертів.
Спостереження за роботою модельованої системи – хороша стратегія отримання інформації. Під час роботи системи дуже часто виникають питання, які ніколи б не з'явилися в результаті читання документів або розмов з експертами.
Анкетування проводиться для того, щоб опитати великі групи експертів в стислі терміни. Анкетування при опиті експертів дозволяє виявити, які частини системи понад усе потребують поліпшення.
Використання власних знань найчастіше доступно дуже досвідченим аналітикам, які досліджували велике число систем певного типу, а тому вони володіють фундаментальними знаннями у відповідній наочній області.
Ще одна корисна стратегія – придумати опис і дати його експертам для коректування. Придумані описи можуть дати альтернативні схеми функціонування системи – схеми.
Типи опитування
В процесі аналізу, незалежно від джерел інформації, проводяться опитування декількох типів. Вибір того або іншого типу залежить від виду необхідної інформації і поставленої мети. Найбільш поширені наступні типи опитувань:
опитування для збору фактів;
опитування для визначення проблем;
наради для ухвалення рішень;
діалоги автор/читач.
Опитування для збору фактів проводяться, коли намагаються визначити, як функціонує система в теперішній час. Опитування для визначення проблем корисні, коли ви хочете вияснити, що в системі не в порядку. Наради для прийняття рішення проводяться, коли потрібно отримати уяву про те, як повинна функціонувати майбутня система, щоб виправити недоліки в існуючій. Діалоги автор/читач – це неформальні обговорення між автором і експертом, коли у них є які-небуть розбіжності на рахунок майбутньої системи.
Процес опитування
Приведемо декілька порад, які дозволяють зрозуміти основні кроки в процесі опитування:
визначите, чи є інформація фактом або швидше думкою, ставлячи уточнюючі запитання; завжди питайте про числа і кількості (коли мова йде про час, об'єм, витрати). Числові характеристики додають сказаному достовірність.
уточнюйте джерела і призначення даних, їх формат, терміни зберігання, передбачуване використання, необхідні зміни і так далі. Ці уявлення можуть допомогти визначити, що являють собою дані.
Уміння проводити хороше опитування так само важливе, як і уміння будувати хороші діаграми і моделі.
Початок моделювання
Початок моделювання в SADT означає створення діаграм А0 і А-0. Ці дві діаграми повністю розповідають все про майбутню систему, з мінімальним ступенем деталізації. Створюючи їх, аналітик робить початкову спробу розбити систему і потім узагальнити отриману декомпозицію. Декомпозиція (діаграма А0) освітлює найбільш важливі функції системи. Об'єднання (діаграма А-0) трактує систему як "чорний ящик", дає їй назву і визначає найбільш важливі входи, керування, виходи і, можливо, механізми.
Основні етапи
Підготовка включає вибір мети моделі (наприклад, опис того, як механічний цех виготовляє деталі), вибір точки зору, з якої буде представлена модель (наприклад, майстер, робочий, начальник цеху і так далі), тип створюваної моделі (наприклад, модель "потокового" процесу) і передбачуване використання побудованої і перевіреної моделі (наприклад, підготувати нового оператора). Таким чином, підготовка повинна максимально полегшити збір інформації.
Піддаючи об’єкт декомпозиції, потрібно насамперед звернути увагу на вхідні та вихідні дані для всієї системи. Декомпозиція всієї системи починається з складання списку основних типів даних і основних функцій. Потім ці списки доповнюються коментарями для вказівки основних типів як даних, так і функцій системи або різних поєднань. Накінець, списки з коментарями використовуються для створення діаграми А0, яка потім узагальнюється за допомогою діаграми А-0.
Мета і точка зору моделі визначаються на найпочатковішій стадії створення моделі. Вибір мети здійснюється з урахуванням питань, на які повинна відповісти модель, вибір точки зору – відповідно до вибору позиції, з якої описується система. Іноді мету і точку зору можна вибрати до того, як буде зроблена перша діаграма. А іноді визначити мету і точку зору на самому початку моделювання надзвичайно складно. Тоді спочатку можна скласти списки даних і функцій, можна навіть намалювати діаграму А0. Після цього можна буде вже відчути систему, визначити позицію, з якою її треба описувати і визначити мету моделі.
Побудова діаграми А0
Початковий зміст діаграми А0 забезпечують списки даних і функцій. При побудові діаграми А0 можна дотримуватися наступних правил:
розташувати всі блоки на діаграмі;
намалювати основні дуги, що представляють обмеження;
намалювати зовнішні дуги;
намалювати дуги, що залишилися.