Author Topic: [Community Project Idea] Document Management Framework  (Read 7301 times)

0 Members and 1 Guest are viewing this topic.

TR

  • Guest
[Community Project Idea] Document Management Framework
« on: October 23, 2006, 02:26:51 PM »
I've been toying with the idea of creating a document management framework in C# for engineering type documents. As a base it would handle customizable revision control, document storage, custom properties (searchable) and customizable tree structures (not the same as document storage).

If anything this can be used as base for some of us to get out there and learn C# by creating something and if something fruitful comes of it then that is great.

If anyone is interested in this drop a reply and I'll start working on a draft specification that can then be reviewed.

Note: I am far from a good programmer, especially in C#, so don't let lack of knowledge frighten you from participating. We'll just have some fun and see what happens.

Troy Williams

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #1 on: October 23, 2006, 04:00:46 PM »
The company I work for has been wrestling with some document management issues. I had been toying with the same idea that you have presented. Except I was thinking about using subversion as the backend seeing as it already does version control really well  :-). The problem is storing the information in a searchable database (I was thinking about MySQL). Subversion has an answer for this as well, hook scripts. These are scripts that are executed when specific events occur like committing document changes.

What I was going to do was send however added a new document an email with a link back to a webpage where they would fill out a description and keywords that would be used for searching later on. If the user was really keen they could use a program like tortoiseSVN they could use tags like [description][/description] and [keywords][/keywords] to pre fill out any information that they wanted committed. The commit messages would also be searchable.

The only problem that I had is that most people have no clue how to use a revision control system properly. That is where a good UI front end would make or break a project like this.

All in all, I would be interested... We could use the svn binaries to communicate with the server through a  c# app...


MickD

  • Gator
  • Posts: 3411
  • (x-in)->[process]->(y-out)
Re: [Community Project Idea] Document Management Framework
« Reply #2 on: October 23, 2006, 05:32:03 PM »
Sounds like a good idea Tim. If it's going to work in any form it needs to be simple to start with, perhaps a form that has fields for the doc name, a keyword, its revision and storage location/url in a simple searchable db and expand on that. Perhaps you could then bring in a subversion module at a later date??
The point is you don't want to paint yourself into a corner too early, you want to get results quickly to retain interest  :)
Forth is like the Tao: it is a Way, and is realized when followed.
Its fragility is its strength; its simplicity is its direction - Michael Ham

Lao Tzu: “To attain knowledge, add things
every day; to obtain wisdom, remove things every day.”

Troy Williams

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #3 on: October 23, 2006, 07:23:26 PM »
The point is you don't want to paint yourself into a corner too early, you want to get results quickly to retain interest  :)

I agree! That's why I haven't gotten anywhere other then thinking about it ;).

MickD

  • Gator
  • Posts: 3411
  • (x-in)->[process]->(y-out)
Re: [Community Project Idea] Document Management Framework
« Reply #4 on: October 23, 2006, 07:43:21 PM »
A big part of the project would be a reporting engine/UI instead of a commercial one like crystal reports. I've always wanted to have a go at one (a graphical layout editor with gdi etc)
It could be a good exercise in working with the print preview control and the printer, a simple text output would do for a start.

Quote
I agree! That's why I haven't gotten anywhere other then thinking about it...

heh, I have a list as long as my arm of those projects :D

<edit> and I think I just added another one...</edit>
« Last Edit: October 23, 2006, 07:48:30 PM by MickD »
Forth is like the Tao: it is a Way, and is realized when followed.
Its fragility is its strength; its simplicity is its direction - Michael Ham

Lao Tzu: “To attain knowledge, add things
every day; to obtain wisdom, remove things every day.”

TR

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #5 on: October 24, 2006, 10:09:25 AM »
I had thought about subversion but I'm not sure how it would work with XREF's. Also I'm not too sure about how subversions revision controls will work with users custom revisions.


I was thinking something along the lines of this:

Each document can be stored to any random location on the physical disk (whatever we find to be most efficient) and the database will handle the mapping of what the user perceives to be the path to the physical file. For example, if a user requests "\\myserver\mystorage\Job\X12334\10001D.dwg" the document management system will return a file located on the server at "c:\storage\asd213123\1233141\qwerty.dwg" based on the mapping defined in the database. This will allow us to develop an efficient filing scheme yet allow the users to use whatever filing scheme they'd like and all will work out. It will also allow the user to change their scheme in the future and all can be remapped.

With that being said I think the first order of business would be to:

1) Develop an efficient method of storing the physical files.
2) Develop a preliminary database layout.
3) Come up with a mapping scheme from the database to the physical files.

