Я работаю в компании, занимающейся разработкой программного обеспечения, где работа по разработке была передана нам. На берегу команда поддержки и поговорить напрямую с клиентами. Мы никогда не общаемся с клиентами напрямую, мы просто общаемся с людьми из береговой команды, которые общаются непосредственно с клиентами.
Когда появляются требования, береговая команда говорит с клиентами, составляет необходимые документы и сообщает нам. После изучения требований мы создаем проектную документацию (следуем традиционной модели водопада).
Но есть одна проблема во всем процессе: никто из оффшорной или береговой команды не понимает полностью функциональность приложения. Мы просто знаем, что это большое сложное веб-приложение для обработки сложных заказов, управления каталогами, управления кампаниями и других операций. Мы боремся с проектной документацией, так как требования не будут понятны. Затем он переходит к ряду вопросов / ответов между командой на берегу, командой на берегу и клиентами. Нам часто говорят, чтобы понять функциональность из кода. Но это обычно неосуществимо, поскольку база кода огромна и даже понимание простого пункта меню занимает дни, если не недели. Мы пытались убедить клиентов передать нам знанияо приложении, но безрезультатно. Наш менеджер часто говорит нам начать кодирование, даже если проектная документация не завершена или требования не ясны. Мы начнем с кодирования той части требований, которая кажется ясной, и подождем остальных.
Это обычно задерживает развертывание на месяц. В крайних случаях у нас будет очень мало ошибок при разработке и производстве, но клиенты скажут, что это не то, что они просили. Это привело бы к игре по обвинению и ряду запросов на изменения, и в итоге мы разработали бы что-то совсем другое.
Мой вопрос: как бы вы занялись разработкой, если не знаете полностью функциональность приложения?
ОБНОВИТЬ
Методология разработки - это не мой выбор, и я не лидер своей команды. Так все и началось. Я пытался рассказать людям о преимуществах гибкой, но безрезультатно. Кроме того, я не думаю, что у моей команды есть необходимое мышление для работы в гибкой среде.