Page 92 - 4566
P. 92
KSLOC слід чекати, що продуктивність знизиться в 1,6–3,0
раза. [8]
Великий обсяг коду так само вимагатиме більшої
кількості людей на його супровід. Навіть якщо виявиться
лише декілька критичних помилок на рік, то для того щоб їх
виправити у прийнятні терміни (наприклад, за 24 години) у
продукті загальним обсягом 1000 KSLOC, один програміст з
цим не упорається. Це пов'язано з тим, що для того, аби
виправити помилку в обмежені терміни, необхідно
оперативно виявити і усунути її причину. А для цього треба
добре знати архітектуру і код програмного продукту. Щоб
ефективно супроводжувати продукт подібного обсягу
необхідно мати в резерві приблизно 20 розробників, тому що
50 KSLOC - це граничний обсяг коду, який може утримувати
в голові і ефективно супроводжувати одна людина. І ще
проблема: чим цих людей займати у вільний від виправлень
помилок час, якщо немає нових проектів розвитку продукту.
Наступний важливий показник стану проекту – це
середня продуктивність відношення поточного розміру
проекту до фактичних витрат за проектом. С. Макконнелл [8]
наводить такі показники (мінімальне, максимальне і середнє
значення) продуктивності в KSLOC на один чол.*міс.
фактичних витрат для стандартних типів проектів об'ємом в
100 KSLOC:
– 300-7000 (800) – інтранет-система;
– 200-7000 (600) – бізнес-система;
– 100-2000 (300) – Інтернет-система;
– 50-600 (100) – системне ПЗ, телекомунікації;
– 20-300 (50) – системи реального часу.
Висока продуктивність у проекті – це далеко не
завжди добра ознака. Іноді, внаслідок активного
застосування методу «copy+past», середня продуктивність у
розробці бізнес системи досягає 2000 КSLOC/осіб.*міс.
Проте для реалізації необхідного функціоналу написано в 3–
92