What is TechDoc?

Purpose: TechDoc is intended to provide an easy way to manage documents of any type while being web-based, ISO 9000 compliant, NPG 2810.1 compliant, standards based, security customizable to the document level, inexpensive even with thousands of creators and tens of thousands of readers, and portable across hardware, operating systems, databases and browsers.

Description: TechDoc is a distributed, portable document management system designed for the management of any type of document or file. The system is web-based and provides for an electronic means to:

  • Manage documents through their entire life cycle; creation, modification, distribution, and deletion.
  • Provide extensive per-document security and access controls.
  • Provide full history tracking of every document's life cycle.
  • Provide electronic notification of document events.
  • Provide ad-hoc reporting capabilities.
  • Provide revision control of approved documents.
  • Distribute released/published documents to the user community.
  • Provide full text search and retrieval of published documents.
  • Provide watermarked PDF versions of released documents.
  • Provide for on-line review and approval of documents (in Phase II).

TechDoc is written in Java. It has the capability to store any electronic file type, such as audio, video, not just traditional documents (Word, Excel, PowerPoint, PDF, iGrafx Pro, etc.). It has a Windows Explorer like interface with folders and documents to allow for the hierarchical organization of documents. It also functions as a distribution system for those documents allowing them to be accessible to only one or two people with a valid username and password, to a group of people, or even globally to anyone who can access the server. The system has granular security down to the per-document level and to the privileges assigned to each user. The system provides full history tracking for audit and security purposes. The system also contains an ad-hoc reporting capability to create and run reports in various formats (HTML, XML, CSV). In addition, user-defined metadata is supported.

Functional Operation: Document Maintainers use a web-browser to connect to the desired document manager where they perform operations on their documents (Create, Modify, etc). Typically, Document Readers will use a web-browser to go to the centralized search manager, instead, to locate and fetch their documents. Much like using Google® or Yahoo!®, the reader is able to retrieve documents without having to know where the documents are actually located. TechDoc Administrators can use a web-browser to connect to the desired document manager or search manager to perform administrative functions on them. To keep the search manager(s) up to date, whenever a document is created, modified, deleted, or released an update is automatically sent to the appropriate search manager(s).

The software is also configurable to support a large number of environments. Each server can be tailored to meet the requirements of different groups. Security settings, data entry masks, and document organization are just a few of the items that may be changed. Because the system is designed in a modular fashion using Java, the system can easily be modified, even given a whole new user interface, through programming. TechDoc could even be used as a background engine or API for a new application where document management is only a small piece of the over all application's functionality.

The security subsystem was designed from dealing with distributed organizations and the Internet. The system has the concept of individual users with unique usernames/passwords, and groups (Global, Community, Campus, and Local). As the name implies, the Global group consists of anyone on the Internet who is provided web browser access to the server. The Community group is defined by a set of IP address ranges, which are considered to be part of the logical "Community" for a specific server. The Campus group is defined by a set of IP address ranges, which are considered to be part of the logical "Campus" for a specific server. The Local group is defined as any user who has successfully logged in with a valid username and password from a computer located within the Campus group (or Community group or Global group depending on the server's security settings). On a per-document basis, access can be granted to individuals and/or groups. This makes it simple to give access, for example, to three specific individuals to update a document but allow anyone in the world to read the document.