Вопросы архитектурного решения - PullRequest
3 голосов
/ 25 мая 2010

Мне нужно выбрать правильную модель архитектуры для своего решения (клиент-сервер, веб-приложение, веб-сервисы). Скажите, пожалуйста, на какие вопросы я должен ответить, чтобы принять правильное решение? спасибо

Ответы [ 3 ]

6 голосов
/ 25 мая 2010

Нет. Извините за грубость, но если вы не знаете, какие вопросы задавать, вы тоже не будете знать, что делать с ответами. Предлагаю привлечь опытного архитектора.

Менее легкомысленно, вам нужно учитывать целый ряд факторов - количество и местонахождение пользователей, типы операций, которые они будут выполнять, их ожидания в отношении производительности; размер, частота доступа и частота обновления базовых данных; технологические ограничения, налагаемые окружающей средой в целевой организации; требования безопасности, как клиентские, так и нормативные и т. д. и т. д. Это очень большая область.

3 голосов
/ 25 мая 2010

Вот некоторые вопросы, на которые должен ответить архитектор программного обеспечения при выборе архитектуры. Дэвид охватил некоторые другие важные области, такие как безопасность и правила.

  • Каковы источники моих данных (информации)?

  • Какие данные (информацию) мне нужно представить, отобразить, передать другим приложениям?

  • Является ли мое приложение интенсивным ЦП (маловероятным) или IO (вероятно).

  • Как я буду развертывать изменения в своих приложениях?

  • Кто (сколько) человек обладает навыками и знаниями для разработки и поддержки моего приложения?

  • Какие (сколько, насколько стабильные) компании разрабатывают и поддерживают технологию, поддерживающую мое приложение?

  • Будет ли это приложение приносить моей компании больше денег, чем стоит для разработки и поддержки моего приложения?

  • Могу ли я объяснить инвестору свое заявление в 100 словах или меньше (шаг лифта)?

Удачи.

2 голосов
/ 25 мая 2010

Прежде всего, я бы посоветовал вам немного почитать. В Википедии есть несколько отличных статей, которые подходят к архитектурным темам без права собственности. НАПРИМЕР. :

http://en.wikipedia.org/wiki/Service-oriented_architecture

http://en.wikipedia.org/wiki/Web_service

http://en.wikipedia.org/wiki/Client_server

(плюс дополнительные нагрузки)

Самое главное (ИМО) подумать об уровнях и слоях. Будьте очень осторожны с тем, нужно ли начинать с перехода по маршруту N-Tier / SOA. Это может добавить много начальной работы, которую вы можете избежать, если начнете с клиент-серверного подхода. Пока вы думаете о слоях, которые вы встраиваете в свой дизайн, переход на N-уровневый подход в дальнейшем не должен быть болезненным.

...