Розберіться в предметній області

Марк Річардс

Ефективний архітектор програмного забезпечення розбирається не тільки в технологіях, але і в предметної області розвязуваної задачі Без цих знань важко зрозуміти діловий аспект завдання, цілі і вимоги компанії, а значить, важко спроектувати ефективну архітектуру, що відповідає потребам бізнесу

Роль архітектора програмного забезпечення полягає в тому, щоб зрозуміти завдання, що стоїть перед бізнесом, бізнес-цілі і бізнес-вимоги і перетворити їх у технічне архітектурне рішення, що задовольняє ім Знання предметної області допомагає архітектору вирішити, які шаблони слід застосовувати, як планувати майбутні розширення і як врахувати тенденції розвитку галузі, щоб краще підготуватися до змін Наприклад, для одних предметних областей (скажімо, для страхового бізнесу) добре підходять сервіс-орієнтовані архітектурні рішення (service-oriented architecture), а для інших (наприклад, для фінансових ринків) – архітектурні рішення на основі бізнес-правил (workflow-based architecture) Знання предметної області допомагає вирішити, які архітектурні шаблони найкраще відповідають конкретним потребам організації

Знання галузевих тенденцій в конкретній області також допомагає архітектору спроектувати ефективну архітектуру Наприклад, у страховому бізнесі набирає силу тенденція до автострахування «на вимогу», коли клієнт оплачує страховку тільки за час фактичного водіння автомобіля Страховка такого типу дуже зручна, якщо ви залишаєте свою машину в аеропорту вранці в понеділок, відбуваєте до місця роботи, повертаєтеся в пятницю і їдете на машині додому Знання подібних тенденцій дозволяє планувати їх підтримку в архітектурі, навіть якщо компанія, на яку ви працюєте, ще не запланувала їх у своїй бізнес-моделі

Розуміння цілей бізнесу також допомагає спроектувати ефективну архітектуру Наприклад, чи входить до складу цілей тієї організації, на яку ви працюєте, розширення допомогою масштабних злиттів і поглинань Відповідь на це питання може вплинути на тип проектованої архітектури Якщо відповідь позитивна, архітектура, можливо, повинна містити багато рівнів абстракції, щоб полегшити злиття компонентів бізнес-логіки Якщо стратегія бізнесу передбачає нарощування присутності компанії в Інтернеті з метою розширення частки ринку, ймовірно, дуже важливим атрибутом буде висока доступність Архітектор зобовязаний розуміти цілі компанії, на яку він працює, і постійно перевіряти, чи підтримує архітектура ці цілі

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

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

Джерело: Форд Н, Найгард М, де Ора Б, 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>

*

*