- •Поняття пз
- •Поняття трпз
- •К ласифікація методів проектування пп
- •Класичний життєвий цикл
- •Макетування
- •Стратегії конструювання пз
- •Інкрементна модель конструювання пз
- •Кодування.
- •Тестування.
- •Модель швидкої розробки додатків 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 Неправильних підходи до розробки пз
- •Водоспадний процес
- •Спрощений процес системного проектування
- •Автоматичний підхід та швидке макетування
Діаграма класів (Class diagram)
Потрібна для представлення статичної структури моделі системи.
Клас – це множина об’єктів, які мають однакову структуру, поведінку та відношення з об’єктами з інших класів.
Позначається:
Ім’я Класу
Обов’язковим являється Ім’я Класу; воно повинно бути унікальним, записується з великої літери та напівжирним шрифтом.
Клас називається абстрактним якщо не містить об’єктів; тоді його ім’я записується курсивом.
Кожному атрибути відповідає рядок тексту:
Квантор видимості_ІмяАтрибуту[кратність] : Тип=Початкове значення{рядок-властивість}
Квантор видимості приймає одне з 3 значень:
Символ + - загальнодоступний (Public) – атрибут доступний з будь-якого класу.
Символ # - захищений (Protected) – атрибут доступний лише підкласам даного класу.
Символ — - закритий (Private) – атрибут недоступний жодному іншому класу.
Ім’я атрибута – являється обов’язковим.
Кратність – загальна кількість атрибутів даного типу що входять у склад даного класу. Якщо рядок атрибута підкреслений – це означає що атрибут приймає лише деяку множину значень, які вказані у рядку властивості.
Операція – це деякий сервіс, який надає екземпляр класу за певною вимогою.
Кожній операції відповідає рядок тексту:
Квантор видимості_ІмяОперації [список параметрів] : Вираз {рядок-властивість}
Рядок-властивість потрібна для визначення значень властивостей, які можуть бути застосовані до даного елемента.
Деякі операції можуть виконуватися одночасно, а деякі лише послідовно, для цього у рядку-властивості вказується:
concurrency = ім'я
sequential
concurrent
guarded.
Ім'я приймає одне з 3 значень:
Послідовна
Паралельна
Захищена – всі звершення до даної операції повинні бути впорядковані у часі.
Відношення на діаграмі класів:
1 . Залежності стрілка направлена до класу джерела. Визначені спеціальні види залежності, задаються стереотипами:
а)“access –доступність відкритих атрибутів та операцій класу-джерела та класу-клієнтів;
б) “bind” - клас-клієнт може використовувати деякий шаблон;
в) “derive”–атрибути класу-клієнта можуть бути обчислені за атрибутами класу-джерела;
г) “import” – відкриті атрибути та операції класу-джерела являється частиною класу-клієнта, неначе вони об’явлені безпосередньо у ньому;
д) “refine” - клас-клієнт являється уточненням класу-джерела.
2. Асоціації:
а) бінарна
б) тернарна
в) що виключає
3. Агрегації – клас включає в себе як складові інші класи.
Позначається:
4. Композиції – являється частинами випадку відношенням агрегації при якій складові знаходяться в середині цілого.
Позначається:
5. Узагальнення направлена до класу джерела. Для відношення узагальнення визначені наступні відношення:
а) { complete } - для даного відношення визначені всі класи нащадків;
б) { disjoint } – класи нащадків не можуть містити об’єктів які одночасно являються екземплярами двох або більше класів;
в) { incomplete } – на діаграмі вказані не всі класи нащадків;
г) { overlapping } – екземпляри класів нащадків можуть належати одночасно декільком класам.
І нтерфейс позначається:
або
Шаблон або параметризований клас:
Приклади: