powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Планирование проекта
40 сообщений из 40, показаны все 2 страниц
Планирование проекта
    #34734968
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Работаем на металлургическом предприятии с численностью 3000 чел. (12 прогр.), занимаемся разработкой собственной системы, зачастую без ТЗ(заказчики сами не в состоянии составить) и с указание должно работать завтра, в таких условиях необходимо иметь четкий план работ, так вот мне интересно кто чем пользуется при планировании разработки:
-составление DFD/CDF диаграмм;
-составление структурных схем (из этого отдела документы поступают ...) с описание бизнес процессов;
-ждем ТЗ и потом планируем;
-начинаем программировать то что понятно, а там разберемся.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735152
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Четкого плана работ в такой ситуации не будет никогда - вернее, он будет столь часто перекраиваться и нарушаться, что смысла в нем нет.

В целом, у Вас как-то свалены в кучу разные вещи: план работ, ТЗ, инструменты анализа и проектирования, общая технология......

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

Оптимальной для такой ситуации я полагаю следующую схему: полноценно документируется общая архитектура модуля, то, что можно назвать решением стратегической задачи. Детали документируются непосредственно в программном коде "на ходу", и исправляются вместе с внесением изменений в модули; исправления стратегических документов при этом как правило не требуется.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735226
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
softwarerквалифицированный руководитель вашей группы - который сможет и удовлетворять реальные потребности заказчика, и в то же время при необходимости жестко говорить "нет", типа "да, я понимаю, что это нужно завтра, но завтра этого не будет".
Руководителем группы являюсь я, сказать жестко "нет" можно (и говорим), но что-бы слова имели вес надо обосновать.
softwarerДальше, нужна технология, рассчитанная на большую гибкость и минимальную длительность цикла разработки, на отработку разного рода срочных задач, исправление критических ошибок на фоне нормальной планомерной работы.
В этом-то и состоит вопрос кто какой технологией пользуется.
Типа > составляем описание бизнес-процессов "как есть", предлагаем "как должно быть", составляем план разработки, устанавливаем сроки, потом составляем процессную диаграмму, привлекаем ведущих, проектируем базу... и потом придерживаемся постановки или пишем программу ставим заборы и таким образом ровняем ситуацию.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735402
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayKно что-бы слова имели вес надо обосновать.
Лучшее обоснование для слов - практика. Особенно для человека, мало знакомого с "кухней".

В этой связи я довольно часто вспоминаю один эпизод, который у меня был несколько лет назад. Тогда состоялся примерно следующий диалог (формулировки, разумеется, не дословные имя "Ваня" сугубо условное):

Начальник: Саш, вот надо сегодня это сделать
Я: Никак. На это нужно дня четыре
Начальник: Да ладно тебе, вот Ваня бы сделал
Я (пожимая плечами): Ну пусть Ваня и сделает

(через пару дней)

Начальник: Саш, ты говорил, что дня за четыре сделаешь? А то Ваня сделал, но.....


В вашем случае, имхо, лучшим обоснованием будет то, что говоря "да" - Вы делаете. Если человек отвечает за свои слова, говоря "да" - резонно предполагать, что и "нет" он говорит не с бухты-барахты.

NikolayKВ этом-то и состоит вопрос кто какой технологией пользуется.
В первую очередь нужно определить требования, которые бизнес к вам выдвигает. Я бы предположил примерно следующее:

- время исправления критических ошибок и недоработок порядка часов, в худшем случае дней

- реализация поставленных задач в порядке их срочности и важности с регулярным выпуском новых версий (недельная или месячная периодичность, лучше недельная)

- планомерное покрытие новых областей (если система недавно начата и еще не охватила деятельность предприятия)

- возможность внезапного возникновения приоритетных задач

- наличие некоторого количества несложных хотелок, которые следовало бы сделать быстро по политическим соображениям (пожелания руководства итп)

В такой ситуации безусловное "ждем ТЗ, потом планируем, потом рисуем..." просто не пройдет по времени. С другой стороны, "сразу бросаться кодировать" - породит страшного и бесполезного монстра.

Примера замечательной работы в такой ситуации я не видел и не организовывал. По незамечательному примеру, в котором участвовал (с сильным перекосом в "сначала запрограммируем, потом подумаем"), и по прочим виденным я бы сказал так:

1. Обязательная документация по задачам должна быть минимальной; такой, чтобы программист мог не особо напрягаясь проработать ее по ходу решения задачи. Скажем - ER-диаграммы плюс документирование решения в программном коде.

2. Задачи должны ранжироваться по сложности-срочности и обрабатываться по-разному. Простые и срочные следует пускать по кратчайшему пути - программист-тестер-релиз, сложные и не столь срочные - по более длинной и идеологичной цепочке, с аналитиком, хорошо проработанным ТЗ итп.

3. Сборка релиза должна быть максимально гибкой и допускать возможность включения-исключения решения тех или иных задач в последний момент. Не должно возникать ситуации, при которой "семеро ждут одного".

