Programming Forums

Programming Forums (http://www.programmingforums.org/forumindex.php)
-   Project Ideas (http://www.programmingforums.org/forum50.html)
-   -   University Final Year Project (http://www.programmingforums.org/showthread.php?t=4040)

nez May 22nd, 2005 6:45 AM

University Final Year Project
 
For my final year in Uni i have to do a project, its worth 20% of my degree so its very important. I dont start it until september but i'm trying to find out as much about it now as possible and see if its possible to do/what people think of it.

Here is the proposal (i guess the software side would interest you guys the most):

Quote:

Home and business users automated file backup.

This project comprises of two sections (hardware and software sections);

Hardware
A hard drive casing that protects a simple IDE/SATA (SATA2, a new HDD technology allows hot swappable hard drives, much like USB, but with much higher data rates) hard disc drive from fire, shock, water and other hazards that a standalone hard drive would not survive, connected to the pc via LAN/USB/Firewire/wi-fi (to be researched for best/most popular/best performance connection method). The casing would likely be metal with a removable end or top section to fit the drive, as well as a power supply to fit in a 3 pin plug. Once closed the drive must be sealed from any external hazards to protect it. Another consideration that must be taken into account is that when operating for long periods, the average 3.5" HDD gets quite hot and needs some method of cooling, possible using the case like a heat sink or throttling the HDD access speeds i.e. slow it from 7200rpm to 3600rpm?

This would require stress testing in hazardous conditions. Conditions to include: Water damage, fire/high temperature, shock and pressure testing.

Research needed: current external hard drive enclosures, Airplane flight recorders, shock and water proof computer components, drive connectors
(IDE/SATA, USB, FireWire)


Software
A program that can monitor any chosen folder(s) or drive(s) and automatically make backup copies of all files and folders on to the protected external hard drive (1) and any additions or changes to the said folder(s) or drive(s) also be copied to the remote HDD (with date stamp so no files are over written), so there will always be a backup of any required documents without any need for the user to select when to back up. Programming language to use still to be researched but I’m currently learning C++ in my spare time so i will likely use that. The program will run in the background with an icon in the system tray (in windows), with a proper window rather than just run in a console window.

Research needed: Similar programs, programming languages (C++)

Extra features
To be included if time:
1. Multiple users support for 1 hard drive,
2. Ability to expand available backup space with more discs or copy all files onto a larger disc,
3. Scheduled backup dates or times when files are copied to the external
Hard drive to lower burden on pc and reduce amount of disc accessing,
4. Multi OS support for program (Windows, Linux/Unix, Mac OS)
5. Possible encryption of backup data
6. Compression on backup data to save space
What do u think?

I'm going to learn C++ over the summer to do it.
Is this possible to complete in 7 months?

Any feedback would be very useful, even if its bad feedback.

Thanks
nez

tempest May 23rd, 2005 3:38 AM

I'm not sure how you would accomplish such a task on the software side without being extremely resource demanding. The only way that i can think to do it is constantly scanning files for changes in the date_modified part of the file information. This wouldn't be hard, but it would have to keep track of what every file was the last time it scanned before doing it again. Keeping something like that in program memory would be HELL! Maybe you could work with MSSQL server or something for better results, but still the process will be demanding on the computer and slow down performance.

I'm sorry if i'm being harsh but i'm trying to warn you, especially since you've never programmed C++ before, that a backup system of this magnitude would be comprable to the slowdown on the system that spyware causes.

nez May 23rd, 2005 6:41 AM

Thanks for your feedback tempest, i have been thinking about this too.
One way i thought of overcoming it is to set up a scheduling system for backing up (like in many commerial defrag programs and antivirus) where the user could choose the time and frequency of backups, possibly a screen saver mode too. One program that springs to mind is Diskeeper which has a set and forget it section where u can choose what time of day the pc should defrag itself (night time, weekends, out of work hours or any time).
nez

Infinite Recursion May 23rd, 2005 8:59 AM

Yes... this should be possible in 7 months... if you are fairly proficient at the basics of C++ or a quick learner. This type of program is definitely a resource hog. I wouldn't run it in the background. It would be best to have a configuration interface where the user can specify the time frame, and/or when the system is idle and the CPU carries an ultra low load.


All times are GMT -5. The time now is 9:21 PM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC