
325-5858
Информационная система Ниеншанц
(Продолжение. Начало - КИ/13)
История
Ultima-S появилась не на пустом месте.
Преимущества современной идеологии системы в полной мере реализованы благодаря
многолетнему опыту разработчиков, приобретенному в процессе информационного
сопровождения бизнеса фирмы, прошедшей путь от команды энтузиастов до крупной
компании.
История развития информационной системы компании Ниеншанц может быть
разделена на несколько этапов.
1992- декабрь 1993. Разработана и использовалась первая небольшая программа
на Clipper.
Январь 1993 - декабрь 1994. В эксплуатации первая версия автоматизированной
системы фирмы Seller v1.0. Работала с СУБД Btrieve под DOS. Январь 1995
- ноябрь 1995. Применялась новая программа автоматизации фирмы Seller v2.0,
построенная на новой технологии. Она сильно изменилась идеологически, чтобы
удовлетворить растущие потребности по учету информации. Работала под DOS
с Btrieve.
Декабрь 1995 - май 1996. Совместно с версией для DOS стала использоваться
полностью совместимая с ней 16-разрядная версия для Windows 3.11/95.
В мае 1996 года был одновременно осуществлен переход на 32-разрядную версию для Windows 95/NT, работающую с СУБД Microsoft SQL server. Эта версия используется до сих пор. В ней сейчас работает вся фирма, до 60-70 человек одновременно.
Начиная с весны 1996 г. началась разработка новой версии системы Ultima-Seller, сокращенно Ultima-S, которая имела рабочее название Seller 3.0.
Апрель 1997 г. Разработано, испытано и подготовлено к коммерческому внедрению ядро и 9 модулей системы Ultima-S, позволяющие обеспечивать полноценную автоматизацию коммерческой деятельности.
О разработке
Модульная архитектура системы Ultima-S позволила применить эффективный способ разработки, повышающий качество кода. Он заключается в том, что разработка и тестирование модулей производится разными людьми. Это повышает эффективность и объективность тестирования. Налаженная процедура документирования позволяет привлекать новых разработчиков, что гарантирует поддержание внедренных систем.
Объектно-ориентированный подход, предусматривающий повторное использование ранее разработанных бизнес-объектов и процедур, повышает эффективность и качество разработки.
Имеются собственные средства разработки приложений, которые, во-первых, позволяют дополнять систему новыми модулями как универсальными, так и заказными, во-вторых, могут быть проданы дилеру, франчайзеру или пользователю. Последний аспект выгодно отличает систему Ultima-S как универсальное, настраиваемое средство от систем, разрабатываемых под заказ с нуля.
Для того, чтобы техническим специалистам в области информационных технологий и искушенным пользователям было понятно, каким образом реализована система, ниже приводится описание некоторых технологических аспектов.
Система Ultima-S строится на современных средствах и технологиях, которые позволяют создать надежный и сопровождаемый программный продукт.
Система Ultima-S в качестве СУБД использует Microsoft SQL server 6.5, и использует все возможности, предоставляемые этой СУБД. Система обладает свойствами, которые недостижимы при использовании СУБД типа Clarion, FoxPro и даже Btrieve, а именно:
Мы убеждены, что применение в качестве СУБД Microsoft SQL server является правильным решением, обеспечивающим сохранение инвестиций для пользователей системы Ultima-S.
На рабочем месте пользователя работает 32-разрядная программа под Windows, а это значит, что она работает быстрее, надежнее, и не нарушает работоспособность других задач.
Система строится по принципу умный сервер/глупый клиент. Это означает, что вся обработка информации и принятие решений осуществляется на сервере, а на компьютере пользователя происходит только ее ввод и отображение. Это решает следующие проблемы:
Для функционирования клиентской части нужен компьютер с Windows NT или Windows 95, с памятью 8MБ или больше, локальная сеть и сервер Windows NT server с SQL server 6.
Архитектура и внешний вид
Система Ultima-S объектно-ориентирована. Все объекты в базе являются представителями классов. Всякий класс является производным другого, кроме класса Документ. Он является базовым. Производный класс обязательно наследует свойства базового.
Например, при разработке класса Накладная абсолютно не надо думать о том, что накладные могут участвовать в балансе и пр. - так как они базируются на классе Платежный документ, в котором это свойство уже заложено.
Интерфейс системы напоминает Explorer. На экране имеются окна с папками (каталогами), каждый тип документа в таком окне имеет свою иконку. Такой интерфейс обеспечивает удобную работу на уровне интуиции.
Папки делятся на два вида. Одни папки, списковые, ведут себя подобно каталогам в Explorer или Exchange. В них можно перетаскивать документы, убирать документы из них. Например, счета, с которыми идет работа, можно располагать по смыслу в папки с именами Не забыть, Позвонить, Сделано и т.п.
Папки второго типа - фильтрующие. При нажатии на них раскрываются документы, подходящие по определенному признаку. Например, может быть папка Неоплаченные счета. Понятно, из такой папки перетаскиванием нельзя ничего изъять и положить туда тоже ничего нельзя.
В системе реализована древовидная организация хранения всех объектов. Этим решаются многие проблемы. Например, вместо ввода нового поля Отдел в записи о сотруднике, можно завести папки на каждый отдел.
Все изменения всех документов системы протоколируются. Протоколирование изменений является свойством базового класса Документ, а так как все в базе является производным от документа, то для всех документов ведется протокол изменений.
В системе реализованы свойства, которые позволяют ей не быть пассивным обобществленным хранилищем документов. Движение документов между исполнителями может быть организовано согласно их должностным обязанностям. При этом почта посылается с учетом загруженности сотрудников и приоритетов заданий.
В базе могут храниться файлы, то есть документы типа Word, Excel и другие. Их можно смотреть с помощью этих программ, отсылать по почте и т.п. База может быть связанной с Exchange для посылки почты вне фирмы через Internet.
Система Ultima-S имеет гибкую систему привилегий, ориентированную на систему групп пользователей и ролей.
Должность объект, включающий в себя как набор привилегий и ролей, так и список сотрудников и групп. Таким образом, после распределения ролей и групп по сотрудникам и привилегиям, должность задает отношение сотрудников и привилегий.
В системе реализован механизм ключей, обеспечивающий защиту конкретных документов ключом с паролем. Такой ключ может защитить документ от модификации или даже от просмотра.
В завершении главы коротко отметим качество системы, которое может
заинтересовать менеджеров.
В системе предусмотрена возможность эффективного управленческого учета,
чрезвычайно удобная для руководителей среднего и высшего звена.
Соответствующий модуль, находящийся в стадии завершения разработки, обеспечивает динамический анализ затрат. Его наличие позволит:
Самым важным модулем, без которого существование системы невозможно, является ядро. Ядро само по себе сразу содержит ряд необходимых функций, среди которых иерархический доступ к информации (документы и папки), протоколирование всех изменений, ссылки на документы и копии документов, пользователи, сотрудники и регистрация, разграничение доступа (привилегии, группы и роли), разграничение доступа на документ по ключу и внутрифирменная почта.
Разработанные модули позволяют сопровождать в коммерческой фирме циклы закупки, хранения и продажи товара. Эти модули также обеспечивают получение отчетов для быстрого анализа ситуации и получения прогнозов.
Дальнейшее развитие системы осуществляется в сторону расширения перечня деловых процессов, которые могут сопровождаться системой. Первым в этом ряду стоит модуль Производство. В дальнейшем будут подготовлены следующие модули.
Работа с филиалами.
Отчетность в формате GAAP.
Расчет коммерческой себестоимости.
Детализированный финансовый анализ.
Новые технологии обслуживания клиентов (Point of Sale, работа с бар-кодами
во всех бизнес-процессах).
Дополнительный сервис (интеграция с Internet, Exchange).
Учет сотрудников для отдела
кадров
Модуль осуществляет учет информации о работниках
организации, которая обычно ведется отделом кадров. Этим самым обеспечивается
хранение актуальной информации о сотрудниках в общей базе, что сокращает
время, которое требуется работнику ОК, чтобы фиксировать события, связанные
с персоналом или со структурой организации, и позволяет вести учет деятельности
как по конкретному сотруднику, так и по подразделению вцелом. Модуль обеспечивает:
Ведение списка товаров и услуг
Модуль осуществляет ведение перечня товаров и услуг, организованных в виде дерева. Ускоряет, облегчает и сокращает количество ошибок в работе товароведов, кладовщиков, менеджеров и иных служб, имеющих дело с товарами.
Вложенность дерева никак не ограничивается. Более того, можно организовать несколько альтернативных деревьев. В одном, например, товары рассортированы по смысловым группам Процессоры, Корпуса, а в другом те же товары по степени новизны с целью издания прайс листа: новые, старые, писк моды. Модуль обеспечивает:
Отчеты и конструктор фильтров
Возможность расширения товара произвольной информацией, отражающей специфику фирмы (срок годности, количество в упаковке и пр.) без привлечения разработчиков.
Прайс- лист
Этот сервисный модуль используется службой продаж для оформления счетов фактур (цены используются автоматически из прайс листа) и позволяет иметь в организации несколько различным образом организованных прайс-листов для различных товарных групп и каналов сбыта. Также позволяет осуществлять анализ изменения цен. Модуль обеспечивает: ведение для товаров и услуг одной или нескольких цен, которые могут изменяться менеджерами и называются базовыми;
Складской модуль
Целью этого модуля является сокращение времени обслуживания клиентов и сокращение числа ошибок в учете и хранении товара. Следствием чего является ускорение всех процессов обработки грузов и работы с товаром, а наличие механизма материальной ответственности минимизирует убыток от потери товара. Модуль обеспечивает сопровождение работы произвольного количества складов. Склады могут образовывать дерево. Между складами выполняются операции со складом - проводки. Операции могут быть сразу проведены или вначале подготовлены, а выполнены потом (и, например, другим лицом).
Модуль склады позволяет всегда ответить на такие вопросы:
Какие товары сейчас на данном складе и в каком количестве ?
То же самое на любой день в прошлом. Сколько пришло товара и сколько ушло
за произвольный промежуток времени с определенного склада. На каких складах
и в каком количестве присутствует сейчас данный товар ?
Какие операции выполнялись с данным товаром за произвольный промежуток
времени ?
Модуль позволяет запрещать определенные пути перемещения товара между складами,
или, напротив, указывать единственно возможные. Такие ограничения могут
быть связаны с ответственными кладовщиками (механизм материальной ответственности).
Модуль позволяет подготовить и заполнить инвентаризационную ведомость и откорректировать количество товара на складе на основе обнаруженных расхождений. Товары, находящиеся на складе, могут быть закреплены за фамилией ответственного.
Валюты и курсы
Данный модуль позволяет вести мультивалютный учет по произвольному количеству валют. Обеспечение мультивалютности позволяет более точно и быстро оценивать взаимные обязательства фирм. Из одной валюты в другую могут быть заданы курсы, причем курсов может быть несколько (например, USDаSUR курс ММВБ и Центробанка). Разные модули могут пользоваться соответственно разными курсами.
Модуль хранит всю историю изменения курса и предоставляет калькулятор для пересчета сумм.
(Продолжение следует)