4. Тестирование должно быть в значительной степени автоматизировано, или же превратится в вечный геморрой.

Что именно есть "идеологически правильная цепочка" - решайте по месту, тут уже вам виднее. Главное - гибкость; главное - чтобы большие и серьезные задачи были правильно спроектированы, но в то же время их можно было "за полчаса" доработать по мелочи и это не требовало бы внесения изменений в кучу документов.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735535
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за исчерпывающий ответ, но есть один пунктик
softwarer4. Тестирование должно быть в значительной степени автоматизировано , или же превратится в вечный геморрой.
Как автоматизировано, потому что гемора с не протестированными программами предостаточно, тестирование модуля программистом ничего не дает (он нажимает те кнопки и в той последовательности в которой писал логику), приняли на работу консультанта в чьи обязанности входит и тестирование (или руки кривые или ... но результата нет), все равно пользователи звонят и сообщают о багах.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735624
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хм. С технической точки зрения на "как" ответов предостаточно - и технологии, и инструменты есть.

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

Мне так кажется, что при команде в двенадцать человек вполне можно выделить бюджет на квалифицированного тестировщика; его присутствие окупится экономией времени программистов, которые сейчас лениво и неумело тестируют свои программы (и говоря честно - один тестировщик утонет в объеме работы, который ему подбросят двенадцать разработчиков. Что же до "одного консультанта, который в том числе и тестирует" - тут и речи быть не может о сколько-нибудь адекватном покрытии, если конечно программисты не проводят весь день за квейком).

Что же до "пользователи звонят и сообщают" - безусловно, какое-то количество ошибок всегда будет прорываться, но при нормальном тестировании можно добиться достойных показателей. Но тут есть еще один момент, которого я опять же пока нигде не видел внедренным, но который считаю важным (может быть, постепенно раскачаю на текущей работе) - мне представляется важным анализировать проблемы. Не просто исправлять, но тратить время на то, чтобы выделять классы регулярно возникающих проблем и искать, что переделать в технологии так, чтобы эти проблемы ушли; где та дырка, которая их порождает.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735719
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
softwarer(и говоря честно - один тестировщик утонет в объеме работы, который ему подбросят двенадцать разработчиков. Что же до "одного консультанта, который в том числе и тестирует" - тут и речи быть не может о сколько-нибудь адекватном покрытии, если конечно программисты не проводят весь день за квейком).
Наверное действительно утонул!!!
softwarerмне представляется важным анализировать проблемы
Для анализа проблемы надо накопить статистику по наиболее возникающим проблемам потом можно что-то анализировать.
Я попросил что-бы мне написали програмулину(может велосипед конечно, но что-то похожего не встречал)в которую заносятся проблемы по программным модулям, потом в конце месяца беру лидера по вопросам и разбираем с ведущими что происходит.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735728
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Планирование проекта
    #34735749
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayKДля анализа проблемы надо накопить статистику
Безусловно. Но это интеллектуальная работа, не по формальным признакам.

NikolayKЯ попросил что-бы мне написали програмулину(может велосипед конечно, но что-то похожего не встречал)в которую заносятся проблемы по программным модулям,
Это называется bug tracker , существует в уйме вариаций, платных и бесплатных.

Но "по модулям" мало что даст, кроме "Вася молодец, а Петя халтурит". Я имел в виду некий более глубокий поиск, неких типичных ошибок, таких как, допустим, "если фильтром сделать ноль записей в гриде, кнопка "редактировать" остается доступной и неправильно работает".
...
Рейтинг: 0 / 0
Планирование проекта
    #34735766
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayK потом в конце месяца беру лидера по вопросам и разбираем с ведущими что происходитОчень показательная диаграмма, браво !
Наибольшая загрузка у "общих вопросов" и "прочего".

Это крайне характерная ситуация, когда какая-то информация формально может быть разбита по критериям и якобы доступна для анализа (и даже специальная приблуда строит график :) ), а на деле понять ничего невозможно и ничем эта разбивка помочь не может.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735798
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
softwarerНо "по модулям" мало что даст
У меня есть и по Васе, модули это как раз такого рода ошибки.
softwarerЯ имел в виду некий более глубокий поиск, неких типичных ошибок, таких как, допустим, "если фильтром сделать ноль записей в гриде, кнопка "редактировать" остается доступной и неправильно работает".
Меня достают более мелочные вопросы типа все боксы для выбора марки стали отсортированы по наименованию, обязательно кто-то забудет это сделать, а пользователи вешаются. Решение в написании для системы единых объектов, при необходимости корректировки они корректируются во всех модулях. Хотя не всегда помогает но какой-то процент ошибок убирает.
...
Рейтинг: 0 / 0
Планирование проекта
    #34735879
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayKРешение в написании для системы единых объектов, при необходимости корректировки они корректируются во всех модулях. Хотя не всегда помогает но какой-то процент ошибок убирает.
угу, практически 100%
...
Рейтинг: 0 / 0
Планирование проекта
    #34735930
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayKвсе боксы для выбора марки стали отсортированы по наименованию, обязательно кто-то забудет это сделать, а пользователи вешаются.
тысченку-полторы марок в боксы не стоит имхо заталкивать. Вынесите в обычный грид с возможностью сортировки и инкрементного поиска, возможно с группировкой по сортаменту, профилям или что там для Вас предпочтительней.... пользователям полегчает и они будут Вам благодарны.
...
Рейтинг: 0 / 0
Планирование проекта
    #34736038
