Ваша система стане успадкованої – враховуйте це при проектуванні

Дейв Андерсон

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

• Ясність: має бути відразу зрозуміло, яку роль відіграє той чи інший компонент або клас

• Зручність тестування: наскільки легко перевірити вашу систему

• Коректність: чи працює система так, як було задумано Виключіть виправлення, що вносяться на швидку руку

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

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

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

Дейв Андерсон (Dave Anderson) – головний спеціаліст з розробки ПЗ в компанії Liberty IT (Белфаст), яка постачає IT-рішення для компанії Liberty Mutual, що входить до списку Fortune 100 Дейв володіє більш ніж 10-річним досвідом розробки ПЗ для багатьох провідних IT-компаній в різних галузях і країнах

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

*

*