В этом выпуске у нас будет об Agile\Scrum, багтрекинге, системах контроля версий и о начальном этапе разработки приложения. Без советов, выводов и размышлений, просто переложение опыта.
Собрал я людей, раздал задачи, все работают, и всё, вроде, хорошо. И тут у народа стали просыпаться хотелки. Захотели они себя белыми людьми почувствовать, чтобы все цивильно было — и багтрекинг им подавай, и svn…
А чукча не торопится, чукча воробей стрелянный, знает, что не примочками жив проект. Хотя, самого тоже зацепило, хотел уже Git поставить, да никак не собрался. Потом кто-то за 5 минут VisualSVN поставил у которого серверная часть бесплатная, и а в качестве клиента AnkhSVN — бесплатное расширение для VS. Так это хозяйство особо и не пригодилось. Кому-то учетку неправильно настроили, так они файлы по почте гоняли, никому и не сказали. А бейзкампы всякие буржуйскоязычные — так и вообще мне не понравились. А мы хуже, что ли? Свое напишем, и чтобы там внутри можно было сразу и обсуждать, и плюсы\минусы лепить, и зарплату начислять и сразу комментарий оставить в какую сторону копать. Ну и плюс, у нас все работы сразу на корпоративном форуме выкладываются — вот вам и весь багктрекинг сразу в топик.
Ладно, с хотелками порешили, почувстововал я себя большим начальником, решил посмотреть, что другие большие начальники делают. А они, оказывается, методологиями занимаются. Agile — это общий подход, а scrum — одна из его реализаций. Расшифровывать не буду, тем более, статьи на эту тему уже были, да и публика тут считается умной и искушенной. Все знания ценны только при случае, потребность в agile-подходе возникает при командной разработке проекта, в котором не все ясно. Открываю я, тогда, значит, википедию, чтобы прояснить для себя смысл этих чудных заморских слов. Agile — это чистая философия, никаких конкретных указ��ний, если вы современный человек, то вам это будет близко. Scrum уже содержит правила, например, должен быть Владелец продукта (Owner), то есть носитель видения. Эту роль я сам выполнял, а вот Руководителя не было, не получилось подобрать достаточно компетентного человека. Поэтому на двух ролях я просто зашивался. Должны быть демонстрации, но с этим проблем не было — сразу, где выкладывалось, там и обсуждалось. Ретроспективу как самокопание в прошлом я счел излишним. Спринты — учетные периоды у меня тоже были, сам для себя завел правило раз в неделю итоги подводить, сверку проделанных работ устраивать, хотя и был отдельный человек, который табелем учета работ занимался. Это была для меня самая утомительная процедура из всех. Иногда также проводили посиделки в скайп-чате — об одном и том же по три раза, зато в головах лучше оседает.
Значит, взялись 20 добрых молодцев за проект с разных концов. Ладно, думаю, сведем, хотя, уже заставляло задуматься. Проблема пришла оттуда, где я её не ждал — мне не удалось разбить задачу на подзадачи. Строить разработку снизу-вверх принципы не позволяли, а как строить сверху-вниз я не знал. Неделю ходил в тяжелых мучительных раздумьях. Потом случайно увидел статью на хабре о паттернах объектно-ориентированного программирования. На меня снизошло — мне ведь нужна архитектура приложения! По книгам ситуация прояснилась, но реально это не помогло. Нет, я знал что такое классы и объекты, но тут все-равно никак без практического опыта. В общем, еще месяц ушел на осмысление архитектуры. Вы там, кстати, пальцы загибаете? Месяц на выработку концепции, месяц на архитектуру, а ведь умельцы мне все обещали за неделю сделать. Может, зря я не согласился? — можно было уже три релиза отконопатить.
Опять вышел сумбур, ну а кто сказал, что в реальной жизни везде должны быть завязка, сюжет и развязка?
Собрал я людей, раздал задачи, все работают, и всё, вроде, хорошо. И тут у народа стали просыпаться хотелки. Захотели они себя белыми людьми почувствовать, чтобы все цивильно было — и багтрекинг им подавай, и svn…
А чукча не торопится, чукча воробей стрелянный, знает, что не примочками жив проект. Хотя, самого тоже зацепило, хотел уже Git поставить, да никак не собрался. Потом кто-то за 5 минут VisualSVN поставил у которого серверная часть бесплатная, и а в качестве клиента AnkhSVN — бесплатное расширение для VS. Так это хозяйство особо и не пригодилось. Кому-то учетку неправильно настроили, так они файлы по почте гоняли, никому и не сказали. А бейзкампы всякие буржуйскоязычные — так и вообще мне не понравились. А мы хуже, что ли? Свое напишем, и чтобы там внутри можно было сразу и обсуждать, и плюсы\минусы лепить, и зарплату начислять и сразу комментарий оставить в какую сторону копать. Ну и плюс, у нас все работы сразу на корпоративном форуме выкладываются — вот вам и весь багктрекинг сразу в топик.
Ладно, с хотелками порешили, почувстововал я себя большим начальником, решил посмотреть, что другие большие начальники делают. А они, оказывается, методологиями занимаются. Agile — это общий подход, а scrum — одна из его реализаций. Расшифровывать не буду, тем более, статьи на эту тему уже были, да и публика тут считается умной и искушенной. Все знания ценны только при случае, потребность в agile-подходе возникает при командной разработке проекта, в котором не все ясно. Открываю я, тогда, значит, википедию, чтобы прояснить для себя смысл этих чудных заморских слов. Agile — это чистая философия, никаких конкретных указ��ний, если вы современный человек, то вам это будет близко. Scrum уже содержит правила, например, должен быть Владелец продукта (Owner), то есть носитель видения. Эту роль я сам выполнял, а вот Руководителя не было, не получилось подобрать достаточно компетентного человека. Поэтому на двух ролях я просто зашивался. Должны быть демонстрации, но с этим проблем не было — сразу, где выкладывалось, там и обсуждалось. Ретроспективу как самокопание в прошлом я счел излишним. Спринты — учетные периоды у меня тоже были, сам для себя завел правило раз в неделю итоги подводить, сверку проделанных работ устраивать, хотя и был отдельный человек, который табелем учета работ занимался. Это была для меня самая утомительная процедура из всех. Иногда также проводили посиделки в скайп-чате — об одном и том же по три раза, зато в головах лучше оседает.
Значит, взялись 20 добрых молодцев за проект с разных концов. Ладно, думаю, сведем, хотя, уже заставляло задуматься. Проблема пришла оттуда, где я её не ждал — мне не удалось разбить задачу на подзадачи. Строить разработку снизу-вверх принципы не позволяли, а как строить сверху-вниз я не знал. Неделю ходил в тяжелых мучительных раздумьях. Потом случайно увидел статью на хабре о паттернах объектно-ориентированного программирования. На меня снизошло — мне ведь нужна архитектура приложения! По книгам ситуация прояснилась, но реально это не помогло. Нет, я знал что такое классы и объекты, но тут все-равно никак без практического опыта. В общем, еще месяц ушел на осмысление архитектуры. Вы там, кстати, пальцы загибаете? Месяц на выработку концепции, месяц на архитектуру, а ведь умельцы мне все обещали за неделю сделать. Может, зря я не согласился? — можно было уже три релиза отконопатить.
Опять вышел сумбур, ну а кто сказал, что в реальной жизни везде должны быть завязка, сюжет и развязка?
