Lotus Notes - что это такое?

23.01.02

В двух словах, Lotus Notes представляет собою комбинацию СУБД и почтовой системы, обладающий рядом интересных возможностей для организации структурированной коммуникации - email, форумы, календари и так далее. Главной особенностью лотусовской базы данных является ее ориентация на хранение больших плохо структурированных документов и коллективную работу с ними. Под коллективной работой подразумевается возможность нескольким человекам одновременно править одну и ту же запись (документ). Соответственно, поддерживается аппарат версий и возможности отслеживания изменений, сделанных отдельными пользователями. Кроме текстов, записи лотусовских баз данных могут содержать произвольное количество настраиваемых пользователями реквизитов разных типов, причем настройка состава реквизитов достаточно проста и посильна конечным пользователям. Документы в базе могут ссылаться друг на друга (что-то типа всем знакомых гипертекстовых ссылок), и, кликнув ссылку в тексте документа, можно открыть связанный с ним документ.

В Lotus Notes реализована изощренная система управления правами пользователей, позволяющая назначать права отдельным пользователям и их группам как на базы данных, так и на документы и их отдельные поля. Поддерживается аутентификация документов с помощью электронной подписи - при помещении в базу созданный или модифицированный документ может подписываться сотрудником, который с ним работал.

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

Еще одним базовым механизмом, впервые реализованным именно в Lotus Notes, является репликация - возможность серверов LN синхронизировать свои базы, пересылая друг другу документы в свободное от основной работы время. Тем самым обеспечивается возможность работы в территориально распределенной среде при медленных каналах связи, когда каждый сотрудник работает со своим ближайшим сервером по быстрым локальным каналам, а, скажем, по ночам серверы синхронизируют свои базы.

Естественно, предусмотрена и возможность разработок специализированных приложений в среде Lotus Notes. Для этой цели в систему встроен язык программирования (Lotus script), открывающий доступ к API системы и позволяющий создавать достаточно сложные приложения. Можно также разрабатывать приложения для Lotus на более традиционных Java & JavaScript, к которым также имеются библиотеки объектов для работы с Lotus’овским API.