|
|
|||||||||||||||||||||||||||||
|
ADempiere ERP/CRM - свободная система для свободных людейИсточник: adempiere
ADempiere ERP/СRM - это учётная система, которая, благодаря своей гибкости и открытому исходному коду, позволяет автоматизировать деятельность предприятия, согласно его устоявшимся бизнес-процессам, не ломая их, а тем молодым компаниям, у которых свои бизнес-процессы ещё не сформировались, система предлагает воспользоваться встроенными в неё очень грамотными бизнес-процессами, подходящими для большинства компаний малого и среднего бизнеса в сфере продаж и оказания услуг. Техническое описание системы дано на официальном сайте и сайте русскоязычного сообщества (в котором состоит и наша команда). Для лучшего и разностороннего понимания системы мы приводим её описание в нашей интерпретации. Материалом для нашей статьи послужили иллюстрации нашего эксперта-консультанта Дениса Кузнецова, которые были использованы для учебного семинара.
Начало.Приблизительно 20 лет назад Джорг Джанкей (Jorg Janke), выходец из команды разработчиков Oracle E-Business Suite, совместно с единомышленниками решили объединиться для разработки нового программного продукта - комплексной информационной системы, сочетающей в себе функционал учётных систем промышленного класса (типа OEBS или SAP) и низкую стоимость, доступную для предприятий малого и среднего бизнеса. В качестве модели ведения разработок была выбрана модель на базе Open Source Community - организации мирового сообщества, позволяющая бесплатно задействовать множество профессиональных программистов в обмен на общедоступный исходный код программы. Спустя некоторое время в мир вышла новая открытая ERP-система, которую назвали итальянским словом Compiere. Мировое сообщество оценило разработку и быстро стало расширятся, приобретя разработчиков практически на всех континентах во многих странах: США, Мексики, Индии, Германии, Нигерии, Китая и т.д.
Раскол.Многие коммерческие фирмы - разработчики программного обеспечения - пришли к выводу, что не нужно разрабатывать свою ERP-систему с нуля, можно воспользоваться готовой добротной платформой Compiere и на её базе достраивать свою систему, давая ей новое имя, так образовались системы OpenSocrat, Millenium BSA, ProjectDune и другие. Кроме того, целый ряд разногласий в стане коммьюнити Compiere привёл к расколу внутри сообщества и от Compiere отпочковались две группы разработчиков, образовав свои ветки мирового сообщества - ADempiere и OpenBravo. В лагере ADempiere было своё видение развития функционала системы, более того, они остались верны традиции OpenSource, сделав открытыми исходные коды веб-интерфейса. В противовес этому коммерческая фирма Compiere Inc. закрыла коды веб-интерфейса и почти остановила обновление исходных кодов системы, лежащих в открытом доступе, предоставляя свежий код программы на платной основе. Это послужило причиной оттока большого количества программистов в сообщество ADempiere.
Технологичная база
Разграничение доступаПервоначальной задумкой авторов программы было сделать систему, доступной для предоставления в аренду функционала системы компанией-разработчиком прочим компаниям-потребителям. В то время, только зарождались основы SaaS, поэтому чёткого понятия, что это такое, ещё не было и каждый видел реализацию SaaS по-своему. Джорг Джанкей со-товарищи видел это в предоставление возможности использования одной базы данных и одной инсталляции системы множеству независимых друг от друга компаний. Т.е. компания "А", занимающаяся продажей автомобилей, компания "B" - парикмахерская и компания "С" - ремесленная мастерская используют один IP-адрес для входа в систему и работают с общей базой данных обслуживаемой одной СУБД, пользуясь общими таблицами, функциями, вьюшками и т.д.. Чтобы компаниям разраничить доступ к данным внутри одной таблицы, вводится понятие Владельца. Владелец (Tenant, Client) - это сторонняя фирма-арендатор, данные которой недоступны другим Владельцам ни при каких условиях. В каждую таблицу базы данных ADempiere включен столбец AD_Client_ID, в котором содержится идентификатор Владельца для каждой записи таблицы. При входе в систему любой пользователь указывает принадлежность тому или иному Владельцу, система запоминает идентификатор Владельца и отображает пользователю данные, относящиеся только к этому Владельцу. С другой стороны, внутри одной компании могут быть разделения по отделам (цехам, депортаментам, филиалам) и данные между отделами могут быть как видны, так и не видны. Например, пользователям цеха ремонта трубопроводов нужна номенклатура, связанная только с трубопроводами и им будет мешать номенклатура цеха картонных изделий (и наоборот), однако каталог поставщиков у них общий. Для этого вводится понятие Организации и в каждую таблицу добавляется столбец AD_Org_ID, в котором для каждой строки указывается идентификатор на организации (отделы, филиалы) одного Владельца (компании).
Организация SaaSС одной стороны, преимуществом такого подхода к организации SaaS является:
Но у такой схемы обнаруживаются существенные минусы:
Поэтому естественно, что изначальная схема организации SaaS не прижилась. Поэтому был выработан новый доход к предоставления функционала системы в аренду. В новой схеме на серверах DATA-цента поднимаются виртуальные машины количеством равным количеству клиентов. Внутри каждой виртуальной машины ставится своя собственная СУБД, свой JBoss и своя инсталляция ADempiere. Это позволяет избавиться от всех минусов старой схемы в обмен на усложнение обслуживания. А в качестве СУБД можно использовать Postgres Enterprise, бесплатную СУБД промышленного класса.
Заключение.Функционал системы будет рассмотрен в другой статье. Минусы: отсутствие технологии Hybernate, бинарных веб-сервисы Плюсы: хорошая организация таблиц в СУБД, бизнес-процессы, гибкость ССЫЛКИ ПО ТЕМЕ
Файлы для загрузки
|
|