Правильная ссылка на эту страницу
http://az-design.ru/Support/SoftWare/l/GlassRob/04h1041.shtml

4.1. “Нельзя управлять тем, что нельзя измерить” — так ли это?

       “Нельзя управлять тем, что нельзя измерить” — один из известных компьютерных и программистских трюизмов.
       Но справедлив ли он? Правда ли невозможно управлять тем, что нельзя измерить?
       Отвечаю: неправда. На самом деле, мы занимаемся этим постоянно. Приведу несколько достаточно общих примеров.
       Начнем с того, что мы уже несколько десятилетий управляем программными проектами, обычно не пользуясь при этом никакими метриками. Конечно, можно говорить о том, что мы делаем это довольно плохо, но несомненно, что даже при “плохом” управлении мы успешно вступили в “компьютерную эпоху”, которая войдет в историю как одно из самых важных предприятий человечества. Могло ли это произойти, если бы мы действительно не управляли тем, что не можем измерить?
       Мы управляем исследованиями и разработками — деятельностью, фактически не поддающейся измерению, и результаты этой работы изменили облик мира.
       Мы управляем руководителями. В иерархически организованной сфере корпоративного управления, чем более высокую должность вы занимаете, тем труднее количественно оценивать работу ваших подчиненных. И даже если вы будете оспаривать успешность наших действий, мы все же делаем это.
       Фактически, самый общий из возможных здесь выводов состоит в том, что, управляя работниками информационной сферы, вы, весьма вероятно, окажетесь в области, где роль количественных методов невелика.
       Поэтому, думаю, справедливо будет сказать, что указанный трюизм не верен. Мы на самом деле управляем тем, чего не можем измерить, и именно сейчас, когда вы читаете эти строки, этим занимаются тысячи руководителей по всему свету.
       Конечно, хотелось бы управлять на количественной основе, имея для этого количественные показатели. Однако и в отсутствие соответствующих метрик мы справляемся с управлением.
       Тут нам, несомненно, повезло. Управление программными разработками десятки лет существует без надежных численных показателей, на которые можно опереться. Программные продукты, благодаря которым наступила компьютерная эпоха, пришли из той области, где не было ни надежных показателей, ни проверенных рекомендаций о том, как их применять.
       Конечно, попытки были. Мой начальник в конце 1950-х пытался реализовать достаточно мощные по тем временам методы измерений для оценки разработки программного обеспечения. Мне было поручено определять и внедрять некоторые метрики. Насколько я припоминаю, они были достаточно детальны и конкретны и далеко не ограничивались привычным заданием контрольных точек, включая измерение таких вещей, как степень подробности комментариев, которыми снабжались все элементы данных в программе, а также единиц измерения этих элементов (думаю, можно назвать их “метриками метрик”).
       Это была одна из первых интересных попыток управлять с помощью количественных показателей, но она оказалась мертворожденной. Большинство коллег этого руководителя не проявили интереса к управлению на таком уровне детализации, и никто больше не применил эти методы. Технические работники не приветствовали то, что казалось им вмешательством руководства в их работу, и всячески уклонялись от нововведений. Этот руководитель ушел на повышение, и вводимые им метрические подходы без него зачахли.
       Лет десять спустя подобные опыты появились и в научных кругах. Мюррей Холстед (Murray Halstead), известный своей работой над созданием компиляторов, сделал примечательную попытку внедрить науку и измерения в программирование, предложив нечто под названием “научное программирование” (software science). Интересно отметить, что примерно тогда же появились термины “программная инженерия” (software engineering) и “программная физика” (software physics). Некоторые из этих понятий сохранились до нашего времени. “Научное программирование”, как известно сейчас многим, занималось оценкой сложности программ путем подсчета количества операторов и операндов.
       Работа Холстеда и его последователей вызвала огромные споры. Допустимость предлагаемых оценок критиковалась как учеными, так и практиками, причем ученые сомневались в правильности рассуждений Холстеда, а практики — в пользе от его изысканий. Страсти разгорались при одном лишь упоминании предмета. На одной из компьютерных конференций при обсуждении научного программирования один видных деятелей программной инженерии обвинил другого в приверженности “астрологии” (имея в виду лженауку). В настоящее время большинство авторитетов в этой области выражает сомнение в ценности этой идеи, но, тем не менее, количество посвященных ей публикаций в научной печати огромно, а также, что любопытно, появился ряд довольно успешных коммерческих продуктов, занимающихся расчетом этих метрик.
       Те, кто оценивает практическое состояние дел, находят, что применение метрик в управлении программными проектами еще не вышло даже из пеленок. На конференциях “Применение метрик в программировании” (“Applications of Software Metrics”) Билл Хетцел (Bill Hetzel), представляющий организацию-спонсора, регулярно докладывает о распространенности метрик на практике и считает ее ужасающей.
       Любопытно, однако, что недостатка кандидатов в метрики нет. В действительности, в области метрик наблюдается раздвоение. Метрики, предлагаемые учеными, включая Холстеда и его многочисленных последователей (Зусе (Zuse) составил едва ли не энциклопедию по этой теме), развивались в одном направлении. Метрики же, предлагаемые практиками и якобы не используемые, довольно успешно развивались, но в другом направлении (для которого типичны работы Роберта Грейди (Robert Grady) из Hewlett-Packard).
       (Разумеется, слово “успешно” в предыдущем абзаце употреблено в ироническом смысле. Как можно считать что-то успешным, если оно малоупотребительно? Однако справедливо будет заметить, что если сегодня какая-либо фирма-производитель программного обеспечения пожелает внедрить у себя программу применения метрик, она найдет богатый выбор как практических, так и теоретических предложений.)
       Проблема тезиса “нельзя управлять тем, что нельзя измерить” связана с вызываемым им фанатизмом. Те, кто глубоко уверовал в полезность метрик, огорчаются отсутствием какого-либо прогресса в этой области. Чтобы привлечь внимание спонсоров и исполнителей, они придумывают броские фразы. Но такие фразы, прежде чем поверить им, следует хорошенько анализировать.
       Можно ли управлять тем, что нельзя измерить? Конечно, да.
       Если нам будет дан выбор, предпочтем ли мы методы управления, основанные на измерениях? И снова ответ утвердительный.
       Мир гораздо сложнее, чем это следует из крылатых фраз, которыми мы его описываем. И вздорность обманчивых фраз вроде “нельзя управлять тем, что нельзя измерить”, отнюдь не стимулирующих поиски, отчасти объясняет нынешнее состояние дел, то есть отсутствие каких-либо измерений.




<<< Пред. Оглавление
Начало раздела
След. >>>

Дата последнего изменения:
Thursday, 21-Aug-2014 09:10:55 MSK


Постоянный адрес статьи:
http://az-design.ru/Support/SoftWare/l/GlassRob/04h1041.shtml