Шаг первый, поговорите с очень большим разнообразием потенциальных клиентов и узнайте их потребности, то, что они в настоящее время используют, и то, что они хотят, чтобы их текущие продукты могли делать. Потратьте 10 раз на это, как вы думаете, что вам нужно прямо сейчас. Выложите потенциальные графические интерфейсы на бумаге и попросите собеседников посмотреть на рисунки и внести предложения. Если это вообще возможно, нанять некоторых людей в отрасли в качестве бизнес-аналитиков, чтобы помочь с этим шагом. Спросите о юридических требованиях. В некоторых отраслях есть много юридических проблем, а другие нет. Все, что связано каким-либо образом с медицинским миром, и вам, например, потребуется исследование и полное понимание требований HIPPA.
Создайте структуру базы данных и графический интерфейс, а затем попросите настоящих пользователей поиграть с ней. Рефакторинг основан на том, что они говорят (удивительно, сколько вещей пользователи не учитывают при сборе требований, о которых они не думают, пока не столкнутся с фактическим графическим интерфейсом).
Подумайте о том, что необходимо для всех потенциальных клиентов и где вам может понадобиться настройка - ваши интервью должны служить вам здесь. Решите, как обрабатывать настройки. Или даже если вы позволите. Это может сильно зависеть от отрасли и того, насколько стандартными являются их методы.
Если это программная коробка, часто дизайн включает таблицу с настраиваемыми полями, которые могут быть добавлены в формы и отчеты пользователя.
В веб-решении часто каждый пользователь, нуждающийся в настройке, может иметь свою собственную базу данных, в которой хранится пользовательская информация (и центральная база данных standdown для неизученных вещей), а программисты вносят изменения на основе запросов клиентов , Если вы пройдете этот маршрут, во второй раз, когда вы выполните настройку simliar для второго клиента, подумайте, нужно ли вам реорганизовать, чтобы сделать эту новую функцию программного обеспечения доступной для всех. Нет необходимости писать 17 отчетов о пользовательских посещаемости, которые могут отличаться только одним или двумя полями, если клиент может за меньшие деньги иметь стандартный отчет.
В веб-модели вы также можете создать кучу модулей и предложить клиентам выбрать, что добавить в их собственное решение. Они будут платить в зависимости от количества и сложности модулей, которые они выбирают. Таким образом, клиент, который хочет только три стандартных отчета, будет платить меньше, чем клиент, который хочет все 27. Когда предлагается новая настройка, клиент платит за разработку, если это предложение, похоже, не сразу применяется к другим, но модуль делается так, чтобы другие могли его купить. Если другие покупают его, первоначальный клиент, который попросил об изменении, может получить часть денег до тех пор, пока не будут оплачены затраты на разработку. Они также могут потребовать, чтобы что-то оставалось как пользовательский модуль и оплачивало гораздо более высокую цену за эту работу. У нас есть несколько клиентов, которые даже не хотят, чтобы их данные были на тех же серверах в том же месте, что и другие клиенты. Излишне говорить, что мы взимаем огромную премию за то, что делали что-то подобное.
Настройка стоит дорого и может привести к необходимости использования большего количества программистов. Перед тем, как перейти на маршрут настройки, очень сильно подумайте. Это действительно может быть то, что продает ваше программное решение, но оно плохо масштабируется. Неплохо, когда у вас десять кузнецов, но когда у вас есть пара сотен, он может выйти из-под контроля очень быстро. Гораздо сложнее отменить настройку, как только вы ее предложите, чем добавить настройку позже из стандартного набора. Часто потребность в настройке больше связана с организацией корпоративной отчетности. Если вы можете создать интерфейс для отчетов, в котором люди могут выбирать, какую информацию они хотят и сохранять свои собственные отчеты, вы можете справиться с большинством потребностей в настройке в своей отрасли без необходимости полной настройки.
Это может быть правдой, если приложение в том же домене, в этом случае приложение действует как продукт для каждого ... –