I am currently going down the same path and creating project and document management database software. I started the project because our company (4 employees) would not buy typical management software which is aimed at larger projects and companies. I started using excel, then had a brief stint in Outlook then I moved to Access and I am currently evaluating the move to C++ and mySQL. Anyhow my journey so far I have done the following things: So far I have done the following: Outlook (Dont try programming with vbscript (forms for contacts, calender, tasks ...) unless you are a sucker for punishment) Synchronize routines for outlook contacts to access Rewired the outlook calendar to a timesheet program. It now synchronized with my access timesheet database. I rewired the task manager to a project manager and then ran synchronization routine through exchange server to my other workers, but I kept overloading the buffers. This pretty much convinced me to switch over to ACCESS. Document Control Created a standard document that outline the font and format that all my documents all look and feel the same. Created excel and word templates that I base my forms, letters and so forth off of. I did write a little routine for document control which helps me know which document are allowed for use with my other employees. Document Folders Decide whether your folder locations will be and whether this information will be hard wired into the program or will you created a database that will track and add this information as your company changes. I created routine to create the folder structure automatically with each new project to maintain the consistency of the work flow. One problem that I am battling with my IT is that they want my folder paths to be reduced which affects file access and backing up data. Synchronization I plan to be able to incorporate using your laptop or packaging information on your jump drive to work at home or on the road. In effect I have created addition fields in my table with reference the origin of data, which would reference the equipment and the ID number of the field of the remote table. The other thing that I am tracking is Created Date, Modified Date, and Accessed Date which is something that typical word processing documents use. I am contemplating adding more fields such as the person who created or modified or last accessed the data. It would me more used to track how bad data was entered into the main database. Search Engine With project management an