Как сократить время реализации проекта?
263 сообщения
#15 лет назад
Цитата ("bridgid2009"):Хорошо, а как сделать так, чтобы проект который можно сделать за 30 дней сделать в срок, а не как обычно...
Можно попробовать "технологию" Agile. В Вашем случае:
1. С точки зрения принципа "20-80", тщательно проанализировать требования заказчика и проект системы и выделить те 80% функциональности, которые можно реализовать за 20% имеющегося времени;
2. Выделенные 80% функций разбить на разумное число как можно менее связанных программных модулей, оставшиеся 20% перенести на "второй этап";
3. Разработать методику интеграции модулей и комплексного тестирования;
4. Поручить разработку модулей отдельным программистам (или программисту, но в определенном порядке разработки) и, как можно раньше, интегрировать и тестировать полученные модули;
5. Как можно раньше предъявлять заказчику сделанные модули, начиная например, с макетов страниц и Login/Logout. Показывать заказчику каждую частную версию системы, независтмо от того насколько сильно она отличается от предыдущей;
6. Тщательно фиксировать все задержки разработки возникшие по вине заказчика, выпускать акты о переносе сроков и использовать полученное время для разработки оставшихся модулей.
Разумеется, все это можно сделать только при наличии хорошей мотивации и заинтересованности в работе всех участников разработки. Для того, чтобы уложиться в 30 дней, таких специалистов (2-3 человека минимум) надо найти за один-два дня - с моей точки зрения, это вряд ли возможно - даже если бюджет проекта превосходит все мыслимые пределеы.
Цитата ("bridgid2009"):
как найти адекватных программистов
Есть несколько формальных подходов (интервью, тестирование), позволяющих увеличить вероятность найти подходящих специалистов за разумное время. Это тема для отдельного разговора.
Цитата ("bridgid2009"):
и реализовать их работу над одним проектом?
Есть отработанные методики организации коллективной работы, есть и всякие программы и сайты облегчающие этот процесс (результат, конечно, не гарантируется). В основном, организация коллективной разработки закладываются на этапе проектирования системы - есть хорошая поговорка: "структура системы отражает взаимоотношения в коллективе разработчиков". Обратное, тоже, верно. Если Вы всерьез интересуетесь этим вопросом, то почитайте "Мифический человеко-месяц или как создаются большие программные комплексы", автор Брукс. Книга не очень новая, но с тех пор как она была написана, изменилось немногое. Есть еще одна английская поговорка применимая к Вашим обстоятельствам: "даже девять беременных женщин не смогут родить ребенка за один месяц" (извините за корявый перевод) - бывает полезно это вспоминать при переговорах с заказчиком или руководством проекта.
263 сообщения
#15 лет назад
Цитата ("tvv"):....Все сводится к одному — кадры решают все (с). ...
Было бы интересно разработать методику создания программного обеспечения, которая бы гарантировала что НЕ кадры решают все. Иными словами говоря, минимизировать влияние квалификации и личных качеств разработчиков на характеристики, сроки и стоимость разработки программного продукта.
3240 сообщений
#15 лет назад
Цитата ("Illarion_SA"):Было бы интересно разработать методику создания программного обеспечения, которая бы гарантировала что НЕ кадры решают все. Иными словами говоря, минимизировать влияние квалификации и личных качеств разработчиков на характеристики, сроки и стоимость разработки программного продукта.
Это уже давно сделано. Таких методик (методологий) множество, и они постоянно развиваются и улучшаются.
Одна из самых старых и известных подобных методологий — RUP.
Позволяет делать огромные проекты с очень хорошим качеством даже малоквалифицированными программистами (сотни тысяч индусов так себе работу нашли).
Далее, есть признанные модели типа CMMI, проводятся сертификации, в больших конторах часто должность отдельную выделяют, процесс инженер... Об этом уже столько написано-перенаписано.
Но нельзя забывать, что прорывные идеи и стартапы реализуются в основном именно небольшими командами.
Одно дело работать на процесс (для огромных проектов, измеряемых сотнями человеко-лет, тут по другому и не получится), другое — на результат, причем быстрый результат, как например текущий пример — проект за 30 дней. В таких проектах как раз кадры все решают.
Если маленький проект, на пару месяцев работы, дать толпе криворуких джуниоров, то независимо от процесса они проект завалят. А вот большой проект с ними можно вполне сделать (подключив ненадолго на первом этапе опытного архитектора, и используя несколько часов в неделю стороннего эксперта), хотя под конец этого проекта, при правильном процессе, они уже матерыми станут

22 сообщения
#15 лет назад
Будет время, на досуге почитайте классику типа "Мифический человеко-месяц". Находится в гугле на раз.Там как раз описывается мудрость кузнеца из "Формулы любви", что такую то работу один человек за день сделает, а трое - за пару недель не успеют.
441 сообщение
#15 лет назад
Цитата ("bridgid2009"):Нужен человек, который сможет решить/помочь решить/или проконсультировать нас так, чтобы мы этот проект реализовали за 20-30 дней.
Найдите человека, который реализовывал похожий проект и попросите проконсультировать.
Но вообще, если требуется задача так существенно сократить срок разработки, скорее всего ваш вариант - покупка готового решения (возможно, с отказом от части функционала).
ps. Программеры при оценке сроков обычно ошибаюсь в меньшую сторону (т.е. занижают сроки).
277 сообщений
#15 лет назад
Цитата ("bridgid2009"):Цитата ("superkoder"):Опытные руководители не берутся делать работу, которая занимает много месяцев, за 1 месяц.
Просто этот проект делает единственный адекватный PHP программист которого мы нашли...но времени у него на этот проект немного, до 4 часов в день.
Нифига себе, это мало? если он будет уделять с 9-00 до 13-00, это супер,
По правилам (таким-то) раб день - 8 часов +перерыв на обед 1 час.
а вам дают 4часа = 50% времени в сутки.
Учтите, долго работать - переутомление - ошибки - ссоры - ВАХ.
---
ps нужна помощь?