Overview of the situation
Sam Purvis, Hailey’s husband, has started a new business in the local town. It is called `Making Your Name` (MYN). The company organises advertising campaigns for client.
The process:
- The company contacts MYN and request a proposal for an advertising campaign, giving an indication of their budget, a duration, the area the company wants to cover and a summary of their previous experience of advertising.
- A proposal is sent; the date that it is recorded
- If, after 4 weeks, nothing has been heard, a reminder is sent to the company
- If the proposal is accepted, the date of acceptance is recorded.
The campaign can include one or more of the following:
Last year for the first time Sam earned enough money to have to register for VAT. Now the company has to add VAT at 17.5% to all the bills.
Sometimes companies ask for a proposal covering 5 billboards or 8 posters on the side of a taxi for 2 months. The system needs to cope with this.
MYN send out 60 proposals each month; if after 6 months the proposal has not been accepted then it is torn up.
The package you are producing is a sample for Sam to see; it would be a good idea to use a database to track the proposals.
Sam says ‘You do not need to put in all the details for each company; just the company name, the type of business, and the contact details. If we go with your package then all the rest of the data will need to be entered’
Currently the paperwork is a mess. It is difficult to see if a proposal has been sent, or if it has been accepted. As for doing an analysis to see what types of businesses accept our proposals; that is impossible.
The audience is Sam Purvis and his workforce of three people. None of these three are particularly IT literate so a simple, yet robust user interface would be a great help.
Sam wants the following:
Outcome 1: To be able to enter and edit company details.
- Form to enter and edit company details
- Ability to search for a company easily
Outcome 2: to be able to enter and edit campaign details.
2.1 Form to enter and edit campaign detail
2.2 Ability to search for a campaign easily
Outcome 3: To be able to attach campaigns to companies.
3.1. Easy attachment of a campaign to a company
3.2. Easy removal of a proposal for a company from the current list
3.3. Easy searching for a company
3.4. Automatically delete a campaign if it is 6 months out of date and not accepted.
Outcome 4: To have a robust and easy-to-use user interface.
- Try to ensure as dew errors as possible during data entry, using validation
- Validate proposal date to today when entered
- Validate phone number to start with a 0 and 5 digit area code followed by 6 digits
- Validate postcode format using input mask
- Validate acceptance date to today, when a proposal is accepted
4.2. Use forms for all data entry
4.3 Reduce the use’s options so that they have to use the buttons and supply plain forms
Outcome 5: To be able to extract data.
5.1. The total value of proposals sent out this month, sorted into ascending order on the total price of each proposal. The total of all proposals should be included.
5.2. proposals submitted to a company, sorted by a proposal date
5.3.Total value of accepted proposals in the last two months
5.4. Value of proposals compared with types of business
5.5. Data on all proposals over £100 submitted in the last three months
5.6. Data on all proposals not accepted over 6 months old to be deleted
5.7. Data on companies that have not replied to proposals after a month
5.8. Automatically add VAT to customer invoices
Outcome 6: Ability to remove proposals if they have not been accepted after 6 months.
Outcome 7: to be able to extract data in the form of reports
7.1. the total value of proposals sent out during the month, sorted into ascending order on the total price of each proposal. The total of all proposals should be included.
7.2. Proposals submitted to a company, sorted by proposals date, with total value, minimum and maximum values shown
7.3. Total value of accepted proposals in the last two months
7.4. Value of proposals compared in with types of business in a summary table
7.5. All proposals over £100 submitted in the last three months
7.6. Reminder letters for companies that have not replied to proposals after a month
Testing
Testing strategy
The basic objective of testing the system is to ensure that everything is working as expected. During the testing we should look out for the following:
- Macros should work as expected
- Queries should run and return accurate outputs (and store required information property where appropriate)
- Forms should display fields correctly
- Command buttons should run actions as expected
- Report should be printed correctly
- Input should be validated correctly where appropriate
- Required fields should not be empty. System should detect required fields that are empty
The testing of the system will be divided into 3 parts:
- Functional - the testing of individual components of the database. This is done when the component is created and will be documented in the implementation
- System testing – the testing of the full system from beginning to end. This is done using the test plan below and will be done and documented once the whole system in complete.
- End-use testing – getting the end user to test the system for a day. Done by the end user to detect any errors/problems and to establish whether the system meets the user requirements
Testing plan
Evidence of Testing
Test 1: Switchboard & Switchboard Options
Switchboard should load as expected
The command buttons opened the correct forms as expected
Test 2: Add/Edit customers details in Company’s
Add/Edit customers details in Company’s
Record 1: A new record was added and saved correctly to the tables as expected.
Record 2: When erroneous data is entered (Postcode was missing 3 characters) the system validation rule showed the following message
Record 3
When erroneous data is entered (a mobile number, four digits short) the system validation rule showed the following message.
Record 4: When trying to enter extreme data the form (typing “adfgrthjs” into the company phone)
The system will not allow me to as I expected.
Editing Record 1: When I edited record 1, the postcode was inserted and correctly as shown in the screen shot below.
Editing Record 2: When I edited the phone number automatically saved and was inserted as shown below.
Editing Record 1: In record 1 when I edited the description, the spelling was corrected as shown in the screen shot below.
Screenshot after spelling corrected
The “addEditCampaignDetails_exit” marco opened and closed the form.
Test 3: Add/Edit Customers details in Wants
Record 1: A new record was added and saved correctly
Record 2: When I tried to enter a wrong data (letters in the Prop field), the system detected it, and the validation rule came up. Its shown in the screenshot below.
Record 3: The “Accepted” boxes yes/no didn’t work. To fix the problem I edited properties , after I changed the data type to yes/no like shown in the screenshot below.
Edit Record 2: When I edited the “Prop data” in record 2, the cells allow me to edit dates and save them as shown below of the Wants table:
“Add/EditWants_Exit”, marco opened and closed the correct forms as expected.
Test 4: Command buttons in the user interfaces
Frm company interface
The frmCompany loaded as expected
All my command buttons in “frmCompany” worked and carried out all tasks as I expected.
When manually clicked
Interface of frmCampaign
All the command buttons in “frmWantsCampaign” worked and carried out all tasks as expected.
When click manually clicked.
Test 5: Add/edit Wants and campaign
Record 1
When editing Wants and Campaign a new record is added
Record 2
When adding a text which is not recognised by the system ‘Microsoft Access’ detected it and a validation message appeared.
Test 6: Queries
I ran all queries and they run smoothly. Below is a screen shot of some of my queries.