Это приложение для оперативного доступа сотрудников, клиентов к корпоративным ресурсам компании.
Преимущества: 1)Легкость интеграции не только с интранет, но и с интернет-ресурсами. 2)Кроссплатформенность — пользователи (сотрудники, клиенты) могут работать под разные операционные системы и на разных устройствах. 3) Гибкие возможности по визуальному и функциональному представлению интерфейса. 4) Логика веб-приложения сосредоточена на сервере. 5) Затраты на обучение персонала либо отсутствуют полностью, либо очень низки, так как клиентская часть работает через знакомый пользователю веб-интерфейс 6) Низкие затраты на поддержку ПО.
Специфика корпоративного приложения.
Практически все функции приложения можно определить тремя пунктами:
Сбор данных;
Обработка данных;
Генерация отчетов;
На данный момент наиболее популярна трехуровневая архитектура, в которой, в соответствии с функционалом, выделяется три уровня: Уровень данных;
Уровень бизнес-логики;
Уровень представлений;
Давайте рассмотрим пример конкретного бизнес-процесса, что бы чуть более лучше понимать, что собой представляет бизнес-процесс, и так ли сильно его нужно автоматизировать.
Потребитель услуг ЖКХ Расчетный центр
Показания приборов учета;
Заявление о недопоставке услуг, подписанное поставщиком данных услуг;
Квитанция об оплате счета.
Расчетный центр Потребитель услуг ЖКХ
Счет;
Справка финансово-лицевого счета;
Выписка из домовой книги.
Центр приема платежей Расчетный центр
Квитанции об оплате;
Акт сверки.
Поставщик коммунальных услуг Расчетный центр
Данные об установленных счетчиках;
Акт недопоставки услуг;
Акт сверки.
Расчетный центр Поставщик коммунальных услуг
Сальдовая ведомость по услугам, по лицевым счетам, по лицевым счетам в разрезе услуг;
Реестр оплаченных лицевых счетов;
Счет на оплату услуг расчетного центра;
Акт сверки.
Расчетный центр Орган соцзащиты
Информация обо всех начислениях и оплате;
Данные о зарегистрированных жителях, тарифах и фактических расходах, необходимых для расчета льгот;
Информация о прибытии/убытии граждан.
Расчетный центр Управляющая компания
Счет на оплату услуг расчетного центра;
Акт сверки.
Управляющая организация Расчетный центр
Сведения о жилом фонде;
Информация о прибытии/убытии граждан;
Акт сверки.
Орган исполнительной власти муниципального образования Расчетный центр
Постановление о тарифах.
На первый взгляд, процесс довольно прост, и не совсем понятно, так ли здесь нужно что-то автоматизировать. Однако, если посмотреть на него более детально...
И так, мы ответили на вопрос – Зачем нам корпоративные приложения? Перейдём к вопросу – Откуда берутся корпоративные приложения?
Современный рынок корпоративного ПО предлагает огромнейшее количество решений для автоматизации практически любых задач. Тем не менее практически в каждой более менее крупной компании есть свой отдел, занимающийся разработкой корпоративного ПО.
Во первых — это стоимость. Приложения из Oracle E-Business Suite стоят в среднем от 5 до 20 килобаксов, плюс поддержка где-то ешё на тысячу /полторы. С учётом того, что большая часть его функциональности не пригодится, покупка его может быть оправдана только в случае компаний неимоверных масштабов. В случае с большинством корпоративных систем - она дорабатывается под нужды маркетинга практически непрерывно: каждую неделю внедряется какая-нибудь новая фича, порожденная богатым воображением внутренних заказчиков. Понятно, что ни одна сторонняя система не сможет обеспечить абсолютной гибкости настроек, а держать основное ПО компании на аутсорсе мягко говоря рискованно.
И так, мы решили писать своё enterprise-приложение. Какой подход выбрать? Вариантов тут минимум три.
БД oracle за несколько сотен тысяч килобаксов, и большая часть логики при этом реализована в виде хранимых процедур на PL/SQL
DotNet это набор нескольких технологий, программного обеспечения, стандартов и средств разработки. Основное преимущество dotNet для потребителя - реализация единого информационного пространства, соединяющего его с компьютерами и программами, а также ПО между собой. Разработчикам же она позволяет просто и быстро создавать нужные продукты.
JavaEE Спецификации детализированы настолько, чтобы обеспечить переносимость программ с одной реализации платформы на другую. Основная цель спецификаций — обеспечить масштабируемость приложений и целостность данных во время работы системы. JEE во многом ориентирована на использование её через веб как в интернете, так и в локальных сетях. Вся спецификация создаётся и утверждается через JCP (Java Community Process) в рамках инициативы Sun Microsystems Inc.
JEE является промышленной технологией и в основном используется в высокопроизводительных проектах, в которых необходима надежность, масштабируемость, гибкость.
Требования к бизнес-логике:
поддержка сохранности данных (persistence); данные должны быть в сохранности даже после остановки программы
поддержка распределённых транзакций
поддержка параллельного изменения данных и многопоточность
поддержка событий
безопасность и ограничение доступа к данным
поддержка автоматизированной установки на сервер приложений
удалённый доступ
Целостность кода и данныхРазмещение бизнес-логики на выделенном сервере или ограниченном числе серверных компьютеров гарантирует доступ к обновленному и модернизированному ПО для всех клиентов. Это исключает риск доступа и управления данными из устаревших и, возможно, несовместимых программ.Централизованное управлениеИзменения в конфигурации прикладных программ, такие как, например, смена сервера баз данных, выполняются централизованно.БезопасностьЦентрализованные средства, через которые поставщик услуг (сервис-провайдер) может управлять доступом к данным и компонентам приложения, позволяют выполнять проверку подлинности потенциально ненадежных клиентов в среднем слое и не затрагивать уровень базы данных.ПроизводительностьСервер приложений может решать задачи балансировки сетевого трафика и распределения нагрузки между другими физическими серверами системы.Общая стоимость владенияСовокупность перечисленных выше преимуществ, а в дополнение к ним перераспределение затрат на оборудование с клиентской на серверную сторону, может привести к экономии средств для организации. Так же на снижении общей стоимости владения может отразиться практика аренды программного обеспечения. Справедливости ради нужно отметить, что стоимость самого серверного ПО, а также затраты на его внедрение и сопровождение могут быть весьма высокими.
12.04.15
НедостаткиЦентрализацияСистемы, построенные на основе сервера приложений, имеют один основной недостаток, присущий всем централизованным решениям — «падение» сервера приведет к недоступности программ для всех клиентов. К тому же эффекту приведут и неполадки в сетевом подключении.Защита информацииЭта проблема, в принципе, актуальна для любых сетевых решений, использующих для передачи данных инфраструктуру публичных сетей.
Специфика корпоративного приложения.
Практически все функции приложения можно определить тремя пунктами:
Сбор данных;
Обработка данных;
Генерация отчетов;
На данный момент наиболее популярна трехуровневая архитектура, в которой, в соответствии с функционалом, выделяется три уровня: Уровень данных;
Уровень бизнес-логики;
Уровень представлений;
JavaServer Faces (JSF) — это фреймворк для веб-приложений, написанный на Java. Он служит для того, чтобы облегчать разработку пользовательских интерфейсов для Java EE-приложений.
Enterprise JavaBeans (также часто употребляется в виде аббревиатуры EJB) — спецификация технологии написания и поддержки серверных компонентов, содержащих бизнес-логику. Является частью Java EE.
сессионные (Session Beans), которые бывают
stateless (без состояния)
stateful (с поддержкой текущего состояния сессии)
singleton (один объект на все приложение; начиная с версии 3.1)
управляемые сообщениями (Message Driven Beans) — их логика является реакцией на события в системе
Java Persistence API (JPA) — API, входящий с версии Java 5 в состав платформ Java SE и Java EE, предоставляет возможность сохранять в удобном виде Java-объекты в базе данных.