1. Design the Form page of the website where users would be able to enter their:
a) Email Address - mandatory
b) Gender (radio-buttons) – mandatory (male, female)
c) Country (drop -down selection) -mandatory
d) Status (drop -down selection) – mandatory (single, married, religious)
e) Name - Mandatory
f) Type of Email (radio button) (HTML or TEXT only) (Default is HTML)
g) Language of e-message (check box) (English or Chinese or both languages)
h) Age group (drop-down selection) – (46)
*which will then be submitted to database + user will get confirmation email in their Inbox which they have to click in order to confirm their 'Opt-in'.
* Confidentiality Statement will be shown at the bottom of the Page.
2. Design and Develop an online Server-based Subscribers System that will:
a) store the data fields entered by the users [described in (1)]
b) store additional data fields: Date First Added, Date Confirm Active, Date of Deletion, and Date
Deletion Confirmed, Source of subscription, additional Country and Status
The definitions of the above fields are as follows:
i) Date First Added is defined as the date the user’s email address is first received via any
method [described in (2)(a)(v)]
ii) Date Confirm Active is defined as the date activation confirmation received
iii) Date of Deletion is defined as the date of unsubscribe request
iv) Date Deletion Confirmed is defined as the date which user confirms deletion via the reply email which he/she receives informing him that a deletion request has been submitted
v) Source of subscription is defined as the method through which this user was added to the system: This will be either:
- through Form page of the website [described in (1)]
- manually added/entered by Administrator
- imported from CSV file, or
- referred by Special program [described in (3)], email address of the active user who does the referral to be reflected here.
vi) Additional Country and Status are defined as empty text fields which administrator can key in manually.
• Email address is the main key. No duplicates of email addresses are allowed.
• If user is submitting an email address which is already in the database using Form [described in (1)], then system will generate message on the Form page that “this email address is already in our database” and stop the submission process until an email address not found in database is used.
• An email address is defined as “in the database” when it is received via any method [described in (2)(a)(v)]
c) Send reminders for confirmation if confirmation is not received, once every week (every
d) enable administrator to have import, export, insert, change, delete of all data fields
e) enable administrator to have easy selection/search by single or multiple fields
Example: select (gender = Male and Country = Singapore and Status = Single) to send a special email
Example: search by email address (to delete or make changes, etc)
f) enable administrator to save different e-messages for the scheduled sending at different pre-set dates and times.
(Sending is based on combination of selection and programmed criteria. Example: send e-message to all active subscribers OR send a separate message to Males and Singapore OR send a text message to text subscribers only.)
g) enable administrator to view the status for the different e-messages
The status is defined as whether the e-message is scheduled or sent.
h) Sending details like e-message, date and time can be amended as long as it is in queue and not yet sent out.
i) ensure as far as possible that e-messages will not be treated as SPAM, etc.
j) enable subscriber to stop receiving e-messages temporarily from a set start-date to a set end-date. In order to that, user must satisfy all requirements stated in 3(a), 3(b) and 3(c).
k) send a confirmation email to subscriber to confirm (j)
l) enable subscriber to continue receiving e-messages after set end-date.
m) enable subscriber to view the info to check why he/she is not receiving daily e-message. In order to that, user must satisfy all requirements stated in 3(a), 3(b) and 3(c).
n) enable subscriber to override the dates (change the dates or resume the getting of daily e-messages). In order to do that, user must satisfy all requirements stated in 3(a), 3(b) and 3(c).
o) enable administrator to view Delivery Status of e-messages.
Example: Status: have been saved or awaiting delivery on date: DD MM YY, time: XX:XX or have been successfully sent on DD MM YY, time: XX:XX.
p) enable administrator to manage unsuccessful emails
Example (email does not exist, mailbox full, etc)
-to prompt admin "This email address has not been able to receive any email since " DD MM YY, time: XX:XX). Do you wish to take this record off the mailing list?
• Facilitate the mass delete of unsuccessful emails
q) enable administrator to manually add in members to database.
r) enable administrator to do housekeeping function: defined as enabling the administrator to run a program periodically to mass remove subscribers whose ‘date of confirmed deletion’ is older than a specified date
s) enable administrator to have Statistics function: defined as:
i) Counting the database of subscribers (number of active, deleted, pending confirmation)
ii) Counting the database of subscribers by major isp (hotmail, yahoo, singnet, pacnet, starhub, Others as a group)
iii) Counting the database of subscribers by country
iv) Counting the database for Male and Singaporean and Single; Male and Single and Malaysian, Total Male, Total Female, Total Religious
Note – Statistics are only required monthly and system must be able to generate the above reports on a monthly basis. (Which means every month, the system will generate and store 3 reports which can retrieved, namely: (2)(s)(i), (2)(s)(ii), (2)(s)(iii) and (2)(s)(iv).
t) Provide for a Super-Administrator who can create/delete other sub-administrators
The definitions of the above fields are as follows:
i) Super-Administrator is defined as a login account which has all the administrator functionalities stated in this document including the ability to create/delete other sub-administrators but not Super-Administrator.
ii) sub-administrators are defined as login accounts which have all the administrator functionalities stated in this document excluding the ability to create/delete other sub-administrators or Super-Administrators.
u) Provide for Audit trail function for the Super-Administrator.
The definitions of the Audit trail function are as follows:
i) to enable the Super-Administrator to view the activity of all the administrators, including sub-administrators and the Super-Administrator himself.
The definitions of the activity tracked by the Audit trail function are as follows:
i) Login and logout date and time
ii) The functionalities accessed by the administrator and whether or not settings were saved.
3. Design and Develop a module for anyone who a personal computer using email software like MS Outlook or Outlook Express to easily export(see ** below) all the email address from his/her address book to the subscriber database in (2) with a simple routine.
a) In order to use the above functionality, the user must be an active user.
b) An active user is defined as a user who has activation confirmation received by the system [as described in (2)(b)(ii)]
c) The active user will be required to login with his/her email address in order for the system to verify the status.
*** The ‘export’ process is described as follows:
1) User goes to the page we are designing in , he goes to the “Add your Outlook Contacts to our Newsletter” Section
2) User enters his email address (described in 3c) and clicks ‘login’
3) System verifies that this email address is a “confirm subscriber”
4) Page refreshes and User sees “Steps to Add your Outlook Contacts to our Newsletter”
5) There is text + thumbnails(when clicked open up screenshots) that show the user
6) “Step 1: Open your Outlook/Outlook Express”
7) Step 2: Click on File>Export>Save as>CSV
8) The thumbnails + text guide the user to export their Outlook Address Book as a CSV file and asks them to note the location the file was saved
9) At the end of the thumbnails, there is a last step which has a “browse” and “upload” button
10) User is guided to browse the location where the CSV file is saved and to click on “upload” to upload the CSV file to the system we are designing
11) The system then says: “Thank you for uploading your Contacts! Your contacts will be asked to confirm their subscription before they can receive our newsletter”
12) System then checks all the email addresses in the CSV file, for all email addresses that are not “already confirmed” or “already added to the database”, system sends an email with text containing “Your friend XYZ<AT)[url removed, login to view] has just added you to our Daily e-newsletter. To start receiving our Daily e-newsletter, we need you to verify your subscription by clicking on the confirmation link here:………………………” “ If you do not wish to receive our Daily e-newsletter, click here:…………………….”
13) Upon “confirming” the particular email address is added to the “confirmed list”