Мифический человеко-месяц или как создаются программные системы - Фредерик Брукс 29 стр.


Определение топологии сети, указание зависимостей в ней и оценивание путей заставляют выполнить большой объём очень конкретного планирования на самых ранних стадиях проекта. Первая диаграмма всегда ужасна, и для создания второй приходится проявить много изобретательности.

Во время выполнения проекта диаграмма ПЕРТ даёт ответ на деморализующие извинения типа «другая часть тоже запаздывает». Она показывает, когда необходимо развить энергию, чтобы увести свою часть работы с критического пути, и подсказывает способы наверстать потерянное время в других частях.

Под ковром

Когда менеджер низового звена видит, что его маленькая команда отстаёт, он не склонен бежать к начальнику со своим горем. Возможно, команда сумеет наверстать время, либо он сможет что-нибудь придумать или реорганизовать для решения проблемы. Зачем же беспокоить этим начальника? До поры до времени это допустимо. Для того и существуют менеджеры низового звена, чтобы решать такие проблемы. А у начальника достаточно других забот, требующих его вмешательства, чтобы искать новые. Так вся эта грязь заметается под ковёр.

Но каждому начальнику нужны два вида данных: информация о срывах плана, которая требует вмешательства, и картина состояния дел, чтобы быть в курсе. [73] С этой целью он должен знать положение дел во всех своих командах. Получить правдивую картину нелегко.

В этом месте интересы менеджера низового звена и начальника вступают в противоречие. Менеджер низового звена боится, что если он доложит начальнику о возникшей у него проблеме, тот возьмётся за неё сам. Его вмешательство отнимет у менеджера его функции, уменьшит его власть и нарушит другие его планы. Поэтому, пока менеджер считает, что может сам решить проблему, он не докладывает о ней начальнику.

У начальника есть два способа заглянуть под коврик. Использовать нужно оба. Первый — уменьшить конфликт ролей и стимулировать открытие информации. Второй — сдёрнуть коврик.

Уменьшение конфликта ролей.В первую очередь начальник должен провести различие между данными и действиях и данными о состоянии дел. Он должен приучить себяне вмешиватьсяв проблемы, которые могут решить его менеджеры, иникогда не вмешиватьсяв проблемы непосредственно во время изучения состояния дел. Я знал одного начальника, который неизменно снимал трубку и начинал давать указания, не дочитав до конца первый абзац отчёта о состоянии дел. При таких действиях вам обеспечено утаивание полных данных.

Напротив, если менеджер знает, что его начальник воспримет отчёт без паники или вмешательства, он будет давать честные оценки.

Весь этот процесс идёт успешно, если начальник подчёркивает, что совещания, заслушивания и конференции носят характеризучения состояния дел , а непринятия мер по проблемам , и ведёт себя соответствующим образом. Очевидно, можно созвать совещание по принятию мер по результатам заслушивания о состоянии дел, если возникает ощущение, что проблема вышла из-под контроля. Но тогда по крайней мере все знают, что происходит, и начальник дважды подумает, прежде чем взять управление на себя.

Сдёргивание коврика.Тем не менее необходимо иметь способ узнать истинное положение дел независимо от наличия стремления к сотрудничеству. Основой такого изучения служит диаграмма ПЕРТ с часто расположенными вехами. В большом проекте можно потребовать еженедельного изучения какой-либо части её, рассматривая всю диаграмму раз в месяц или около того.

Главным документом является отчёт с указанием вех и степени их фактического выполнения. (На рисунке 14.1 показан фрагмент такого отчёта.) Он может показывать отставание по некоторым позициям и служить в качестве повестки дня совещания.

Всем известны выносимые на него вопросы, и соответствующие менеджеры готовы доложить о причинах отставания, предполагаемых сроках завершения, принимаемых мерах, а также требуется ли помощь от начальника или других групп, и если да, то какая.

В. Высоцкий из Bell Telephone Laboratories добавляет следующее наблюдение:

Для меня оказалось удобным иметь в отчёте о состоянии дел две даты — «плановую» и «оцениваемую». Плановые даты принадлежат менеджеру проекта и представляют собой последовательный план работы для проекта в целом, a priori являющийся приемлемым. Оцениваемые даты принадлежат менеджерам низшего звена, в переделах компетенции которых находятся рассматриваемые участки, и представляют их мнения о сроке фактического наступления события при имеющихся у них ресурсах и получении входных данных (или обязательствах об их поставке). Менеджер проекта должен осторожно относиться к оцениваемым датам и стремиться к получению точных, неискажённых оценок, а не утешительно-оптимистичных или перестраховочно-консервативных данных. Если эта позиция утвердится в умах, то менеджер проекта действительно сможет предвидеть, что он попадёт в беду, если не предпримет каких-нибудь мер. [74]

Создание диаграммы ПЕРТ является обязанностью начальника и подотчётных ему менеджеров. Внесение в неё изменений, пересмотр и подготовка отчётности должны осуществляться небольшой (от одного до трех человек) группой, как бы продолжающей начальника. Такая группапланирования и контролянеоценима при работе над большим проектом. Она не обладает иными полномочиями, кроме как требовать от менеджеров низового звена предоставления сведений об установке или изменении вех и их достижении. Поскольку группа планирования и контроля осуществляет всю бумажную часть работы, нагрузка на менеджеров низового звена ограничивается самым важным — принятием решений.

У нас была умелая, энергичная и дипломатичная группа планирования и контроля, возглавлявшаяся А. М. Пьетрасанта (A. M. Pietrasanta), проявившим значительные изобретательные способности для разработки эффективных, но ненавязчивых методов контроля. В результате его группа пользовалась широким уважением и хорошим отношением. Это немалое достижение для группы, которая по природе своей должна вызывать раздражение.

Выделение небольшого числа подготовленных работников в группу планирования и контроля приносит большую отдачу. Для успешного завершения проекта это значительно лучше, чем если бы они непосредственно занимались разработкой программных продуктов, так как группа планирования и контроля стоит на страже того, чтобы неощутимые задержки стали видимыми, и сигнализирует о критических положениях. Это система раннего обнаружения потери года, происходящей день за днём.

Глава 15

Обратная сторона

Чего мы не понимаем, тем не владеем.

ГЁТЕ

О, дайте мне выступить комментатором,

Скользящим по поверхности и будоражащим умы.

КРАББ

Компьютерная программа — это послание человека машине. Строго выстроенный синтаксис и тщательные определения нацелены на то, чтобы бездумной машине стали понятны намерения человека.

Но у написанной программы есть обратная сторона: она должна быть в состоянии рассказать о себе пользователю-человеку. Это требуется даже для программы, написанной исключительно для собственных нужд, поскольку память может изменить автору-пользователю, и ему потребуется освежить детали своего труда.

Насколько же более необходима документация для программы общего пользования, пользователь которой отдалён от автора во времени, и в пространстве! Для программного продукта сторона, обращённая к пользователю, столь же важна, как и сторона, обращённая к машине.

Назад Дальше