Бизнес логика в программировании это
Бизнес-логика
Бизнес-логика — в разработке информационных систем — совокупность правил, принципов, зависимостей поведения объектов предметной области (области человеческой деятельности, которую система поддерживает). Иначе можно сказать, что бизнес-логика — это реализация правил и ограничений автоматизируемых операций. Является синонимом термина «логика предметной области» (англ. domain logic ).
Проще говоря, бизнес-логика — это реализация предметной области в информационной системе. К ней относятся, например, формулы расчёта ежемесячных выплат по ссудам (в финансовой индустрии), автоматизированная отправка сообщений электронной почты руководителю проекта по окончании выполнения частей задания всеми подчиненными (в системах управления проектами), отказ от отеля при отмене рейса авиакомпанией (в туристическом бизнесе) и т. д.
В фазе бизнес-моделирования и разработки требований бизнес-логика может описываться в виде:
- текста;
- концептуальных аналитических моделей предметной области (онтологии);
- бизнес-правил;
- разнообразных алгоритмов;
- диаграмм деятельности;
- графов и диаграмм перехода состояний;
- моделей бизнес-процессов.
В фазе анализа и проектирования системы бизнес-логика воплощается в различных диаграммах языка UML или ему подобных. В фазе программирования бизнес-логика воплощается в коде классов и их методов, в случае использования объектно-ориентированных языков программирования, или процедур и функций, в случае применения процедурных языков.
На жаргоне разработчиков программного обеспечения «бизнес-логикой» также называются программные модули, её реализующие, и уровень системы, на котором эти модули находятся (англ. business logic layer, domain logic layer ).
В многоуровневых (многослойных) информационных системах этот уровень взаимодействует с нижележащим уровнем инфраструктурных сервисов (англ. infrastructure layer ), например, интерфейсом доступа к базе данных или файловой системе (англ. data-access layer (DAL) ) и вышележащим уровнем сервисов приложения (англ. application services layer ), который уже, в свою очередь, взаимодействует с уровнем пользовательского интерфейса (англ. user interface layer ) или внешними системами.
См. также
Wikimedia Foundation . 2010 .
Смотреть что такое «Бизнес-логика» в других словарях:
БИЗНЕС-ЛОГИКА — В разработке информационных систем совокупность правил, принципов, зависимостей поведения объектов предметной области (области человеческой деятельности, которую система поддерживает). Иначе можно сказать, что бизнес логика это реализация правил… … Словарь бизнес-терминов
Логика бизнеса — Бизнес логика в разработке информационных систем совокупность правил, принципов, зависимостей поведения объектов предметной области системы. Иначе можно сказать, что Бизнес логика это реализация правил и ограничений автоматизируемых операций.… … Википедия
Бизнес процесс — представляет собой систему последовательных, целенаправленных и регламентированных видов деятельности, в которой посредством управляющего воздействия и с помощью ресурсов входы процесса преобразуются в выходы, результаты процесса, представляющие… … Википедия
Бизнес-моделирование — (деловое моделирование) деятельность по формированию моделей организаций, включающая описание деловых объектов (подразделений, должностей, ресурсов, ролей, процессов, операций, информационных систем, носителей информации и т. д.) … Википедия
Бизнес-требования к информационной системе — Бизнес требования на разработку (доработку) информационной системы разрабатываются заказчиком на самых ранних стадиях, как правило, до инициации проекта и включают следующие разделы Содержание 1 Общие положения 2 Характеристика объекта авт … Википедия
Бизнес моделирование — деятельность по выявлению и описанию существующих бизнес процессов (анализ бизнес процессов), а также проектированию новых (проектирование бизнес процессов). Бизнес моделированием также называют дисциплину и отдельный подпроцесс в процессе… … Википедия
Моделирование бизнес-процессов — Бизнес моделирование деятельность по выявлению и описанию существующих бизнес процессов (анализ бизнес процессов), а также проектированию новых (проектирование бизнес процессов). Бизнес моделированием также называют дисциплину и отдельный… … Википедия
Реинжиниринг бизнес-процессов — У этого термина существуют и другие значения, см. Реинжиниринг. Реинжиниринг бизнес процессов (англ. Business process reengineering) фундаментальное переосмысление и радикальное перепроектирование бизнес процессов для достижения… … Википедия
Крупный бизнес — (Big bisness) Понятие крупного бизнеса, развитие и прибыль Информация о понятии крупного бизнеса, развитие и прибыль Содержание Содержание Динамика развития Прибыль и рентабельность Производительность труда Комплексная эффективность Крупный… … Энциклопедия инвестора
РАССРЕДОТОЧЕННАЯ ЛОГИКА — (distributed logic) Компьютерная система, которая дополняет основной компьютер удаленными от него терминалами, способными решать некоторые расчетные задачи, либо электронными устройствами, которые могут принимать некоторые решения,… … Словарь бизнес-терминов
Что такое бизнес-логика
Логика, да не совсем та
Дорогие читатели, в 100% случаев вы используете логику для того, чтобы разобраться в том, как работает продукт, который вы делаете и вам кажется, что именно это и есть UX. Основную часть того самого UX составляет бизнес-логика. Скорее всего вы спросите, почему дизайнера вообще должен волновать вопрос бизнеса. Ну логика-то ладно, а что такое бизнес-логика?
Давайте разберемся, что же такое бизнес-логика:
Бизнес-логика описывает работу всех бизнес-процессов, существующих в продукте.
Воу-воу-воу, полегче.. Это же и есть UX!
И да и нет. Под термином «Бизнес-логика» действительно понимают UX, но есть существенный нюанс.
Обычно к UX-дизайну относятся только пользовательские сценарии. Тогда как бизнес-логика описывает именно бизнес-процессы, происходящие под капотом UX с сугубо технической точки зрения.
Если бизнес-логика отвечает на вопрос:
«Как продукт должен работать технически?»
То UX-дизайн отвечает на вопрос:
«Как пользователь будет пользоваться продуктом и как сделать этот процесс максимально удобным и быстрым?».
Наглядная разница
UX-дизайн рассматривает ситуации (сценарии), с которыми сталкивается пользователь в процессе использования продукта; проблемы, которые продукт должен решить, чтобы им было интересно, выгодно или, как минимум, удобно пользоваться.
Бизнес-логика, наоборот, есть набор различных бизнес-процессов, возникающих внутри продукта. Они связаны между собой сугубо технически и никак не связаны с UX-дизайном.
UX-дизайн
То, как видит логику работы части приложения UX-дизайнер.
- Пользователь очень хочет смуззи!
- Он открывает приложение.
- Выбирает смуззи, указывает количество и нажимает кнопку «Купить»
- Ввводит адрес доставки, адрес проверяется, переходит к оплате смуззи.
- Оплачивает смуззи.
- Получает подтверждение покупки и видит информацию о дате и времени доставки, и ждет курьера.
Бизнес-логика
То, что должен видеть хороший UX-дизайнер и продакт менеджер.
- Пользователь авторизован / не авторизован
- Пользователь выбирает смуззи из всех доступных на данный момент
- Пользователь указывает характеристики смуззи
- Система проверяет, что для смуззи есть ингредиенты и запускает пользователя в процесс покупки смуззи.
- Пользователь указывает адрес доставки.
- Система проверяет условия доставки и можно ли вообще доставить смуззи за МКАД по указанному адресу.
- Пользователь переходит к оплате смуззи.
- Если пользователь авторизован, то его направляют на выбор способа оплаты.
- Если пользователь не авторизован, то его направляют на регистрацию.
- Пользователь выбирает способ оплаты.
- Пользователь указывает «Оплата наличными». Пользователь может выбрать и другой вариант.
- Пользователь указывает «Оплата банковской картой».
- Пользователь вводит данные банковской карты и нажимает на кнопку «Оплатить».
- Платежный шлюз проверяет реквизиты платежа
- Платежный шлюз принимает оплату и сообщает системе, что платеж принят.
- Заказ поступает в ближайшую к клиенту смуззишную.
- Заказ готовится.
- Заказ готов и передается курьеру.
- Курьер доставляет заказ пользователю.
- Курьер отмечает факт доставки заказа.
- Данные о завершении заказа попадают в систему.
- Система направляет пользователю предложение оценить сервис.
В реальной жизни бизнес-процесс устроен несколько сложнее, но общая идея и различие с UX-дизайном должны быть понятно.
Тэйк эвэй
Термин «Бизнес-логика» вы вряд ли услышите в стартапе, нацеленном на продажу смуззи, зато этот термин в широком ходу в B2B и интеграторах.
Теперь вас точно не испугаешь замысловатым вопросом «А как устроена бизнес-логика?». Помните, что бизнес-логика – это про весь механизм работы продукта, а UX-дизайном является лишь то, что по факту увидит пользователь в интерфейсе, в email и sms, отправленные вашим продуктом.
Что такое бизнес-логика
Пытаюсь понять, что такое J2EE и везде слышу бизнес-логика, бизнес-логика, а собственно говоря, что это такое бизнес-логика.
Re: Что такое бизнес-логика
у каждого свой скелет в шкафу. одни факториал считают, другие бизнес-логику.
Re: Что такое бизнес-логика
Система взаимосвязей и взаимозависимостей бизнес-данных, поддерживаемая при реализации бизнес-правил.
Re: Что такое бизнес-логика
> Система взаимосвязей и взаимозависимостей бизнес-данных, поддерживаемая при реализации бизнес-правил.
Что такое бизнес-данные и бизнес-правила. И вообще, почему везде пишут enterprise, бизнес и т.д. Что вообще подразумевается под этими понятиями в контексте IT технологий.
Re: Что такое бизнес-логика
>Что такое бизнес-данные и бизнес-правила. И вообще, почему везде пишут enterprise, бизнес и т.д. Что вообще подразумевается под этими понятиями в контексте IT технологий.
Допустим у тебя есть сайт где происходит регистрация пользователей и продажа им товаров.
Вот подсистема которая отвечает за логическую, обработку всех этих действий (не хтмл отображение, или управление действиями в зависимости от нажатой ссылки).
Тебя смутила наверно слово «бизнес» в данном случае это не имеет отношение к коммерции 🙂
Re: Что такое бизнес-логика
> Что такое бизнес-данные . ?
Любая информация относящаяся к бизнес-процессам и подлежащая учёту.
> Что такое . бизнес-правила?
Система реализации бизнес-процессов, характерных для данного предприятия.
P.S. Что такое бизнес-процессы, интересует?
Re: Что такое бизнес-логика
Всё просто. Надо только заменить слово «бизнес» на слово «производство». Логика производства, производственные процессы, производственные данные, правила производства.
Re: Что такое бизнес-логика
>P.S. Что такое бизнес-процессы, интересует?
Да. Ответ «процессы, описываемые бизнес-логикой» не канает.
Re: Что такое бизнес-логика
> И вообще, почему везде пишут enterprise, бизнес и т.д.
Бизнес — это совокупность бизнес-процессов, составляющих коммерческую суть предприятия.
enterprise — система взаимоотношений сущностей корпоративного уровня.
> Что вообще подразумевается под этими понятиями в контексте IT технологий.
Жизненный цикл ПО — есть суть бизнес-процесс, приносящий прибыль, который может быть подвергнут декомпозиции и предстать в виде суперпозиции (грубо: суммы или графа) нескольких бизнес-процессов, и т.д. рекурсивно вглубь.
Оптимизация бизнес-процессов уменьшает издежки и повышает прибыль.
Re: Что такое бизнес-логика
«Бизнес — это совокупность бизнес-процессов» — шесть баллов за определение! Сепульки отдыхают!
Re: Что такое бизнес-логика
>> P.S. Что такое бизнес-процессы, интересует?
> Да. Ответ «процессы, описываемые бизнес-логикой» не канает.
«бизнес-логика» управляет «бизнес-данными». «бизнес-процессы» описаны «бизнес-правилами». 🙂
«бизнес-процесс» (грубо) — система взаимосвязанных и взаимозависимых _действий_ повышающих стоимость продукта или услуги, и приносящих, в конечном итоге, прибыль.
P.S. Сегодня, около 18 часов. Ок?
Re: Что такое бизнес-логика
> «Бизнес — это совокупность бизнес-процессов» — шесть баллов за определение!
Это хорошо или плохо? 🙂
Там ещё было про «коммерческую суть предприятия».
Кто такие «сепульки»?
Re: Что такое бизнес-логика
> Система взаимосвязей и взаимозависимостей бизнес-данных, поддерживаемая при реализации бизнес-правил.
> Что такое бизнес-данные и бизнес-правила. И вообще, почему везде пишут enterprise, бизнес и т.д. Что вообще подразумевается под этими понятиями в контексте IT технологий.
ИМХО: это — неправильный перевод американских понятий на русский язык.
Вместо «бизнес-правила» читать: «порядок работы (регламент работ) на предприятии».
Вместо «бизнес-данные» читать: «(информационные) материалы для работ на предприятии».
Re: Что такое бизнес-логика
> Кто такие «сепульки»?
Ты можешь начать объяснение с самого начала, не употребляя слово «бизнес».
Re: Что такое бизнес-логика
Бизнес-логика по-русски («боян» старинный, но может не все знают):
Украли ящик водки. Продали. Вырученные деньги пропили. 🙂
Re: Что такое бизнес-логика
Бизнес логика — порядок работы приложения, как его видит клиент (по умолчанию считается, что клиент — ноль в айти)
бизнес логика описывается примерно так
регистрация:
пользователь зашол на сайт, кликнул на кнопку «регистрация», заполнил данные (ФИО,email,пароль) нажал сохранить
биллинг:
администратор зашол на страницу, нажал «отчет за последний месяц», выбрал из списка клиента, нажал «распечатать»
когда определенна бизнес логика, по ней уже разрабатывают логику работы приложения.
регистрация:
вывести форму, проверить поля, ?создать обьект, записать в базу
Re: Что такое бизнес-логика
кстати, никто не знает на самом деле что такое сепульки =)
Re: Что такое бизнес-логика
>кстати, никто не знает на самом деле что такое сепульки =)
Насколько помню у Лэма это что то типа делемы, «что было раньше яйцо или курица» 🙂
Re: Что такое бизнес-логика
> И вообще, почему везде пишут enterprise, бизнес и т.д.
А почему некоторые перед каждым словом вставляют «бля» и «нахуй»? Слова-паразиты это.
Re: Что такое бизнес-логика
Описаная на языке пользователя логика работы программы. Обычно выделяют логические модули типа Авторизация, Регистрация, Голосование и т.п.
Программист по этому описанию уже может стоить алгоритм работы программы. Набор классов которые реализуют эту бизнес-логику и есть бизнес-логика.
В больших системах между программистом и клиетом еще находится Аналитик. Который опрашивает клиента и составляет описание этих бизнес-процессов. В виде моделей использования (Use Cases). По ним обычно совместно с Ведущим программистом стоит модель классов. А программисты вписывают в методы классов алгоритмы. В зависимости от архитектуры приложения кроме бизнес-логики выделяют еще слой Данных, слой Пользовательского Интерфейса всякие Шлюзы и т.п.
Допустим если выбрана MVC модель то бизнес-логика будет в C, данные и интерфейсы доступа к ним будут в M, В V будет интерфейс пользователя.
Re: Что такое бизнес-логика
> Вместо «бизнес-правила» читать: «порядок работы (регламент работ) на предприятии».
«Регламент работ» + «Технологическая карта» (если пользоваться терминами из мира производства, учитывая приемлемый уровень детализации)
> Вместо «бизнес-данные» читать: «(информационные) материалы для работ на предприятии».
Этот подход устарел и приводит к путанице и бардаку.
Как оказалось, структура данных очень важна, и представляет отдельную ценность для предприятия, в общем объёме информации. К тому же, нужно отделять информацию «полезную» и «бесполезную», хотя грань между ними бывает тонка. В общем, всё, что приносит прибыль/деньги метится ярлычком «бизнес-«. 🙂
Поэтому, связку данные + их структура, приносящие прибыль, обозвали: «бизнес-данные».
Методы поддержания структуры в консистентном виде обозвали: «бизнес-логика».
Правила работы со структурированными данными обозвали: «бизнес-правила».
. и всё это для детализации описания термина: «процесс», который, со всеми этими наворотами, обозвали: «бизнес-процесс», ибо приносит деньги.
Пара бизнес-логики программирования с не-ИТ-персоналом [закрыто]
Был ли у вас опыт работы с человеком, не связанным с ИТ, с программистом во время процесса кодирования?
Это похоже на парное программирование, но один человек не является ИТ-персоналом, который много знает о бизнесе, может быть, инженер-технолог с математическим фоном, который знает, как вещи вычисляются и может понимать неидиоматический процедурный код.
Я обнаружил, что некоторые процедурные, специфичные для домена языки, такие как PL /SQL, вполне понятны не ИТ-инженерам. Эти лица в конечном итоге являются соавторами кода и гарантируют правильность формул, факторов и т. Д.
Я обнаружил, что такое программирование пары достаточно продуктивно, поэтому пользователи типа инженерного типа считают себя «владельцами» и «авторами» кода и помогают свести к минимуму недоразумения в процессе коммуникации. Они даже помогают разрабатывать тестовые примеры.
- Является ли эта практика распространенной?
- Есть ли у него имя?
- Были ли у вас подобные переживания?
2 ответа
Хотя вы описываете это как общий сеанс кодирования (я не могу назвать это парным программированием, так как только один человек «водит» — в парном программировании обе стороны берут клавиатуру и пишут код), я бы назвал это сбор критериев принятия.
То есть вы проверяете бизнес-правила (правильные вычисления и процессы) с бизнес-пользователем (хотя с технической поддержкой, инженером).
В этом случае он немедленно переводится на письменный код (SQL), но для многих других видов деятельности это не так, хотя есть автоматическое средство приемочного тестирования для разных языков и платформ (я специально задумываюсь о gherkin language и соответствующие инструменты).
Эта практика не так распространена, как она должна быть, но набирает все больше и больше последователей и тех, кто ее следует (получение критериев принятия в форме, которая может быть выполнена) находят ее неоценимой, как инструмент для общения с бизнесом и стимулировать развитие.
Да. Там, где я работаю, я занимаюсь хардкорным программированием, в то время как стратеги работают над стратегией uhm. То есть я пишу программы, которые реализуют свои торговые модели.
Ключом к этому является сидение справа рядом с ними и понимание того, что представляют собой идеи, и задание множества вопросов о вещах, которые могут быть случайными для них, но важны для стороны исполнения. Например, я бы спросил, как быстро должна выполняться торговля, независимо от того, влияет ли это на их модель. Это оказывает огромное влияние на то, как я буду писать код. На самом деле я стараюсь распылять вопросы в комнату, поскольку мы сидим там каждый день.
Есть двусторонняя обратная связь. Если я скажу им, что некоторые торговые схемы не будут легко строить, они вернутся и подумают о том, какие компромиссы могут быть сделаны на стороне принятия решений. Если они решат, что их новая стратегия нуждается в какой-то новой функции, я поговорю с ними о том, сколько времени потребуется, чтобы построить и какие потенциальные подводные камни.
Они делают модули кода, которые время от времени инкапсулируют какой-либо аспект торговой стратегии, но я массирую части вместе в архитектуру, которая позволяет нам отслеживать все различные стратегии, а также бэкэнд-операционные элементы. Таким образом, им не нужно знать ничтожную систему.
«Логика бизнеса 2.0» распалась
Как стало известно CNews, правление группы «АйТи» приняло решение разделить на две части компанию «Логика бизнеса 2.0», объединяющую разработчиков систем электронного документооборота и консультантов по управлению бизнес-процессами.
Первая структура получила название «Логика ЕСМ» (Enterprise content management). Ее возглавил ветеран группы «АйТи» Виктор Вайнштейн, до этого в течение нескольких лет возглавлявший дочернюю компанию-разработчика «Аплана Софтвер» (ее гендиректором стала бывший заместитель Вайнштейна Алла Прохорова).
Направление ECM сосредоточится на разработке и внедрении линейки собственного ПО, в которую входят электронный документооборот, автоматизация архива, финансовых документов, экспертизы нормативно-правовых актов.
Вторую структуру – «Логика BPM» (Business process management) возглавила Мария Каменнова, до этого руководившая объединенной «Логикой бизнеса 2.0». Специалисты по BPM занимаются описанием и оптимизацией бизнес-процессов заказчиков, т.е. выстраиванием основных процессов предприятий под определенную методологию. Помимо консультирования компания предлагает внедрение немецкого решения Metasonic Suite.
История «Логики бизнеса» началась задолго до ее образования в группе «АйТи» с индексом 2.0. Компания была создана Марией Каменновой в 1992 г. под названием «Метатехнология», а в 2002 г. была переименована в «Логику Бизнеса». В 2005 г. организация была продана немецкой компании IDS Scheer, а ее название сначала сменилось на «IDS Scheer Логика бизнеса», а затем на «IDS Scheer Россия и страны СНГ».
Разработку и внедрение СЭД в «АйТи» передали возглавлявшему «Аплану» Виктору Вайнштейну
После поглощения головной IDC Scheer другой немецкой компанией Software AG Мария Каменнова покинула компанию и перешла в «АйТи» с идеей объединения ECM и BPM. Так появилась «Логика бизнеса 2.0».
До объединения разработкой СЭД занималась «дочка» «АйТи» «Босс-референт» под руководством Андрея Гриба, а внедрением – созданная весной 2011 г. «АйТи. Информационный менеджмент», которой руководил Георгий Подбуцкий.
После создания «Логики бизнеса 2.0» Подбуцкий остался заместителем Каменновой (сейчас является заместителем Виктора Вайнштейна), а Гриб покинул компанию и, по данным CNews, сейчас сотрудничает с конкурирующим разработчиком «Интертраст». Туда же трудоустроилась еще часть команды.
Разработчики, недовольные реформой, проводимой Каменновой, стали покидать «Логику бизнеса» уже зимой 2011 г., посчитав, что во главу угла поставлены интересы внедренцев. В самой «Логике» говорят, что тогда ушло всего три менеджера.
Председатель совета директоров группы «АйТи» Тагир Яппаров объясняет необходимость нынешней перестройки «Логики» «повышением эффективности и темпа развития каждого из направлений»: «Новые подходы к ECM и BPM подразумевают интеграцию соответствующих инструментов, но бизнес по разработке ПО и консалтинговый бизнес требуют разных подходов в организации и управлении».
После разделения ECM-направление получило значительно больше ресурсов, заявили CNews в «АйТи»: в него перешло 177 сотрудников, в то время как BPM занимается только 28 человек. Доля первой практики в общем обороте объединенного направления составляла 90%.
Ранее Тагир Яппаров оценивал такую общую выручку компании за 2011 г. в 500 млн руб. Виктор Вайнштейн говорит о намерении в течение 2-3 лет создать из «Логики ЕСМ» «продуктово-сервисное подразделение с оборотом более миллиарда рублей в год».