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

 

Огни большого города


Внастоящее время на рынке существует огромное количество информационных систем самого разного масштаба и функциональности. Недалеко то время, когда появятся стандарты на программное обеспечение для предприятий. Возможно даже, будет разработан специальный алгоритм: на входе - отдел/фирма/корпорация, бухгалтерия/документооборот/отчеты/аналитика, а на выходе - однозначный ответ: "Вам нужна такая-то система от такого-то производителя, на внедрение уйдет полгода, окупится за пять лет". Однако пока это благословенное время не наступило, а программное обеспечение предприятию нужно сейчас - современное, надежное, учитывающее все особенности его работы. Решение этой проблемы, о котором я хочу рассказать - это принципиально новая технология, равной которой нет не только на Украине, но и в мире. Все началось с того что перед украинской компанией Softline, занимающейся разработкой программного обеспечения для предприятий, возникли проблемы. В компании использовались различные средства для проектирования, разработки и тестирования. И первая проблема состояла в интегрированности этих средств. Очень часто оказывалось, что то, что сделано в одном средстве, нельзя использовать в другом. Вторая проблема - в Softline одновременно ведутся десятки разноплановых проектов, но очень часто бывает так, что два проекта реализуют один и тот де модуль - например общие справочники (клиенты, страны и т.п.). Возникла необходимость повторного использования ранее написанного кода, спроектированных баз данных или моделей, что было невозможно, так как необходимые элементы были привязанные к конкретным проектам, в которых использовались разные средства (Delphi, C++, и др.). Также требовалось средство, связывающую модель системы с ее реализацией, облегчающее команде разработчиков работу над проектом.

 

Сегодня, например, программист не может изменить реализацию системы не изменив модель системы, и наоборот - проектировщик, изменяя модель системы - изменяет её реализацию. Поэтому и возникла идея создать инструмент, который бы стандартизировал разработку ПО и позволял решать эти проблемы. В ходе решения этих проблем в компании Softline родилась новая технология, а заодно и средство проектирования и разработки - Megapolis.

 

Возможности технологии


