Суть вопроса
При любом «глубоком» внедрении системы рано или поздно наступает момент когда оказывается, что стандартного функционала вдруг не хватает. Или оно вот почти то, что надо, но чуть-чуть не то.
И в этот прекрасный момент должно приниматься мужественное решение о доработках или модификациях системы.
В чем тут мужество? Мужество каждый раз в том, что с этого момента Вам придется поддерживать измененную часть системы самостоятельно. И если Производитель ПО вдруг изменит что-то – то он, конечно, скажет – адаптируйте сами.
Плохо это клиента? Ну, не очень хорошо конечно. Но неизбежно. Плохо это для Производителя ПО? Да тоже не очень хорошо каждый раз, потому что страдают клиенты, а мы же хотим, что бы они были счастливы.
Отчасти поэтому в развитых информационных системах всегда очень большая настроечная часть без кодирования (в ELMA допустим это редактор Бизнес-процессов) – таким образом Производитель ПО старается, что бы все было замечательно при обновлениях системы и не возникало бесполезной траты ресурсов.
Так что же делать? Ответ есть – делать доработки и модификации таким образом, каким это рекомендует делать компания-разработчик ПО. Тогда потребитель получается «подстрахован» ее рекомендациями. Не на 100% конечно страховка, но сильно лучше чем ничего.
Что такое ELMA Framework ?
Продукт ELMA Framework версии 1.0 как раз и собирает в себе набор таких рекомендаций от компании ELMA.
Технически говоря, ELMA Framework состоит из следующих частей:
-
ELMA API
Если Вы разработчик сценариев, ELMA Framework предлагает Вам ELMA API – инструмент для разработки сценариев. ELMA API – это набор методов и объектов системы, собранных в понятную структуру. (см. ELMA API) -
ELMA Web API
Если перед Вами стоит задача интеграции ELMA c внешними системами, или же Вы разрабатывайте свое оффлайн-приложение, ELMA Framework предоставляет Вам Web API – набор корневых веб-сервисов, позволяющих взаимодействовать с сервером на уровне SDK, например, загружать список задачи, документов, отслеживать изменения объектов системы и многое другое. -
ELMA 3 Plug-in for Visual Studio
Для проектов, в рамках которых подразумевается существенная переработка или дополнение функционала системы, гораздо удобнее использовать модули расширения. Данные модули гораздо легче обслуживать, отслеживать их версионность, обновлять. Также немаловажно, что данные модули могут быть легко установлены на «чистую систему».
Расширения ELMA разрабатываются на языке C#. Для разработки модулей расширений ELMA Framework представляет ELMA Visual Studio 2010 Plugin – расширение для среды разработки, которые содержит в себе функции позволяющие разработать свой модуль расширения системы ELMA.
С версии 3.2 система ELMA поддерживает пакетную систему. Для этого Plug-in содержит менеджер сборки, который позволяет собрать Ваши модули в пакеты, вместе с их исходным кодом. -
Документация по доработке ELMA
Данный компонент ELMA Framework включает в себя статьи с примерами и инструкциями по доработке системы, содержит в себе записи вебинаров и курсов.
Таким образом, ELMA Framework собирает в себя весь набор инструментов и информации, необходимой для развития системы.
Вместе с тем, следуя рекомендациям изложенным в ELMA Framework Вы получаете некую гарантию что если расширение написано в соответствии с рекомендациями, то перенос этих расширений в новую версию пройдет совсем без затрат либо будет малозатратным.