Правила диктує контекст

Едвард Гарсон

Мені бачиться тут деяка іронія: розмова про ідеали архітектури я починаю з заяви про те, що ідеалів, по суті справи, не існує Ну, а якщо їх немає, то й писати, мабуть, більше не про що .. У наявності явне протиріччя, і спроби продовжувати в тому ж дусі можуть, чого доброго, призвести до загибелі Всесвіту або чого-небудь ще в цьому роді – як знати

Але на жаль, ceci nest pas іпе pipe1

Один з найбільш цінних уроків, які я виніс з досвіду роботи архітектором ПО, такий: контекст вирішує, а простота допомагає У практичному сенсі це означає, що контекст – єдина сила, що перевершує простоту при прийнятті архітектурних рішень

Говорячи про контекст, я маю на увазі не тільки безпосередні високорівневі показники начебто ключових бізнес-факторів, а й надають непрямий вплив елементи (наприклад, нові технології та інтелектуальний лідерство в тому чи іншому питанні) Хороший архітектор вміє відслідковувати кілька швидко рухомих цілей

З чого складається гарна архітектура Вона є продуктом рішень, які приймаються в контексті суперечливих завдань з різними пріоритетами Це означає, що найважливіші рішення іноді повязані не з тим, що слід включити в систему, а з тим, що з неї слід виключити Цінність гарної архітектури полягає в умілому прийнятті рішень (а її продукт всього лише відображає ваші наміри)

«Це не трубка» (фр) Підпис під курильної трубкою на картині сюрреаліста Рене Магрітта «Віроломство образів» – Прямуючи перев

Історія пропонує нам чимало цікавих прикладів впливу контексту на архітектуру Мій улюблений приклад – вибір бази даних для програмного забезпечення сучасного танка1 (Зазвичай вибір бази даних не має істотного значення для архітектури системи цей приклад наводиться лише для пояснення)

Коли прийшов час вибирати базу даних, команда зайнялася вивченням різних варіантів Більшість баз даних виявилося здатним забезпечити рівень продуктивності, необхідний для систем навігації і наведення на ціль при швидкому русі танка по пересіченій місцевості Але потім команда несподівано зясувала, що постріл з гармати створює сильний електромагнітний імпульс, який викликає збій бортових систем – і, звичайно, бази даних На сучасному полі бою танк з непрацюючим програмним забезпеченням буквально втрачає звязок із зовнішнім світом У цьому контексті вирішальним фактором при виборі бази даних стало час відновлення, і кращими показниками в цьому відношенні володіла на той момент InterBase, тому для танка Ml Abrams була в підсумку обрана саме ця база даних2

Отже, хоча технологічні дебати «X проти У» вирують на багатьох форумах, все це порожня забава Їх основою часто служать аж ніяк не принципові розбіжності в технічному виконанні, а більш тонкі відмінності, яким користувачі віддають перевагу при відсутності «козирної карти» у вигляді визначального контексту

Ваша команда повинна звільнитися від прагнення до ідеалу Почніть з аналізу контексту і використовуйте його як відправну точку для пошуку простих рішень

Біографія автора наведена на стор 93

Джерело: Форд Н, Найгард М, де Ора Б, 97 етюдів для архітекторів програмних систем – Пер з англ – СПб: Сим-вол-Плюс, 2010 – 224 с, Мул

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*