Итак, технология Megapolis, созданная компанией Softline (
http://www.softline.kiev.ua). Если выражаться технически, Megapolis - это среда визуального проектирования приложений в многозвенной архитектуре клиент/сервер, поддерживающая технологии UML, COM+, OLE и OLAP. А на языке IT-бизнеса - это средство быстрого создания информационных систем для предприятия с использование новейших программных технологий. С помощью технологии Megapolis можно создавать приложения многозвенной архитектуры клиент/сервер, состоящие из сервера приложений, сервера баз данных и клиентских рабочих мест. Работает эта архитектура следующим образом: когда нужно выполнить глобальную задачу, например, рассчитать баланс за квартал, клиент посылает запрос на сервер. На сервере загружается в память объект, умеющий выполнять эти расчеты. Этот объект подает запрос на сервер баз данных, и в ответ получает бухгалтерские данные за квартал. Баланс рассчитывается на мощном сервере приложений, после чего результаты отправляются на компьютер клиента, где они выводятся на экран. А при выполнении локальных задач, таких как ввод данных, или распечатка графиков, основная нагрузка приходится на компьютер клиента, который этим занимается. Система, созданная по технологии Megapolis, реализуется в виде набора объектов. В ней поддерживаются различные способы вызова методов объектов: COM-методы, методы, реализованные на скриптовых языках SQL, VBScript, Javascript. Это значит, что для пользователя за клиентским компьютером нет разницы, где находится сервер - в соседнем помещении или в соседней стране (с точки зрения функциональности, а не скорости, конечно). Сервер приложений в Megapolis, реализован как плагин к MTS (Microsoft Transaction Server) и функционирует в СОМ+ окружении. Сервер приложений поддерживает различные способы реализации методов объектов и их вызовов:

  • скриптовые методы (VBScript, Javascript);
  • СОМ - методы (что дает возможность использовать любое RAD-средство поддерживающие СОМ технологию - Delphi, VB, VC++);
  • SQL-методы - выполнение SQL-запросов, вызов хранимых процедур. В Мегаполисе есть уникальная возможность реализовать SQL методы в независимом от СУБД формате. В этом случае выражение хранится в "разобранном" виде в формате XML и при первом вызове метода сервер приложений "соберёт" SQL-выражение под ту СУБД, которая используется в настоящий момент.

В Megapolis есть возможность создавать свои типы вызовов методов объектов. Для этого достаточно создать объект отнаследовав его от определённого служебного объекта и переопределив соответствующие методы. Megapolis позволяет автоматически сгенерировать отображение созданной объектной модели в реляционную, то есть в таблицы базы данных (рис. 1). Далее по этому описанию он может сгенерировать и все необходимые SQL-методы для работы с СУБД (конечно же при необходимости программист может сделать это самостоятельно). Megapolis позволяет одновременно работать с различными типами СУБД (для доступа используется технология OLE DB).

 

 

Рис. 1. Отображение объектной модели в реляционную


Составляющие


Уникальность технологии Megapolis состоит именно в ее универсальности: в ее среде можно создавать компоненты на любых объектно-ориентированных языках программирования - поддержка технологии COM позволяет им дружно работать вместе на благо заказчика. Это значит, что на сервере приложений один COM-объект, написанный на Delphi, может обрабатывать данные, которые он получает от другого COM-объекта, написанного другим программистом на Visual Basic. Мало того, методы этих объектов можно вызывать с помощью VBScript или Javascript из привычного Internet Explorer, соединившись с сервером по Internet.

 

В процессе создания такой замечательной системы участвуют следующие составляющие среды Megapolis:

 

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

 

Как уже было сказано выше, сервер приложений нужен, чтобы запускать компоненты объектной модели системы, созданной в среде Megapolis.

Устойчивость работы сервера приложений обеспечивают следующие факторы:

  • Технология СОМ+, в рамках которой реализован сервер приложений
  • Использование промышленных СУБД в качестве хранилища данных и метаданных
  • Качественно поставленный процесс разработки Также сервер приложений позволяет поддерживать распределённые транзакции, выполнять балансировку нагрузки и работать с любыми СУБД, используя технологию OLE DB. Он является дополнением (plug-in) к Microsoft Transaction Server и может использовать все его возможности.

Дизайнер объектов


Это визуальный инструмент разработчика в среде Megapolis (рис. 2). 

 

 

Рис. 2. Дизайнер объектов Megapolis


В нем содержится модель создаваемой системы, описываемая на языке UML, с помощью которого можно создавать диаграммы прецендентов, или use-case (рис. 3), использования, диаграммы классов и диаграммы состояний. В настоящее время разработчики компании Softline трудятся над тем, чтоб этот список дополнить диаграммой физической модели.

 

 

Рис. 3. Use-case диаграмма в Megapolis


Дизайнер объектов включает множество удобных мастеров и сервисов, облегчающих рутинные операции, например:

  • Мастер отображения объектной модели в реляционную.
  • Мастер генерации физической структуры БД.
  • Мастер генерации методов создания, выборки, модификации и удаления экземпляров объектов, входящих в модель.
  • Мастер генерации шаблонов исходных кодов для Delphi и VB.
  • Мастер импорта СОМ-объектов, который позволяет автоматически включать в множество реализаций объектов Megapolis один или несколько существующих СОМ-объектов.

Система администрирования

 

Безопасность - это важно. Технология Megapolis поддерживает двойную систему безопасности - внутреннюю и внешнюю. Кроме того, что система администрирования позволяет определять права пользователей и групп на различные объекты системы, она интегрируется с системой безопасности MS Windows 2000/NT/XP.

 

Универсальная система построения справочников

 

В среде построения справочников можно не только хранить данные, но и представлять их в разных видах, удобных для аналитики. С помощью технологии drag-and-drop таблицы данных можно сортировать, группировать, просматривать в режиме мастер-деталь, вызывать подчинённые справочники, выгружать в различные форматы. Реализован также поиск и фильтрация, предварительный просмотр и печать. OLAP дизайнер Если система оперирует с большими объемами данных, по которым к тому же нужна аналитика, на помощь приходит технология OLAP (On-Line Analytical Processing - аналитическая обработка в режиме реального времени).

 

Используя ее, можно:

  • Собрать данные из различных источников.
  • Быстро, используя визуальную среду, создать многомерные информационные кубы данных.
  • Использовать различные технологии построения OLAP кубов - ROLAP, HOLAP и традиционный OLAP.
  • Гибко администрировать права пользователей.

Дизайнер отчётов

 

Кроме того, что в системе Megapolis можно использовать внешние построители отчётов (например, Crystal Report), использование встроенного дизайнера обеспечивает ряд преимуществ:

  • При создании отчёта имеется возможность использовать ранее созданные объекты. При этом не нужно писать SQL-запросы и оперировать терминами "таблица" и "поле". Достаточно обратиться к соответствующему методу нужного объекта.
  • Существует возможность управления процессом генерации отчета с помощью обработчиков событий, например, для запроса дополнительных данных у клиента либо для изменения структуры отчета в зависимости от различных условий.
  • Формат выходного отчета описывается в стандарте XML и путем написания соответствующих дополнений может быть преобразован в другие форматы.
  • Отчёт создаётся в режиме WYSIWYG (то, что Вы видите, то Вы и получите).

Машина состояний


Бывает, что в работе предприятия есть процессы со сложной, часто изменяющейся логикой, например, прохождение документов. Машина состояний обеспечивает построение моделей состояний объектов, чтоб жизненный цикл объектов-документов контролировался системой. Описание моделей состояний осуществляется в соответствии со стандартом UML 1.3. Асинхронная обработка событий выполняется на основе очередей MSMQ.

 

Заключение


В настоящее время в компании Softline написан ряд программных продуктов в среде Megapolis, например Бухгалтерия, Документооборот, Бюджетирование и контроллинг. Это полноценные информационные системы, которые, однако, можно модифицировать, имея Лицензию разработчика Megapolis. Однако, кроме того, Megapolis - это инструментальное средство. То есть Megapolis существует также в виде визуальной среды разработки программного обеспечения. Таким образом, представленная технология Megapolis является достаточно мощным и современным средством для создания распределенных информационных систем масштаба предприятия под Windows-платформу. Megapolis совместима практически со всеми распространенными языками программирования, что позволяет расширять и настраивать ее для каждого конкретного предприятия. Заинтересовавшиеся предметом статьи могут получить дополнительную информацию по адресу
http://www.megapolis-suite.ru или по электронной почте megapolis@softline.kiev.ua, support@megapolis-suite.ru.

 

Редакция благодарит Александра Попова, руководителя департамента развития продуктов " Megapolis" за профессиональные консультации и помощь в подготовке статьи.

2004.06.29
19.03.2009
В IV квартале 2008 г. украинский рынок серверов по сравнению с аналогичным периодом прошлого года сократился в денежном выражении на 34% – до $30 млн (в ценах для конечных пользователей), а за весь календарный год – более чем на 5%, до 132 млн долл.


12.03.2009
4 марта в Киеве компания Telco провела конференцию "Инновационные телекоммуникации", посвященную новым эффективным телекоммуникационным технологиям для решения задач современного бизнеса.


05.03.2009
25 февраля в Киеве компания IBM, при информационной поддержке "1С" и Canonical, провела конференцию "Как сохранить деньги в условиях кризиса?"


26.02.2009
18-19 февраля в Киеве прошел юбилейный съезд ИТ-директоров Украины. Участниками данного мероприятия стали ИТ-директора, ИТ-менеджеры, поставщики ИТ-решений из Киева, Николаева, Днепропетровска, Чернигова и других городов Украины...


19.02.2009
10 февраля в Киеве состоялась пресс-конференция, посвященная итогам деятельности компании "DiaWest – Комп’ютерний світ" в 2008 году.


12.02.2009
С 5 февраля 2009 г. в Киеве начали работу учебные курсы по использованию услуг "электронного предприятия/ учреждения" на базе сети информационно-маркетинговых центров (ИМЦ).


04.02.2009
29 января 2009 года в редакции еженедельника "Computer World/Украина" состоялось награждение победителей акции "Оформи подписку – получи приз!".


29.01.2009
22 января в Киеве компания "МУК" и представительство компании Cisco в Украине провели семинар для партнеров "Обзор продуктов и решений Cisco Small Business"

 

 
 
Copyright © 1997-2008 ИД "Комиздат".