Выбрать главу

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

Разумеется, мои утверждения носят достаточно общий характер, и существует множество причин, по которым такой подход может не дать никаких результатов. Интересным, например, является тот факт, что ветераны разработки ПО, покидая большие бюрократические корпорации и создавая новые софтверные фирмы, приносят с собой почти все свои привычки и традиции. С другой стороны, в настоящее время, так же, как и в начале моей карьеры, молодое поколение разработчиков ПО очертя голову бросается в новые проекты, считая 18-часовой рабочий день «отдыхом». Тем не менее, среди всех происшедших драматических изменений я бы особенно выделил характер и темп работы, который народ в Netscape, Microsoft и множестве других организаций называет просто «время Internet». Для предыдущих поколений разработчиков ПО такого понятия просто не существовало, оно является одной из серьёзных причин, порождающих безнадёжные проекты.

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

Литература к главе:

1) Tom DeMarco, Tim Lister. Peopleware. Dorset Publishing, 1987.

2) Tarek Abdel-Hamid, Stuart Madnick. Software Project Dynamics. Englewood Cliffs, NJ: Prentice-Hall, 1993.

ГЛОССАРИЙ, СОКРАЩЕНИЯ

аутсорсинг – передача сторонней организации на договорной основе функций, связанных с информационными технологиями (разработка и сопровождение ПО, эксплуатация и техническое обслуживание систем и др.)

даунсайзинг – разукрупнение компании в целом или отдельных её систем с целью повышения эффективности управления и функционирования

реинжиниринг (бизнес-процессов) – фундаментальное переосмысление и радикальное перепроектирование бизнес-процессов компаний для достижения коренных улучшений в основных показателях их деятельности – стоимость, качество, услуги и темпы (М. Хаммер, Дж. Чампи)

ПО – программное обеспечение

SEI – Software Engineering Institute

CASE – Computer Aided Software Engineering

CMM – Capability Maturity Model – модель зрелости процессов создания ПО (эволюционная модель развития способности компании разрабатывать ПО)

RAD – Rapid Application Development

SA/SD – Structured Analysis/ Structured Design

OOA/OOD – Object Oriented Analysis/Object Oriented Design

Сведения об авторе

Эдвард Йордан, один из ведущих независимых консультантов, является автором нескольких бестселлеров по практике программирования, включая «Подъем и возрождение Американского Программиста» и «Закат и падение Американского Программиста» (Prentice Hall PTR). Он широко известен как разработчик метода структурного системного анализа под названием Метода Йордана, а также как соавтор методологии объектно-ориентированного анализа Коада/Йордона и издатель журнала «American Programmer».