The project is to develop a common user profile system and web service.

You must develop the following:

1 - Design a relational data model to hold the information on the attached user profile XML Schema (ProfileData file). Create a Visio ER diagram and this must be reviewed and approved by the buyer before moving forward to the rest.

2 - Develop database on MS SQL 2008 and REST web services to create, read and modify user profiles in the database. The web service should accommodate at the minimum the formatted XML requests and responses attached so it can interface with standard systems. The web service must also encrypt password and credit card information upon writing to the database, and decrypt the credit card information upon retrieval. Service must be able to authenticate users, retrieve all or part of a user profile, create/update all or part of a user profile.

3 - Develop a working web interface in ASP.NET C# to create, update and delete profile and information in the system using the web services to access the profile database. Do not connect directly to the database. We estimate needing about 12 pages as we will not develop an interface to control the entire profile; just core areas which are estimated to be about 12 pages (plus some pop-ups in the pages to add records). We will provide HTML pages (with appropriate JQuery) as a front-end interface; you simply hook this up to the service. You should add pages to this where you see gaps. Your work must be neat, clean, mirror our design standard and be compatible with all the major browsers.

In developing the web services you must provide an authentication scheme for access to the service itself (with ability to turn on and turn off access).

Note: this is a user profile with many relational tables. Furthermore the profile will store passwords and credit card information, so it is critical that you have a secure mechanism to encrypt, decrypt and transmit this data.

All web services must provide proper documentation for someone to consume the service. Send first for review and approval before programming.