Окупність як фактор проектування

Джордж Маламідіс

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

Одним з показників успішності інвестицій є окупність (ROI, Return on Investment) Наприклад: ми припускаємо, що додаткові витрати часу на створення тестів зменшать кількість помилок в наступному випуску програми Розмір інвестицій в цьому випадку визначається часом, витраченим на написання тестів, а прибуток – це час, заощаджений на виправленні помилок у майбутньому, плюс задоволення клієнтів, що працюють з більш якісною програмою Припустимо, в даний час 10 з 40 робочих годин на тиждень витрачаються на виправлення помилок За нашими оцінками, виділивши 4 години на тиждень на тестування, ми скоротимо витрати часу на виправлення помилок до 2 годин на тиждень, фактично отримавши 8 вільних годин, які можна вкласти в щось інше Прогнозована окупність становить 200%1 (8:00, зекономлених на виправленні помилок, ділимо на 4 години, витрачених на тестування)

Насправді ефект буде не настільки сильним: перемикання між завданнями саме по собі забирає у розробника суттєвий час, тим самим знижуючи його продуктивність – Прямуючи науч ред

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

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

Джордж Маламідіс (George Malamidis) – розробник програмного забезпечення в компанії TrafficBroker (Лондон) До цього був провідним консультантом і ведучим технічним фахівцем в ThoughtWorks Брав участь у розробці та впровадженні критичних додатків в різних областях, від мережевих і фінансових додатків до Web 20

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

*

*