Boroda aka Hamster (fantaseour) wrote,
Boroda aka Hamster
fantaseour

  • Mood:
  • Music:

Обещанные мысли повзрослевшего программиста

Наверное часто приходилось слышать слова вроде «эти компьютерщики ваще ни х. не делают, чем они там занимаются», «опять программеры сорвали все сроки, — ну за что этих яйцеголовых уважать» и до курьезного «да чтобы напечатать 10 страниц текста моей машинистке потребуется пара часов».

Да, да. Программеры — паталогические оптимисты насчет сроков, и что еще хуже, они увлекаются какой-нибудь второстепенной фичей, угрохав кучу времени и ресурсов получают гениальный mp3 драйвер с хитрым энкодером, для какого-нибудь почтового клиента (чтобы проигрывать музон внутри письма), причем сам клиент остался только на бумаге. Это специфика нашей работы. Это должен понимать менеджер софтварных проектов. Для работы с этими аномалиями есть специальные методы работы, методики, являющиеся выводами из чьих-то неудач.


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

Парадоксально, но факт, — управление IT-проектом вещь более социальная, нежели техническая. Тут на первом плане выступает правильная организация труда, методики планирования (ха — казалось бы — чего проще, написал план и работай), методики самоконтроля.

Наверное пришло время мне это осознать. Раньше я то-ли не понимал важности такой науки, может был сосредоточен на программировании и ничего не замечал. А может просто надо было дозреть.

На эту тему, что надо прочитать, это конечно Ф. Брукс. Классическая книга по управлению проектами, написанная еще в 70-х и до сих пор абсолютный хит. Надо сказать, читать ее не просто. Книгу эту я прочитал полтора года назад, также, как и книгу по методикам экстремального программирования. Было интересно, но как-то не очень понятно, как применять эти знания в жизни. Да и в конце концов, я не менджер проектов, а обычный программер.

Я хочу рассказать, об одной методике, которая касается самого младшего звена, а именно того человека, который собственно пишет программы. Автор ее, программист, когда-то писавший VBA для Excel.

Конспективно суть статьи такова:

1. Тратится довольно много времени на детальный план работ -- на этот план можно убить и неделю и больше.

Весь проект должен обязательно разбит на задачи, выполнение которых занимает не более 10 часов. Каждая задача имеет приоритет и кол-во часов отводимое на эту задачу.

2. Все это суммируется, умножается на пи и заносится в раздел «буфер» (откуда потом будем брать время на задачи, которые выбиваются из плана). Не забываем про отладку и интеграцию — тоже детальный план

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

4. По выполнении задач рядом с оцененным времени каждой задачи ставим затраченное время на выполнение. И текущую оценку скольео времени еще надо. Такой подход позволяет в будущем более аккуратно планировать сроки выполнения.

5. Все новые идеи стараемся уносить в раздел «следующая версия продукта».

6. Также поступаем с задачами с низким приоритетом, когда выбиваемся из плана работ.

В результате имеем близкий к действительности план + заказчик(начальник) видит, как идут дела в проекте реально.

Ключевые места — каждый таск не превышает 10 часов, если он больше, его следует разделить. Не берем новые идеи и выбрасываем некритичные задачи, бо то, что времени много — это иллюзия. Его мало. Точное время выполнения проекта по разработке назвать нельзя, но пользуясь этой методикой можно не утонуть.

Надо сказать я жадно проглотил все статьи на этом сайте. Весьма рекомендую. Жаль, что на работе мне не пришлось видеть применение таких методик. Однако я решил просто пробовать на себе, ибо не мне перестраивать мою контору :)

Думаю, что кроме правила 80/20 (20% персонала делает 80% работы) есть еще хорошее правило 10%. Это число, как раз та величина, которую можно от себя легко оторвать (не даром история знает всякие разные десятины :) ). Это мое эмпиричиское правило такое: «Нельзя резко улучшить ситуацию более, чем на 10%. Нельзя поднять производительность труда за счет овертайма (некоторые книжки говорят, что предел овертайма 20%) и прочего, нельзя дисциплинировать себя более, чем на 10%, нельзя сразу уменьшить свои расходы больше, чем на 10%». Это правило касается именно действий на ближайшую перспективу «здесь и сейчас». Также нельзя и внедрив какие-то методики, сразу решить все проблемы. Но плавно и постепенно решать проблемы планирования, организации рабочего времени, а также производительности вполне можно.

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

Список литературы:
1. Статья "Безопасное планирование проектов" (Painless Software Schedules) Джоэл Спольски. (англ.)
2. Серия статей для начальника склада, перекавалифицировавшегося в менеджера софтварных проектов, на сайте Ашманов и партнеры (рус)
3. Ф. Брукс. "Мифический человеко-месяц". Юбилейное 20-е издание (pdf, рус) 1.6 Mb
4. Tom DeMarco & Timothy Lister. "Peopleware. Productive Projects and Teams 2nd ed." (pdf, англ) 2.6 Mb
5. Эдвард Йордан "Смертельный марш". Полное руководство для разработчика программного обеспечения по выживанию в безнадежных проектах. (звучит заманчиво, но книжка водянистая, тем не менее, прочитать стоит) (pdf, рус) 1.4 Mb
Tags: development
Subscribe

  • Твиттер и дачинг

    Твиттер в нынешние времена полезная штука -- информация оперативна и противоречива конечно. Я подписан там на разных людей и новости у меня…

  • Сурков

    Что-то захотел посмотреть, что это за человек. Ну мы знаем, да, что он сурковскаяпропаганда и автор рашкованского ада, серый кардинал там и прочая…

  • For the record, политическое

    1. Тут вот, друзья, русскоязычные американцы упрекают, что нам, ватникам, не хочется про политику писать. Им-то вон как хочется. Аж не можется.…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments