Системы электронного документооборота
Разработка универсальной системы электронного документооборота HotDoc с разграничением прав доступа пользователей, с эффективной системой поиска документа, с возможностью внедрения в различные организации. Реализация программы в виде веб-приложения.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 24.09.2012 |
Размер файла | 5,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Министерство образования и науки Российской Федерации
Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Казанский (Приволжский)
федеральный университет»
Институт вычислительной математики и информационных технологий
КАФЕДРА МАТЕМАТИЧЕСКОЙ СТАТИСТИКИ
010200-Прикладная математика и информатика Специализация: 010501.65- Стохастика
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА
(Дипломная работа)
«Системы электронного документооборота»
Казань - 2012
- ОГЛАВЛЕНИЕ
- Введение
- 1. Анализ предметной области
1.1 Модель
1.2 Общая классификация систем документооборота
- 2. Постановка задачи
- 3. Функциональное описание системы
- 4. Логическое конструирование
- 5. Физическое конструирование
- 5.1 Выбор и обоснование инструментальных средств
- 5.2 Использованное программное обеспечение
- 5.3 Тестирование приложения
- 6. Структура и состав БД
- 7. Пользовательский интерфейс системы электронного документооборота HotDoc
- 7.1 Работа администратора в системе HotDoc
- 7.2 Работа пользователя в системе HotDoc
- Заключение
- Список использованных источников и литературы
- Приложение 1. Контроллер, отвечающий за аутентификацию пользователей
- Приложение 2. Контроллер, отвечающий за работу администратора
- Приложение 3. Контроллер, отвечающий за работу обычного пользователя
- Приложение 4. Служебные классы, отвечающие за рассылку оповещений на электронную почту
- Приложение 5. Описание некоторых функций из ключевых сервисов по работе с БД
- Введение
- Мы живем в век «Информационных технологий». Глобальный доступ к информации стал частью современной повседневной жизни. Люди умеют измерять, обрабатывать, распределять и передавать потоки информации разных масштабов и на огромные расстояния. В этом нам помогают компьютеры, системы хранения, обработки и передачи данных.
- В настоящее время большинство организаций нуждается, в той или иной степени, в хранение документов. Причём размеры данных колеблются от нескольких мегабайтов до терабайтов. Постоянное увеличение объема накапливаемых в организации документов приводит к постановке трудно решаемых задач, таких как поиск документов, обеспечение конфиденциальности, сохранности, оперативный доступ к документам. Например, поиск документов, хранящихся в бумажном виде, занимает большое количество времени. Так же нет гарантий на сохранность документов, поскольку большую роль играет человеческий фактор (утеря бумаг, забывчивость сотрудников и тому подобное). В результате организация получает информационную недостаточность, увеличиваются затраты на документооборот и тому подобное.
- Автоматизация позволяет значительно упростить поиск, доступ и хранение документов, и, как следствие, избежать многих проблем, возникающих в процессе обработки и ведения документооборота.
- Использование системы электронного документооборота (СЭД) предоставляет следующие преимущества перед обычным ведением документов внутри организации:
- · преимущества, связанные, в основном, с сокращением затрат:
- - физическое освобождение места, раннее занимаемого большим количеством промежуточной документации;
- - сокращение затрат: на копирование, на доставку информации в бумажном виде;
- - сокращение затрат на ресурсы: люди и оборудование, расходные материалы;
- - повышение продуктивности работы: быстрое выполнение работ, увеличение общего количества выполняемых объёмов, поставленных задач, улучшение работы с данными/записями (документами, имеющими юридические обязательства), возможность выполнения работ с использованием новых ресурсов, подготовленных на базе СЭД;
- · преимущества, связанные с улучшениями в ключевых бизнес-процессах:
- - возможность коллективной (в команде) работы над документами (что сложно выполнимо при бумажном делопроизводстве);
- - ускорение поиска и выборки документов (по различным атрибутам);
- - повышение безопасности информации за счет того, что работа в СЭД с незарегистрированной рабочей станции невозможна, а каждому пользователю назначаются свои полномочия доступа к информации;
- - повышение сохранности документов и удобства их хранения - так как они хранятся в электронном виде на сервере с возможностью повседневного резервного копирования;
- - улучшение контроля за исполнением документов. [5]
- Главный результат автоматизации документооборота - наведение порядка в работе с документами, оптимизация бизнес-процессов, сокращение сроков принятия управленческих решений и повышение эффективности работы организации в целом.
- Осознав необходимость автоматизации документооборота, организация сталкивается с проблемой выбора СЭД, то есть подходящего программного обеспечения. На данный момент существует множество таких систем, но они имеют ряд недостатков. Во-первых, нет единого стандарта разработки подобной программы, а, во-вторых, нет системы, которая имела бы неоспоримые преимущества перед всеми остальными и использовалась в большинстве организациях. Кроме того, многие из существующих СЭД имеют трудный для понимания интерфейс и требуют предварительного обучения для работы с ними, что для пользователей, несвободно владеющих ПК, представляет серьезную сложность. Это же влечёт за собой затраты, как материальные так и связанные со временем, организации на обучение персонала.
- В данной работе описана попытка разработки универсальной системы электронного документооборота, которая имеет весь набор существенных функций и интуитивно понятный интерфейс. СЭД может быть внедрена в различные организации. Программа реализована в виде веб-приложения, что позволяет пользователям работать в ней не только с рабочего места, но и везде, где есть доступ в глобальной сети Интернет.
1. Анализ предметной области
1.1 Модель
Чтобы построить модель программы, необходимо как следует вникнуть в работу организации на каком-то примере. Говоря об оптимизации бизнес-процессов любой компании, независимо от ее размеров, выпускаемой продукции/услуг или формы собственности, невозможно обойти стороной вопрос управления документами. Документооборот - это жизненно важная система организации: любая деятельность находит отражение в документах, будь то управление, финансы или производство. Часто только оптимизация ведения документов позволяет существенно улучшить качество и скорость процессов. Поэтому рассмотрим любую компанию с точки зрения ведения в ней документов. Мной была изучена компания «Юла ГРУПП». Она же является заказчиком проекта, реализуемого мной в дипломе. Дальнейшие рассуждения будут проводиться в общем порядке - без привязки к конкретной организации.
В любой организации может либо существовать документооборот, либо нет. Если организация может существовать в условиях неформального управления, то, очевидно, никакого документооборота в ней нет. Если же вводится определенный формализм в управлении компанией и в организации всевозможных бизнес-процессов, то рано или поздно возникает необходимость хотя бы часть управленческих механизмов переводить на упорядоченную документационную основу (например, регистрировать входящие и исходящие письма). В результате возникает документооборот. Если им не управлять, то через некоторое время начинаются такие распространённые проблемы: теряются документы, становится затруднительным поиск нужной информации, накопление ненужных старых файлов и так далее.
Очевидно, что, наводя порядок, руководители компаний находят организационные решения тех или иных проблем документооборота, примерно соответствующие уровню задач каждой компании. Часто бывает, что придумывают разумную схему размещения файлов на сервере, чтобы документы все же можно было найти, и используют электронную почту как базовое средство передачи документа на согласование и для контроля исполнения. Таким образом, в деятельности любой компании можно выделить в той или иной степени формализованные и отлаженные бизнес-процессы.
Приходит момент времени, когда компании для того, чтобы оставаться на плаву, нужно постоянно развиваться. Даже идеально выстроенный бизнес-процесс со временем нуждается в реорганизации. С течением времени увеличивается количество участников, изменяются внутренние обстоятельства, внешняя среда, вследствие чего растет количество нерегулируемых взаимоотношений и неуправляемых факторов, возникают конфликты, снижается прибыль. Отсюда возникает необходимость перехода на качественно новый уровень. [10] Возникают два выхода из ситуации: либо внедрить в компании классический бумажный документооборот, со всеми его тонкостями и недостатками, либо внедрить электронную систему, которая имеет бесспорные преимущества. Очевидно, что в наше время «информационных технологий» выбор обычно делается однозначно в пользу второго пути.
Как правило, руководство организации, переходящей на электронный документооборот, в первую очередь интересует экономическая эффективность использования СЭД. Для оценки возможного экономического эффекта от внедрения СЭД необходимо знать, какое время сотрудники организации тратят на выполнение повседневных, непроизводительных операций над документами. На основе этого можно сделать выводы. Рассчитать, окупятся ли затраты на внедрение или нет. Кроме этого, при выборе конкретной СЭД следует учитывать особенности деятельности организации. Среди них:
· Требования по объему хранения. Если документы занимают много «памяти» на информационных носителях, необходимо выбрать систему, поддерживающую иерархическое структурное хранение. Этот механизм хранит наиболее активно используемые данные на наиболее быстрых, но и наиболее дорогих средствах хранения данных, в то время как реже используемая информация автоматически переносится на медленные и дешевые хранилища.
· Наличие формализуемых процедур, требующих поддержки их выполнения и автоматизации контроля (подготовки документов определенного типа, выполнения стандартных функций организации и т. д.).
· Необходимость автоматизации административного управления организацией. Степень сложности организационной структуры.
· Наличие территориально распределенных подразделений. Этот фактор накладывает определенные требования к удаленному доступу, к репликации данных и т.д.
· Наличие бумажного архива большого объема. Некоторые системы документооборота поставляются с уже интегрированными подсистемами массового ввода документов.
· Наличие не удовлетворяющей текущим потребностям системы документооборота.
· Необходимость в развитой маршрутизации документов, в управлении потоками работ (workflow managing). Как продолжение этой необходимости - потребность в поддержке произвольных бизнес-процессов, возможно работающих совместно с прикладными системами поддержки этих процессов.
· Требования по срокам хранения документов. При больших сроках хранения (десятки лет) стоит серьезно подумать об организации параллельного архива на микрофильмах.
· Требования к "открытости", расширяемости системы. Возможность интеграции с существующими информационными системами и использования имеющегося оборудования.
· Необходимость хранения изображений документов. Использование в организации специфических форматов хранения документов. Необходимость поддержки инженерных и конструкторских задач, других особенностей деятельности предприятия.
· Необходимость развитых средств поиска информации. Полная поддержка системой языков имеющихся в организации документов.
· Требования к безопасности (шифрование, организация доступа и т.д.). Возможность использования уже имеющихся в информационной инфраструктуре организации механизмов доступа в системе документооборота.
· Требования по соответствию определенным стандартам: внутренним, отраслевым, ГОСТ, международным стандартам по контролю качества, уровню организации хранения информации.
Основные задачи, решаемые системами электронного документооборота:
· обеспечение эффективного управления за счет автоматического контроля выполнения, прозрачности деятельности всей организации на всех уровнях;
· поддержка эффективного накопления, управления и доступа к информации и знаниям. Обеспечение кадровой гибкости за счет большей формализации деятельности каждого сотрудника и возможности хранения всей предыстории его деятельности;
· протоколирование деятельности предприятия в целом (внутренние служебные расследования, анализ деятельности подразделений, выявление "горячих точек" в деятельности);
· оптимизация бизнес-процессов и автоматизация механизма их выполнения и контроля;
· исключение или максимально возможное сокращение оборота бумажных документов на предприятии, экономия ресурсов за счет сокращения издержек на управление потоками документов в организации;
· исключение необходимости или существенное упрощение и удешевление хранения бумажных документов за счет наличия оперативного электронного архива.
При всех имеющихся плюсах СЭД, существуют и «подводные камни», с которыми может столкнуться организация, переходящая на электронный документооборот. К ним относятся проблемы, которые существуют практически в каждой организации, и которые приходится решать при реализации, внедрении и сопровождении систем электронного документооборота. Вот некоторые из них:
· консерватизм персонала, низкая образованность, нежелание обучаться и переобучаться. Боязнь прозрачности собственной деятельности для руководства, которая возникает после внедрения системы электронного документооборота;
· фактор директора "советского типа" - нежелание непосредственно работать с компьютером, просматривать и редактировать документы;
· постоянные структурные изменения в организации, слабая формализация бизнес-процессов;
· необходимость обеспечения юридической силы документов (после принятия закона об электронной подписи этот фактор начнет терять свою значимость);
· необходимость взаимодействовать с внешним "бумажным" миром, в особенности, если это касается параллельных структур в ассоциированных организациях или ведомствах, с которыми идет постоянная работа;
· кроме перечисленных, существуют проблемы, специфические для определенных типов организаций;
1.2 Общая классификация систем документооборота
Любая система документооборота может содержать элементы каждой из приведенных ниже категорий, но большинство из них имеют конкретную ориентацию в одной из областей, связанную в первую очередь с позиционированием продукта.
· Системы с развитыми средствами хранения и поиска информации (электронные архивы - ЭА). Электронный архив - это частный случай системы документооборота, ориентированный на эффективное хранение и поиск информации. Некоторые системы особенно выделяются за счет развитых средств полнотекстового поиска: нечеткий поиск, смысловой поиск и т. д., другие - за счет эффективной организации хранения.
· Системы с развитыми средствами управления потоком работ. Эти системы в основном рассчитаны на обеспечение движения неких объектов по заранее заданным маршрутам. На каждом этапе объект может меняться, поэтому его называют общим словом "работа". К работам могут быть привязаны документы, но не документы являются базовым объектом этих систем. С помощью таких систем можно организовать определенные работы, для которых заранее известны и могут быть прописаны все этапы.
· Системы, ориентированные на поддержку управления организацией и накопление знаний. Эти "гибридные" системы, которые обычно сочетают в себе элементы двух предыдущих. При этом базовым понятием в системе может быть как сам документ, так и задание, которое нужно выполнить. Для управления организацией нужна как "жесткая", так и "свободная" маршрутизация, когда маршрут движения документа назначает руководитель ("расписывает" входящий документ), поэтому обе технологии в том или ином виде могут присутствовать в таких системах. Эти системы активно используются в государственных структурах управления, в офисах крупных компаний, которые отличаются развитой иерархией, имеют определенные правила и процедуры движения документов. При этом сотрудники коллективно создают документы, готовят и принимают решения, исполняют или контролируют их исполнение.
· Системы, ориентированные на поддержку совместной работы (collaboration). Это новое веяние в области систем документооборота, связанное с пониманием изменчивости рыночных условий в современном мире и с необходимостью иметь для быстрого движения "только самое нужное", без лишнего, очень полезного, но тяжелого балласта. Такие системы, в противоположность предыдущим, не включают понятия иерархии в организации, не заботятся о какой-либо формализации потока работ. Их задача - обеспечить совместную работу людей в организации, даже если они разделены территориально, и сохранить результаты этой работы. Обычно реализованы в концепции "порталов". Они предоставляют сервисы хранения и публикации документов в интранет, поиска информации, обсуждения, средства назначения встреч (как реальных, так и виртуальных). Такие системы находят заказчиков среди быстро развивающихся коммерческих компаний, рабочих групп в крупных фирмах и государственных структурах.
· Системы, имеющие развитые дополнительные сервисы. Например, сервис управления связями с клиентами (CRM - Customer Relation Management), управления проектами, биллинга, электронной почты и пр. [6]
Безусловно, для большой организации со специфичными только для нее бизнес-процессами трудно подобрать СЭД, которая бы удовлетворяла всем потребностям этой организации. Но, в то же время, она может позволить себе заказать разработку такой системы, которая будет ориентирована на использование именно в этой организации.
Другое дело, маленькие организации, которых намного больше. Для того чтобы заказать систему, у них нет материальных возможностей. Можно найти платную систему, которая им подходит, но, если система действительно хорошая, то и стоит она немало. Если рассматривать такие организации, как учебные заведения, больницы и другие подобные заведения, то, скорее всего, они откажутся от покупки дорогой системы по причине небольшого бюджета. Что касается бесплатных СЭД, то, во-первых, таких очень мало, во-вторых, большинство из них слишком примитивные, имеют недостаточный набор функций и неудобный интерфейс.
Поэтому для таких организаций и возникает проблема: «хочется перейти на новый уровень, автоматизировать документооборот в организации, но нет подходящей системы, которая удовлетворяла и по цене и по качеству».
В данной работе рассматривается эта проблема и предлагается ее решение.
2. Постановка задачи
Необходимо разработать универсальную систему электронного документооборота, которая позволит облегчить и ускорить работу с документами. СЭД должна удовлетворять следующим требованиям:
· в системе должно быть реализовано разграничение прав доступа пользователей. Необходимо реализовать две роли: «администратор» и «обычный пользователь».
· доступ к системе должны иметь только пользователи, зарегистрированные администратором системы;
· необходимо обеспечить мультиплатформенность приложения;
· приложение не должно быть ориентировано на конкретную специализацию предприятий; необходимо предусмотреть возможность администратора настраивать систему под конкретную организацию;
· администратор должен иметь возможность использования следующих функций: добавление/удаление/редактирование пользователей, добавление/удаление/редактирование групп, добавление/удаление каталогов, удаление файлов;
· документы должны храниться в едином месте;
· каждый документ должен хранить метаданные;
· необходимо реализовать механизм ведения версий документов, который позволяет хранить историю изменения документов;
· пользователи должны иметь следующие возможности работы с файлами: добавить/удалить файл, задать срок хранения файла в системе, добавить комментарий к файлу, выбрать действия других пользователей над файлом, задавать область видимости файлов и отправлять оповещения пользователям на электронную почту;
· возможна реализация хранения шаблонов документов, которые часто используются в организации, с возможностью доступа к ним всех пользователей системы;
· желательно реализовать эффективную систему поиска документа, позволяющую находить документ, обладая минимальной информацией о нем;
· дизайн системы должен быть ненавязчивым; система должна быть удобной для использования, не требующей специального обучения для работы с ней.
3. Функциональное описание системы
Пользовательская модель (архитектура) - представление о том, какие функции будет выполнять система, как будет взаимодействовать с пользователем. Это взгляд на систему с точки зрения пользователя.
Согласно технологии Microsoft Solution Framework, процесс проектирования начинается с методичного анализа пользователей, которые определяют различные типы пользователей и их рабочие функции.
Затем формируется набор сценариев использования, где каждый из них разбивается на последовательность специфических действий, называемых примерами использования.
Web - приложение «HotDoc» предусматривает два типа пользователей системы электронного документооборота:
· обычный пользователь системы - каждый сотрудник учреждения;
· администратор - избранный человек, наделенный особыми полномочиями (правами) в системе.
Общими для обоих типов пользователей являются следующие функции:
· Авторизация пользователя: после введения верных логина и пароля, пользователь авторизуется в системе и может выполнять определенные действиями в соответствии со своими правами. В качестве логина пользователя рассматривается e-mail, поскольку его удобно использовать в качестве рассылки важной информации.
· Просмотр содержимого каталогов: выбрав в дереве определенную папку, пользователь может просматривать ее содержимое в соответствии с его правами доступа к файлам. Он видит только те файлы, которые ему доступны для просмотра.
· Просмотр информации о файле: пользователь может просмотреть следующую информацию о файле - его название, дату добавления, о том, какой пользователь его создал, его размере, сроке хранения, комментарии.
· Удаление файла: при просмотре файла пользователь имеет возможность его удалить. Вместе с файлом удаляются и все его версии Файл может удалить только его создатель или администратор.
· Скачивание файла: пользователь может скачать файл, доступный ему для просмотра. Для этого он должен выбрать место (папку) для загрузки файла.
· Просмотр доступа к файлу: администратор и пользователи, для которые видят файл, могут просматривать списки пользователей и групп, для которых доступен файл.
· Просмотр заданий к файлу: при выборе определенного файла пользователь может просмотреть все задания, которые были заданы к данному файлу (текст задания, кем добавлено, исполнитель, отметка о выполнения задания).
· Просмотр версий файла: в случае изменения добавленного файла образуются новые версии того же файла, которые доступны для администратора и пользователей, наделенных правами доступа к файлу. Пользователь может просмотреть список версий к файлу, в котором указаны номер версии, файл - родитель, дата добавления, комментарий и пользователь, добавивший версию. Считается, что версия №1 для файла - это он сам, поэтому в списке версии отображаются все, начиная со второй.
· Скачивание версии файла: пользователь может скачать версию файла, доступного ему для просмотра, выбрав место для сохранения.
· Удаление версий к файлу: существует две возможности удалить версии:
- Удалить выбранную версию из списка версий. В этом случае все версии файла, следующие за удаленной должны быть перенумерованы.
- Удалить все версии файла, кроме выбранной из списка версий. В этом случае все версии файла, помимо указанной, удаляются, а оставшаяся версия становится второй по номеру.
Версии файла может удалять администратор или любой пользователь системы, имеющий права доступа к файлу с указанными версиями.
· Просмотр пользователей определенной группы: пользователь может просматривать списки пользователей, входящих в текущую группу.
· Просмотр списка пользователей: можно увидеть список всех пользователей системы с указанием ФИО, должности и адреса электронной почты.
· Просмотр списка групп: пользователь может просматривать список групп, существующих в системе.
Для пользователей, авторизованных в роли администратора, предусмотрены следующие сценарии использования:
· Добавить пользователя: администратор может добавить пользователя, введя его фамилию, имя, отчество, должность, адрес электронной почты, логин и пароль.
· Удалить пользователя: администратор может сделать пометку о том, что пользователь удален. В этом случае, пользователь не отображается в списках.
· Восстановить пользователя: администратор может восстановить пользователя, ранее зарегистрированного в системе.
· Редактировать информацию о пользователе: администратор может изменять следующую информацию о пользователе - ФИО, должность, адрес электронной почты, логин и пароль.
· Просмотреть группы пользователя: администратор может просматривать группы, в которых состоит пользователь.
· Добавить папку: администратор, находясь в определенном каталоге, может добавить в него новую папку.
· Удалить папку: администратор имеет возможность удаления папок. При этом вместе папкой удаляются и все вложенные в нее файлы и каталоги.
· Добавить задание: администратор может добавить новое задание, которое будет использоваться при определений пользователями заданий к файлу для исполнения другими пользователями.
· Удалить задание: администратор может удалить задание из списка назначаемых заданий, в связи с тем, что оно потеряло свою актуальность. В этом случае данное задание, будет сохраняться лишь для файлов, сохраненных в системе.
· Просмотр списка заданий: администратор может просматривать список добавленных им заданий, которые будут использованы в дальнейшем при назначении пользователями заданий к файлу.
· Создать группу: администратор имеет возможность создания группы пользователей, указав ее название.
· Удалить группу: администратор имеет возможность удалить группу.
· Добавить пользователя в группу: администратор может добавлять в группу пользователей, зарегистрированных в системе.
· Удалить пользователя из группы: администратор может удалять пользователя из определенной группы.
Для пользователей, авторизованных в роли обычных сотрудников учреждения, сценарии использования, отличные от администратора, следующие:
· Добавление новой версии к файлу: для добавления новой версии к файлу пользователь должен ввести название файла, комментарий, срок хранения и выбрать файл для загрузки. Поля номер версии, дата добавления и создатель формируются автоматически.
· Добавление файла: для добавления файла пользователь должен ввести название файла, комментарий, срок хранения и выбрать файл для загрузки. Поля дата добавления, размер файла, создатель генерируются автоматически. По умолчанию, файл доступен всем пользователям системы
· Просмотр добавленных файлов: пользователь может просмотреть файлы, которые он добавил, при этом отобразиться список -таблица с указанием названия, даты добавления, размера, комментариев и срока хранения каждого файла с возможностью просмотра о них информации.
· Назначение задания к файлу: пользователь может установить задание к файлу, выбрав тип задания и исполнителя. Поля пользователь, добавивший задание, очередность выполнения и статус о выполнении задания автоматически генерируются системой. По умолчанию задание считается невыполненным.
· Редактирование доступа к файлу: для каждого добавленного файла пользователь может изменять списки доступа к файлу по группам и пользователям, выбрав из списка те группы и тех пользователей, которым будет виден файл. По умолчанию файл доступен всем пользователям системы.
· Просмотр заданий пользователя: отображаются все задания к файлам, назначенные для исполнения данным пользователем. По каждому заданию можно увидеть следующую информацию: текст задания, к какому файлу оно добавлено, кем добавлено, и отметку о выполнении задания.
· Просмотр добавленных заданий: отображаются все задания к файлам, который пользователь назначил другим. По каждому заданию можно увидеть следующую информацию: текст задания, к какому файлу оно добавлено, исполнителя и отметку о выполнении задания.
· Отметка о выполнении задания: пользователь, добавивший задание к файлу или тот, кто получил задание, имеет возможность поставить отметку о выполнении задания по окончанию проделанных работ. В случае положительной отметки («задание выполнено») пользователь, назначивший текущее задание получает на e-mail сообщение о том, что задание выполнено, а в списке его задания для выполнения также отображается отметка о выполнении задания.
4. Логическое конструирование
Для описания предметной области, с учетом особенностей представления данных в разрабатываемой системе, созданы следующие основные сущности:
· администратор
· пользователь
· группа
· каталог
· содержимое каталога
· файл
· информация о файле
· задание
· задание к файлу
· доступ к файлу
· версия
· шаблон
В результате анализа пользовательской архитектуры выделены следующие группы задач (сервисы), необходимые для реализации всех функций, описанных в пользовательской архитектуре:
· сервис для работы с базой данных
· сервис для работы с пользователями и группами
· сервис для работы с файлами и каталогами
· сервис для работы с заданиями
Содержание сервисов:
1) Сервис для работы с базой данных содержит основные функции:
· подключение к БД - создает устойчивое подключение к базе данных;
· создание таблиц в БД - создает таблицы в базе данных, добавляет необходимые первоначальные данные в таблицы (создает администратора и корневой каталог).
2) Сервис для работы с пользователями и группами содержит реализацию следующих функций:
· аутентификация пользователей и администраторов - проверяет, есть ли в БД пользователь или администратор с введенным логином и паролем; если такой пользователь или администратор имеется, разрешает доступ к системе;
· получить информацию о пользователе;
· получить список пользователей - для отображения всех пользователей системы;
· получить список групп - для отображения информации о группах пользователей системы;
· получить список групп, в которых состоит пользователь;
· получить список пользователей из группы;
· добавить/ редактировать/ удалить пользователя - функции, доступные только администратору системы;
· восстановить пользователя - удаленный из системы пользователь может быть восстановлен администратором;
· добавить/удалить группу - функции, доступные только администратору системы;
· добавить/удалить пользователя в группу/из группы - функции, доступные только администратору системы.
Кроме основных функций сервис содержит следующие служебные функции:
· проверка логина на соответствие адресу электронной почты - это позволяет отправлять пользователю оповещения на электронную почту;
· проверка существования логина - это позволяет наличие уникального идентификатора пользователя системы;
· проверка существования группы с введенным именем - позволяет обеспечить уникальность имени группы;
· получение различных атрибутов сущностей.
3) Сервис для работы с файлами и каталогами содержит следующие основные функции:
· добавить/удалить каталог - доступны только администратору;
· отобразить содержимое каталога - служит для отображения каталогов и файлов, находящихся в выбранном каталоге, к которым пользователь имеет доступ; администратору доступны все файлы системы;
· добавить файл - ввод данных, описывающих файл и загрузка файла в файловую систему сервера;
· удалить файл - функция доступна администратору и пользователю, который добавил данный файл; файл удаляется из БД и из файловой системы; вместе с файлом удаляются все его версии;
· получить информацию о файле - необходимо для вывода описания файла и пользователя, который добавил данный файл;
· разрешить/запретить доступ всех пользователей к файлу - доступны только автору файла;
· разрешить/запретить группе доступ к файлу - доступны только автору файла;
· разрешить/запретить доступ пользователя к файлу - доступны только автору файла;
· получить списки групп и пользователей, имеющих доступ к файлу - доступна администратору системы и автору файла;
· добавить/удалить версию файла - доступны администратору и всем пользователям, имеющим доступ к файлу;
· удалить все версии файла - удаляются все версии выбранного файла, сам файл не удаляется;
· удалить все версии файла, кроме одной - необходима в случае, когда нужно оставить лишь одну версию файла (например, последнюю, окончательную), а все остальные удалить; сам файл не удаляется;
· получить версии файла - для отображения информации о версиях выбранного файла.
Кроме основных функций сервис содержит следующие служебные функции:
· проверка существования имени каталога - позволяет сохранить уникальность имен каталогов, расположенных на одном уровне;
· получение путь до файла в файловой системе - необходимо для скачивания, удаления файла, для добавления версий к файлу;
· получить текущее количество версий файла;
· получить общее количество версий файла;
· получить путь до версии файла в файловой системе - необходимо для скачивания, удаления версий.
4) Сервис для работы с заданиями содержит функции:
· добавить/удалить задание для работы с файлами - задания, которые будут добавляться к файлам; доступна только администратору системы;
· отобразить задания для работы с файлами - для выбора задания к файлу либо для просмотра заданий администратором;
· добавить/удалить задание к файлу - при добавлении задания к файлу, адресату отправляется оповещение на электронную почту;
· получить задания к файлу - отобразить список всех заданий к данному файлу;
· получить задания, адресованные пользователю - пользователь системы может просмотреть задания, адресованные ему;
· получить задания, добавленные пользователем - пользователь системы может просмотреть информацию о заданиях, которые он добавил сам;
· проверить, выполнено ли задание;
· сообщить о выполнении/невыполнении задания - адресат или автор файла могут подтвердить выполнение задания либо назначить задание еще раз с повторным отправлением оповещения на почту;
5. Физическое конструирование
5.1 Выбор и обоснование инструментальных средств
При выборе технологии разработки системы были рассмотрены следующие требования:
1) Система должна быть мультиплатформенной. Чтобы учесть это требование, необходимо использовать мультиплатформенный язык программирования. Данная система разрабатывалась на мультиплатформенном языке Java.
2) Система должна быть реализована в виде веб-приложения. Это дает следующие преимущества:
· реализация по модели клиент-сервер дает сосредоточение и централизацию информации;
· веб-приложения не требуют процесса ручной инсталляции, они запускаются и устанавливаются в автоматическом режиме;
· пользователям для работы необходимо наличие только лишь браузера;
· возможность удаленной работы в сети.
На основе этого требования была выбрана технология Java Server-Side - технология проектирования и разработки (Java EE, Servlets/JSP).
Для реализации веб-приложения в качестве шаблона проектирования использовалась модель MVC (Model View Controller).
Стандартная схема архитектуры «Модель-Вид-Контроллер» изображена на следующем рисунке:
В этом шаблоне есть три основных компонента: Модель, Представление и Контроллер.
Представление (вид) отвечает за отображение информации, поступающей из системы или в систему. [7]
Модель является «сутью» системы и отвечает за непосредственные алгоритмы, расчёты и тому подобное внутреннее устройство системы.
Контроллер является связующим звеном между «представлением» и «моделью» системы, посредством которого и существует возможность произвести разделение между ними. Контроллер получает данные от пользователя и передаёт их в «модель». Кроме того, он получает сообщения от модели, и передаёт их в «представление».
При разработке системы в качестве модели использовались сущности и сервисы, описанные на этапе логического проектирования. Функции, описанные в сервисах, были реализованы с помощью запросов к базе данных на языке sql и обращений к файловой системе, а так же содержат реализацию необходимых алгоритмов.
Для организации связи между моделью системы и представлением были разработаны сервлеты. Сервлет является Java-программой, выполняющейся на стороне сервера и расширяющей функциональные возможности сервера. Сервлет взаимодействует с клиентами посредством принципа запрос-ответ. Основная задача технологии сервлетов - обеспечить доступ для пользователей Интернета или корпоративных сетей к данным и ресурсам на сервере, используя стандартные средства Web (любой браузер, HTML, HTTP), не требуя установки никакого специального ПО на стороне клиента. Вся обработка данных перенесена на сервер или несколько серверов. Клиенту в итоге возвращается Web-страница с запрашиваемыми данными.
Сервлеты в совокупности составляют контроллер. Аналогично JSP-страницам, сервлеты были разделены на две группы: отвечающие за работу обычного пользователя и администратора. В каждой из групп разбиение на сервлеты было реализовано по такому же принципу, как разбиение на сервисы на этапе логического проектирования.
Таким образом, были реализованы следующие сервлеты:
1. Для пользователей:
· MainPageServlet - отвечает за главную страницу (страницу, на которую пользователь попадает после аутентификации);
· UserGroupServlet - отвечает за данные, связанные с пользователями и группами (просмотр групп, просмотр данных о пользователях и другие);
· FileFolderTaskServlet - отвечает за работу с каталогами, файлами, версиями и заданиями к файлам (добавление и удалений файлов и версий, добавление и удаление заданий, просмотр информации о файле и т.д.);
· Upload - необходим для загрузки файлов в файловую систему;
· Download - необходим для скачивания файлов из файловой системы.
2. Для администраторов:
· AdminMainPageServlet - отвечает за главную страницу администратора;
· AdminUserGroupServlet - отвечает за данные, связанные с пользователями и группами (просмотр групп, просмотр данных о пользователях, удаление/добавление групп и пользователей, редактирование пользователей и другие);
· AdminFileFolderTaskServlet - отвечает за работу с каталогами, файлами, версиями и заданиями к файлам (добавление и удалений каталогов, удаление файлов и версий, просмотр и удаление заданий, просмотр информации о файле и т.д.);
· AdminDownload - необходим для скачивания файлов из файловой системы;
Кроме перечисленных сервлетов, реализован сервлет AuthServlet, отвечающий за аутентификацию, который является общим для пользователей и администраторов, а также два служебных класса MailLogger и SMTPAuthenticator, необходимых для отправки сообщений на электронную почту.
Для реализации представления использовалась технология JSP - она является обобщением технологии сервлетов. Эта технология позволяет комбинировать HTML-код Web-страницы c фрагментами Java-кода в одном документе. Когда клиент делает запрос к JSP странице, Web-сервер перенаправляет этот запрос к соответствующему сервлету, который выполняет всю работу и генерирует ответ, который отправляет Web-серверу, а Web-сервер - клиенту.
Были разработаны JSP-страницы, каждая из которых отвечает за определенную страницу, отображающуюся в окне браузера. Так как система предусматривает две роли пользователей (обычный пользователь и администратор), для каждой из ролей были созданы отдельные JSP-страницы.
Для удобства работы пользователей с помощью технологии AJAX было реализовано отображение дерева каталогов. AJAX - подход к построению интерактивных пользовательских интерфейсов веб-приложений, заключающийся в «фоновом» обмене данными браузера с веб-сервером. В результате, при обновлении данных, веб-страница не перезагружается полностью и веб-приложения становятся более быстрыми и удобными. [11]
Для связи с БД использовалась технология JDBC - это программный интерфейс приложения, обеспечивающий возможность связи системы управления базами данных с большим числом SQL баз данных и доступа к другим источникам табличных данных, например, электронным таблицам или неструктурированным файлам.
5.2 Использованное программное обеспечение
Среда разработки IntelliJ IDEA 8.1.3.
База данных для тестирования: hsqldb.
Сервер: apache-tomcat-5.5.25.
5.3 Тестирование приложения
Приложение тестировалось локально. В качестве данных использовались данные вымышленной организации.
В качестве файловой системы использовался предварительно созданный на жестком диске каталог.
6. Структура и состав БД
В соответствие с определенными ранее сущностями было принято решение включить в базу данных нижеперечисленные таблицы. В целях сохранения целостности данных были определены внешние ключи в таблицах.
Список таблиц:
1. Администраторы (идентификационный номер администратора, логин, пароль)
2. Данные пользователей для аутентификации (идентификационный номер пользователя, логин, пароль, статус об удалении пользователя)
3. Пользователи (идентификационный номер пользователя - внешний ключ к таблице Данные пользователей для аутентификации, фамилия, имя, отчество, должность)
4. Папки (идентификационный номер папки, название, идентификационный номер папки-родителя - внешний ключ к идентификационному номеру папки)
5. Шаблоны (идентификационный номер шаблона, название)
6. Файлы (идентификационный номер файла, название, комментарий, идентификационный номер папки - внешний ключ к таблице Папки, идентификационный номер шаблона - внешний ключ к таблице Шаблоны, неограниченность доступа к файлу)
7. Информация о файлах (идентификационный номер файла - внешний ключ к таблице Файлы, идентификационный номер пользователя - внешний ключ к таблице Данные пользователей для аутентификации, дата добавления, размер, срок хранения, путь)
8. Группы (идентификационный номер группы, название)
9. Список пользователей в группах (идентификационный номер группы - внешний ключ к таблице Группы, идентификационный номер пользователя - внешний ключ к таблице Данные пользователей для аутентификации)
10. Списки доступа групп к файлам (идентификационный номер файла - внешний ключ к таблице Файлы, идентификационный номер группы - внешний ключ к таблице Группы)
11. Списки доступа пользователей к файлам (идентификационный номер файла - внешний ключ к таблице Файлы, идентификационный номер пользователя - внешний ключ к таблице Данные пользователей для аутентификации)
12. Задания (идентификационный номер задания, текст задания, статус об удалении задания)
13. Мои Задания (идентификационный номер моего задания, идентификационный номер задания - внешний ключ к таблице Задания, идентификационный номер файла - внешний ключ к таблице Файлы, составитель - внешний ключ к таблице Данные пользователей для аутентификации (идентификационный номер пользователя), исполнитель - внешний ключ к таблице Данные пользователей для аутентификации (идентификационный номер пользователя), очередность выполнения, отметка о выполнении задания)
14. Версии (идентификационный номер файла - внешний ключ к таблице Файлы, порядок версии, идентификационный номер пользователя - внешний ключ к таблице Данные пользователей для аутентификации, дата добавления, комментарий, число для генерации пути)
электронный документ оборот hotdoc
7. Пользовательский интерфейс системы электронного документооборота HotDoc
Система электронного документооборота HotDoc предусматривает два режима работы: администратора и обычного пользователя.
Работа обоих начинается со страницы авторизации, на которой необходимо ввести логин и пароль.
7.1 Работа администратора в системе HotDoc
После аутентификации администратор переходит на главную страницу, с возможностью выбора из главного меню вкладок работы с каталогами, пользователями, группами, заданиями и выхода из системы.
Для того чтобы добавить новый каталог, необходимо, после нажатия в главном меню вкладки «Добавить каталог», в дереве каталогов выбрать его местоположение и ввести название.
При удалении каталога следует выбрать его в дереве каталогов и нажать ссылку в главном меню «Удалить каталог». При этом выйдет запрос о том, действительно ли Вы хотите удалить каталог?
Для работы с информацией о пользователях системы, администратору необходимо выбрать в главном меню вкладку «Пользователи». Отобразится список пользователей системы с возможностью их удаления, редактирования и просмотра групп, в которых они состоят, а также добавления новых пользователей.
Администратор имеет возможность удалить сотрудника, в этом случае при переходе по ссылке «Удалить» напротив пользователя в графе статус появляется пометка «Удален», а вместо ссылки «Удалить», появляется ссылка «Восстановить». Этот пользователь не отображается в системе, но в случае его возвращения на работу, он может быть легко восстановлен.
Также есть возможность просмотра групп, в которых состоит пользователь после перехода по ссылке «Просмотр групп».
При изменении данных о сотруднике, администратор может внести коррективы в информацию о пользователе, либо изменить логин и пароль.
При добавлении нового пользователя, переходу по ссылке «Добавить нового пользователя», администратор должен ввести ФИО сотрудника, его должность, e-mail, который является логином для вхождения в систему, и пароль.
В главном меню есть вкладка «Группы», которая отображает список существующих групп в системе, с возможностью их удаления, редактирования и добавления новых.
Для того чтобы создать новую группу, нужно перейти по ссылке «Создать группу» и ввести ее название.
Для редактирования группы необходимо щелкнуть по ее названию, далее отобразится список состоящих в группе пользователей с возможностью добавления/удаления новых.
При выборе вкладки «Задания» из главного меню отображается список заданий, которые пользователи смогут в дальнейшем назначать для выполнения пользователями к определенным файлам. Администратор может добавлять новые задания и удалять заданные.
После нажатия ссылки «Добавить новое задание», администратор должен ввести текст задания.
7.2 Работа пользователя в системе HotDoc
После успешной авторизации пользователь переходит на главную страницу, где в главном меню содержатся вкладки для работы с файлами, заданиями, просмотра пользователей и групп, выхода из системы. На главной странице размещаются объявления для всех пользователей системы.
При необходимости добавления нового файла пользователь должен выбрать вкладку «Создать документ», в дереве каталогов выбрать папку, куда следует его загрузить, ввести название файла, комментарий, срок хранения и выбрать файл для загрузки.
Все добавленные файлы отображаются во вкладке «Мои файлы».
После выбора файла во вкладке «Мои файлы» либо в дереве каталогов слева, отображается информация о файле. Пользователь может просматривать добавленные им самим файлы и те файлы, которые ему доступны для просмотра.
Пользователь может просмотреть задания к файлу, скачать его, удалить, просмотреть и редактировать доступ к файлу, просмотреть и добавить новую версию файла. Ссылка «Удалить» отображается только для автора файла, возможность редактирования доступа также имеет только автор.
Поскольку документ в ходе выполнения заданий изменяется, любой пользователь, имеющий доступ к нему, может загружать его новые версии. Версии файла можно удалять по одной, либо наоборот, оставить только одну, окончательную версию, выбрав в колонке «Удалить все кроме (№)» необходимую версию и нажав кнопку «ОК».
Для добавления новой версии во вкладке «Версии»->«Добавить версию» следует ввести комментарий, срок хранения и выбрать файл для загрузки.
Автор файла может редактировать доступ к файлу. По умолчанию файл доступен всем пользователям системы.
При выборе доступности файла определенным пользователям появляется окно выбора групп и пользователей, для которых доступен файл.
Во вкладке доступ к файлу отображается список пользователей и групп, которые могут просматривать файл, добавлять задания и версии.
Вкладка «Задания» из главного меню отображает задания, которые были назначены к этому файлу. Здесь можно увидеть текст задания, очередность выполнения, от кого и кому оно адресовано, выполнено ли. Можно удалить задание к файлу.
При просмотре заданий к файлу, пользователь имеет возможность добавить новое задание, выбрав текст задания и исполнителя. После добавления задания к файлу, адресату отправляется письмо на почту с тем, что ему добавлено задание к исполнению.
Вкладка «Мои задания» из главного меню отображает список заданий, адресованных авторизованному пользователю. Здесь имеется возможность поставить отметку о выполнении задания.
Вкладка «Задания» из главного меню отображает список заданий, которые были назначены текущим пользователям для исполнения другими. После проверки выполнения задания пользователь может поставить отметку о том, что оно выполнено.
Вкладка «Пользователи» из главного меню отображает список пользователей, зарегистрированных в системе.
Вкладка «Группы» из главного меню системы отображает список групп.
Щелкнув по названию группы, можно просмотреть ее состав:
Перейдя по ссылке с ФИО пользователя, можно перейти на страницу с информацией о нем.
Заключение
Сегодня, в 21 веке - веке информатизации, очень важно поспевать за изменениями в сфере информационных технологий. Чтобы быть конкурентоспособной организацией, важно оптимизировать свои бизнес-процессы. Одним из решений в этом направлении может стать переход на систему электронного документооборота. Возникает проблема в подборе подходящего программного обеспечения. Найти систему, удовлетворяющую требованиям организации по функциональности и в то же время оптимальную по стоимости достаточно сложно. Существующие примеры являются либо слишком примитивными, либо очень дорогими. Особенно остро эта проблема прослеживается для организаций с небольшим бюджетом, не имеющих достаточных средств, чтобы заказать разработку подобной системы.
В данной работе представлено решение этой проблемы. Разработана система электронного документооборота, отвечающая заявленным требованиям.
Web - приложение написано на мультиплатформенном языке программирования Java. Оно имеет интуитивно понятный интерфейс.
Система электронного документооборота HotDoc предусматривает два режима работы: администратора и обычного пользователя. Реализованы возможности работы с документами, их загрузка и редактирование, добавление новых версий и назначение заданий для выполнения пользователями, предусмотрена работа с группами пользователей.
При работе с документами реализована возможность редактирования доступа к файлу. Пользователь, добавивший документ, может задать область видимости, указав группы и пользователей, которым будет доступен файл. Лица из этого списка могут просматривать файл, скачивать его, добавлять к нему задания и редактировать версии файла (добавлять новые, удалять существующие).
Подобные документы
Процесс создания программы для электронного документооборота учреждения. Оценка ее качественных и количественных показателей. Выбор аппаратной и программной платформы Web-сайта. Разработка функциональной схемы обработки документов и доступа пользователей.
дипломная работа [233,9 K], добавлен 02.10.2013Значение документооборота как средства для управления предприятием. Организации системы электронного документооборота и требований, предъявляемых к системам. Проблема выбора системы электронного документооборота на предприятиях малого и среднего бизнеса.
контрольная работа [31,8 K], добавлен 14.09.2015Аппаратное, сетевое, программное обеспечение предприятия. Разработка системы электронного документооборота. Последовательность создания и технология построения информационной системы. Выбор системы управления базами данных, среды разработки приложения.
дипломная работа [1,5 M], добавлен 15.10.2013Назначение системы электронного документооборота. Построение функциональной модели поставки товаров в супермаркет. Основные свойства системы электронного документооборота ООО "Ксенокс". Особенности проектирования системы обеспечения продукцией в BPwin.
курсовая работа [1,4 M], добавлен 15.01.2010Современные электронные системы управления и работы с документами. Проблемы традиционных и электронных технологий ДОУ. Выбор эффективной СЭУД (классификация систем электронного управления документами). Защищенность электронного документооборота.
дипломная работа [124,9 K], добавлен 12.12.2007Задачи системы электронного документооборота. Анализ существующих информационных систем. Методы и средства инженерии программного обеспечения. Концептуальная модель данных в BPWin. Построение инфологической модели системы документооборота "Doc_Univer".
курсовая работа [56,1 K], добавлен 25.03.2014Основные понятия и преимущества электронного документооборота над бумажным. Проблемы внедрения системы, реализация электронного документооборота. Обеспечение подготовки, автоматизация, форматы и стандарты обмена. Обеспечение гарантированной доставки.
реферат [1,0 M], добавлен 23.02.2011Понятие системы электронного документооборота. Документ - способ упорядочения информации. Современные системы электронного оборота документации и их технические возможности. Обзор разработчиков СЭД. Глобальные государственные инициативы в этой сфере.
реферат [1,5 M], добавлен 09.12.2013Решения по разработке системы электронного документооборота, государственные инициативы и стандарты в данной области, существующие проблемы и направления их разрешения. Модель данных общей и пользовательской части, принципы разработки интерфейса.
дипломная работа [1,9 M], добавлен 20.12.2013Принципы организации документооборота управленческой деятельности. Создание компонентов систем электронного документооборота. Directum: краткое описание системы, решаемые задачи, архитектура. Безопасные приемы работы. Виды опасных и вредных факторов.
дипломная работа [1,7 M], добавлен 17.03.2013