- •Поняття пз
- •Поняття трпз
- •К ласифікація методів проектування пп
- •Класичний життєвий цикл
- •Макетування
- •Стратегії конструювання пз
- •Інкрементна модель конструювання пз
- •Кодування.
- •Тестування.
- •Модель швидкої розробки додатків rad
- •Спіральна модель конструювання пз
- •Компонентно-орієнтована модель конструювання пз
- •Важковагові та полегшені процеси
- •Xp процес
- •4 Базові дії:
- •Кодування.
- •Тестування.
- •Робота з замовником.
- •Проектування.
- •Моделі якості процесів конструювання пз
- •Процес керування проектом
- •Планування проектних задач
- •Розмірно-орієнтовані метрики (ром)
- •Функціонально-орієнтовані метрики (фом)
- •Коефіцієнти Fi
- •Виконання оцінки проекту на основі loc та фп метрик
- •Конструктивна модель вартості
- •Модель композиції додатку
- •Модель раннього етапу проектування
- •Модель етапу послідовної архітектури
- •Класичні методи аналізу
- •1. Послідовна
- •3. Ітерація
- •Надійні динамічні системи
- •Основи проектування програмних систем
- •Супровід.
- •Проектування
- •Кодування
- •Тестування
- •Декомпозиція підсистем на модулі
- •Модульність
- •Інформаційна закритість
- •Зв'язність модуля
- •Визначення зв'язності модуля
- •Зчеплення модулів
- •Класичні методи проектування
- •1. Метод структурного проектування
- •2. Проектування для потоку даних типу «запит»
- •Основні поняття та принципи тестування
- •Структурне тестування
- •1. Спосіб тестування базового шляху.
- •2. Спосіб тестування умов
- •3. Тестування циклів
- •Функціональне тестування
- •1. Спосіб розбиття по еквівалентності
- •2. Спосіб аналізу граничних значень
- •3. Спосіб діаграм причин-наслідків
- •3Ауважння:
- •Організація процесу тестування пз
- •1. Методика тестування програмних систем
- •2. Тестування елементів
- •3. Тестування інтеграції
- •Спадне тестування інтеграції
- •Зростаюче тecтування інтеграції
- •Порiвияиня спадного I зростаючого тестування інтеграції
- •4. Тестування правильності
- •5. Системне тестування
- •Основні принципи об’єктно-орієнтованої методології розробки програмної системи (оом пс)
- •Об’єкти та класи
- •ОоАналіз
- •1999Р. Березень-липень uml 1.3
- •Діаграма варіантів використання (use case diagram)
- •Діаграма класів (Class diagram)
- •Послідовна
- •Паралельна
- •2. Асоціації:
- •Діаграма станів (Statechart diagram)
- •Діаграма діяльності (Activity diagram)
- •Діаграма послідовності (Sequence diagram)
- •Діаграма кооперації (Collaboration diagram)
- •Діаграма компонентів (Component diagram)
- •Діаграма розгортування (Deployment diagram)
- •Особливості реалізації мови uml у середовищі Rational Rose
- •Головне меню
- •Вікно діаграми
- •Стандартна пі
- •Уніфікований процес компанії Rational Rose
- •3 Неправильних підходи до розробки пз
- •Водоспадний процес
- •Спрощений процес системного проектування
- •Автоматичний підхід та швидке макетування
Інформаційна закритість
Принцип інформаційної закритості (автор — Д. Парнас, 1972) затверджує: зміст модулів повинен бути прихований один від одного. Модуль повинен визначатися і проектуватися так, щоб його вміст (процедури і дані) був недоступний тим модулям, які не потребують такої інформації (клієнтам).
Інформаційна закритість означає наступне:
1) всі модулі незалежні, обмінюються тільки інформацією, необхідною для роботи;
2) доступ до операцій і структур даних модуля обмежений.
Достоїнства інформаційної закритості:
забезпечується можливість розробки модулів різними, незалежними колективами;
забезпечується легка модифікація системи (вірогідність розповсюдження помилок дуже мала, оскільки більшість даних і процедур приховано від інших частин системи).
Ідеальний модуль грає роль «чорного ящика», вміст якого невидимо клієнтам. Він простий у використанні — кількість «ручок і органів управління» їм невелика (аналогія з експлуатацією телевізора). Його легко розвивати і коректувати в процесі супроводу програмної системи. Для забезпечення таких можливостей система внутрішніх і зовнішніх зв'язків модуля повинна відповідати особливим вимогам.
Зв'язність модуля
Зв'язність модуля (Cohesion) — це міра залежності його частин. Зв'язність — внутрішня характеристика модуля. Чим вище зв'язність модуля, тим краще результат проектування, тобто тим «чорніше» його ящик (капсула, захисна оболонка модуля), тим менше «ручок управління» на нім знаходиться і тим простіше ці «ручки».
Для вимірювання зв'язності використовують поняття сили зв'язності (СЗ).
Існує 7 типів зв'язності:
1. Зв'язність по збігу (СЗ=0). У модулі відсутні явно виражені внутрішні зв'язки.
2. Логічна зв'язність (СЗ=1). Частини модуля об'єднані за принципом функціональної подібності. Наприклад, модуль складається з різних підпрограм обробки помилок. При використанні такого модуля клієнт вибирає тільки одну з підпрограм.
Недоліки:
складне сполучення;
велика вірогідність внесення помилок при зміні сполучення ради однієї з функцій.
3. Тимчасова зв'язність (СЗ=3). Частини модуля не зв'язані, але необхідні в один і той же період роботи системи.
Недолік: сильний взаємний зв'язок з іншими модулями, звідси — сильна чутливість внесенню змін.
4. Процедурна зв'язність (СЗ=5). Частини модуля зв'язані порядком виконуваних ними дій, що реалізовують деякий сценарій поведінки.
5. Комунікативна зв'язність (СЗ=7). Частини модуля зв'язані по даним (працюють з однією і тією ж структурою даних).
6. Інформаційна (послідовна) зв'язність (СС=9). Вихідні дані однієї частини використовуються як вхідні дані в іншій частині модуля.
7. Функціональна зв'язність (СЗ=10). Частини модуля разом реалізують одну функцію.
Відзначимо, що типи зв'язності 1,2,3 — результат неправильного планування архітектури, а тип зв'язності 4 — результат недбалого планування архітектури додатку.
Таблиця. Характеристика зв’язаності модуля
Тип зв'язності |
Супроводженість |
Роль модуля |
Функціональна |
Краща супроводженість |
«Чорний ящик» |
Інформаційна ( послідовна ) |
Не зовсім «чорний ящик» |
|
Комуникатівная |
«Сірий ящик» |
|
Процедурна |
Гірша супроводженість |
«Білий» або такий, що «просвічує ящик» |
Тимчасова |
«Білий ящик» |
|
Логічна |
||
По збігу |