SIT322 Distributed Systems Assignment 2
All 3 assignments in this unit involve creating and building upon a Customer Relationship Management (CRM) system for a nation-‐wide logistics company. In Assignment 2 the CRM system will have additional membership functionality with an associated database.
Assignment 2 involves development of a marketing analysis component where statistical results are derived based on a salary database. More specifically, an engineering company provides its employment information in a compressed database dump named “employees.zip” which consists of a few database tables such as department, titles, salary and so on. Your task is to categorize the employees into one of three membership groups. Only those employees younger than 68 years are eligible. Furthermore, we have three types of membership – gold member, silver member and regular member. Gold members are those who earn at least as much as the top 20% salaries in the employee database; silver members are those who earn at least as much as the top 50% salaries in the employee database; and the regular members are those whose ages are between 60 and 67. Database Creation
The first task is to create a local MDF database as you did in Prac 6 Section 4. Your database should contain at least one table. This table should consist of columns storing membership ID (in plaintext), first name (in plaintext), last name (in plaintext), membership group (in plaintext), date-‐of-‐birth (in ciphertext), salary (in ciphertext) and gender (in ciphertext).
And then you should insert several dummy entries before you encrypt the sensitive information. How the encryption is implemented is not important, you may use in-‐built database encryption, you may use encryption classes provided by the .NET framework and store/retrieve the data already encrypted, or you may even use your own encryption scheme (it does not need to be a secure scheme for this assignment, e.g. a Caesar cipher).
Web interface
To manage memberships, you will need to create an ASP .NET website with one web form. On this web form (e.g. “Default.aspx”), there should be at least the following controls: •
•
•
•
SQL database controls for displaying membership information including MembershipId, names, and MembershipClass and so on. “TextBox” controls for updating member’s MembershipId, names, and MembershipClass and so on.
“Label” controls to indicate error messages.
A CSS component.