Alex_Toms
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayK
Работаем на металлургическом предприятии с численностью 3000 чел. (12 прогр.), занимаемся разработкой собственной системы, зачастую без ТЗ(заказчики сами не в состоянии составить) и с указание должно работать завтра, в таких условиях необходимо иметь четкий план работ, так вот мне интересно кто чем пользуется при планировании разработки:

Лично мне всегда разрабатывать приходилось без ТЗ. Выяснять у заказчика, делать, внедрять и сопровождать приходилось самому. Ни какого задания никогда не видел. ТЗ так же, планов работ тоже не было. Наиболее крупное сделано, на предприятии с численностью 4000 чел. производство, (реально 3 прогр.) причём нагрузка не равномерная, двое ещё и DBA. Финансовая система удачно разработана под бизнес процессы предприятия, сделана, внедрена, постоянно развивается. Про другие системы просто не вспоминают.
...
Рейтинг: 0 / 0
Планирование проекта
    #34736161
Mainframe_старый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ждать ТЗ от пользователя можно долго. Иногда, когда я лично считаю, что пользователь (какой-то отдел) хочет ерунду , я предлагаю им самим написать ТЗ, и могу спать спокойно - они никогда его не напишут. Но ТЗ, в котором как миниму прописаны требования, понятные пользователю и с ним согласованные, - нужно. После этого мы рисуем и описываем схемы. Число сотрудников и программистов у нас близкое к вам, описывать бизнес-процессы как есть - считаю зря трартить время. Описываем сразу - как надо. Но все это скорее просто для того, чтобы самим разработчикам уяснить предметную область, понять что и как решать будем. описываем по стандарту IDEF0. далее идет детализация до некоторого уровня. Но в общем на этмо этапе нам понятны механимы и инстурменты (сервисы, службы, приложения и т.п.), которыми будет выполняться решение и что и как надо менять в наших инстурментах или использовать все готовое. Описание достигает некоторого уровня, понятного программистам и отдается им. Далее идет взаимный процесс - они разрабатывают, что-то меняется в преокте, вносятся изменения в документы. Иногда появляются новые вопросы - вносятся в проект и снова программист это доводит до реализации. Как пример, сейчас делаем документооборот свой. При описании стало понятно, что без бюджетрирования нет смысла все это заводить - просто в игрушки электронного документа играть - затратно, у нас и так многое уже есть, а задействуя финансовые потоки, можно решить полезную задачу. Без описания процессов, мы бы этого не поняли. Конечно, сейчас себе задачу добавили - внедрения бюджетрирования, но у нас это вполне быстро решаемо.
...
Рейтинг: 0 / 0
Планирование проекта
    #34736232
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mainframe_старыйИногда, когда я лично считаю, что пользователь (какой-то отдел) хочет ерунду , я предлагаю им самим написать ТЗ, и могу спать спокойно - они никогда его не напишут.

да, действительно действенный способ... так сказать отправить подумать.

Mainframe_старыйКак пример, сейчас делаем документооборот свой. При описании стало понятно, что без бюджетрирования нет смысла все это заводить
а как пришли к такому заключению? Если бы сказали наоборот: начали делать бюджетирование и поняли, что без документооборота это игрушки - было бы понятно. Но как бюджетирование поднимает ценность документооборота....? (само наличие такого модуля конечно поднимает ценность системы в целом)
...
Рейтинг: 0 / 0
Планирование проекта
    #34736297
paul310
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый softwarer все правильно говорит, но, если позволите, мои пять копеек:

1. "приняли на работу консультанта в чьи обязанности входит и тестирование" - Пипец. Это что ж за "консультант" такой? В его обязанности мытье полов заодно не входит? Должен быть как минимум 1 хороший тестировщик. Причем, с учетом вашего бардака в разработке, он должен иметь достаточно полномочий для реформирования процесса разработки в относящихся к его области вопросах.

2. "все равно пользователи звонят и сообщают о багах" - а с какого хрена они звонят? Пускай пишут в bug tracker. Баги неизбежны при сколь угодно хорошо поставленном процессе разработки. Вопрос в том, что информацию о них нужно эффективным образом собирать и баги быстро исправлять.

3. "типа все боксы для выбора марки стали отсортированы по наименованию" - сами рисуете морду на стандартных контролах??? Нет бы devexpress'ом разжиться...
...
Рейтинг: 0 / 0
Планирование проекта
    #34736836
dvvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
paul310
1. "приняли на работу консультанта в чьи обязанности входит и тестирование" - Пипец. Это что ж за "консультант" такой? В его обязанности мытье полов заодно не входит? Должен быть как минимум 1 хороший тестировщик. Причем, с учетом вашего бардака в разработке, он должен иметь достаточно полномочий для реформирования процесса разработки в относящихся к его области вопросах.
У меня хорошее качество тестирования наблюдалось при соотношении числа программистов к числу тестировщиков 2,5:1.

paul310
2. "все равно пользователи звонят и сообщают о багах" - а с какого хрена они звонят? Пускай пишут в bug tracker. Баги неизбежны при сколь угодно хорошо поставленном процессе разработки. Вопрос в том, что информацию о них нужно эффективным образом собирать и баги быстро исправлять.
Обычно пользователей трудно заставить пользоваться багтреккером - нужно иметь жесткие административные рычаги для этого, что не всегда возможно. Какой, например, процент пользователей MS Word пишет баги ворда в багтреккер? ;-)
Пускай себе звонят, только тот, кому они звонят, должен занести баг в багтреккер.

Гистограмма тоже очень показательная. ИМХО, показывает, что критерии классификации на ней неправильно выбраны.
...
Рейтинг: 0 / 0
Планирование проекта
    #34736865
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dvvvУ меня хорошее качество тестирования наблюдалось при соотношении числа программистов к числу тестировщиков 2,5:1.
Имхо оптимальное соотношение зависит от слишком многих факторов. 12:0,5 - это, конечно, не дело, но затруднюсь советовать "сколько именно надо".

dvvvОбычно пользователей трудно заставить пользоваться багтреккером
Имхо вопрос не столько в "трудно заставить", сколько в "хорошо все равно не напишут - не умеют".
...
Рейтинг: 0 / 0
Планирование проекта
    #34737047
Проба сил№
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerЛучшее обоснование для слов - практика. Особенно для человека, мало знакомого с "кухней".

.......................

Что именно есть "идеологически правильная цепочка" - решайте по месту, тут уже вам виднее. Главное - гибкость; главное - чтобы большие и серьезные задачи были правильно спроектированы, но в то же время их можно было "за полчаса" доработать по мелочи и это не требовало бы внесения изменений в кучу документов. На самом деле скорее АВТОРИТЕТ человека который это заявляет...
Иначе начальник может и приказать как в армии...

Всегда важно иметь разделение на поддержку и развитие.
Поддержка штука относительно простая, можно ввести стандарты и не мучаться...
С развитием всегда хуже, особенно когда задачи сложные и "многоходовые". Пока в этой области нет никаких серьезных стандартов и все зависит от личности которую можно назвать руководителем или архитектором проекта.
Данная личность является стандартом сама по себе... и вводит свои стандарты "по месту".
...
Рейтинг: 0 / 0
Планирование проекта
    #34737057
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проба сил№На самом деле скорее АВТОРИТЕТ человека который это заявляет...
А откуда этот авторитет появляется, если предположить, что начальник - не идиот? Именно от "сказал и сделал".

Проба сил№Иначе начальник может и приказать как в армии...
Может. Примерно как в той ситуации, что я цитировал выше.

Проба сил№Всегда важно иметь разделение на поддержку и развитие.
Спорно; весьма спорно.
...
Рейтинг: 0 / 0
Планирование проекта
    #34737094
Проба сил№
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerСпорно; весьма спорно. Согласен!!!
Возможно, это тема отдельного топика...

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

Я в свое время с интересом смотрел как на рынок выходили мировые табачные компании.
Строился завод и оборудование ставили ребята из команд внедрения.
Потом шел этап настройки и это делали уже другие команды.
На поддержку они готовили местных, а сами шли дальше.

В ПО тоже, есть подобное разделение, просто не всегда оно явное...
...
Рейтинг: 0 / 0
Планирование проекта
    #34739487
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dvvvГистограмма тоже очень показательная. ИМХО, показывает, что критерии классификации на ней неправильно выбраны.
Предложите свои критерии, а лучше покажите если они у Вас есть!!!
Проба сил№Данная личность является стандартом сама по себе... и вводит свои стандарты "по месту".
Есть 3 уровня группы разработчиков:
1.Проекты не документируются, личность определяет ВСЕ (это Ваш уровень)
2.Проекты частично документируются, от личности мало что зависит (это Наш уровень)
3.Проекты документируются полностью роль личности минимальна(уровень MS)
Зачем личность должна изобретать велосипед если в мире существуют сдандарты для постановок задач вот только ВОПРОС в наборе используемых инструментов.
...
Рейтинг: 0 / 0
Планирование проекта
    #34739878
