- •Питання
- •Проектування пз – проектування, цілі проектування, вимоги до пз
- •Життєвий цикл пз
- •Моделі життєвого циклу (1)
- •3. Моделі життєвого циклу(2)
- •Цілісність даних та надійність
- •Шаблони проектування
- •Класифікація архітектур пз
- •Обробка помилок, виключень та небажаних умов
- •Діаграми подій
- •Зв’язність та зв’язаність (coupling and cohesion)
- •Повторне використання коду
- •11. Ітеративне й інкрементне проектування
- •12.Функціональна методика потоків даних
- •13. Структурна схема розроблюваного пз
- •14. Проектування програмного забезпечення при структурному підході
- •15. Типи компонентних структур та основі означення
- •16. Методологія компонентної розробки пз
- •17. Приклади компонентних середовищ (1)
- •17. Приклади компонентних середовищ (2)
- •18. Планування архітектури (1)
- •1. Архітектура впливає на структуру компанії-розроблювача.
- •2. Архітектура здатна впливати на завдання розроблювача.
- •3. Архітектура може впливати на вимоги, висунуті замовником щодо наступної системи (якщо вона заснована на тій же архітектурі, що й попередня).
- •18. Планування архітектури(2)
- •4. Процес конструювання систем поповнює досвід архітектора.
- •5. Окремі «віхові» системи.
- •19. Програмний процес та архітектурно-економічний цикл (1)
- •19. Програмний процес та архітектурно-економічний цикл(2)
- •20. Архітектурні зразки, еталонні моделі та еталонні варіанти архітектури (1)
- •20. Архітектурні зразки, еталонні моделі та еталонні варіанти архітектури(2)
- •Архітектурні структури і подання
20. Архітектурні зразки, еталонні моделі та еталонні варіанти архітектури (1)
У проміжку між схемами із прямокутників і ліній - найпростішими "ескізами" архитектур - і комплексними архитектурами, укомплектованими всією необхідною інформацією про системи, існують численні перехідні етапи. Кожен такий етап є результат прийняття ряду архітектурних рішень, сукупність архітектурних альтернатив. Деякі з них самі по собі мають певну цінність. Перш ніж переходити до аналізу архітектурних структур, розглянемо проміжні етапи.
Архітектурний зразок
Архітектурний зразок - опис типів елементів і відносин і виклад ряду обмежень на їх використання.
Зразок має сенс розглядати як сукупність обмежень, що накладають на архітектуру, - конкретніше, на типи елементів і зразки їх взаємодії - на основі цих обмежень складається ряд або сімейство відповідних їм варіантів архітектури.
Незважаючи на те що архітектурний зразок не є архітектурою, він все-таки містить досить корисний образ системи - він накладає на архітектуру, а отже, і на систему, корисні обмеження.
У зразків є один вкрай корисний аспект - справа в тому, що вони демонструють відомі атрибути якості. Саме тому архітектори вибирають зразки не навмання, а виходячи з певних міркувань. Деякі зразки містять відомі рішення проблем, пов'язаних із продуктивністю, інші призначаються для систем з високими вимогами до безпеки, треті успішно реалізуються в системах з високою готовністю. У багатьох випадках вибір архітектурного зразка виявляється першим істотним рішенням архітектора.
Еталонна модель
Еталонна модель - це поділ між окремими блоками функціональних можливостей і потоків даних. Еталонною моделлю називається стандартна декомпозиція відомої проблеми на частині, які, взаємодіючи, здатні її вирішити.
Оскільки еталонні моделі виникають з досвідом, їх наявність характерна лише для предметних областей, що сформувалися. Ви можете назвати стандартні елементи компілятора або системи керування базами даних? А в загальних словах пояснити, як ці елементи спільно вирішують своє загальне завдання? Якщо можете, виходить, ви знайомі з еталонною моделлю цих додатків.
20. Архітектурні зразки, еталонні моделі та еталонні варіанти архітектури(2)
Еталонна архітектура
Еталонна архітектура - це еталонна модель, відображена на програмні елементи (які спільно реалізують функціональність, визначену в еталонній моделі) і потоки даних між ними.
У той час як еталонна модель забезпечує поділ функцій, еталонна архітектура відображає ці функції на декомпозицію системи. Відповідність може бути як однозначною, так і неоднозначною. У програмному елементі може бути реалізована як окрема частина функції, так і кілька функцій відразу.
Еталонні моделі, архітектурні зразки та еталонні архітектури не є варіантами архітектури; це не більш ніж корисні поняття, сприятливі фіксації окремих елементів архітектури. Кожний з них з'являється як результат проектних рішень, прийнятих на самих ранніх етапах.
Аналогії архітектури з іншими значеннями цього слова проводяться досить часто. Як правило, архітектура асоціюється з фізичною структурою (будинку, вулиці, апаратури) і фізичним розташуванням. Архітектор, що розробляє план будинку, має на меті забезпечити його доступність, эстетическую привабливість, освітленість, експлуатаційну надійність та ін. Програмний архітектор у процесі проектування системи повинен прагнути до забезпечення таких характеристик, як паралелізм, модификуємість, практичність, безпека і т.д. ; крім того, він покликаний встановити баланс між вимогами до цих характеристик.
Аналогії між будинками і програмними системами не дуже надійні, вони занадто швидко виявляються неспроможними. Гарні вони тим, що допомагають усвідомити важливість позиції спостерігача та прийти до висновку про множинність значень поняття "структура" залежно від мотивів її вивчення. Точне визначення програмної архітектури значно менш істотне, ніж аналіз сутності цього поняття.