Am I making sense?

TR

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #6 on: October 25, 2006, 09:20:06 AM »

M-dub

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #7 on: October 25, 2006, 09:25:08 AM »
I can't offer much (anything) in the way of code, but my work life has been submerged into the EDMS world for a while now and I've had a lot of ideas on how the package we went with could be improved, etc. and I'm actually keeping a running list of these improvements.

If I can be of any help to you guys, let me know!  I think this is a great idea.

TR

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #8 on: October 25, 2006, 09:52:55 AM »
Mike:

I've also done quite a bit of work with a document management package which I won't name (*cough* see signature *cough*) and I find it quite lacking, that's one of the reasons I want to start something new.

Any input you can provide would be more than welcome.

M-dub

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #9 on: October 25, 2006, 10:02:22 AM »
Cool!
Well, I, like you, have been driven psycho by Cyco, but we're now past that, thankfully.

I had some thoughts on creating our own in-house document management package a few years ago... let's see if I can find the 'preliminary screenshots' I came up with...
Back later...

It also appears that I'm going to be VERY busy at work now, so I'll have to pop in when I can.

Troy Williams

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #10 on: October 25, 2006, 10:16:09 AM »
They make sense.

Item 1 is probably the trickiest. Subversion would be awesome for this as it stores the original file + deltas of the changes. Unfortunately, it cannot glean the xref information automatically as the dwg files are binary. However, your c# front end could get this information before the binary is committed to SVN. Then the information could be posted to a SQL database. Another thing to keep in mind is that Subversion does support locking of files that are checked out.


If the c# front end is done correctly, it shouldn't matter what the back end of the system is: storing the files directly in a share, compressing the files, using subversion or storing them in a database as blobs.

For starters, like Mick suggested, things should be kept simple. So I think the method that you outlined would be good for starters. Another good thing would be to map out how you envision the work flow. How would the system work from a users point of view?

TR

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #11 on: October 25, 2006, 10:52:49 AM »
Let me see if I can get some stuff together today/tonight to clarify what I think the best way to approach this is. From there we can discuss.

MP

  • Seagull
  • Posts: 17653
  • Have thousands of dwgs to process? Contact me.
Re: [Community Project Idea] Document Management Framework
« Reply #12 on: October 25, 2006, 12:07:06 PM »
Very interesing! I salute you folks, and don't wish to be a stick in the mud, but I personally would be looking to see how I could exploit and extend the abilities of an off the shelf solution like Synergis Adept <which as I understand it deals with linked documents like xrefs> before investing a lot of time into a new solution, as interesting and rewarding as it may be. It's a huge effort to design, never mind code such an application (in other words cheaper to go off the shelf). Just sayin'.

:)
Engineering Technologist • Programmer Analyst • CAD Specialist
Multi-Discipline • Design • Drafting • Document Control • Automation.
cadanalyst@gmail.com • www.linkedin.com/in/cadanalyst

TR

  • Guest
Re: [Community Project Idea] Document Management Framework
« Reply #13 on: October 25, 2006, 01:22:31 PM »
Adept is quite costly compared to the $0 a year it will cost a firm to use our software if we succeed. Also it gives anyone interested a chance to flex their gray matter a bit and help either bang out some code or give some comments/suggestions.

MP

  • Seagull
  • Posts: 17653
  • Have thousands of dwgs to process? Contact me.
Re: [Community Project Idea] Document Management Framework
« Reply #14 on: October 25, 2006, 01:46:56 PM »
Adept is quite costly compared to the $0 a year it will cost a firm to use our software if we succeed.

Guess it depends how you look at it Tim. If you develop the application on company time its cost will exceed any off the shelf solution, and by magnitudes unless your enjoying minmum wage. If on the other hand you develop it entirely on your time you are subsidizing the company on your ticket, which is extremely generous given some past accounts, not to mention risky because they may claim ownership after the solution comes to fruition. Before you dispute the latter, and indeed, before you launch into development like this (if entirely on your ticket) I would suggest getting an agreement in writing to protect yourself and your contributors. Same goes for any contributing parties with their employers. IMO of course.

... it gives anyone interested a chance to flex their gray matter a bit and help either bang out some code or give some comments/suggestions.

I fully appreciate that, and had hesitations posting my comments because of this -- but in the end my conscience won out. Wrong or right as all said may be, I'm compelled to respond in a way that is responsible from my perspective, and as such, my conscience is now clear.

:)
Engineering Technologist • Programmer Analyst • CAD Specialist
Multi-Discipline • Design • Drafting • Document Control • Automation.
cadanalyst@gmail.com • www.linkedin.com/in/cadanalyst