| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > УП: Общие вопросы > Управление проектом для чайника |
| Автор: Kefir 28.6.2007, 10:14 |
| В общем немного о сути моей ситуации на данный момент. Я всю свою сознательную жизнь программист. Причём 99% времени я работал / работаю один (такой вот программист-одиночка). Следовательно, принципы работы в команде мне неведомы. На данный момент я работаю в фирме, где являюсь единоличным ИТ-правителем. Очень скоро надо начинать довольно объёмный проект. Ясно одно - один я не справлюсь. Значит надо набирать команду (от 3х до 5ти человек). Поскольку я очень хорошо знаю с чем мы будем иметь дело (имеется в виду суть проекта) меня подрядили на роль руководителя этого самого проекта. Не забываем о том, что я в первый раз буду этим заниматься и к тому же никогда не работал в команде и не видел как вообще оно делается. Моя задача на данный момент - за кратчайшие сроки узнать как можно больше о том как организовать работу над проектом. Вопросы примерно такие: 1. С чего вообще начать делать проект? Например что идёт первым - набор людей, а потом составление некоего плана проекта или наоборот? 2. Как вообще пранировать проект по уму? Какие инструменты применять? Диаграммы? Какой-нибудь UML? MS Project? 3. Каким образом организовать работу? Как распределять задания? Как потом всё это (то что программисты написали) собирать воедино и как давать задания так, чтобы потом не было конфликтов в коде (то есть как описать программисту что от него конкретно надо - говорить что тебе, мол, надо написать класс с методами X(), Y(), Z() которые возвращают int, string и void?)? 4. Только недавно услышал о таких вещах как RUP, XP, Agile, AgileUP etc. Оно мне вообще надо? Если да, то как выбрать то что надо? 5. Как собственно оценить сколько и каких ресурсов надо? В общем, умоляю вас, при ответе на мой пост имейте в виду что вы объясняете всё мамолетнему ребёнку который ни черта не смыслит в этом. |
| Автор: Kefir 28.6.2007, 14:19 | ||||
| Вообще проект будет длится около 3-4 месяцев. наверное, это подходит под определение "кратковременный". однако не факт, что потом этот же самый проект не станет развиваться дальше. больше могу сказать - я почти уверен, что на этом дело не закончится и надо будет продолжать работать командой. посмотрю в ближайшее время. пока только заглянул - место очень смахивает на блог. заметки "где-то там" (в блоговых постах), я так понимаю?..
То есть получается так - перед тем как что-то писать надо в подробном виде расписать где какие части, модули, функции, классы и интерфейсы будут делать?
Ок. Спасибо. Просто умные люди эти слова употребляют - думал, что, может и мне это надо. И вот ещё что. Вот чисто на данный момент, когда нет людей, нет ничего. Есть только понимание того что надо сделать этот проект и как он должен выглядеть. Я так понимаю что сейчас самое время самому начинать примерно прикидывать на какие части прект можно разбить и как будет выглядеть код и структура программы. Так? |
| Автор: nornad 28.6.2007, 15:16 | ||||||||
За такой срок уже можно сильно разругаться с теми, кто тебе не нравится в общении, так что лучше сразу подыскивать тех, с кем сможешь работать. да
Примерно так. Этот процесс называется проектировкой.
Не всегда эти слова употребляют те, кто использует эти методы. Чаще те, кому понравилось их описание, но кто при этом сам не пробовал. Употреблять сии слова можешь, но хвататься за всё что ни попадя не стоит. Сначала постарайся наладить нормальную работу команды (чтобы она работала как команда, а не как кучка самолюбующихся индивидуалов), а потом уже читай про разные методы и примеряй их на себя и команду. В зависимости от отношений с командой, можно даже обсудить, какую методу попытаться внедрить у себя.
Видимо, я тебя обрадую одной новостью - даже если ты сейчас наберёшь людей, то проектировать придётся всё равно большей частью тебе. Иначе можно получить не совсем (или "совсем не") то, что хочешь. Ты сейчас лучше любого, кого подберёшь, знаешь, что надо сделать. Значит, тебе и проще определиться, как это делать. С другой стороны, если среди найденных людей будет кто-то, кто хорошо умеет проектировать, можно привлечь его к этому делу. Но не спихивать всё на него - просто проектировать вместе. |
| Автор: Kefir 28.6.2007, 15:33 | ||
Итак. Давайте разберёмся с проектировкой. Как эту проектировку осуществлять? Надо ли юзать UML? Там всякие классовые диаграммы, датафлоу, стэйт и т.д.? Или просто на бумажке? Т.е. я то в голове понимаю что должно получится, может быть даже могу кое-как представить как это надо сделать, а вот как это всё записать? С чего начинать продумку? ты меня успокоил
ага. я в принципе смирился с этим. |
| Автор: nornad 28.6.2007, 16:59 |
Лично я предпочитаю проектировать на бумажке, а потом уже вносить в электронный докУмент в том или ином виде. Никогда не пробовал рисовать UML диаграммы и явно не доверяю генерации кода на их основе. Считаю, что они малополезны. Но это моё дилетантсткое мнение (я же не разбираюсь в UML - потому и дилетантское), а кому-то такое удобно. Если ты хорошо владеешь UML, можешь использовать его при проектировании и описании, но если нет, то не стоит пока что заморачиваться. Как я уже говорил, тебе сейчас важнее наладить работу в целом. Сделать так, чтобы команда работала и работала на тебя. С описания того, что должно получиться. Потом постепенно начинаешь описывать, из чего оно должно состоять (отдельные модули проекта) и в итоге детализируешь до той степени, на которой задача будет ясна хотя бы твоим подчинённым. Если эту проектную документацию будешь показывать заказчику, надо позаботиться, чтобы и ему она была понятна. И еще - постарайся сначала всё описать и только потом раздавать задачи для кодирования. Опыт показывает, что начало написания до завершения проектировки приводит в конечном итоге к несогласованности модулей и увеличению сроков и нервного напряжения. |
| Автор: arilou 30.6.2007, 22:02 | ||||||||
Скажу сразу, что ситуация у тебя сложная, и чтобы выйти из нее с честью, придется попотеть.
Начать надо с определения и документирования требований, попертереть с будущеми юзерами, записать все. Потом эти требования надо превратить в юз-кейсы (http://en.wikipedia.org/wiki/Use_case).
Чтобы запланировать, тебе надо оценить трудозатраты. Дело это непростое, но теория есть. Юз-кейсы можно обработать при помощи Use Case Points (http://www.codeproject.com/gen/design/usecasepoints.asp) и получить человеко-часы. При этом не забудь сверху добавить два раза по 20% на менеджмент и тестирование. После этого можно подумать о составе команды. Конечный план можно, конечно, в занести в MS Project, но Джоел советует делать это в MS Excel (http://www.joelonsoftware.com/articles/fog0000000245.html)
Тут придется разрисовать хотя бы высокоуровневую архитектуру приложения, выделить модули, которые можно делать параллельно, определить интерфейсы, по которым они будут между собой взаимодействовать.
Трудно сказать. Тебе и так хватит выше крыши матчасть поднимать. Попробуй почитать про Agile, получить понятие об итерационной разработке. См.выше. Удачи! Будут вопросы -- обязательно задавай, поможем! PS. И будь готов, что отныне кодить ты будешь меньше, чем раньше - теперь ты ПМ и тим-лид. Твоя основная задача - это чтобы команда работала как единое целое. |
| Автор: Kefir 30.6.2007, 22:48 | ||||
это я и так понимаю. высказал начальству опасения в связи с этим и получил в ответ "ничего страшного, человек ты ответственный, способный. всё у тебя получится". будущие юзеры - всё население столицы эстонии, так что требования рождаются исключительно в нашей же фирме (сразу скажу, что менть их нельзя ибо в они оговорены в договоре с городом). насчёт юзкейсов - их надо вообще очень подробно писать. например, нахождение бара в каталоге программы можно осуществить а) при помощи браузинга категорий в каталоге и б) при помощи поиска (по имени, например). Для этого надо два юз-кейса или всё-таки один? Ибо вроде цель то одна, но методы достижения разные. обязательно почитаю.
Начал изучать Крэга Лармана - "Применение UML и шаблонов проектирования". Вроде книга именно про планирование проекта (AgileUP). Вижу много новых, порой непонятных слов Ох не беспокойся. У меня всё равно лучшего источника живой инфы нет чем винград (живая информация - то биш не книжки, а человеки). Так что никуда я не денусь )) |
| Автор: arilou 30.6.2007, 23:22 | ||||||
разные юз-кейсы. лучше писать подробно, чтобы меньше разночтений было.
но это не уменьшает важности их документированися. в идеале, у тебя должна быть таблица в которой каждое требование приводит к одному или нескольким юз-кейсам.
если честно, не читал, но по названию связи с Agile не вижу |
| Автор: Kefir 1.7.2007, 00:50 | ||||
ок. учту. да, само собой. я просто для того, чтобы ситуацию больше раскрыть )
там на примере agile рассказывают как проходят начальная стадия (фаза) и стадия развития. |
| Автор: JUmPER 2.7.2007, 13:28 |
| именно этот случай. http://www.books.ru/shop/books/309225 |
| Автор: ida 2.7.2007, 14:32 |
| Kefir, а за каким фигом вы согласились руководить?... Раз, как сами признаете, всю жизнь были программистом-одиночкой. Что вами двигало? Почему вы не отказались? |
| Автор: chief39 3.7.2007, 23:56 | ||
Как минимум - попробовать. И правильно Чтоб сказать что тебе не нравится молоко, надо хоть раз попробовать его вместо кефира |
| Автор: Kefir 4.7.2007, 08:15 | ||
| ida, на ваш вопрос ответил chief39, причём очень точно Добавлено через 4 минуты и 25 секунд JUmPER, сейчас читаю http://www.books.ru/shop/books/24579. Прямо как будто специально для меня писали. В частности отрывок из аннотации:
Добавлено через 5 минут и 46 секунд ida, и ещё то обстоятельство, что такие предложения мне делают нечасто. а значит надо хватать этот случай. |
| Автор: ida 4.7.2007, 08:22 |
| chief39, мне вот не надо пробовать поруководить, чтобы знать, что я этим заниматься не буду. Странно, да?.. вы и кипяток всегда на вкус пробуете, чтобы убедиться, что горячий? Зачем хватать случай, если он не ваш?... Была классная книга, к сожалению не помню названия, но попробую найти. Об уровнях компетентности. Так вот там очень внятно объясняется, в каких случаях и почему рядовой сотрудник руководить НЕ МОЖЕТ. Ваши вопросы иллюстрируют как раз такой случай. Успешные руководители получаются из тех, кто к моменту занятия руководящей должности внутренне готов руководить и знает, как он будет это делать. Т.е. выработал некоторые принципы. Знает, что правильно и чего делать нельзя. Вы похоже этого не знаете. И тут книги вряд ли помогут. Один из ключевых моментов, по которому это можно определить и который говорит не в вашу пользу - то, как вы оказались в данной ситуации, как вы это выше описали (т.е. по сути почти бессознательно). Очень жирный минус. В общем, дело хозяйское, но прогнозы однозначно неблагоприятные. Время покажет... Сейчас внимательно прочитала тему и решила предупредить - судя по всему, вы очень молоды (если информация в инфе верная) и ваши новые обязанности не совсем соответствуют вашему опыту. Если это так, то описываемая ситуация может быть искуственно созданной для проекта, который должен быть завален (который руководству выгодно завалить). Так делают - назначают ответственным какого-нибудь мало подходящего для этого человека с тем, чтобы он гарантированно не справился с задачей, чтобы потом сделать из него козла отпущения. Подумайте на досуге. Я не утверждаю, что в вашем случае это так, но это ОЧЕНЬ распространенный сценарий, и в вашем случае некоторые признаки этого есть. |
| Автор: Kefir 4.7.2007, 08:41 |
нелепая аналогия, ибо температуру можно определить намного более безопасным методом (ну там, рукой до чайника дотронуться). а речь была о вкусе, который кроме как языком не попробуешь. во-первых, случай мой. потому что он предоставляется мне. во-вторых, давайте не будем за меня судить мой случай или нет. в-третьих, я в этой теме не спрашивал оценки моих поступков - я спрашивал с чего начать конкретно само управление. так что давайте укротим ваше желание оценить всё и вся. если у вас есть что написать по существу вопроса - пожалуйста, буду рад послушать. |
| Автор: arilou 4.7.2007, 09:16 | ||
Добавлено через 1 минуту и 58 секунд
|
| Автор: chief39 4.7.2007, 11:58 | ||||||
Нет Я точно знаю что врачом не буду А вот насчёт многого другого я не уверен. Думал что авокадо и манго не понравятся. Попробовал - авокадо - фе, манго - ничё так. Вот и всё Программером я не хотел быть. Попробовал. Понравилось. На МП согласился ради интереса и опыта(поглядеть да попробовать) - это чуть ближе мне оказалось. Всё-таки не такой я и фанат программинга :(((
У меня отличный пример есть. Я писал в каком-то топике. Парень только после института. Назначил его тимлидом. Он не ожидал вообще - программил себе понемногу. Честно? - наверное лучший из моих тимлидов. Кстати, в островках сопротивления типа Бреста, Аджимушкая и мелких застав из зелёных лейтенантов выходили порой наилучшие командиры на тот момент. Ещё чуть-чуть опыта - и тут уже трудно будет судить... Точно. А рядовой сотрудник - это сотрудник, который хочет быть рядовым.
Всех он не выработает без "попробовать" А что он увидел со стороны, прочитал, домыслил - спорное дело. Если прочитать книги, подумать, "выработать" что-то своё абстрактное, а потом руководить - может, может. Но если начинаешь руководить, читаешь то, что нужно, знаешь зачем оно тебе нужно и чего надо достичь - это вариант получше. ИМХО. |
| Автор: ida 4.7.2007, 13:01 |
| arilou, я предупредила человека от наступления на грабли. Наступать на грабли очень мужественно. Но многим, чуждым героизму, удается этого избегать. chief39, я поняла тебя. А ты меня понял?... |
| Автор: nornad 4.7.2007, 15:24 | ||
А зачем предупреждать? Человек явно описал ещё в первом посте, что он не может отвертеться от управления командой. Одному проект не поднять, а сделать его надо. Надеюсь, уважаемая ida помнит одну знаменитую присказку - "если не мы, то кто?". Просто-напросто, человек радеет за своё дело и не уклоняется от ответственности. При желании уклониться можно было бы просто всех послать и сказать "не буду", но не все люди сделаны из такого теста. Добавлено через 53 секунды В общем, я так понимаю, диспут ушёл явно в сторону от темы. Прошу прощения за оффтоп. |
| Автор: chief39 4.7.2007, 16:04 |
Да Но тем не менее - я его поддерживаю в этом начинании |
| Автор: Bose 13.7.2007, 17:52 | ||
ida, ну что вы в самом деле говорите? Откуда Вам сейчас знать, что получится у Kefirа. Зачем заранее настриваться на неудачу, что за декаденство? К тому же это совершенный оффтоп. Человек спрашивает у нас не о том, как отвертеться от роли руководителя, а о том как вести проект более эффективно. Начало обсуждений прочитал с большим удовольствием. Модератор, пожалуйста, почистите тему. |
| Автор: ida 25.7.2007, 08:15 | ||
В особенности предыдущее сообщение. Человек У МЕНЯ ничего не спрашивал. Он попросил совета. Я дала тот совет, который следовал из моего опыта. Вы могли бы дать свой. Однако я что-то его не вижу... |
| Автор: chief39 25.7.2007, 13:08 | ||||||||
Нууу.. он просил нечто другое
а не
Похоже на
|
| Автор: ida 26.7.2007, 08:07 |
| chief39, настроек вы тут без меня насоветовали. Я лишь внесла баланс в вашу систему. |
| Автор: Shiny 10.12.2007, 14:30 |
| Заинтересовалась темой управления проектов... Уважаемый автор топика, как Вы там? |
| Автор: arilou 10.12.2007, 23:03 |
праздный интерес или как? |
| Автор: Shiny 11.12.2007, 11:58 |
| arilou, даже не знаю как корректно ответить... Сейчас я аналитик, но кто знает, кто знает... |
| Автор: ida 18.12.2007, 13:39 |
| Если хотите распрощаться с регулярной половой жизнью, восьмичасовым сном, здоровьем и хорошим настроением - то вперед, на баррикады! |
| Автор: EvgenZ 27.11.2008, 21:29 |
| Kefir, да это отлично на самом деле. |
| Автор: Wally 22.9.2009, 02:42 |
| А книжки не подскажите в эл варианте или так...оч хотелось бы почитать накануне...а то уже и от меня требуют чегото подобного. |
| Автор: bilbobagginz 13.10.2009, 11:56 |
на http://www.amazon.com и в русских книго-магазинах большинство книг продаются в эл. варианте. Добавлено через 2 минуты и 54 секунды кстати http://www.amazon.com/Herding-Cats-Primer-Programmers-Lead/dp/1590590171/ref=sr_1_1?ie=UTF8&s=books&qid=1255424181&sr=8-1 была написана не "Рейнвортером" а Рэйнвотером. |
| Автор: irvinkn 10.8.2010, 20:59 |
| Интересно чем закончилось... Добавлено через 1 минуту и 52 секунды Интересно чем закончилось.. |
| Автор: Самозванка 19.11.2010, 17:52 |
| и мне интересно |
| Автор: Ch0bits 28.11.2010, 18:04 |
| Есть тут кто? |