Волченок (volchenok) wrote in mustread,
Волченок
volchenok
mustread

Category:

Deadline. Роман об управлении проектами

Deadline. Роман об управлении проектами Во-первых, я хочу сказать большое спасибо Сашке Максимовой, которая перевела на русский язык эту книгу. Спасибо! :)

Что такое управление (программным, но не обязательно) проектом? Построенный техпроцесс? Налаженная система документооборота и отчетности? Сетевые графики и прочие стандарты управления? В принципе, да – без этого бывает сложно, но это не главное. Главное – это люди. Особенно в разработке программного проекта, где человеческий фактор играет просто ключевую роль. Так считает Том ДеМарко. И я с ним полностью согласен :)

Книга ДеМарко – увлекательный роман о том, как надо управлять проектами - читается на одном дыхании. Несмотря на явную художественность, содержание очень практично и отлично структурировано. В конце каждой главы главный герой – мистер Томпкинс – записывает в свою записную книжку мысли и знания, которые он почерпнул. Эти выдержки можно просто брать в качестве руководства к действию по управлению программным проектом.

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

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

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

Единственный вопрос, который остался для меня неясным: что автор подразумевает под низкоуровневым проектированием как одной из самых важных составных частей разработки? Это что-то вроде досконального описания всей функциональности проекта каким-либо образом? На UML может быть? Или это блок-схемы? Где-то интуитивно я это понимаю, но меня, как практикующего в данной области, интересует простой вопрос: как это сделать? И еще, у меня есть ощущение, что эта идея некоторым образом противоречит многим ставшим модными в последнее время Agile технологиям разработки вроде eXtreme Programming (XP) или Scrum. А может быть и не противоречит… Попробую спросить об этом у самого ДеМарко, надеюсь он ответит :)

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

Том ДеМарко, «Deadline. Роман об управлении проектами», Вершина, 2006, ISBN 5-9626-0132-7.
Tom Demarco, “The Deadline: A Novel About Project Management”, Dorset House Publishing Company, 1997, ISBN 0932633390.

Update: Все-таки Интернет - великая вещь :)

Том ДеМарко мне ответил:

Dear Stanislav Davydov,

Low-level design, as I use the phrase, means determination in
advance of coding of all the modules and all their interfaces to
other modules (both connections and passed and returned data). As I
use the term module, it means a closed subroutine, one that is called
by and returns to its caller. As you can see, this suggests a much
more detailed design in advance of coding than is normally practiced.
What I would specifically discourage is a design step that called out
"high level" modules only, and left it to the coders to decide any
further partitioning they might need.

How you document the modular structure is irrelevant to me;
whatever method you choose is fine.

Here is a test I apply after the code is written. I use a tool to
analyze the code topologically and list all the modules. If it says
there were 500 modules in the code and only 75 in the design, for
example, then I conclude that no low-level design was done.


Best Regards,
t.

Tags: Том Демарко, правильное управление, управление командами
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic
  • 23 comments