This document describes a simple document management system (sDMS) created to allow collaboration on documents. It discusses document management systems and standards like JSR-170. The sDMS uses Apache Jackrabbit to store and retrieve documents from a content repository with an Apache Derby database. It has features like authentication, file uploading/downloading, versioning, locking and searching. The architecture includes a client interface, web container and storage layer. Testing showed it performs as expected. Future work includes improving search, interfaces and adding features.
1. S
A
P
I
E A Simple Document Management System
N (sDMS)
T
I
A
-
E
M
Advisor: Author:
T
E Asist. Ing. SZABÓ László Zsolt ZSIGMOND Rezső
Târgu Mureş, 2009
2. Goals
S Efficient document management is an important
A
P
factor for an organizations performance.
I
E Our goal was:
N
T
To allow a group of people to collaborate on a
I complex set of documents, like the “Dosarul de
A Acreditare”
-
E
To overcome the restrictions of the existing
M document storage (shared network drive), and
T to add new features like versioning, logging,
E
better security, locking capabilities
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
3. Document Management Systems
S
A A DMS is a set of computer programs that store
P
I and track electronic documents.
E Functions of a DMS:
N
Store documents and their metadata
T
I
Index documents
A
Retrieve the stored content
-
Security features
E
M
Collaboration
T
Versioning
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
4. JSR-170
S
A
Content Repository for Java technology API
P (Day Software, from February 2002)
I
E
Content repository is a hierarchical content store
N for structured or unstructured data
T
Was created to provide a standardized interface
I for different repositories
A
JSR-170 compliance levels: level 1(browse), level
- 2(write), optional features
E
M
T
A repository is like an n-ary tree. The tree consists
E of Items (nodes, properties)
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
5. Apache Jackrabbit
S
Fully conforming implementation of the JCR based
A on the JSR-170 specification
P
I
E
Consists of three layers: Content Applications,
N Content Repository API, Content Repository
T implementation
I
A
Configuration: file system, security, workspace,
- versioning, search, persistence, clustering
E
M
configurations
T
Node types and properties
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
6. Existing DM Systems
S
A
jLibrary: open source DMS based on
P Jackrabbit and a J2EE compliant application
I server
E
N
OpenKM: open source DMS based on
T Jackrabbit, JBoss and GWT
I
Alfresco: Java based CIFS server available in
A
- multiple languages
E
KnowledgeTree: commercial open source
M web based DMS developed using PHP
T
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
7. Requirements for my application
S
A
Authenticate users
P
Create and rename folders
I
E
Upload files
N
Change file attributes
T
Delete files and folders
I
Download file
A
Replace file
-
Lock file or folder
E
M
Store multiple versions of the files and folders
T
Move files and folders
E
Search the content of the repository
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
8. Architecture
S My application is a web based DMS designed with
A J2EE technology. It can be divided into three layers:
P
Client interface: web browser
I
E
Web container: Apache Tomcat 6.0
N
Storage Layer: consists of the Jackrabbit content
T repository and an Apache Derby database
I
A
-
E
M
T
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
9. Security
S
Authentication is handled by the web container
A (Tomcat 6.0)
P
I
E
User login information is stored in an Apache
N Derby database
T
I
Jackrabbit requires authentication on the
A repository level, meaning that users are
- authenticated for the second time on that level.
E
M
This authentication is hidden from the user.
T
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
10. Jackrabbit configuration
S Configuration options:
A
FileSystem: LocalFileSystem has been used
P
I
E
Security: configures the Access Manager and Login
N Module
T
I
Workspace: default workspace configuration
A template
-
E
M
Versioning: configures how versions are stored
T
E
SearchIndex: the default implementation uses
Apache Lucene
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
12. Lock file
S
A
P
I
E
N
T
Preventing files from being modified
I
A
Only the user that placed the lock can unlock it
-
E
M
Two types of locks: the first locks only the selected
T item; the second option locks all the child items also
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
13. Delete file
S
A
P
I
E
N
T
I
removing files from the repository
A
-
A deleted file can be recovered, if versioning is
E enabled
M
T
E
Previous versions of the file are not deleted
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
15. Test cases
S
deployed on a PC with a 1.6 GHz Centrino Duo
A CPU, 2GB RAM, 5400 RPM hard drive, Windows
P XP Professional
I
E
N
Tested with several use case scenarios and it
T performed as expected
I
A
Every functionality was tested several times using
- different input data in order to ensure proper
E
M
functioning
T
E
Future tests will be carried out in pre production
environment
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
16. Test case example
S
Repository upload time in good network
A conditions (localhost)
P
I
E
N
T
I
A
-
E
M
T
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
17. Results and improvements
S
I've managed to build a DMS that will serve our University
A and other small organizations
P
I
It has all the functionality that is required to effectively
E manage and organize documents
N
T
Next steps:
I
A
improve certain parts of the application, like search, user
- interface, multilingual version, mass document upload and
E download
M
T
Make it available for small organizations
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009
18. S
A
P
I
E
N
T
Thank you for your attention
I
A
-
E
M
T
E
Zsigmond Rezső, A Simple Document Management System Târgu Mureş, 2009