Қазақша English

NEXTBASE FRAMEWORK

 

   Опираясь на многолетний опыт работы нашей компании было принято решение в своих разработках использовать программную платформу с открытым исходным кодом: NextBase framework (ссылка http://sourceforge.net/projects/nextbase/),  которое наиболее соответствует нашим требованиям. В NextBase реализовано несколько концептуальных моментов, которые заключаются в следующем:

 

  1. Платформа поддерживает, наряду со стандартными простыми типами данных такие как текст, число и т.д. несколько типов которые представляют с собой объекты с определенными полями и моделью поведения. Данные объекты представляют собой целостные бизнес-модули которые выполняют ряд взаимосвязанных операции и которые упрощают программирование приложении ориентированных на бизнеса.  Например существуют объекты Контроль, Блок согласования, Ссылка на связанный документ и т.д..  Набор заложенных бизнесс-объектов  позволяет максимально упростить разработку приложений, но при этом решать большинство задач автоматизации.
  2. Документы имеют разграничение прав доступа для чтения и редактирования на уровне отдельного пользователя и документа.
  3. Связанные документы могут иметь древовидную структуру, где наглядно можно увидеть зависимости и отследить хронологию
  4. В платформе предусмотрено понятие «Форма», которая является шаблоном для публикации документа. «Форма» позволяет публиковать поля документа, «на лету» вычислить способ отображения или запросить значения с других документов. Документ может иметь неограниченное количество «Форм».
  5. Бизнес-логика описана в правилах, которые представляют с собой XML-файлы.
  6. Для большей гибкости в правилах используется встроенный язык программирования на основе Groovy с удобной, собственной объектной моделью.
  7. Реализация  MVC , где компонент «view» представляет с собой набор xsl-преобразований, которые затем используются XSLT-процессором для трансформации в HTML-страницы. Такой подход позволяет одновременно использовать несколько вариантов оформлений приложения skin»).
  8. Встроенная поддержка различных языков интерфейса.

 

Сервер приложений 

      Сервер платформы является java-приложением, который включает в себя web-сервер, сервер встроенной  БД и другие компоненты, обеспечивающие функционирование системы. На сервере может быть одновременно развернуто несколько независимых приложений, которые могут использовать собственные или общие БД. 

Приложения описаны  в правилах, где задаются необходимые параметры работы приложения: название, используемая база данных, порты и т.д.  Вне зависимости от количества приложений у сервера всегда существует административный портал. С его помощью можно управлять пользователями системы, посмотреть  и настроить приложения,  отслеживать состояние БД и web-сервера.  

 

Логическая единица хранения бизнес-информации: "Документ"  

При работе приложения происходят различные операции с данными. Данные хранятся в виде документов. Все манипуляции с документами прозрачно протоколируются на уровне БД, т.е. незаметно для пользователей. Функциональность «Отметка о прочтении»  также учитывается при протоколировании. «Документ» является документом с не жёсткой структурой (далее Документ). Документ в течение своей жизни может иметь различное количество полей с различными типами. Такой подход позволяет описывать практически любые типы данных. Количество полей и их типы задаются при сохранении формой или программным путем. Поля в течение жизненного цикла документа можно добавлять и удалять. Документ всегда имеет список читателей и список редакторов. Так же документ может иметь «потомков» или быть «родительским» документом. Связи такого рода могут быть отображены затем в виде иерархической структуры.

 

 

Распределение прав доступа

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

 

 

Объект «Форма»

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

 

 

Объект «Страница»

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

 

 

Объект «Обработчик»

Для выполнения обработки данных по расписанию, которая необходима для обеспечения бизнес-логики, используется объект «Обработчик». В «Обработчике» посредством программирования выполняются различные действия над данными системы, а также: рассылка уведомлений, вызов других обработчиков.

 

 

Поддержка языка сценариев

Для достижения наибольшей гибкости при настройке различных приложений в системе предусмотрено использование языка сценариев Groovy. Язык имеет простой и доступный синтаксис и позволяет программировать логику приложений с использованием удобной встроенной  объектной модели.

 

 

Реализация MVC

В соответствии с архитектурой MVC, «модель» в системе представлена в виде XML-документа, который затем преобразуется до нужного внешнего вида посредством XSLT. Формат «модели» и её поведение задаются с помощью специальных объектов «Форма», «Страница». Данные объекты являются в некоторых случаях связующим звеном между базой данных и приложением. Объекты описаны в правилах, которые представляют с собой  XML-файлы. Так как модель данных остается неизменной, а способ отображения задается посредством XSLT, существует возможность использования различных наборов XSLT. Переключая их между собой, можно изменять способ оформления приложения («skins»). Предусмотрена возможность подключения своего набора XSLT-файлов. Он может быть разработан с учётом предпочтений пользователя, корпоративных требований к стилю, дизайну и т.д. Разработку набора XSLT-файлов без особых усилий можно делегировать различным дизайнерским студиям или собственным IT-подразделениям заказчика.

 

 

Встроенная поддержка нескольких языков интерфейса

В системе существует возможность использования неограниченного количества языков интерфейса. Слова-элементы (captions), описаны в словарях и являются частью модели (архитектура MVC). Следовательно, отображение локализованных слов-элементов задается в XSLT, в котором нет привязки к конкретному языку.

 

 

Поддержка различных RDBMS

В системе «по умолчанию» используется бесплатная система управления данными PostgreSQL, которая поставляется в одном дистрибутиве и вполне может обеспечить потребности малого или среднего предприятия. Для более масштабных возможностей в ближайших планах предусмотрена поддержка базы данных MSSQL, Oracle и DB2.

 

Основное преимущество платформы  - использование разработок с лицензией Open Source, которая позволяет обеспечить сочетание хороших функциональных возможностей с демократичной ценой.

 

Платформа NextBase Framework обеспечивает:

  • Гибкость архитектуры и технологии за счет использования документов-дескриптов или Правил;
  • Совместное использование языков программирования Java и Groovy позволяет решать специфические для каждой Системы задачи;
  • Гибкость выбора пользовательского интерфейса при помощи описания «скинов» набором XLTS-файлов;
  • Мультиязычность;

Разработана с ориентиром на сектор среднего и малого бизнеса, а также органы государственного управления.

Заказать презентацию

4MS Enterprise доверяют:

История номер 1

Небольшое превью истории успешного использования

История номер 2

Небольшое превью истории успешного использования

История номер 3

Небольшое превью истории успешного использования