Проба сил№
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayKЕсть 3 уровня группы разработчиков:
1.Проекты не документируются, личность определяет ВСЕ (это Ваш уровень)
2.Проекты частично документируются, от личности мало что зависит (это Наш уровень)
3.Проекты документируются полностью роль личности минимальна(уровень MS)
Зачем личность должна изобретать велосипед если в мире существуют сдандарты для постановок задач вот только ВОПРОС в наборе используемых инструментов. 1. Я говорил немножко о другом... О стандартах разработки сложных систем. Документирование, это всего лишь один из показателей стандарта и абсолютно не говорящий об "успешности" проекта.
"Личность" в моем случае определяет, что мы будем документировать в какой объеме и как. Нужны (только) коментарии в коде, будут только комментарии (команда очень хорошо знает задачу и друг друга и задачка маленькая).
Нужна блок схема, будет. Нужны взаимосвязи схемы с имеющимся функционалом, сделаем

Обратите внимание на последний пункт и попробуйте определить круг решенных задач у которых Вы сделали подобное документирование.

2. Да, существует несколько стандартов на постановку задачи. Тот который мне нравится гласит примерно следующее: Постановщик задачи строит блок схему, а программист ее реализует как есть. В случае отхода от схемы виноват программист, в случае неработающей схемы постановщик. Тупо и эффективно

Однако, ни у кого нет работающего стандарта на руководителя проекта. На личность которая способна построить нужные стандарты для конкретного проекта.
ЗЫ Если вы введете стандарты производства самолетов, на завод клепающий табуретки, данное изделие станет поистине золотым
/topic/300755&hl=
...
Рейтинг: 0 / 0
Планирование проекта
    #34740391
paul310
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про количество QA: я имел в виду, что нужно нанять для начала одного, но очень продвинутого. QA - это область, требующая весьма специфических как знаний, так и soft skills. После того, как "старший" QA оценит масштабы стихийного бедствия, он и требования к "смежникам" выставит, и необходимое количество QA персонала оценит.

Про bug tracker: организация эффективной работы поддержки - это отдельная большая тема. Могу только сказать, что "голый" телефон - это самый омерзительный и неэффективный способ.
...
Рейтинг: 0 / 0
Планирование проекта
    #34740469
city_neurotic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробую внести свое имхо.
Как мне кажется разработка собственной системы, а автор грит именно об этом, невозможна без определения цели создания и на какие потребности ориентирована система.
В случае создания большой системы, можно рассмотреть вариант модульного построения (определить последовательность разработки модулей).
Затем писать проект на автоматизацию, который должен быть утвержден заказчиком.

В моем случае делалось так:
1.Определение целей конкретного программного обеспечения
2.Разработка проекта на автоматизацию с описанием бизнес-процессов, в т.ч. и схематтичным
3.Утверждение
4.Разработка структуры данных
5.Разработка ТЗ для программиста
...
Рейтинг: 0 / 0
Планирование проекта
    #34741317
dvvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayK dvvvГистограмма тоже очень показательная. ИМХО, показывает, что критерии классификации на ней неправильно выбраны.
Предложите свои критерии, а лучше покажите если они у Вас есть!!!

Рад бы, но я не знаю вашей кухни. Нужно добиться такой классификации, чтобы столбики были сильно разной высоты. Может быть что-то типа:
1.Ошибки в общесистемной бибилиотеке.
2.Ошибки в отчетах
3.Ошибки в логике прикладного модуля 1
и т.д.

Тогда можно понимать, где проблемы серьезные, а где можно пока ничего не трогать.
Ну и конечно, не должно быть столбцов типа "Другое" самой большой высоты;-).
Наличие такого столбца что говорит? "Все, что здесь нарисовано - ерунда, а дело в ДРУГОМ!" ;-)
...
Рейтинг: 0 / 0
Планирование проекта
    #34742447
AlexTheRaven
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikolayKРаботаем на металлургическом предприятии с численностью 3000 чел. (12 прогр.), занимаемся разработкой собственной системы, зачастую без ТЗ(заказчики сами не в состоянии составить) и с указание должно работать завтра, в таких условиях необходимо иметь четкий план работ, так вот мне интересно кто чем пользуется при планировании разработки:
-составление DFD/CDF диаграмм;
-составление структурных схем (из этого отдела документы поступают ...) с описание бизнес процессов;
-ждем ТЗ и потом планируем;
Результаты устраивают? Тогда ничего не меняйте. Формализм ради формализма никому не нужен, кроме формалистов :) .

А иначе надо бы в каком-то виде выстроить цепочку: бизнес-процессы, заинтересованные в автоматизации лица->автоматизируемые функции, их исполнители->варианты использования и требования к системе->оценки трудоёмкости, baseline->архитектура, ИСР, задачи.

NikolayK-начинаем программировать то что понятно, а там разберемся.
Agile (XP, SCRUM и т.д.) - это, конечно, хорошо, но лучше сначала как минимум определить цели того, что разрабатывается. Не имея цели, невозможно добиться результата. Даже отрицательного.
...
Рейтинг: 0 / 0
Планирование проекта
    #34752272
Dmitry V. Liseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi!

