Name First Name First Name
Age Middle Initial Middle Initial
Address Surname Surname
Postcode Age DOB
Home Phone number House Name/Number House Name/Number
Photo of Customer Street Street
Town/City Town/City
Area Area
Postcode Postcode
Home Phone number Home Phone number
Gender Gender
Email Address Email Address
DOB CustomerID (primary key)
CustomerID (primary key)
Photo of Customer
TblFeatures Initial List TblFeatures 1st NF TblFeatures 2nd NF
WAP/Internet WAP/Internet WAP/Internet?
Colour Screen Colour Screen Colour Screen?
Picture messaging Picture messaging Picture messaging
Games Digital Camera Digital Camera
Downloadable Ringtones Games Games
SMS Messages Screensavers Screensavers
Infra-red Infra-red Downloadable Ringtones Downloadable Ringtones Customer ID
SMS Messages Phone ID
Customer ID
Phone ID
TblPhones Initial List TblPhones 1st NF TblPhones 2nd NF
Phone ID Phone ID Phone ID
Phone Model Phone Model Phone Model
TblCustomers
TblFeatures
TblPhones
These tables show the Field Names, The Field Type, The size, whether any validation is used for each field. They also show whether each field is a primary key or not. If the field is “required” then the database will not accept the record if it is not filled in…
Queries & Reports
I will make queries and reports to show:-
- All Customers’ Data – this will show all the customers details on just a few sheets of A4 paper.
- Customers with WAP – this will show all the customers with WAP on their phones, it will show their first name and surname.
- Customers with Picture Messaging – this will show all the customers with Picture Messaging on their phones, it will show their first name and surname.
- Customers with a Digital Camera on their phone – this will show all the customers with Digital Cameras on their phones, it will show their first name and surname.
- A Specific Customer’s Details (for Data Protection Act) – This will show all the data held for a specific customer. When the query is run, the user is required to enter the first and last name of the customer.
- Customer’s Addresses, if they need to be contacted by Post – This will show just the customers names and addresses, if they need to be contacted by the post.
- Customer’s Phone Numbers, if they need to be contacted by phone. - This will show just the customers phone numbers, if they need to be contacted by the post.
Hardware resources required
Hardware needed for Input
To input the information into the database, you will need a keyboard and a mouse. I chose to make the system compatible with a keyboard and a mouse because:-
- There are not many alternatives to a keyboard, and a keyboard is by far the cheapest and simplest way of entering text into a PC.
- A mouse is needed for clicking the buttons on the switchboard, and using the drop down boxes on the forms for fields such as “Gender”. Other input devices could be used with the system such as a trackball or a touch screen monitor. These alternatives would work just as well, but they are more expensive and I don’t think they would be a worthwhile investment for the business.
Hardware needed for Processing
A computer is needed to install and store the model on, obviously you must have at least 250mb of available disk space. Minimum requirements: 400 MHz or higher processor, 128mb RAM, CD-Rom Drive.
Hardware Needed for Output
You will need a printer and a monitor to use my database effectively. A monitor is the most popular piece of hardware used with a PC. Other alternatives such as a projector could be considered but they would waste money unnecessarily and would not benefit the company. A printer is needed to print out the reports. Other alternatives to a printer are a plotter, but they would be totally unreasonable for the job my database is designed for.
Software resources required
I will be using Microsoft Access 2000 to create and run my database. I could have used a program called Microsoft Works, but this only has the ability to handle one table, mine requires 3. I could have used a piece of software called Lotus Approach, this has basically the same features as Access, but we do not already own a copy of it. Microsoft Access is by far the most popular piece of Database software, and we already have it installed on the computer in the office. I will be using Microsoft Word for my write-up, because the same as access, it is the most popular word processor, and we already have it installed on the office computer.
Data collection, data capture and input
I have designed my system to maximise the ease that a user can enter data and use the other features of the database. To make things easier for the user I have :-
- I designed forms for the user to enter information, instead of them having to enter data into complicated and fiddly tables. It is much easier to enter data into a form than a table because the form has been specifically designed for ease of use. The boxes for entering information are placed in the best places and the overall feel of a form is much more comfortable to work with :-
instead of :-
- I used input masks in some fields such as Postcode, to stop the user entering false information :-.
-
Instead of the user having to type in Male or Female, for a simple question such as Gender?, they can select their gender from a drop down box, this makes it much easier for the user because they don’t have to use the keyboard. Also, if they had to type either male or female, they might make spelling mistakes, thus causing queries etc. not to function properly:
- I have also created a switchboard (menu system) that makes it very easy to navigate through the database and choose different options etc. he switchboard is extremely simple to use, as only the mouse is required and the buttons and options are easy to see and understand. If I had not created a switchboard, it would have been much harder to use the database and the user would have to be taught how to use it, wasting time and effort. The switchboard :-
Data verification and / or validation
Validation is the process of detecting any data that is inaccurate, incomplete or unreasonable. Validation is performed by a computer program. There are many ways that a computer can check to see whether the data is valid i.e. allowable.
Verification is a task done by a human and is basically just checking that the data that they have entered is correct. For example when filling in a form, a person would normally double check that what they have write down is correct, this is basically the same, but on a computer.
In my database I have used input masks as validation on fields like postcode and phone number. For example, my database would not accept a phone number that had a letter in the middle, because it knows there has obviously been a mistake made by the user. Also it wouldn’t accept “D584 9JA” as a post code, because it knows that the second digit has to be a letter…
Data and / or program structures
These are the three tables I created in Access:-
I created these three because I needed to have one table for the customers’ details (tblCustomers), one table for the phone details (tblPhones) and a table in the middle that links the two (tblFeatures). This is how the three tables are conncted…
The tables are linked in this way, because you cannot have a many-to-many relationship. As many people can have the same model of phone this automatically means that for the tblCustomers and the tblPhones to be linked, it would have to be a many-to-many relationship, which is not allowed. That is why I had to introduce the tblFeatures, where the user selects which features the customer has on their Phone.
This is the design for my three tables, showing the fieldtype, size, whether or not validation is used, and whether it is required.
TblCustomers
CustomerID – I made this field an autonumber so that the database automatically picks a random unique number that is associated with the customer.
First Name + Surname – I made these fields text, because obviously someone’s name is going to consist of letters. It is 20 characters long to save memory, if someone’s name was longer than 20 characters, then the database would have to be altered to accommodate their name.
Middle Initial(s) – This is 2 characters long because some people have 2 middle names, if a customer had more than two middle names they could just leave one out as it is not really that important.
DOB – This is a number because as “Short-Date” consists of numbers only, a mask is used so that no letters can be entered accidentally.
House Name/Number, Street, Town/City, Area – This is obviously a text field, I made it 20 characters long because most of the items will be less than 20 characters. If a customer did have details containing more than 20 characters then the database would have to be altered to accommodate their details.
Postcode – This is a text field, because a postcode is alphanumeric (text and numbers). It has a mask to make sure that any post code entered is reasonable (e.g. It couldn’t be all text or all numbers etc.)
Home Phone Number – This is a number, because as the name implies it is a number field. The mask is to make sure no letters are entered, and that the area code is entered successfully.
Gender – This is a lookup wizard (drop down box) meaning that the user doesn’t have to type in “Male” or “ “Female”, they simply select it on the screen using the mouse.
Email Address – This is an alphanumeric field (text) because email addresses can contain numbers/letters. I made it 50 characters long because some people .like to have really long email addresses. The mask is there to ensure that the @ sign is used, as it would not be a valid email address without it. This field is not required because unlike “Name” not every customer will have an email address.
TblFeatures
WAP/Internet, Colour Screen, Picture messaging, Digital Camera, Games. Screensavers, Downloadable Ringtones – All of these are “Yes/No” fields as you either have the feature, or you don’t. The user puts a tick in the checkbox if they have it, if they don’t then they just leave it blank. It is 1 character long as this is the default for a Yes/No checkbox.
Phone ID, Customer ID – These are both text fields and 20 characters long, these are taken from the other two tables and are not filled in on the features table. They automatically show up, linking a Customer to a Phone.
TblPhones
Phone ID is an AutoNumber, and is chosen randomly by the computer, it is 20 characters long, but that doesn’t necessarily mean that it will be 20 characters long.
Phone Model is a text field as it will most likely contain numbers and letters (eg. Nokia 3310). It is 20 characters long, as it is very unlikely that a phone name would be more than 20 characters long. If one was brought out that had a long name then the database would have to be updated to accommodate for it.
Queries & Reports
I will make queries and reports to show:-
- All Customers’ Data – this will show all the customers details on just a few sheets of A4 paper.
- Customers with WAP – this will show all the customers with WAP on their phones, it will show their first name and surname.
- Customers with Picture Messaging – this will show all the customers with Picture Messaging on their phones, it will show their first name and surname.
- Customers with a Digital Camera on their phone – this will show all the customers with Digital Cameras on their phones, it will show their first name and surname.
- A Specific Customer’s Details (for Data Protection Act) – This will show all the data held for a specific customer. When the query is run, the user is required to enter the first and last name of the customer.
- Customer’s Addresses, if they need to be contacted by Post – This will show just the customers names and addresses, if they need to be contacted by the post.
- Customer’s Phone Numbers, if they need to be contacted by phone. - This will show just the customers phone numbers, if they need to be contacted by the post.
Output format
I used reports when outputting any information, because it looks much more professional than using tables, forms or queries. I didn’t use queries or tables because they just look like tables of data in black and white. They are hard to read quickly and it is easy to get mixed up with which row you are looking at data from. They are designed for use on the computer, just to store the data that has been entered through the forms. My forms are not designed to be printed, because they only ever hold information about one customer, it would not be economical to print out 18 pages of forms, when the same amount of data could fit just as well onto 4 pages in a report. Forms are good for viewing information on a computer, because they use colour and the space on the screen effectively. However I have used reports to output my data because:-
- they are designed for printing
- they look professional
- they are economical, and don’t waste paper/ink
- lots of data can fit well into one report
- they are automatically updated when they are opened and are always up-to-date.
My Reports
All Customers’ Data
In this report I have included of the data about all of the customers. CustomerID First Name Middle Initial Surname DOB House Name/Number Street Town/City Area Home Phone Number Gender Email Address. I used all the of the data because as the name implies this report shows everything I know
Customers with WAP
In this report I included the following data, First Name, Surname and a box showing that the customer has WAP on their phone. I only included these simple bits of data because I did not want the report to be clogged up with other bits of information that are not really relevant to this report (such as phone number.)
Customers with Picture Messaging
In this report I included the following data, First Name, Surname and a box showing that the customer has WAP on their phone. I only included these simple bits of data because I did not want the report to be clogged up with other bits of information that are not really relevant to this report (such as phone number.)
Customers with a Digital Camera on their phone
In this report I included the following data, First Name, Surname and a box showing that the customer has WAP on their phone. I only included these simple bits of data because I did not want the report to be clogged up with other bits of information that are not really relevant to this report (such as phone number.)
A Specific Customer’s Details (for Data Protection Act)
In this report, all the data known about a specific customer is shown, on one page. To Specify which customer’s data you want to see, you type their first name and surname into a box that appears when you execute the report.
Customer’s Addresses
In this report I included the Customer ID, and the name and address. I obviously included the address so that the user knows it, when they need to contact the customer by post.
Customer’s Phone Numbers
In this report I included First Name, Surname, Gender and telephone number. I included the name so when they answer the phone the user knows who they are speaking to. I included gender so that the user knows whether to expect a male or a female voice to answer the phone. And finally I included the phone number so that the user knows what number to dial when trying to get hold of a particular customer.
Testing
I am going to test 2 things within my database:-
- All of the buttons on my switchboard.
- All of the masks used in the forms.
I predicted that when I clicked on the “Customer Utilities” button, then the Customer Utilities switchboard would be shown on the screen. As you can see from the screenshot, this prediction was correct proving that the button works. I predicted that when I clicked on the “Phone Utilities” button, then the Phone Utilities switchboard would be shown on the screen. As you can see from the screenshot, this prediction was correct proving that the button works. I predicted that when I clicked on the “View Data in Report Form” button, then the View Data in Report Form switchboard would be shown on the screen. As you can see from the screenshot, this prediction was correct proving that the button works.
I predicted that when I clicked on the “Fill in New Customers Details” button, then the Customer Details Form would be shown on the screen, blank and ready for the user to enter data.. As you can see from the screenshot, this prediction was correct proving that the button works. I predicted that when I clicked on the “Edit/Delete Customers Details” button, then the Customer Details Form would be shown on the screen, with the existing customers data filled in, ready for editing. As you can see from the screenshot, this prediction was correct proving that the button works. . I predicted that when I clicked on the “Back to Main Menu” button, then the Main switchboard would be shown on the screen. As you can see from the screenshot, this prediction was correct proving that the button works.
I predicted that when I clicked on the “Add a new Phone Model” button, then the Phone Details Form would be shown on the screen, blank and ready for the user to enter data.. As you can see from the screenshot, this prediction was correct proving that the button works. I predicted that when I clicked on the “Edit Phone Models” button, then the Phone Details Form would be shown on the screen, with the existing phones data filled in, ready for editing. As you can see from the screenshot, this prediction was correct proving that the button works. . I predicted that when I clicked on the “Back to Main Menu” button, then the Main switchboard would be shown on the screen. As you can see from the screenshot, this prediction was correct proving that the button works.
I am now going to test the input masks in my forms…
I predicted that when entering text into a “Date-Of-Birth” box, then the database would not accept it. This message box proves that my prediction was correct.
I predicted that when entering text and numbers into the wrong place into a “Postcode” box, then the database would not accept it. This message box proves that my prediction was correct.
I predicted that when entering text into a “Telephone Number” box, then the database would not accept it. This message box proves that my prediction was correct. This proves that the input masks on my forms do work, and that they only accept values that are reasonable.
User Documentation
The
Evaluation
I said in my Specification that for my solution (the database) to be successful it would have to be able to do a number of things…
1. Be simple and easy to use so that new employees can be quickly trained in how to use it. My database is easy to use, as I created a switchboard as a Graphical User Interface. Instead of using complicated menus inside access, the user can use a simple yet effective switchboard with buttons. New employees need to be able to quickly get the hang of using the database, so that they can work as efficiently as possible. New employees will be able to use the database almost straightaway as I have used a switchboard to make things much easier for the user.
2. Make the data easily accessible. The data needs to be easily accessible so that if someone rings up, then we can supply them with information as quickly and efficiently as possible. Orange might ask to see a list of our customers, we need to be able to provide that data quickly and efficiently. The Data is made accessible by the use of a Switchboard, where just a few buttons need to be clicked before you have access to any data held, about any of the customers/phones.
3. Make entering new data easy, and also editing data that has already been entered. It needs to be easy to enter data so that it can be entered quickly, and with as few mistakes as possible. If the system was complicated then it would be hard to enter the data efficiently. The Forms I have made make it very easy for the user to enter information, as well as the input masks which aid the user in entering data such as DOB, Telephone Number and Postcode.
4. Let me select the data I need to see by using a menu. This is linked to “Make the data easily accessible” because I need to be able to select data without complications, and in the simplest of ways possible, a graphical menu system. A Graphical Menu system was implemented in my database, a switchboard, a menu system which makes it as simple as possible to do the task they need to do.
5. It will have to aid the user with input by providing “masks” that make it easier to enter data. For example when entering a customer’s post code…
6. Needs to create reports which show:-
- All the customer’s details
- A specific customers details (for the Data Protection Act)
- All the people with a specific feature (games, wap etc.)
These reports need to professional looking and show all the data required in a presentable format. I have made these reports, and they look very professional looking, hopefully impressing the people at Orange.