Document management is tricky. Personally, I'm anal about keeping documents organized in the most intuitive way I possibly can. In practice, though, that means I spend hours wringing my hands and ultimately wind up saving documents wherever I feel like saving them.

I'm only in charge of documents for one person, though: me. Dave's coworker, who we'll call Alessa, was responsible for document control throughout their company. With the best of intentions, she set out to build the best document management system ever.

The documents are all on a network-accessible share drive. Alessa started indexing documents by control numbers, using a numbering system she created: six digit integers, organized in folders named as follows:


It'd seem that each of these folders would have 200 documents in it, right? Wrong. Usually, there are between 10 and 20 documents in each folder. How do you find the document you want? Dave and his coworkers have no idea — only Alessa knows.

Since the documents are indexed by control number, even knowing the name of the document you want wouldn't help. You have to start by finding the control number. The index of control numbers to documents is done entirely in an Access table. Dave only told us one detail about the structure: the table's date column works as an enumeration of sorts. Some dates in the table are reasonable (03-04-1999), while others are unreasonable (05-05-5555). Here's a sampling he pulled from the table:


The dates that could feasibly be within any living human's lifespan are probably significant; perhaps it's the day the document was added or last updated. I don't know, and neither does Dave. The dates that look like 03-03-3333 indicate the type of document you're looking at. Conveniently, the lookup table that maps document types to enum/date-things is stored entirely in Alessa's mind.

Because users couldn't figure the system out, Alessa became the public interface to the document management system. If someone needed a document they could simply ask her for it and hopefully get it by the end of the day. Fortunately, should she ever be run over by a bus (Dave's words), there's a 19 page document explaining how the document management system is organized. It's document 100406. Or was it 102819? Or...

[Advertisement] BuildMaster allows you to create a self-service release management platform that allows different teams to manage their applications. Explore how!