paul310
Про bug tracker: организация эффективной работы поддержки - это отдельная большая тема. Могу только сказать, что
"голый" телефон - это самый омерзительный и неэффективный способ.
Расскажу, как сделано у нас.

Пользователи напрямую в багтракер не пишут. Туда вообще никто не пишет, кроме QA. Пользователи общаются с саппортом через
специальную самописную CRM-систему. Это что-то типа форума, где разные предприятия заказчики друг-друга не видят, но сотрудники
нашей конторы имеют полный доступ на чтение и запись по всем заказчикам. Телефон - самый омерзительный способ. Аська и персональная
почта - тоже плохо. Информация по всем заявкам должна документироваться в единой доступной всем базе. Заявки, соответственно,
подразделяются на "новое требование", "просто консультация", "проблема". Новые требования - к аналитику. Просто консультации - к
саппорту. Проблема - к QA. Только после того, как QA воспроизведет проблему на эталонной системе, она заносится в багтракер, в
тестплан, в тестовые скрипты (которые при запуске должны сказать FAILED). И отправляется руководителю проекта (который передает ее
нужному разработчику). После исправления идет команда на автоматическую сборку билда и запуск тестскриптов (которые должны сказать
OK). После этого QA закрывает багу.

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

Для того, чтобы QA воспроизвел проблему на эталонной системе, есть логи. В системе предусмотрена возможность полного
протоколирования всех операций. Ее можно включить или выключить. Понятно, что протоколировать надо не только ошибки, но и все
действия которые были до этого. Соответственно, рассказы по телефону: "Я тут нажал кнопку и у меня тут что-то непонятное", - в сад.
Нужно просто попросить юзера включить логи и попробовать повторить. Потом выложить логи в CRM, где оно станет доступно и QA и
разработчикам и всем остальным сотрудникам. Часто повторить сразу не получается. С включенным журналированием юзер может работать
несколько дней. Рано или поздно проблема повторяется. Тогда появляются логи в миллионы записей. Есть специальный утиль для
автоматизированного анализа логов. Имея логи можно точно установить, что и где произошло. Эти логи и прикладываются к формулировке
проблемы в багтракере.

К слову, предприятий заказчиков много, и ближайшее в 2000 км. Так что лично приехать и на месте посмотреть, что стряслось,
невозможно. Полностью весь саппорт, включая обновление версий системы, делается дистанционно.

Почему QA должен проблему воспроизводить на эталонной системе. Потому, что вопросы, типа: "Я не читал документацию, но мне кажется,
что тут неправильно", "я криво что-то настроил, и у меня нифига не работает", способны остановить любую разработку, если их
передавать непосредственно разработчикам. Если у юзера что-то не работает оттого, что у него сеть криво настроена, то это еще не
бага, это просто саппорт. И только когда QA подтверждает, что проблема воспроизводится в лабораторных условиях, это считается багой.
Это сильно уменьшает вероятность патовых ситуаций, когда у юзера не работает, а у разработчика все замечательно работает. QA со
своей эталонной системой тут служит арбитром.

Чего мы добились:

1) Превентивного решения проблем. Возможность попросить юзера включить логи при любом самом незначительном намеке на проблему и их
оперативный анализ часто позволяет выявить по логам сразу несколько потенциально проблемных узких мест и оценить степень их
критичности, что позволяет планировать их устранение в очередном релизе. Это сильно удобнее, чем дождаться, когда проблема реально
возникнет и срочно выпускать патч. Т.е. производится постоянный дистанционный мониторинг работы всех систем у нескольких десятков
крупных заказчиков по всей стране. В итоге, уже пару лет заказчикам не удается поймать ни одной ошибки. Общее число пользователей -
около трех тыс.

Все 100% ошибок на данный момент отлавливаются многоуровневой системой контроля качества.

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

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

Есть только один минус. Начальству кажется, что руководитель проекта балду пинает (ведь все так просто и само собой
работает). Тестеры балду пинают (ведь ошибок же нет). Программисты нифига не делают (а чего там программировать-то,
все элементарно). Потому зарплату не повышают а народ пришел к выводу, что достигли нирваны и дальше совершенствоваться
некуда, а потому все резко захотели свалить. В стране полно проектов, где все не так шоколадно, и на их оптимизации можно
срубить немало бабла.
____________________________
С уважением, Лисеев Дмитрий.
http://private.peterlink.ru/dimik/
PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Планирование проекта
    #34754917
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dmitry V. Liseev
Расскажу, как сделано у нас.

Классно но это Вы рассказали как бороться с поддержкой проекта и ловить баги
Dmitry V. LiseevНужно просто попросить юзера включить логи и попробовать повторить.
Это очень интересная функция надо попробовать реализовать, а то действительно времени уходит уйма (общение по телефону, а в итоге и выход на место).
Dmitry V. LiseevТак что программеры пишут новые фичи по четко написанным спецификациям и правят четко документированные баги, тестеры тестируют,
саппорт саппортит, все заняты своим делом без всякого бардака и сложностей с планированием.
Вопрос был о планировании новой разработки.
Интересно разработкой какой системы Вы занимаетесь и количество программеров, тестеров, саппортов можно в % отношении.
...
Рейтинг: 0 / 0
Планирование проекта
    #34756673
