загрузка...
загрузка...
На головну

Вимоги до методики вибору архітектури ІС

Я свідомо кажу саме про вибір, а не про розробку архітектури. Розробка архітектури - окреме питання. В даному випадку мова йде про вибір однієї з архітектур-кандидатів.

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

O неможливість оцінити якість розробленої архітектури;

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

O поділ процесів техніко-економічного обґрунтування системи, розробки бізнес-процесів і розробки архітектури системи;

O відсутність прив'язки до бізнес-цілям і цілям використання системи.

В результаті осмислення наявних методик нами були сформульовані наступні вимоги до методики вибору архітектури. Методика повинна:

O відображати зв'язок архітектури та сукупну вартість володіння;

O відображати итерационную природу розробки ІС;

O мати на меті вибір архітектури системи в цілому, а не тільки її програмної складової;

O пов'язувати розробку архітектури, бізнес-аналіз і техніко-економічне обгрунтування в єдиному процесі.

III. «Шари» програмних додатків

концепція шарів (layers) - одна з загальновживаних моделей, що використовуються розробниками програмного забезпечення для розділення складних систем на більш прості частини. В архітектурі комп'ютерних систем, наприклад, розрізняють шари:

O код на мові програмування,

O функції операційної системи,

O драйвера пристроїв,

O набір інструкцій центрального процесора,

O внутрішня логіка чіпів.

У середовищі мережевої взаємодії протокол FTP працює на основі протоколу TCP, який, в свою чергу, функціонує "поверх" протоколу IP, розташованого "над" протоколом Ethernet.

Описуючи систему в термінах архітектурних шарів, зручно сприймати складові її підсистеми у вигляді "листкового пирога". Шар вищого рівня користується службами, наданими нижнім шаром, але той не "обізнаний" про наявність сусіднього верхнього шару. Більш того, зазвичай кожен проміжний шар "приховує" нижній шар від верхнього: наприклад, шар 4 користується послугами шару 3, який звертається до шару 2, але шар 4 не знає про існування шару 2. (Не в кожної архітектурі шари настільки "непроникні" , але в більшості випадків справа йде саме так.)

Розчленування системи на шари надає цілий ряд переваг:

1. Окремий шар можна сприймати як єдине самодостатнє ціле, не дуже піклуючись про наявність інших шарів (скажімо, для створення служби FTP необхідно знати протокол TCP, але не тонкощі Ethernet).

2. Можна вибирати альтернативну реалізацію базових шарів (додатки FTP здатні працювати без будь-яких змін в середовищі Ethernet, по з'єднанню РРР або в будь-який інший середовищі передачі інформації).

3. Залежність між шарами можна звести до мінімуму. Так, при зміні середовища передачі інформації (за умови збереження функціональності шару IP) служба FTP буде продовжувати працювати як ні в чому не бувало.

4. Кожен шар є вдалим кандидатом на стандартизацію (наприклад, TCP і IP - стандарти, що визначають особливості функціонування відповідних верств системи мережевих комунікацій).

5. Створений шар може служити основою для декількох різних шарів більш високого рівня (протоколи TCP / IP використовуються додатками FTP, telnet, SSH і HTTP). В іншому випадку для кожного протоколу високого рівня довелося б винаходити власний протокол низького рівня.

Схема розшарування має і певними недоліками.

1. Шари здатні вдало инкапсулировать багато, але не всі: модифікація одного шару часом пов'язана з необхідністю внесення каскадних змін в інші шари. Класичний приклад з області корпоративних програмних додатків: поле, доданий в таблицю бази даних, може бути відтворена в графічному інтерфейсі і має знайти відповідне відображення в кожному проміжному шарі.

2. Наявність надлишкових верств нерідко знижує продуктивність системи. При переході від шару до шару моделюються суті зазвичай піддаються перетворенням з одного подання до іншого. Незважаючи на це, інкапсуляція нижележащих функцій часто дозволяє досягти досить істотної переваги. Наприклад, оптимізація шару транзакцій зазвичай призводить до підвищення продуктивності всіх верхніх шарів.

3. Однак найважче при використанні архітектурних шарів - це визначення вмісту і меж відповідальності кожного шару.

IV. Архітектури інформаційної системи:

визначення біорегіона «-- попередня | наступна --» Архітектура інформаційної системи типу «файл-сервер».
загрузка...
© om.net.ua