Что означает «предприятие» в отношении архитектуры программного обеспечения?

11

Я вижу, что термин «предприятие» часто используется разработчиками и программистами программного обеспечения и, похоже, используется свободно.

ан · тер · приз / entərˌprīz /

Существительное: проект или начинание, обычно сложное или требующее усилий. Инициативность и находчивость.

Может кто-нибудь уточнить, что на самом деле охватывает этот термин? «На уровне предприятия», «масштаб предприятия»? Есть даже «корпоративные издания» вещей. Что именно это значит? Очевидно, что не имеет смысла судить по приведенному выше определению, а более конкретно для программного обеспечения, что подразумевается под словом «предприятие»?

РЕДАКТИРОВАТЬ:

Чтобы добавить вращение на это - как этот термин вписывается в такие фразы, как модель Enterprise Framework? Какое отношение имеет доступ к данным и их контекст к описаниям в масштабе всей компании?

SkonJeet
источник
10
В основном это означает, что это достаточно сложно, что вы можете построить консалтинговый бизнес вокруг него ;-)
vartec
3
@SkonJeet: Такие компании, как IBM и HP, склонны злоупотреблять термином «предпринимательство», и их бизнес-модель в основном предоставляет консалтинговые услуги для развертывания и поддержки своих решений.
vartec
10
@vartec Я думал, что это означает ненужное сложное и дорогое программное обеспечение, которое покупают чрезвычайно крупные корпорации с раздутыми ИТ-бюджетами из-за всех сэкономленных денег, сокращая свой ИТ-персонал и оставляя за собой рабовладельцев?
maple_shaft
1
@maple_shaft: да, это довольно точное описание ;-)
vartec

Ответы:

11

Вы должны расширить свое определение.

С http://dictionary.reference.com :

en · ter · приз  [en-ter-prahyz] существительное

  1. проект, предпринятый или подлежащий осуществлению, особенно важный, сложный или требующий смелости или энергии: сохранять мир - трудное дело.
  2. план для такого проекта.
  3. Участие или участие в таких проектах: Наша страна была образована предприятием решительных мужчин и женщин.
  4. смелость или готовность к начинанию; авантюрный дух; изобретательность.
  5. компания, организованная в коммерческих целях; торговая фирма.

Согласно пятому определению, которое я цитировал выше, программное обеспечение Enterprise или лицензия Enterprise предназначены для предоставления решения для всей компании. Согласно словарному определению ФП, «Проект или Обязательство» в случаях, указанных ФП, является компанией.

Решение для всей компании означает, что оно будет использоваться везде, где у компании есть офис или сайт. Таким образом, лицензия Enterprise предоставит решение для всех сайтов компании. Это отличается от лицензии на Сайт, которая будет охватывать только одно местоположение, принадлежащее компании, а не все из них. Другое использование термина Enterprise - это просто обозначение всей компании, и оно не обязательно ограничено определенным программным обеспечением. Таким образом, у вас может быть программное обеспечение, отдел кадров или бухгалтерский учет, или даже поставка Jelly Beans для «Предприятия». При использовании в любом случае слово Enterprise в отношении размера компании не имеет значения, поскольку оно в равной степени относится к малому бизнесу, как и к мегакорпу.

Корпоративные выпуски программного обеспечения предназначены для того, чтобы быть упакованными полным набором функций, которые вам обычно требуются для компоновки своего рода многосерверного многосерверного решения. В этом случае, однако, вы обнаружите, что с такой же вероятностью это означает, что вы должны платить больше, чтобы получить больше функций, которые вам, вероятно, не понадобятся на меньшем «предприятии», и поэтому слово становится большая маркетинговая гипербола как нибудь.

Чтобы ответить на отредактированную часть ответа ОП, Enterprise Framework - это модное имя для API, поддерживающего реализацию продуктов, предназначенных для распределенного хранения данных и обмена данными, обычно необходимых для продуктов, разработанных с учетом многосайтового продукта. Это, как правило, не предназначено для малых предприятий и все же может использоваться для создания продуктов, которые могут масштабироваться от одного сервера / сайта до нескольких серверов / сайтов. Идея состоит в том, чтобы позволить продукту расти в соответствии с изменяющимися потребностями компании (предприятия) по мере его роста, например, открывать офисы по всему миру, но, например, совместно использовать общую почтовую систему.

Таким образом, проблема использования слова «расплывчато» или «слабо» на самом деле не является проблемой, поскольку термин Enterprise всегда подразумевает «всю компанию, независимо от количества сайтов, которые вам нужно обслуживать». ... только « Энтерпрайз» явно не в состоянии сказать что-либо, и в соответствии с примерами, приведенными ОП, значение слова « Энтерпрайз» остается ясным.

S.Robins
источник
Спасибо за ваш ответ, он многое прояснил - и, честно говоря, я чувствую, что у меня есть лучшее понимание слова предприятия в контексте программного обеспечения. Тем не менее, похоже, что общий ответ заключается в том, что предприятие используется для описания программного обеспечения, которое предназначено для масштабируемости всей компании, но разве не все программное обеспечение по существу разработано для масштабируемости? Если это плохо спроектировано. Также, пожалуйста, смотрите редактирование.
SkonJeet
1
@SkonJeet Нет, обязательно. Масштабируемость зависит от многих факторов, и я бы не назвал программное обеспечение плохо спроектированным, если оно не соответствует условиям, в которых оно никогда не планировалось или не было разработано. Работает ли программное обеспечение на многих серверах? Хорошо ли распараллеливает свою рабочую нагрузку? Локализует ли текст текст, чтобы его можно было использовать во многих странах? Будет ли он собираться и работать на другом оборудовании? Много ли консультантов / программистов, которые могут использовать / модифицировать его? Все это и многое другое являются важными факторами полезности программного обеспечения для предприятия в зависимости от конкретных потребностей этой компании.
CodexArcanum
6

