
- •Питання
- •Проектування пз – проектування, цілі проектування, вимоги до пз
- •Життєвий цикл пз
- •Моделі життєвого циклу (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)
- •Архітектурні структури і подання
18. Планування архітектури (1)
Під архітектурою системи будемо розуміти структуру компонентів програмної системи, взаємозв'язку, а також принципи та норми їх проектування та розвитку в часі.
Архітектурно-економічний цикл
Взаємини між виробничими завданнями, вимоги до продукту, досвід архітектора, архітектури та створені системи утворять цикл із ланцюгами зворотного зв'язку.
Частково зворотний зв'язок надходить від самої архітектури, частково - від побудованої на її основі системи.
Цикл виглядає в такий спосіб.
1. Архітектура впливає на структуру компанії-розроблювача.
Архітектура обумовлює структуру системи; зокрема вона встановлює набір блоків програмного забезпечення, що слід реалізувати (або забезпечити їх наявність іншим способом), а потім інтегрувати в рамках системи. Ці блоки становлять основу розробки структури проекту. Групи розроблювачів укомплектовуються саме по блоках; операції в рамках процесів розробки, тестування та інтеграції також виконуються відносно блоків. Відповідно до графіку і бюджетів, ресурси виділяються частинами розраховуючи на окремі блоки.
2. Архітектура здатна впливати на завдання розроблювача.
Сконструйована на її основі успішна система надає компанії можливість зміцнитися в даному сегменті ринку. Така архітектура передбачає подальше ефективне виробництво та розміщення подібних систем, внаслідок чого компанія може відкоригувати свої завдання та, скориставшись новою перевагою, зайняти ринкову нішу. Так виглядає зворотний зв'язок від системи до компанії-розроблювача та зконструйованим нею системам.
3. Архітектура може впливати на вимоги, висунуті замовником щодо наступної системи (якщо вона заснована на тій же архітектурі, що й попередня).
Замовник може одержати таку систему в більше надійному варіанті, швидше та економічніше, ніж у тому випадку, якби вона конструювалася із чистого аркуша. Можливо, замовник відмовиться від деяких вимог на користь підвищення економічності. Готові програмні продукти трохи змінили вимоги, пропоновані замовниками, - не призначені для задоволення індивідуальних потреб, вони недорогі та відрізняються високою якістю. На замовників, не занадто гнучких по частині своїх вимог, аналогічний вплив роблять лінійки продуктів.
18. Планування архітектури(2)
4. Процес конструювання систем поповнює досвід архітектора.
Архітектор може застосувати при роботі над наступними архитектурами існуючий дослвід, і, відповідно, розширювати базу досвіду компанії. Успіх системи, побудованої на основі інструментальних магістралей, .NET або інкапсульованих кінцевих автоматів, стимулює побудову аналогічних систем і надалі. З іншого боку, невдалі варіанти архітектури рідко використовуються повторно.
5. Окремі «віхові» системи.
Іноді зробити сильний вплив і навіть внести зміни в культуру програмної інженерії (технічну базу, у рамках якої навчаються та працюють конструктори) здатні окремі системи. Такий ефект на індустрію в 1960-х і початку 1970-х рр. зробили перші реляційні бази даних, генератори компіляторів і табличні операційні системи; в 1980-х - перші електронні таблиці та системи керування вікнами. В 1990-х рр. таким каталізатором виступив Інтернет. Подібні інновації завжди знаходять висвітлення в наступних системах.
Із цих і деяких інших механізмів зворотного зв'язку і утвориться архітектурно-економічний цикл.