Saturday, December 16, 2006

Web Application to deliver Storage Service

There are a number of Storage Service web applications out there that are currently serving customers. These applications are normally built by frameworks ranging from .NET and Java. There are some new ones that are emerging from new technology such as Ruby on Rails. The methodology, the framework, or the language that were used to built the application does not matter. The features for Storage Service web application are the most important.

Our Storage Service web application does multiple things. The following use-cases were thought at the beginning:
1. Self sign-up process
2. Once registration is confirmed, a new user can log-on and start uploading files to backup.
3. There are two modes of uploading files -
3.1 Single file upload
3.2 Multiple file upload
4. Once the files are already uploaded, user can start to manage directories and file location. These files are able to be downloaded if the local copy of these files are lost.
5. User can opt to share some of his/her own files for other users within the same systems such as news, tips, or bulletin board - this is called Public Sharing
6. User can also share the files with a close group of people based on the number of downloads or the length of time - this is called Private Sharing
7. If a user wants to protect his/her files, he/she can encrypt any files with AES 128 bit.


We'll start examining from the top why and how are things being done:
1. Self sign-up process
- since we don't take orders manually over the phone, we need users to register for the service and find a way to pay for it themselves. Once payment is confirmed, they will receive a notification e-mail to start as the first day of service. The billing cycle is based on the start date/time of the service.

- current sign-up process can be done either from the web interface or SMS to our SMS engine.

- we could turn it off originally to provide free service promotion for certain period of time. We plan to launch a marketing campaign in January 2007 together with True for its SME customers at True SME World Exhibition. This could be easily setup.

2. Confirm registration with a notification e-mail
- once payment is confirmed, we automate the notification via e-mail. This could be engineered into an SMS notification to user instead. The notification mechanism will be through the same channel. If user registers for the service via web interface, notification will be via e-mail. However, if user registers for the service via SMS (Short Message Service), notification will be via SMS.

- setting up payment method via SMS may seem harder. With Northstar Mobi service, in the near future, user can opt to choose Mobi payment method as well.

3. Upload files
3.1 Single file upload - user browses for a file that needs to be uploaded to keep. Then user clicks confirm to send it over. The dialog box will show the percentage of that upload until it's compelted. To prevent uesr from confusion whether the file has been successfully uploaded. User can also check from the main page after login whether the files that were uploaded are there or not.

3.2 Multiple file upload - user looks for files that need to be uploaded. Multiple file upload dialog box will pop up and wait for the user to select files, then upload. However, uploading an entire directory is not supported in this level. User needs to enter that directory to select all the files in that directory.

4. File management
- user can delete, move, and copy the files on the server through a web page. User can also create directories, sub-directories and so on. It is fairly easy to navigate even though user is not IT oriented. This makes it easy for user to create good document repository.


5. Public Sharing
- user can choose files that are needed by others within the same system. Public sharing will copy those files to a public directory. Every user on the same system could browse this public directory for files, news, tips that they want.

6. Private Sharing
By number of downloads - user can select files that can be downloaded a certain amount of time. This is in the case the user wants 4 of his/her friends to download a picture. This user could set the number of allowable download to 4. Our Web application will store the number of downloads permitted by the owner of the files and the number of downloads left to ensure the number of downloads rule still applies. A failed download session is counted as one download session to prevent any data confidentiality.

By length of time - user can select the length of time that these selected files can be downloaded. User's friends can download as many times as they want. But once the time limit is up, these files are not download-able.

7. Encryption

Security is put last on this list. It's the most important issue for most customers. We use 128-bit encryption either AES, DES. More encryptions are on the way such as Public key cryptography. User can upload his/her sensitive information for backup. However he/she may not have the peace of mind that his/her files can be viewed by someone else.

Before starting using this feature, user needs to create a key to encrypt these files. Key generation is done automatically once a user registers for the service. Then user needs to store the key somewhere safe. If the key is lost, it is almost impossible to bring the files back. The latest computers will spend millions of years trying to break these code. We have tested with all Microsoft Office files (MS Word, MS Excel, MS Powerpoint, Visio) and they all work beautifully when we extract the files back to its original stage.

All these features were built more than 2 years ago. We are excited to see its growth and ROI. If you need our help, send us a note. The sample contracts are coming to this blog soon. If you need any help setting up a Storage Service provider, Storage Service web application, and even making test subjects, let me know. I can help you to be up and running in a few weeks.

Next entry will talk about legal contract and setting up an operation. Have a lovely weekend, everyone.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home