Какая методология Agile лучше всего подходит для классного проекта?[закрыто]
-
03-07-2019 - |
Вопрос
Проект плохо определен:мы должны написать образовательное программное обеспечение для студентов CS 111 «Компьютерное программирование I», уделяя особое внимание функциям.У нас есть 6 студентов-разработчиков с разным опытом, работающих во Flex.Продолжительность проекта около 7 недель.У нас очень ограниченное личное время (30 минут в неделю) и очень ограниченное рабочее время (<8 часов на разработчика в неделю).У нас ограничен доступ к клиентам (профессор нашего курса, профессор CS 111, студенты CS 111).
Наш набор инструментов включает Flex Builder, Subversion и TRAC.
Какая методология лучше всего подходит для этого проекта и почему?С другой стороны, какие особенности следует собрать из различных методологий, чтобы лучше соответствовать этой ситуации?
Решение
Что заставляет вас думать, что любая методология будет успешной в таких обстоятельствах — мало общения, больше требований, чем времени, и отсутствие доступа к клиентам?
При этом я бы сосредоточился на инкрементной доставке (каждая итерация должна иметь несколько рабочих функций), модульном тестировании (все тесты проходят до регистрации), маркировке инкрементальных релизов (возможность вернуться к работающему релизу) и объединении в пары. сильных членов команды с более слабыми членами команды, чтобы повысить общую производительность команды.Подумайте о том, чтобы посвятить одного сильного члена команды интеграционному тестированию.
Поэтапная доставка является наиболее важной.Показать рабочую демо-версию, меньшую, чем было запрошено, всегда лучше, чем показать неработающий прототип.
Другие советы
Здесь вы можете использовать методологию Agile, но, очевидно, вам придется адаптировать ее в соответствии со своими потребностями.
Например, если у вас недостаточно доступа к реальным клиентам, то кто-то, лучше всего понимающий ваши цели, должен будет выступать в качестве доверенного лица клиента.Я бы также предложил попытаться получить больше доступа к клиентам - почти все стараются казаться более занятыми, чем они есть на самом деле, и обычно есть способ решить это препятствие.
Убедитесь, что время работы вашей команды ограничено, и они могут работать одновременно.Не может быть Agile-подхода, если вы не можете работать вместе.
Вы определенно можете использовать оценки на основе историй, итеративный процесс разработки и т. д.
Что действительно важно, так это дать каждому члену команды четкое и однозначное понимание того, как работает Agile-процесс и какова роль каждого человека в проекте.Очень легко сказать, что вы будете использовать SCRUM, но, к сожалению, без реального понимания и опыта это не будет иметь большого значения.
Несколько советов:
- Обучайте членов вашей команды
- Получите список того, что вы хотели бы реализовать, если бы вы не были ограничены временем/ресурсами.
- Узнайте, что реально реализовать с учетом ваших ограничений.Наверное, это будет не так уж и много.Не пытайтесь быть слишком оптимистичными.Сосредоточьтесь на том, чего вы действительно можете достичь.
- Убедитесь, что ваши реальные клиенты готовы к этому.
- Используйте короткие итерации (1 неделя или меньше).Убедитесь, что вы можете предоставить полностью протестированный продукт к концу каждой итерации.
- Покажите свою работу заранее.