Многократно убеждался, что существует очень простое необходимое (но недостаточное) условие успешности программного проекта: в проекте должен быть один человек (назвоем его архитектор), который с самого начала держит практическии весь проект в голове и знает, что будет сделано (включая детали)....
Многократно убеждался, что существует очень простое необходимое (но недостаточное) условие успешности программного проекта: в проекте должен быть один человек (назвоем его архитектор), который с самого начала держит практическии весь проект в голове и знает, что будет сделано (включая детали). Никаких технологий обретения этого понимания не существует - оно является результатом инсайта. Конечно, опыт и владение предметом сильно способствует.
Промышленные технологии разработки (CASE и др.) отнюдь не избавляют от необходимости иметь архитектора, проникающего в суть вопроса путем инсайта. Они могут только помочь в организации отчуждения и объективизации знания о проекте, изначально существующего в голове архитектора.
Определить, является ли лидер проекта архитектором - очень просто. Задайте ему вопрос о том, как будет сделано какое-нибудь тонкое место. Если он ответит - "Делать будем так.." или "Существует несколько вариантов (перечисление), какой будем использовать - решим потом.", то это он (архитектор).
Если человек отвечает "Этими вопросами мы будем заниматься на этапе технического задания (технорабочего проекта и др.)", или "Этот вопрос в кометенции Василий Ивановича, но его сейчас нет..." то это не архитектор, это менеджер.
Если в проекте нет архитектора, проект обречен. Причем успешно могут готовиться все отчеты, писаться программы и др. Но никогда ничего не заработает - процесс не склеится.
(
опубликовано 12.05.2001)
Обсуждение (всего 5 реплик, последняя - 11.03.2003 09:40)Настройка
Только прект Гейтса - не Windows, а Microsoft как таковая. А тут, будьте уверены, он либо сам знает все тонкости,либо знает, кто за них отвечает.
Кстати, совершенно не обязательно знать действительно все тонкости. Нужно знать принципиальные тонкости, общую архитектуры, кто за что отвечает, и каково состояние дел у них.>>>>
Неужели все проекты настолько просты???? НЕ ВЕРЮ, что Билл Гейтс (хоть он и называет себя Главным Архитектором) ответит на любой вопрос о тонкостях созданного им монстра - Windows. Думаю, он стал богатеть только когда перестал программировать и планировать, а научился руководить другими людьми :(((>>>>
Личность в проекте должна быть это однозначно, иначе проект просто некому толкать. Если вы ждёте от проекта отдачи, то этой личностью нужно стать самому. Главное владеть знаниями на грани технологии и предмета автоматизации, наростить которые можно в рамках проекта. К сожалению часто приходится сталкиватся с назначенными "лидерами" и "совковским менеджментом". В основном эти двое и не дают настоящему лидеру проекта его довести до логического финала.>>>>
Ведущим программистом менеджер может и не быть. Но обязан понимать в программировании - это точно. Потому что без этого он не сможет нормально контролировать работу своихз подчиненных.>>>>
АБСОЛЮТНО ВЕРНО. Я бы уточнил в применении к проектам, которые должны завершиться программным продуктом: этот человек (руководитель, лидер...) должен быть также и по мере необходимости аналитиком, и ОБЯЗАТЕЛЬНО ведущим программистом. Множество программных проектов проваливается именно потому, что их менеджеры (лица, принимающие решения) сами ни бум-бум в программировании (то есть САМОМ ГЛАВНОМ в проекте) и сваливают окончательный проект (или, как они выражаются, "кодирование") на негров-программистов, которым наплевать на результат (и которые его не представляют). Поэтому если вам в рук. программного проекта нанимаются нахрапистый мужик, хвалящий свои менеджерские качества, и толковый скромный парень из студентов (дядька из программеров етс), выберите второго - хоть что-то получите.