Dmitry V. Liseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi!

NikolayK
Вопрос был о планировании новой разработки.
А это имеет непосредственное отношение к планированию. Планирование, всего лишь часть управления
проектом, а не существует само по себе. Есть работы вероятностного характера, и они
не поддаются планированию. А есть вполне предопределенные. Допустим, дают программисту задание
реализовать фичу, срок - 40 часов. Он начинает работу, в этот момент звонит юзер и говорит, что у него
ошибка и надо исправить, потом еще кто-то чего-то спросил, потом еще. Итог - работа в срок не сделана,
по этой причине задержано начало других работ, в итоге полетел план-график всего проекта. Вся фигня
в том, что программист работает по заданию и календарному графику, а у саппорта нет графика,
он реагирует на события. И нельзя смешивать эти работы в одну кучу. Саппорт - процесс параллельный
и независимый от разработки.

Поэтому, пока Вы не научитесь "бороться с поддержкой проекта и ловить баги", любое календарное
планирование и называние сроков будет бессмысленно.

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

У нас нет ТЗ и такой документ вообще отсутствует. Есть спецификации требований. Заказчик
присылает некую "хотелку". Иногда сразу понятно, что надо делать и сколько времени это
займет, иногда нужно довольно длительное обсуждение и это занимает месяцы. Требования
регистрируются в специальной базе данных. Далее идет процесс обсуждения. Разработчики,
тестеры и т.д. его читают (им в почтовый ящик валится), просто чтобы быть в курсе. Они
вполне могут вмешаться и задать уточняющий вопрос. Это не обязательно и не должно их
сильно отвлекать от текущей работы, но просто рекомендуется, т.к. сильно сократит время
"въезжания в тему" в будущем. Как только мне становится понятно, что примерно
надо делать и есть хоть какая-то обоснованная оценка сроков, требование получает статус
"согласовано". У требований, понятно, есть приоритеты. Примерно 10% должно иметь
"высокий", примерно 20% - "низкий", остальные - "средний". По каким критериям
расставляются приоритеты - отдельная тема и не техническая.

При этом требование никто не бросается сразу выполнять. Оно ждет конца текущей итерации
и выпуска релиза. Итерация обычно занимает примерно полгода. Длительность итерации,
как правило, определяется требованиями бизнеса, особенностями архитектуры, бюджетом
и другими ограничениями. Как только руководитель проекта скомандовал "Релиз!", билд
отдается заказчикам, в VCS делается бранч для следующей версии, которая теперь становится
текущей. Дальше мучаться с этим билдом будет только саппорт, и иногда тестер (при
подозрениях на баги). Разработчики про него сразу забывают и никаких комментариев
не дают, на вопросы не отвечают. И если действительно будут критичные баги, тогда
руководитель проекта может полностью или частично остановить проект и вернуться
к выпуску сервис-пака для прежней версии. Т.е. баги исправляются не в текущей версии,
над которой идет работа, а в прежней (для того и бранч в VCS). Потом уже исправления
портируются в текущую версию. И это единственный случай, когда разработчики отвлекаются
от нормального хода проекта по непосредственной команде руководителя.

И вот после релиза предыдущей версии наступает сабж для следующей. В этот момент
мы уже имеем список требований, их приоритетов и оценку сроков, а также протокол
обсуждения с заказчиком этих требований, причем все участники проекта заранее в курсе
дела. Все планирование заключается в том, чтобы набрать из списка требований с учетом
приоритета такое их количество, чтобы в сумме получилась длительность следующей
итерации. Например, начальство может сказать: "Хотим релиз к выставке. Такая-то дата."
Нет проблем.

Далее объявляется (для руководства) список требований, которые будут реализованы,
делается предварительный календарный план-график всех работ. Собственно, вот
и все планирование. После этого для каждого требования составляется более детальная
спецификация. Это этап проектирования. Собственно, в спецификации может быть несколько
частей. Функциональную часть согласовывают с заказчиком. Особенности реализации
согласовывают с разработчиками. Спецификацию должна утвердить команда и заказчик.
И в этот момент уже имеется достаточно точная оценка сроков и рисков по данному
требованию, а также уточненный календарный план. Когда все спецификации по всем
требованиям утверждены, можно начинать программировать.

На практике, понятно, по каким-то утвержденным фичам работы уже начинаются,
в то время, как другие фичи еще согласовываются. Т.е. никто не ждет, пока будут
точные спецификации абсолютно по всем фичам. Можно это назвать "начинаем
программировать то что понятно, а там разберемся", но это вполне четко
контролируемый и управляемый риск. Т.е. понятно, что по ходу проекта
будут уточняться и спецификации и сроки, даже какие-то этапы работ могут
быть добавлены/выкинуты, однако, это все не выходит за заданные рамки.