По моему опыту, слово «предприятие» в настройках программного обеспечения чаще всего относится к программному обеспечению, написанному для большой корпорации. Это также часто относится к внутреннему программному обеспечению, а не к клиентскому программному обеспечению.

Это может показаться произвольной чертой (и, конечно, что именно является «большим»), но, написав программное обеспечение для различных типов компаний, я могу вам сказать, что потребности крупного бизнеса сильно отличаются от нужды небольших компаний, что опять же сильно отличается от потребностей частных лиц.

Проблемы, которые часто не имеют отношения (или, скорее, не стоит вкладывать) для многих небольших компаний, включают:

  • Высокая доступность / бесшовное аварийное переключение
  • Резервирование / аварийное восстановление
  • Конфиденциальность данных клиентов
  • Соответствие законам и правилам
  • Мониторинг в реальном времени, богатая информация трассировки для устранения неполадок
  • Акцент на отчетности (как правило, с учетом интеллектуального управления)

Я бы рискнул предположить, что это потому, что накладные расходы и прибыль крупной компании находятся в совершенно другом масштабе, чем крупная компания. Если платежные ведомости небольшой компании выходят из сети, вы можете заплатить вручную или извиниться перед всеми лично. Если это происходит в крупном корпоративном обществе, значит, восстание. Когда-то у меня был банк, который терял цифры в несколько миллионов долларов в час до тех пор, пока не была обнаружена ошибка - это позволяет взглянуть на вещи. Надежность - большая вещь для большинства крупных компаний (ну, по крайней мере, на бумаге).

Даниэль Б
источник
5

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

Одед
источник
Спасибо за ваш ответ, но, похоже, это не единственное нормальное использование слова. Взглянув на ссылку, предоставленную Roc (в комментариях к OP), вы увидите, что есть много разных вариантов использования этого слова. Одна вещь, которая действительно раздражает меня, состоит в том, что на младшем уровне - разобраться в разработке и технологиях достаточно сложно без таких слов, которые летают по отрасли, чтобы вызвать путаницу.
SkonJeet
3
@SkonJeet - Именно поэтому я утверждаю, что этот термин неопределенный.
Одед
Вот почему +1, и, вероятно, будет помечен как ответ. Как будто в сообществе программистов (это даже можно увидеть в SO) есть почти тип претенциозности с использованными словами - разработанные теми, кто на высоком уровне, чтобы продемонстрировать свои знания и исключить тех, кто не обладает ими.
SkonJeet
1
@SkonJeet - «Agile» - еще одно такое слово.
Одед
1
@ С.Робинс - я с уважением не согласен. Использование в этом контексте является неопределенным и зависит от того, кто говорит. Это в основном маркетинговый термин и не имеет точного значения.
Одед
2

Теоретически «корпоративное решение» - это любое решение, подходящее для крупномасштабного корпоративного бизнеса. Однако на практике это означает, что решения разрабатываются с менталитетом «никто не уволен за наем IBM» .

С другой стороны, есть такие компании, как Google, Facebook, Amazon и т. Д., Которые строят свой бизнес на решениях, которые традиционно не считаются «корпоративными». Например, они изначально использовали дешевое оборудование CotS . Программное обеспечение, которое они используют, является открытым исходным кодом, большую роль в котором играют динамические языки, которые также традиционно не считаются готовыми для предприятий (даже если они широко используются предприятиями).

Vartec
источник
«этого достаточно для крупномасштабного корпоративного бизнеса» - какое решение изначально не предназначено для масштабируемости? В этом мое замешательство.
SkonJeet
1
Довольно много программного обеспечения предназначено для работы в первую очередь, а затем во втором масштабе. Масштабируемость - это YAGNI для многих решений.
Эойн Кэрролл
Почему вы использовали аббревиатуру YAGNI? 9/10 человек, вероятно, не знают, что это значит, и должны гуглить.
SkonJeet
2
@SkonJeet 9/10 не разработчики не знают, что означает YAGNI, но большинство разработчиков знают (или должны), это довольно распространенная аббревиатура, которая часто встречается (наряду с DRY, SOLID и т. Д.). И нет ничего плохого в поиске аббревиатуры, вы узнали что-то новое, сделав это.
Яннис
2

Определения хороши и хороши. В программном обеспечении это, кажется, прикреплено как маркетинговый термин - кодовое слово, которое говорит: «купите это для своего бизнеса, это серьезное программное обеспечение, где вы можете получить поддержку». Является ли это правдой, зависит от продукта, но это сообщение, которое маркетинг пытается отправить. Часть поддержки важна для многих компаний - они хотят, чтобы кто-то разговаривал по телефону на другом конце, когда они звонят с проблемой.

В этом контексте это маркетинговый термин.

скоро
источник
1

Корпоративное программное обеспечение обычно представляет собой:

  • Внутренняя облицовка;
  • Критически важны и / или используются многими людьми в бизнесе; и
  • Интегрирован с другими внутренними и / или внешними системами облицовки

Корпоративное программное обеспечение не обязательно должно быть реализовано в большой компании. Примером может служить система электронных медицинских карт в кабинете небольшого врача, которая интегрирована с системами больничных лабораторий и системами обработки страховых требований.

утес
источник