Вы знаете, я думаю, что я не согласен с тем, что слепо поместил дизайн графического интерфейса перед базовой моделью данных. В реальной бизнес-среде управление бизнесом связано не только с рабочим процессом - огромным компонентом бизнеса, который вращается вокруг анализа данных и отчетности. В конце концов, как вы можете принимать решения на основе данных, которые вы не можете понять или понять? Вдобавок к этому, когда вы садитесь с клиентом, в 90% случаев, они не понимают, что их приложение должно делать, как его нужно раскладывать, и половину времени, они даже не понимают, что функциональность, которую он требует.
Как вы анализируете свои данные, если вся ваша модель данных - это просто сохранение данных на экране? Как вы сообщаете об этом? Если вы садитесь с гуру базы данных и говорите им, что хотите получить отчет, построенный из модели данных, которая в основном представляет вашу ViewState, они уйдут и скажут вам сделать это самостоятельно - по крайней мере, если кто-то сказал мне, что мне нужно было создать отчет основанный на этом типе модели, я бы бросил и сказал им, чтобы кто-то другой сделал это.
Графический интерфейс, который находится поверх модели данных, является случайным и позволяет сотрудникам взаимодействовать с данными самым простым способом. Имейте в виду, что пользователи программного обеспечения не являются программистами, они не думают, как делают программисты или архитекторы баз данных, и они не работают так, как мы работаем; и они этого не хотят. Они хотят легко и логично вводить данные в соответствии с их ежедневным рабочим процессом. Они хотят уметь думать, сколько я могу сделать сегодня, чтобы, когда я возвращаюсь домой, мне не нужно заниматься со мной, они хотят отправиться в отпуск, не беспокоясь о том, сможет ли новый парень удержаться с потоком или если они смогут понять программное обеспечение.
Владельцы бизнеса хотят иметь возможность получать данные самым простым способом, им нужны отчеты, написанные с момента уведомления, и они хотят, чтобы эти данные были представлены логически, эффективно и в представлении любой модели, которую они выбирают для текущего отчет. Они мало заботятся о рабочем потоке, им не нужно знать, сколько отделов обрабатывалось этой частью данных, откуда оно взялось, как оно дошло до того, где оно сейчас. Они хотят знать, что представляет собой часть данных, что она представляет и что это означает для бизнеса в целом.
Для владельца бизнеса данные гораздо важнее, чем часть программного обеспечения. Для конечного пользователя, у которого есть давление, чтобы сделать в десять раз больше в десять раз меньше времени, программное обеспечение должно предоставить им возможность получить как можно больше данных в базе данных в кратчайшие сроки.
Итак, как вы решаете, для чего сначала проектировать, графический интерфейс или модель данных? Сколько денег будет сохранено в долгосрочной перспективе? Имеет ли компания 500 пользователей ввод данных в эту часть программного обеспечения и они делают это наиболее эффективным образом? Имеет ли компания 500 докладчиков и может ли они быстро и эффективно получать данные? Как долго длится струна?
Создайте свою модель данных для аналитиков данных - сделайте ее как можно более чистой и эффективной, чтобы получить данные в полном формате.
Создайте свой графический интерфейс для конечных пользователей и сделайте его чистым, простым и эффективным, так как это может быть для тех пользователей, которые получают как можно больше и простое количество данных в вашей базе данных без необходимости быть ученым-ракетоносителем. Часто конечные пользователи едва ли компьютерные грамотные по сравнению с теми, кто пишет программное обеспечение и извлекает данные.
С самого начала всегда имейте в виду, как вы собираетесь объединить их, потому что, если вы этого не сделаете, вы получите два конца и не сможете обеспечить средний уровень, и ваш проект упадет до штук ...
Больше денег напрасно тратится на передачу данных в систему и получение данных, чем написание программного обеспечения, которое выполняет проводку между двумя концами. Команда разработчиков не обойдется практически в том, что она стоит компании, чьи пользователи вводят неточные данные неэффективно и некачественные отчеты, потому что аналитики данных не могут эффективно получать данные неточно и тратить неделю на запись отчета, который реально не должен принимать более часа или два, и когда это написано, это не поможет.
Возможный дубликат: http://stackoverflow.com/questions/134094/developing-n-tier-app-in-what-direction – 2008-11-30 19:53:32
Согласен. Дубликат. Если это расширит другой вопрос, тогда предложите нам слить и wiki. – 2008-12-01 02:44:54
Метод MoSCoW помогает определить ваше требование, а затем спроектировать вашу модель. http://en.wikipedia.org/wiki/MoSCoW_Method – 2010-03-29 18:45:16