Так что все очень просто. Главное понять, что надо навсегда забыть
подход: "Зачем личность должна изобретать велосипед если в мире существуют
сдандарты для постановок задач вот только ВОПРОС в наборе используемых
инструментов."

В мире нет стандартов. Есть практики. Удачные и неудачные в конкретных
условиях применения. И те и другие надо знать и изучать. В конкретных
условиях используются те или иные методы. Есть RUP, MSF, Agile, XP,
PMBOK, SWEBOK и много других слов. Даже в моем сумбурном
описании можно найти сразу элементы нескольких разных подходов.
Если я буду работать в другой конторе и над другим проектом,
то там буду делать все по-другому, в зависимости от специфики.

NikolayK
Интересно разработкой какой системы Вы занимаетесь
http://www.solidworks.ru/products/data_management/

NikolayK
и количество программеров, тестеров, саппортов можно в % отношении.
В разное время было разным. Во время активного развития было три разработчика
(включая меня, т.к. я тоже разрабатываю), три тестера, один саппорт.

Соотношение % сильно зависит от проекта. Глупо стараться делать 1:3 только
потому, что "так делает Microsoft при разработке винды". Вы работаете в конторе,
аналогичной Microsoft, над разработкой операционной системы? Если нет, то к чему
аналогии?
____________________________
С уважением, Лисеев Дмитрий.
http://private.peterlink.ru/dimik/
PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Планирование проекта
    #34756730
Проба сил№
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry V. Liseev
В мире нет стандартов. Есть практики. Удачные и неудачные в конкретных
условиях применения. И те и другие надо знать и изучать.
NikolayK Хороший пример ввода стандартов личностью, по месту
softwarer Проба сил№Всегда важно иметь разделение на поддержку и развитие.
Спорно; весьма спорно. В примере Дмитрия, без разделения, продвижение вперед не то что б невозможно, просто слишком длительно...

А вот с отсутствием ТЗ я не согласен, хотя далеко не всегда его можно легко создать... Мы тоже делаем спецификации, но все задачи которые идут как серьезные, у нас делаются по ТЗ.
...
Рейтинг: 0 / 0
Планирование проекта
    #34758157
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dmitry V. LiseevВ разное время было разным. Во время активного развития было три разработчика (включая меня, т.к. я тоже разрабатываю), три тестера, один саппорт.
Такое соотношение позволяет иметь высокооплачиваемых программистов (которым не надо долго объяснять что и как писать) и оплачиваемых тестеров (менее квалифицированные программисты).
Интересное соотношение у меня 1:12 УЖЕ ЗАДУМАЛСЯ
Dmitry V. LiseevКогда все спецификации по всем требованиям утверждены, можно начинать программировать. Это что такое на нее есть стандарты, я согласовываю с заказчиком следующее
...
Рейтинг: 0 / 0
Планирование проекта
    #34758163
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Планирование проекта
    #34758228
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dmitry V. Liseev У нас нет ТЗ и такой документ вообще отсутствует
А вот на сайте написано
Согласно методике внедрения SWR, управляющие связи и информационные потоки между подразделениями определяются в рамках технического аудита предприятия, по результатам которого формируется Техническое задание на разработку автоматизированной системы.
www.solidworks.ru/implementation/
...
Рейтинг: 0 / 0
Планирование проекта
    #34758391
Сахават Юсифов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry V. Liseev
Есть работы вероятностного характера, и они
не поддаются планированию. А есть вполне предопределенные.


Поддаются. И те и другие. PERT уже 50 лет с лишним.

Dmitry V. Liseev
Допустим, дают программисту задание
реализовать фичу, срок - 40 часов. Он начинает работу, в этот момент звонит юзер и говорит, что у него
ошибка и надо исправить, потом еще кто-то чего-то спросил, потом еще. Итог - работа в срок не сделана,
по этой причине задержано начало других работ, в итоге полетел план-график всего проекта.


ПМ очень похож на резервирование в сервисе. Основная проблема одна и та же - управление пулом рабоче силы. (workforce)
...
Рейтинг: 0 / 0
Планирование проекта
    #34766566
А Вы зайдите на сайт www.a2nta.ru и посмотрите как люди работают
...
Рейтинг: 0 / 0
Планирование проекта
    #34768932
NikolayK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Геннадий ЧернецовА Вы зайдите на сайт www.a2nta.ru и посмотрите как люди работают
Ага MS Project тоже самое и еще куча программ в томже стиле - это управление проектом, а не планирование.
...
Рейтинг: 0 / 0
Планирование проекта
    #34930541
Всем привет! Помогите, кто может. Где можно найти литературу по IDEF.0 ? Курсовую надо написать по "Информационные системы и технологии в экономике". Спасите заочника!!!
...
Рейтинг: 0 / 0
Планирование проекта
    #34930561
MLight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
40 сообщений из 40, показаны все 2 страниц
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Планирование проекта
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]