-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
1/146
P a g e | 1
Navraj Bains A2 WJEC ICT
Kidzcare Babysitting
Service
Navraj Bains
2/25/2012
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
2/146
P a g e | 2
Navraj Bains A2 WJEC ICT
Table of Contents1. User Requirements ......................................................................................................................... 6
1.1 Background ............................................................................................................................. 6
1.2 Aims and objectives ................................................................................................................ 6
1.1.1 Ethos and How style of the business. ............................................................................. 6
1.3 Expected outcomes in terms of calculations. ......................................................................... 7
1.4 Other expected outcomes. ..................................................................................................... 8
1.1 Hardware Requirements. ...................................................................................................... 10
2. Design ............................................................................................................................................ 13
2.1 Data Dictionary ........................................................................................................................... 13
2.1.1 Customers Table ........................................................................................................... 13
2.1.2 Childrens Table .............................................................................................................. 14
2.1.3 Child_Carers Table ........................................................................................................ 15
2.1.4 Carer Working Hours Table ........................................................................................... 16
2.1.5 Holidays Table ............................................................................................................... 16
2.1.6 Bookings Table .............................................................................................................. 17
2.1.7 Payments Table ............................................................................................................. 18
2.1.8 Prices Table ................................................................................................................... 18
2.2 Normalisation Tables .................................................................................................................. 19
2.3 Design of Validation techniques ................................................................................................. 21
2.3.1 Validation techniques .......................................................................................................... 21
2.4 Design of security/password protection technique ............................................................. 22
2.5 Design of on screen data....................................................................................................... 23
2.5.1 Entry forms .................................................................................................................... 23
2.5.2 Form with sub form Carers Form ............................................................................... 24
2.5.3 Design of user-friendly, menu driven, front end interface. .......................................... 25
2.6 Design of Queries .................................................................................................................. 28
2.7 Design of report .................................................................................................................... 31
2.8 Design of Automated Routines ............................................................................................. 32
2.8.1 Routine 1 Calculate the Age of ta child ...................................................................... 32
2.8.2 Routine 2 Calculate the Cost ...................................................................................... 33
2.8.3 Routine 3 Ensure Keys fields have values entered. .................................................... 34
3 Implementation ............................................................................................................................ 35
3.1 Evidence of Relational Links diagram ................................................................................... 35
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
3/146
P a g e | 3
Navraj Bains A2 WJEC ICT
3.2 Create tables and links .......................................................................................................... 36
3.2.1 Child Carers Table ......................................................................................................... 36
3.2.2 Customers Table ........................................................................................................... 37
3.2.3 Payments table ............................................................................................................. 38
3.2.4 Childrens table ............................................................................................................. 39
3.3 Two data validation techniques ............................................................................................ 40
3.3.1 Validation technique 1 .................................................................................................. 40
3.3.2 Validation technique 2 ................................................................................................. 42
3.4 Automated Routines ............................................................................................................. 44
3.4.1 Childs Age Calculation ................................................................................................... 44
3.4.2 Calculate Total cost of Booking ..................................................................................... 46
3.4.3 Ensure that Key fields are Populated ............................................................................ 48
3.1 Forms Implementation ......................................................................................................... 50
3.1.1 Customers Form ............................................................................................................ 50
3.1.2 Childrens Form .............................................................................................................. 58
3.1.3 Carers Form with a Sub-form ........................................................................................ 66
3.2 Macros .................................................................................................................................. 67
3.2.1 About Macro ................................................................................................................. 67
3.2.2 Splash Macro ................................................................................................................. 69
3.3 Queries .................................................................................................................................. 71
3.3.1 Single Table Query - CustomerListQry .......................................................................... 71
3.3.2 Single Table Parameter Query - ChildrenQry ................................................................ 73
3.3.3 Multi Table Parameter Query - ChildrenRepQry .......................................................... 74
3.3.4 Multi Table Parameter Query - CustomerQry............................................................... 76
3.3.5 Multi Table Parameter Query - CarerQry...................................................................... 77
3.3.6 Single Table Parameter Delete Query DeleteChildrenQry ......................................... 783.4 Creating Customers Report ................................................................................................... 79
4 Testing ........................................................................................................................................... 86
4.1 Test Plan ................................................................................................................................ 86
4.2 User Interface and test all routes through the system ......................................................... 89
4.3 Data entry with Valid Data .................................................................................................... 90
4.3.1 This validation technique is a data type validation technique. .................................... 94
4.3.2 Check for a valid Email Address ................................................................................... 95
4.4 Testing Automated Routines ................................................................................................ 96
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
4/146
P a g e | 4
Navraj Bains A2 WJEC ICT
4.4.1 Age Calculation Testing ................................................................................................. 96
4.5.2 Total Cost Calculation and Check for Null data fields .................................................. 98
4.6 Report Testing ....................................................................................................................... 99
4.7 Database Queries Testing ................................................................................................... 101
4.7.1 Single Table Query CustomerListQry ....................................................................... 101
4.7.3 Testing Multi Table Parameter Query - ChildrenRepQry ............................................ 104
4.7.4 Testing Multi Table Parameter Query - CustomerQry ................................................ 106
4.7.5 Testing Multi Table Parameter Query - CarerQry ....................................................... 108
4.7.6 Testing Single Table Parameter Delete Query DeleteChildrenQry .......................... 110
5 User Documentation. .................................................................................................................. 116
5.1 Opening and using the application ..................................................................................... 116
5.2 Details of how to enter passwords or other security procedures ...................................... 117
5.2.1 Changing usernames and passwords: ......................................................................... 117
5.3 Making a Booking ................................................................................................................ 126
5.4 Adding and amending child carer details ............................................................................ 128
5.5 Examples of Data Validation ............................................................................................... 132
5.5.1 Data Type checking ..................................................................................................... 132
........................................................................................................................................................ 132
........................................................................................................................................................ 132
5.5.2 Format check Validation ............................................................................................. 133
........................................................................................................................................................ 133
........................................................................................................................................................ 133
5.6 How to Run Database Queries ............................................................................................ 134
5.6.1 Queries in the System ................................................................................................. 134
5.6.2 Running Queries .......................................................................................................... 135
How to Print Reports. ..................................................................................................................... 1385.7 Disaster Recovery Techniques ............................................................................................ 140
5.8 Backups ............................................................................................................................... 140
5.9 Standby system ................................................................................................................... 140
5.10 Anti Virus Software ............................................................................................................. 140
6 Evaluation ................................................................................................................................... 141
6.1 Against User requirements ................................................................................................. 141
6.2 Objectives of new system ................................................................................................... 141
7 Problems encountered & strategies used to resolve them. ....................................................... 146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
5/146
P a g e | 5
Navraj Bains A2 WJEC ICT
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
6/146
P a g e | 6
Navraj Bains A2 WJEC ICT
1. User Requirements
1.1 Background
Kidzcare Babysitting Service is run by Kinda Lally and is based in Slough. She has a number
of carers who baby-sitting children for parents with busy lifestyles. It is a fairly new business,
set up six months ago, but they have become more established and are quickly expanding. At
present the Kidzcare Babysitting Service mind children in parts of London, Berkshire and
Buckinghamshire. Miss Lally currently has eight full time and part time carers and the
number of customers is still growing.
Miss Lally currently keeps a note of customers and carers manually but would prefer to have
a more professional and practical system, which would make it easier to find customer and
carer details. Customer and carer details are written on index cards and stored in a box in
alphabetical order. She wished to update her current system as it occupies a great deal of
space and is extremely time consuming to search through customer records. When a customerrings Kidzcare Babysitting Service to book a day for a carer, the bookings are noted down on
paper and filed away. The customer is then sent a written receipt copied from a template, to
their postal address. Miss Lally wants to update to a computerised system and produce more
professional invoices or reports instead of receipts. She hopes to send these reports directly to
the customers email addresses to reduce the risk of delivery failure.
As the system is so disorganized, sometimes carers get double booked resulting in stress for
the carers and unhappy customers. As Miss Lally doesnt want to lose her carers or customers
it is crucial for her to have a system, which stops double bookings from happening, and
informs the user when the carer is free. Due to bookings being made manually some bookings
are sometimes lost, which is something Miss Lally would like to change in the new system.
Miss Lally is fairly experienced with computers and is extremely enthusiastic to introduce a
computerised system for Kidzcare Babysitting Service; however other staff members have
limited skills and therefore a system that is balanced for all user expertise.
1.2 Aims and objectives
1.1.1 Ethos and How style of the business.
As the business sector that Miss Lally is in scrutinised by the parents who leave their children
with the day care centre she must ensure that her ethos and how style is reflected in a positive
way. It is imperative that the parents feel safe and secure with leaving their children at this
day-care centre. The colour scheme that Miss Lally has opted for is Multi-coloured for the
logo and a purple colour for the general background. I believe that these colours represent
Miss Lallys ethos as the multi-coloured logo represents diversity and the purple being Good
judgement and peace of mind.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
7/146
P a g e | 7
Navraj Bains A2 WJEC ICT
The how style:
Use of logo - The logo of this business like stated before will have a multi-coloured
colour scheme. It will have a font that is suited towards a childs perspective in the
sense that it is colourful.
Use of wordsThe way the business name will be spelt will be Kidzcare baby sitting
service; I believe that this name is reflective of the ethos of the business.
Use of colourThe colour scheme that I have opted for is multi-coloured as well as
purple. These coloured will be consistently used throughout the business on the
database as well as the documents.
Writing styleClearly the writing style as the colour scheme will have to remain the
same a consistent throughout the whole business, in terms of the documents and
database tables. The writing style that I will use is formal use of English.
Aims.
Provide a system where all staff members with limited skills can use.
Turn all paperwork in a computerised database.
Keep in line with rules and regulations, which will be increased by the use of
passwords on a new system.
Prevent double bookings, of both carers and parents children.
Objectives
Data storage.
I will store data about all Staff members who work for the business, alongside the
parents details and the childs details.
I will store details about every booking that has been made by parents, and who is the
carer that has been designated towards that child(s), and where the address of the
parents is.
I will store details about how many carers are available to work, this means also
storing details about carers holidays and sick leave.
1.3 Expected outcomes in terms of calculations.
One calculation that needs to be made would be the cost for customers. This would be
worked out by using the formula (Hours worked*Hourly wage) this may change
depending on the children being cared for.
The calculation for the total revenue of the business must be taken weekly; this is
calculated by taken a percentage of the costs for the parents.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
8/146
P a g e | 8
Navraj Bains A2 WJEC ICT
1.4 Other expected outcomes.
Another expected outcome may be the financial data needed; this may be the financial
data for the whole week. The ability to bring new or temporary staff carers in case of emergencies, who can
adapt to using the new system quickly.
A list for special needs children that may need special help and may need more
experienced carers to carry out the baby sitting service.
A table for complaints, that may need to be attended to, which may include
disciplinary procedures as code and conduct, has not been abided by the staff
members.
An order dated list that has all the bookings with customers service questionnaire.
Expected Outcomes/aims and objectives
Data capture and inputs
The data that will be entered will be entered manually by the user. It will be entered on the
data entry form such as, the bookings form which will have field available for the user to
capture these data. When a booking is being made for re-occurring customers who already
have their details on the system the user just has to enter the time and date. And then select a
carer that is available during that time. On the payments section of the booking form theymust enter the card number, issue number, and expiry date and beginning date. The user will
have to enter all data in on the data entry forms manually, except the data on the booking
form on the carer details which will come from a drop down box.
Processes
Security
As the database will contain very sensitive information
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
9/146
P a g e | 9
Navraj Bains A2 WJEC ICT
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
10/146
P a g e | 10
Navraj Bains A2 WJEC ICT
1.1 Hardware Requirements.
The end user I am designing my system for has a Dell computer, with a Windows XP
operating system with 80GB of hard disk drive. It has an Intel core i7 2.2 GHz processor.
There is 73GB of hard drive space left and 4000MB of RAM memory. Miss Lally hasMicrosoft Office software on her computer (Microsoft Word, Publisher, Excel, Access,
PhotoDraw)Miss Lally has broadband access to the internet Miss Lally has a monitor,
keyboard and a wireless mouse on which she could potentially use the system. Miss Lally
also has a CD and DVD writer, and a floppy disk drive, which could be useful to back the
system up on. They have a fast, high-quality HP laser printer, which would be useful at
printing customer and carer booking sheets at high speeds. My home computer is a Dell
computer, with an Intel Pentium 4 processor. There is 97.96GB of free hard drive space left,
and IGB of RAM memory. From this I can deduce that Miss Lally has the right hardware
requirements in order to carry out tasks on this database as the minimum hardware
requirements are as follows:
PrinterClearly a printer would be needed to check if the database can print out
specific data entry forms. Router would again also be needed as the database would be connected to a network
where Miss Lally can then work at home.
MonitorThe monitor will be needed to view all the work.
KeyboardThe keyboard will be needed to input data into the database.
MouseNavigate around the database.
Hardware component Minimum Recommended
Processor Pentium 4, 2.8 GHz Dual-Core 64-bit, 2
GHz
RAM 6 GB 8GB
Hard disk space 80 GB 150 GB
Computer
Other user requirements.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
11/146
P a g e | 11
Navraj Bains A2 WJEC ICT
When looking at these hardware components I can see that not all of Lallys computer
hardware meets the minimum requirements for a computer database. There are failures in the
hard disk space which in my opinion is crucial for the business. As stated in the problem we
can see that the business is increasing their customer base and therefore would need a large
hard disk space in order to cover this ever increasing customer base. Another failingcomponent is the Ram, Lallys being 4GB and minimum being 6GB. I believe that Ram is not
as important and therefore may not need to be upgraded, the Ram increases the speed at
which the computer runs at, and how fast different applications run at. Since this is a small
business and arent expected man calls at one single time the amount of RAM that is present
doesnt need to be increased. The processor that is present is the minimum amount required
for a smooth running database.
Entity Diagram
Child Carers Table
One-to-Many
(N-M)
Bookings Table1
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
12/146
Child_carers
Carer_ID
Title
Forename
Surname
Address_line_1Address_line_2
Address_line_3
Town
County
Post_code
Telephone_Number
Mobile_Number
Date_of_birth
Gender
National_insurance_num
ber
Date_hired
Notes
Holidays
Holiday_ID
Carer_ID
From_date
To_date
Carer_working_holidays
Carer_ID
Day
From
To
Payments
Payment_ID
Booking_ID
Card_type
Card_number
Expiry_Date
Start_date
Issure_number
Alternative Payment
Total Cost
Bookings
Booking_ID
Carer_ID
Customer_ID
Price_ID
Booking_dateStart_Time
End_TIme
CustomersCustomer_ID
Title
Forename
Surename
Address_line_1
Address_line_2
Address_line_3
Town
County
Post-CodeEmail_address
Telephone_number
Mobile_number
Relationship_to_child
Prices
Price_ID
Day_of_the_week
Time_of_the_dayOther
Price_per_hour
Children
Child_IDCard_type
Card_number
Expiry_date
Customer_ID
Alternative_payment
Total_Cost
1
1
1
1
1
1
1
1
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
13/146
2. Design
2.1 Data Dictionary
I will now show all the tables which are used in the Kidzcare Babysitting System, and include the fieldnames, data types and validation/input masks used in each table.
2.1.1 Customers Table
Table Name: Customers
Field Name Data Type Primary/
Foreign Keys
Validation/Lookups
Customer_ID AutoNumber Primary
Title Text Lookup: Mr, Mrs, Miss, Ms, Dr
Forename Text
Surname Text
Address_Line_1 Text
Address_Line_2 Text
Address_Line_3 Text
Town Text
County Text
Postcode Text
Email_Address Text
Telephone_Number Number
Mobile_Number Number
Relationship_to_child TextLookup: Mother, Father, Grandmother,
Grandfather, Aunt, Uncle, Legal Guardian
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
14/146
Navraj Bains Kidzcare Babysitting System
14
2.1.2 Childrens Table
Table Name: Children
Field Name Data Type Primary/
Foreign Keys
Validation/Input Masks
Child_ID AutoNumber Primary
Forename Text
Surname Text
Date_of_Birth Date/Time
Gender Text
Lookup Tables: Male, Female
Validation: Must be either Male or
Female
Customer_ID NumberForeign to
Customers
Special_Requirements Text
Additional_Information Text
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
15/146
Navraj Bains Kidzcare Babysitting System
15
2.1.3 Child_Carers Table
Table Name: Child Carers
Field Name Data Type Primary/
Foreign Keys
Validation/Input Masks
Carer_ID AutoNumber Primary
Title Text Lookup: Mr, Mrs, Miss, Ms, Dr
Forename Text
Surname Text
Address_Line_1 Text
Address_Line_2 Text
Address_Line_3 Text
Town Text
County Text
Postcode Text
Telephone_Number Number
Mobile_Number Number
Date_of_Birth Date/Time
Gender Text
Lookup Tables: Male, Female
Validation: Must be either Male or
Female
National_Insurance_Nu
mberText
Date_Hired Date/Time
Notes Memo
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
16/146
Navraj Bains Kidzcare Babysitting System
16
2.1.4 Carer Working Hours Table
Table Name: Carer Working Hours
Field Name Data Type Primary/
Foreign Keys
Validation/Input Masks
Carer_Working_ID AutoNumber Primary
Carer_ID NumberForeign to
Child_Carers
Day Text
From Date/Time
To Date/Time
2.1.5 Holidays Table
Table Name: Holidays
Field Name Data Type Primary/
Foreign Keys
Validation/Input Masks
Holiday_ID AutoNumber Primary
Carer_ID NumberForeign to
Child_Carers
From_Date Date/Time
Validation: > Now ()
Ensures the date is greater than the
current time so carers dont book
holidays in the past.
To_Date Date/Time
Validation: > Now ()
Ensures the date is greater than the
current time so carers dont book
holidays in the past.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
17/146
Navraj Bains Kidzcare Babysitting System
17
2.1.6 Bookings Table
Table Name: Bookings
Field Name Data Type Primary/
Foreign Keys
Validation/Input Masks
Booking_ID AutoNumber Primary
Carer_ID NumberForeign to
Child_Carers
Customers_ID NumberForeign to
Customers
Price_ID Number
Foreign to
Prices
Booking_Date Date/Time
Validation: > Now ()
Ensures the date is greater than the
current time so carers dont book
holidays in the past.
Start_Time Date/Time
End_Time Date/Time
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
18/146
Navraj Bains Kidzcare Babysitting System
18
2.1.7 Payments Table
Table Name: Payments
Field Name Data Type Primary/
Foreign Keys
Validation/Input Masks
Payment_ID AutoNumber Primary
Booking_ID NumberForeign to
Bookings
Card_Type Text
Card_Number Text
Expiry_Date Date/Time
Start_Date Date/Time
Issue_Number N umber
Alternative_Payment_
MethodText
Total_Cost Currency
2.1.8 Prices Table
Table Name: Prices
Field Name Data Type Primary/
Foreign Keys
Validation/Input Masks
Price_ID AutoNumber Primary
Day_of_the_week Text
Lookup: Monday, Tuesday, Wednesday,
Thursday, Friday, Saturday, Sunday, N/A
Time_of_the_Day Text
Other Text
Price_per_day Currency
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
19/146
Navraj Bains Kidzcare Babysitting System
19
2.2 Normalisation Tables
Child_Carers (Carer ID, Title, Forename, Surname, Address_Line_1, Address_Line_2, Address_Line_3, Town, County, Post_Cost,
Telephone_Number, Mobile_Number, Date_of_Birth, Gender, National_Insurance_Number, Date_Hired)
Prices (Prices_ID, Day_of_the_week, Time_of_the_day, Other, Price_per_hour)
Carer_working_Hours (Carer_ID, Day, From, To)
Holidays (Holiday_ID, Carer_ID, From_date, To_date)
Bookings (Booking_ID, Carer_ID, Customer ID, Price_ID, Booking_Date, Start_Time, End_Time)
Customers (Customer ID, Title, Forename, Surname, Address_Line_1, Address_Line_2, Address_Line_3, Town, County, Postcode_Code,Email_Address, Telephone_number, Mobile_number, Relationship_to_child)
Payments (Payment_ID, Booking_ID, Card_type, Card_number, Expiry_date, Start_date, Issue_number, Alternative_payment, Total_cost)
Children (Child_ID, Forename, Surname, Date_of_birth, Gender, Customer ID, Special requirements, Additional_information)
Key
Primary Key: Underlined
Foreign Key: Bold
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
20/146
Navraj Bains Kidzcare Babysitting System
20
Key
Primary Key: Underlined
Foreign Key: Bold
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
21/146
Navraj Bains Kidzcare Babysitting System
21
2.3 Design of Validation techniques
There will be validation on every form in the system, and including in a number of tables. Validation is
important in any system as incorrect data is no use to anyone. Increasing the amount of validation will
decrease the chances of incorrect data in the system due to human errors. There will also be validation
on text boxes in forms to ensure that the compulsory fields have all been filled out. I will add validation
to tables in the Booking and payments section; I will make sure that the user can only input 3 digits in
the Issue Number. If they do not follow the rule a message box will appear to inform the user the error.
Another technique that I have used is Validation for
2.3.1 Validation techniques
Input field Type Method of
Validation
Validation rule Validation text
Childrens
table
(Forename)
Number Data type
check
[Forename] Is Null Or Not Like
"*[!a-z]*"
-
Allow Letters only, and not
numbers.
Must enter Alpha
Characters only!
Customers
Table (Email
Address)
Text Format
Check
Is Null OR ((Like "*?@?*.?*") AND
(Not Like "*[ ,;]*"))Enter a Valid Email
Address!
Telephone
Number
Numeric Data Type
Check
Only numeric characters are
allowed in this field
You may only enter
Numeric values into
this field, please try
again.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
22/146
Navraj Bains Kidzcare Babysitting System
22
2.4 Design of security/password protection technique
Flowchart Key
The system
database isopened
Terminator
(start or End)
Decision
Input or
Output
Process
(performed by
com uter
User enters the
password when
prompted by the
security system
Computer database
checks to see whether
the password is correct
Is the passwordthe user has
entered correct
and match
No
End
Yes
Start Open
up the Access
Document
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
23/146
Navraj Bains Kidzcare Babysitting System
23
2.5 Design of on screen data
2.5.1 Entry forms
The Customers Form holds the details of a customer, the form contains information about the customer,
it allows existing customer records to be retrieved by selecting the customer from the Find Customer
combo box as well as adding new customer records.
Find existing Customers using this
combo box.
Data entry fields that needs to have a
valued entered for new customers or
updating existing customers.
Control buttons on the form, allows the user to
add new customer records and to navigate to
others Forms and Reports.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
24/146
Navraj Bains Kidzcare Babysitting System
24
2.5.2 Form with sub form Carers Form
The Carers Form holds the details of the Carer, the form contains a sub-form that has the details of the
working hours for each carer. The Sub-form will select all the records for the selected carer.
Find Carer combo box to
lookup existing carers.
Sub-form contains all
the records from the
Carer working Hours
table for the givenCarer.
The Main form displays the Carers
Details.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
25/146
Navraj Bains Kidzcare Babysitting System
25
2.5.3 Design of user-friendly, menu driven, front end interface.
The Main Menu will be created using Accesss switchboard add-in. It will appear when the database is
first opened after the splash screen has been closed. Below is a diagram showing the menu which will
appear immediately after the splash screen.
17:30:00
Customers
Children
Child Carers
Bookings
Reports
About
Exit System
Kidzcare Babysitting Service
Various Option
buttons allow users tonavigate there way
throu h the s stem Labels for option
buttons inform users
what each option
button does
Clock added at the
bottom of the
switchboard
Main Switchboard
Opens the
FrmCustomers form
The Kidzcare
Babysitting logo
will go here
Opens the
FrmChildren form
Opens the Carers
Switchboard
Opens the
FrmBookings form
Opens the
FrmExitSystem form
Opens theReports
Switchboard
Runs the
about macro
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
26/146
Navraj Bains Kidzcare Babysitting System
26
This is the Carers Switchboard which is accessed by clicking on the child carers button in the Main
Switchboard.
17:30:00
Child Carers
Holidays
Back
Kidzcare Babysitting Service
Takes you back to theMain Switchboard
Carers
Opens the FrmHolidays
Form
Opens the
FrmChildCarers form
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
27/146
Navraj Bains Kidzcare Babysitting System
27
This is the Reports Switchboard which is accessed by clicking on the Reports button in the Main
Switchboard.
17:30:00
Bookings Report
Customer Report
Back
Kidzcare Babysitting Service
Opens the
CarersRep
Re orts
Opens the
CustomersRep
Report
Opens the
BookingsRep
Report
Carer Report
Take the user
back to the MainSwitchboard
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
28/146
Navraj Bains Kidzcare Babysitting System
28
2.6 Design of Queries
There are many different types of queries which I could incorporate into the final system, for example a select query, a parameter query, a crosstab query, or
an action query. Queries are used to perform searches on sets of data in tables. In the Kidzcare Babysitting system most of the queries will use parameters
from the form that runs the query to fetch a single or multiple records from the database. In most cases these fields are customer ID, Carer ID or Booking ID. I
will be using a parameter query when creating reports for Miss Lally, as she will be able to choose which customer, carer, or booking she wants to base the
report on. I will use command buttons to run the reports based on information in a particular user form.
Types of
Query
Query Name Table Field Attribute Criteria Purpose Reason
Single Table
Query
Customers List Customers Customer_ID
Title
Forename
Surname
None Provide a list of Customer Names
allowing the user to select one from
a combo box in the Customers Form.
Single Table
Parameter
Query
ChildrenQry Children Forename
Surname
Gender
Date_of_birth
Special_requirements
Additional_information
Customer_ID Details of all the Children for a given
customer for the Childrens Form
Multi Table
Parameter
Query
CustomerRepQry Customer
Children
Customers.Title
Customers.Forename
Customers.Surname
Customer.Name
Customers.Address_line_1
Customers.Address_line_2
Customers.Address_line_3
Customers.Town
Customer_ID Details of A Customer and all the
children for the Customers Report
given a Customer_ID.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
29/146
Navraj Bains Kidzcare Babysitting System
29
Customers.County
Customers.Post_code
Customers.Email_address
Customers.Telephone_number
Customers.Mobile_number
Customers.Relationship_to_child
Children.Forename
Children.Surname
Children.Date_of_birth
Children.Gender
Children.Special_requirements
Multi Table
Parameter
Query
CustomerQry Customers
Child_Cares
Bookings
Payments
Customers.Forename
Customers.Surname
Child_Carers.Forename
Child_Carers.Surname
Bookings.Booking_Date
Payments.Total_Cost
Customer_ID Display Details of all the booking
for s given Customer.
Multi Table
Parameter
Query
CarersQry Customers
Child_Cares
Bookings
Payments
Customers.Forename
Customers.Surname
Child_Carers.Forename
Child_Carers.Surname
Bookings.Booking_Date
Payments.Total_Cost
Carer_ID Display Details of all the booking
for s given Child Carer
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
30/146
Navraj Bains Kidzcare Babysitting System
30
Single Table
Parameter
Delete
Query
DeleteChildrenQry Children Not applicable as the entire
record is deleted so it affects ll
the columns.
Customer_ID In the Childrens Form when the
user click the Delete Children
Button it runs DeleteChildrenQry,
this will delete all the childrens
records for a given Customer_ID.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
31/146
Navraj Bains Kidzcare Babysitting System
31
2.7 Design of report
Customers Report Company Logo
Customers Details
Telephone No.
Name
Mobile No.
Relationship
Address
Town
County
Email
Postcode
Child
Name
Date of
Birth
Additional
Information
Special
Requirements
Gender
Todays Date Page number
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
32/146
Navraj Bains Kidzcare Babysitting System
32
2.8 Design of Automated Routines
2.8.1 Routine 1 Calculate the Age of ta child
This calculation will be used on the Childrens form to determine the age of the child, to ensure that the
childs age is less than 18 years old, so that hes not actually an adult. If the age is greater than 18 yearthen an Error message is displayed otherwise the record will be saved.
Pseudo Code
Calculate Childs Age by finding the difference between the Date of Birth and the System Date to
determine this we will need to use a system function
If Childs Age > 18
Then
Display message Either the Date of Birth is incorrect or this is not a Child, please
change the Date of BirthElse
Add the record to the database.
End if
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
33/146
Navraj Bains Kidzcare Babysitting System
33
2.8.2 Routine 2 Calculate the Cost
This will be called from the Booking Form when the user clicks on the CalculateCost button, the
routine will check that the user has entered value for three key fields:
1. Booking Date2. Start Time
3. End Time
If any of these fields does not have a value entered for it the routine will display an error message,
Must enter Date, Start Time and End Time before the Total Cost can be calculated.
Pseudo Code
If Booking Date is NULL or Start Time is NULL or End Time is NULL
Then
Display message Must enter Date, Start Time and End Time before the Total Cost can be
calculated.
Else
Calculate Hours from Start Time and End Time
Total Cost = Hours * Cost Per Hour
End if
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
34/146
Navraj Bains Kidzcare Babysitting System
34
2.8.3 Routine 3 Ensure Keys fields have values entered.
This routine will be called from the Childrens Form when the user clicks on the Save and Exit button,
the routine will check that the user has entered value for key fields below:
1. Forename
2. Surname
3. Date of Birth
4. Gender
5. Customer ID
Pseudo Code
If Forename is NULL
Then
Display message Must enter Forename before saving this record
ElseIf Surname is NULL
Then
Display message Must enter Surname before saving this record
If Date of Birth is NULL
Then
Display message Must enter Date of Birth before saving this record
Else
IfGender is NULL
Then
Display message Must enter Gender before saving this record
ElseIf Customer ID is NULL
Then
Display message Must Select a Customer before saving
this record
Else
Save the Record and Close form
End if
End if
End if
End if
End if
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
35/146
Navraj Bains Kidzcare Babysitting System
35
3 Implementation
3.1 Evidence of Relational Links diagram
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
36/146
3.2 Create tables and links
3.2.1 Child Carers Table
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
37/146
Navraj Bains Kidzcare Babysitting System
37
3.2.2 Customers Table
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
38/146
Navraj Bains Kidzcare Babysitting System
38
3.2.3 Payments table
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
39/146
Navraj Bains Kidzcare Babysitting System
39
3.2.4 Childrens table
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
40/146
Navraj Bains Kidzcare Babysitting System
40
3.3 Two data validation techniques
3.3.1 Validation technique 1
Firstly I opened up the
database in design view
and then selected the
childrens table. I wanted
to validate the Forename
field and opened up the
properties in this field and
then the data tab.
I then decided that I wantedto use the validation of data
type check, meaning that I
didnt want to allow the
user to enter Numbers in an
alpha text only field. As you
can see the Validation Rule
was =*Forename+ Is Null Or
Not Like "*[!a-z]*", and if
the user was to enter this
wrong then the validation
text would appear stating
Must enter Alpha
characters only!
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
41/146
Navraj Bains Kidzcare Babysitting System
41
Any character outside the range A to Z is rejected, see error message below:
As you can see the text in the
Forename field is Numeric
and therefore the error
message has appeared.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
42/146
Navraj Bains Kidzcare Babysitting System
42
3.3.2 Validation technique 2
Open the Customers
form in design view
and click on emailAddress field and
view the properties
The Validation rule that has been used is Is Null OR ((Like "?@?.?") AND
(Not Like "* ,;+")) this means Requires at least one character, @, at least one character,
dot, at least one character. Space, comma, and semicolon are not permitted. Thevalidation message was Enter a valid Email address
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
43/146
Navraj Bains Kidzcare Babysitting System
43
When en invalid email address is entered error message is display, shown below;
As we can see the validation technique works, User entered wrong data and now they have been
prompted with the Error Validation Message.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
44/146
Navraj Bains Kidzcare Babysitting System
44
3.4 Automated Routines
3.4.1 Childs Age Calculation
This calculation will be used on the Childrens form to determine the age of the child, to ensure that
the childs age is less than 18 years old, so that hes not actually an adult. If the age is greater than
18 year then an Error message is displayed otherwise the record will be saved. Open up the
Childrens form in design view, click on the Add Child button, this will bring up the properties sheet,
shown below
Choose Builder popup will appear, shown below:
Click on the Event
tab and click on
the Event
Procedure
Click on Code Builder
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
45/146
Navraj Bains Kidzcare Babysitting System
45
This will open up the Microsoft Visual Basic window and which will have the following contents:
Enter the code shown below in red:
Private Sub Add_Child_Click()
On Error GoTo Err_Add_Child_Click
Exit_Add_Child_Click:
Exit Sub
Private Sub Add_Child_Click()
On Error GoTo Err_Add_Child_Click
Dim varAge As Variant
Dim childs_age As Integer
If IsNull(Forms!Children!Date_of_Birth) Then Age = 0: Exit Sub
varAge = DateDiff("yyyy", Forms!Children!Date_of_Birth, Now)
If Date < DateSerial(Year(Now), Month(Forms!Children!Date_of_Birth), _
Day(Forms!Children!Date_of_Birth)) Then
varAge = varAge - 1
End If
childs_age = CInt(varAge)
If childs_age >= 18 Then
MsgBox "Either the Date of Birth is incorrect or this is not a Child, please
change the Date of Birth, age is " & childs_age
Exit Sub
Else
DoCmd.GoToRecord , , acNewRec
End If
Exit_Add_Child_Click:
Exit Sub
Err_Add_Child_Click:
Check for Null Date of Birth value
The DateDiff compares the two
dates that are passed as parameters
and returns the difference; in this
case in years as the first parameter
is set to yyyy, this result will be
the age of the person.
The calculated age is tested to ensure that it is
not greater than or equal to 18, if it is an
appropriate message is displayed otherwise the
record is saved.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
46/146
Navraj Bains Kidzcare Babysitting System
46
3.4.2 Calculate Total cost of Booking
This routine will be called from the Booking Form when the user clicks on the Calculate Cost
button, the routine will check that the user has entered value for three key fields:
1. Booking Date2. Start Time3. End Time
If any of these fields does not have a value entered for it the routine will display an error message,
Must enter Date, Start Time and End Time before the Total Cost can be calculated.
To create this routine select the Booking Form in design view, select the Calculate Button on the
form and display the Properties sheet and select the Event tab, then click on Event Procedure as
shown below:
Calculate Button and the key fields
Click on
the
Event
Trigger
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
47/146
Navraj Bains Kidzcare Babysitting System
47
Enter the code as shown in the window below, this code will only calculate the host of a booking if
all the fields above have been populated
Private Sub cmdcalculateCost_Click()
If IsNull(Forms!Bookings!txtStartTime) Or IsNull(Forms!Bookings!txtEndTime) Or
IsNull(Forms!Bookings!txtDate) Then
MsgBox "Must enter Date, Start and End Times before Calculating the Total Cost"
Exit Sub
End If
Forms!Bookings!txttotalcost = Forms!Bookings!txthourlyrate*Forms!Bookings!txttotalhours)+5
End Sub
This checks to make sure that the key fields are
populated before we attempt to calculate the
total cost of the booking. If any are NULL them
a message box is displayed with an appropriate
messa e
Calculates the cost of the Booking,
which is achieved by multiplying the
number of hours by the hourly rate
plus 5 for admin fee.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
48/146
Navraj Bains Kidzcare Babysitting System
48
3.4.3 Ensure that Key fields are Populated
This routine will be called from the Childrens Form when the user clicks on the Save and Exit
button, the routine will check that the user has entered value for key fields below:
1. Forename
2. Surname
3. Date of Birth
4. Gender5. Customer ID
To add this code to the routine Open the Childrens Form in Design view, select the Save and Exit
button and view the properties sheet, select the Event tab and click on the Event Procedure as
shown below:
Click on the
Event
Trigger
Select the Add Child
button
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
49/146
Navraj Bains Kidzcare Babysitting System
49
Then enter the following code in the Visual Basic window:
The code checks the fields and if any are found to be NULL (i.e. empty) is displays a message box
with an appropriate message otherwise the record is saved and the form closed.
Private Sub Command18_Click()
'Save and exit
On Error GoTo Err_Command18_Click
If Forms!Children!Forename = "" Then
MsgBox "Must enter Forename before saving this record."'Exit Sub
Else
If Forms!Children!Surname = "" Then
MsgBox "Must enter Surname before saving this record."
'Exit Sub
Else
If IsNull(Forms!Children!Date_of_Birth) Then
MsgBox "Must enter Date of Birth before saving this record."
'Exit Sub
Else
If IsNull(Forms!Children!Gender) Then
MsgBox "Must select Gender before saving this record."
'saveFlag = FalseElse
If IsNull(Forms!Children!Customer_ID) Then
MsgBox "Must select Customer before saving this record."
'Exit Sub
Else
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
DoCmd.Close
End If
End If
End If
End If
End If
Exit_Command18_Click:
Exit Sub
Err_Command18_Click:
MsgBox Err.Description
Resume Exit_Command18_Click
End Sub
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
50/146
Navraj Bains Kidzcare Babysitting System
50
3.1 Forms Implementation
3.1.1 Customers Form
Clicked on Create Form Wizard and selected the Customers table forms, and selected all the filedin this table as shown below, and clicked Next> button.
The window is displayed, and clicked Next> button:
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
51/146
Navraj Bains Kidzcare Babysitting System
51
On the next screen selected None for Style and the following window is displayed:
Selected the Modify option and clicked the Finish button.
I moved the fields to the desired positions and changed the font colour of all the boxes to blue by
highlighting all the labels and clicking the right button on the mouse, and finally selecting the blue
font/fore colour from the list. I changed the background colour of the form in the same way by right
clicking on the background and clicking on the light blue colour from the fill back colour option.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
52/146
Navraj Bains Kidzcare Babysitting System
52
I moved the form header section down and changed the background colour in the same way by right
clicking on the form, clicking on fill back colour and finally selecting the purple colour from the
palette.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
53/146
Navraj Bains Kidzcare Babysitting System
53
I created a Kidzcare Logo in a word application and copied and pasted it into the header. I moved the
logo until I was happy with the position.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
54/146
Navraj Bains Kidzcare Babysitting System
54
Next it was time to create the combo box to allow the user to select a particular customer. I clicked
on the combo box icon from the toolbar on the left, and dragged out the combo box onto the form.
In the combo box wizard box, I selected the last option, Find a record on my form based on the value
I selected in my combo box, and I click on next.
Next I selected the Customer_ID, Forename and surname fields and moved them into the selected
fields list by clicking on the first single arrow. I chose these fields as the user needs to choose from a
customers name in the combo box in order to edit any details. Finally I clicked on next.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
55/146
Navraj Bains Kidzcare Babysitting System
55
Finally I saved the combo box as CmbFindCustomer and clicked on the Finish button
Right click on the find customer combo box and click on properties. Change the caption to Find
Customer, and change the font weight to bold. Change the font colour to blue.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
56/146
Navraj Bains Kidzcare Babysitting System
56
Next I created the command buttons of the forms. I click on the command button icon from the
toolbar and in the command button wizard I click on record operations, and on add new record.
Finally I clicked on the next button.
In the next step of the wizard I entered Add New Customer in the text section and clicked Next.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
57/146
Navraj Bains Kidzcare Babysitting System
57
on
Right clicked on
the command
button and
clicked on
properties. I
changed the font
weight to bold. I
right clicked on
the button again
and in the
font/fore color Iclicked on blue.
I saved the
CmdNewCustomer
and clicked on Finish
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
58/146
Navraj Bains Kidzcare Babysitting System
58
3.1.2 Childrens Form
I clicked on Create tab Forms Wizard and selected the Childrens table on the Window below:
As in the Customers form clicked on Next> and selected the same options and clicked on Finish on
the window below:
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
59/146
Navraj Bains Kidzcare Babysitting System
59
I then arranged the fields to fit the form better and changed the font colour of all the boxes to
purple by highlighting all the labels and clicking the right button on the mouse, and finally selecting
the purple font/fore colour from the list. I right clicked again and changed the back colour to light
purple. I added a shadow to each label by right clicking on them and clicking on properties. I changed
the special effect to shadow to and the border style to solid to give them a border. I didnt want the
users to see the child_ID so I set the visable propery in the format tab to No.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
60/146
Navraj Bains Kidzcare Babysitting System
60
I clicked on the label and located it where I wanted on the form. I right clicked on the label and
clicked on caption, changing it to children. I Changes the font size to 18, the font colour to purple
and the wont weight to bold.
I click on the command button icon and in the command button wizard I click on record operations,
and Add New Record to allow the user to add a new child record in the form. When I had selected
the correct actions and categories I clicked on Next.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
61/146
Navraj Bains Kidzcare Babysitting System
61
In the next step of the wizard I clicked on text ad entered Add Child. Finally I clicked on the Next
button to continue.
In the next step I entered the name of the command button and clicked on Finish.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
62/146
Navraj Bains Kidzcare Babysitting System
62
I right clicked on the command button and changed the fore colour to purple, and the font weight to
bold.
I created another command
button and removed the
wizard option by clicking on
the icon from the toolbar.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
63/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
64/146
Navraj Bains Kidzcare Babysitting System
64
I wanted to allow the user to save andexit the form at the click of a button, and in order to allow the
user to do this in one button I had to create simple coding In Visual Basic. The circled area is where I
added the VBA coding. Once I had written the coding I saved and closed the program.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
65/146
Navraj Bains Kidzcare Babysitting System
65
I went into the format
tab in the properties
box, and changed the
caption to save and exit.
I changed the fore/font
colour to purple and the
font weight to bold.
I clicked on the square icon from the toolbar on the left hand side, and arranged it around the
command buttons. I change the colour to purple and the border width to 1 pt, finally save the form.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
66/146
Navraj Bains Kidzcare Babysitting System
66
3.1.3 Carers Form with a Sub-form
This form is for entering the carers details as well as the details of the working hours. As a carer can
work many days of the week the, Carer_Working_Hours table will have many records for a single
Carer record, one to many relationship, therefore the Carers details will be in the Main form and the
working details will be in the sub-form. So first we create a Sub-form Carers Working Hours based
on the Carers_Working_Hours table, in a similar way as the Customers and Childrens forms. I
then created the Carers form based on the Carers table, to create the Sub-form I dragged-and-
dropped the Carers Working Hours form onto the Carers Form and moved the fields on the two
forms as shown below:
Carers
WorkingHours
sub-form
Main Form Details
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
67/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
68/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
69/146
Navraj Bains Kidzcare Babysitting System
69
3.2.2 Splash Macro
Purpose: - This macro is called by the Splash form. The macro closes the Splash form and opens the
Switchboard form. This macro is created the same way as the About marco , but instead of a
MsgBox action we choose Close and OpenForm Actions and completed as shown in the steps below:
Step 1 - close the Splash form:
Step 2 Opens the Switchboard form:
The Splash macro is called by the Splash Form, this form has a timer based event that calls the Splash
macro, and this event is triggered 4000 micro-seconds i.e. 4 seconds after the Slash Form has been
running. The macro will close the Splash form and start-up the Switchboard form. The screenshot
below shows how the Splash macro is setup with the Splash Form;
Action is to close a Form
Object type to be closed is a
Form to close is the Splash form
Action is to Open a Form
Object type to be open is a
Form
Form to Open is the Main
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
70/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
71/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
72/146
Navraj Bains Kidzcare Babysitting System
72
Results
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
73/146
Navraj Bains Kidzcare Babysitting System
73
3.3.2 Single Table Parameter Query - ChildrenQry
This query selects all the records from the Childrens Table returning all the fields for a given
Customer_ID. The Customer_ID will be used from the Customers Form.
Results - given Customer_ID = 4 returns the following results:
Search Criteria using the Customer_ID from the
Customer form.
Only returns the Childrens records
where Customer_ID = 4
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
74/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
75/146
Navraj Bains Kidzcare Babysitting System
75
Results of this query run when the Customer_ID = 4.
The screenshot below show the other fields that are not visible above;
Data columns retrieved from the Customers Table
Data columns retrieved from the Customers Table Data columns retrieved from the Childrens Table
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
76/146
Navraj Bains Kidzcare Babysitting System
76
3.3.4 Multi Table Parameter Query - CustomerQry
This query selects details of all the bookings that a given Customer has made previously, the data is
selected from four tables, Customer, Bookings, Payments and Child_Carers. The Customer_ID is
provided from the Customers Form
Results: For Customer_ID = 4
Multi table query between Customers, Bookings,
Child Carers and Pa ments ke s used to oin the tables.
This shows all the booking for Customer_ID = 4
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
77/146
Navraj Bains Kidzcare Babysitting System
77
3.3.5 Multi Table Parameter Query - CarerQry
This query selects details of all the bookings that a given Carer has attended previously, the data
is selected from four tables, Customer, Bookings, Payments and Child_Cares. The Carer_ID is
provided from the Child_Carers Form.
Results All the booking for Carer_ID equal to 3.
Multi table query between Customers, Bookings,Child_Carers and Payments, keys used to join the tables.
This shows all the booking for Carer_ID = 3
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
78/146
Navraj Bains Kidzcare Babysitting System
78
3.3.6 Single Table Parameter Delete Query DeleteChildrenQry
This query deletes all the Children records for a given Customer_ID, this query will be run from the
Childrens Form.
The criteria used to delete records for a given
Customer, taken from the Customers Form
Delete Query Type Delete records from the Childrens table.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
79/146
Navraj Bains Kidzcare Babysitting System
79
3.4 Creating Customers Report
To create the Customers Report first create a query as described in the previous section joining
Customers and the Childrens table, then open the Reports Wizard, as shown below
Select the query created for this report, CustomerRepQry, move all the require columns to theSelect fields section, moving them left to right:
Click the Next> button and the following screen will appear, leave the default selection, byCustomers as shown below and click Next > button:
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
80/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
81/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
82/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
83/146
Navraj Bains Kidzcare Babysitting System
83
Below is a report for a customer, show the Customer and Childrens details separated.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
84/146
Navraj Bains Kidzcare Babysitting System
84
Individual programming code.
Automated routine code 1
Enter the code shown below in red:
Private Sub Add_Child_Click()
On Error GoTo Err_Add_Child_Click
Dim childs_age As Integer
childs_age = DateDiff("yyyy", Forms!Children!Date_of_Birth, Now())
If childs_age >= 18 Then
MsgBox "Either the Date of Birth is incorrect or this is not a Child, please
change the Date of Birth, age is " & childs_age
Exit Sub
Else
DoCmd.GoToRecord , , acNewRec
End If
Exit_Add_Child_Click:
Exit Sub
Err_Add_Child_Click:
MsgBox Err.Description
Resume Exit_Add_Child_Click
End Sub
Function call to get the age in years
The calculated age is tested to ensure that it is
not greater than or equal to 18, if it is an
appropriate message is displayed otherwise the
record is saved.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
85/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
86/146
4 Testing
4.1 Test Plan
Test No. Test Type Criteria Expected Outcome Actual Outcome Evidence
1 User Interface and test all
routes through the system
Buttons take to
relevant forms, and
allows user to exit
application.
User able to
navigate the systems
using different form
and Reports.
As Expected Teacher must sign Here
if test is successful
2 Data entry with Valid Data Add Customer using
the Customers Form
Customer record
added to the
Customers Table.
New customer
record added to
the Customer
table.
See test for results.
3 Data entry with extremes
of Data
Add extreme valid data
to the entry fields and
this data must be
accepted without an
error message.
The extreme data is
added without an
error message
appearing
As expected, no
error message with
the extremes of
data.
See test for results.
4 Calculation Test To test this procedure
enter Childrens form, set
the date of birth to 26-
Sep-60
Message Box is
displayed with
appropriate
message highlighting
A message box is
displayed with
indicating error in
Date of Birth
See tests documentation
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
87/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
88/146
Navraj Bains Kidzcare Babysitting System
88
fields. When all the
fields are entered the
cost is calculated
correctly
that needs to be
entered. When valid
data is entered teh
cost of booking is
displayed correctly.
10 Automated Procedure 2
Calculation
Check that the a child
with the age over 18
cannot be entered
A message with the
age is displayed to
the user.
As expected See Tests.
11 Automated Procedure 3 Ensure that error
message with details of
the missing fields is
displayed if a user
attempts to save
without entering all the
key information.
An appropriate
message is displayed
highlighting the field
that needs to be
entered., otherwise
the record is
updated and the
form closed.
As expected See Tests.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
89/146
4.2 User Interface and test all routes through the system
Main Menu
Switchboard
Customers
Add Edit Delete Search
View Report
Children
Add Edit Delete
Bookings
Add Edit View Report
Child Carers
Add Edit Delete Search
View Report
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
90/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
91/146
Navraj Bains Kidzcare Babysitting System
91
This is the
field after
the data has
been saved.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
92/146
Navraj Bains Kidzcare Babysitting System
92
Data Entry with extremes of Data
This is a print screen of the table before the new entry has be saved.
The data is entered into the entry
form.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
93/146
Navraj Bains Kidzcare Babysitting System
93
For this test I tested a a child who was 17 years and 364 days old as an extreme of data, this was
tested along with the days date.
If the child was 18 on the 02/05/2012 , then they should be allowed to be entered on the system.
As we can see the extreme of data
has been accepted without any
error messages.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
94/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
95/146
Navraj Bains Kidzcare Babysitting System
95
4.3.2 Check for a valid Email Address
As the user has
entered the email
address in
properly they are
allowed to
continue onto the
next field filling
out the rest of
the form.
As we can see here the
user has clearly entered
invalid data as all email
addresses need an @ sign
and therefore the error
message has appeared.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
96/146
Navraj Bains Kidzcare Babysitting System
96
4.4 Testing Automated Routines
4.4.1 Age Calculation Testing
Purpose: - Test procedure that calculates the Age of a child
To test this procedure entered data for the fields on the Childrens form, set the date of birth to
26-Sep-60 on the Childrens form shown below:
This will cause the following message box to be displayed:
Enter details
of the of the
child and set
the date to
20-Sep-60,
once the
required
information
has been
filled click on
Add Child
button
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
97/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
98/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
99/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
100/146
Navraj Bains Kidzcare Babysitting System
100
The screen shot below shows these two records in the Customers and Childrens tables:
The main Customers record For Mr
James Gill, CUSTOMER_ID = 9
The Jessicas record in the Childrens table
which points to the master record, foreign key,
CUSTOMER_ID = 9, linking the two records
together
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
101/146
Navraj Bains Kidzcare Babysitting System
101
4.7 Database Queries Testing
4.7.1 Single Table Query CustomerListQry
Purpose: - This query selects all the records from the Customers Table returning the Name of the
customer and the Customer_ID. The Name of the Customer is a concatenation list of the Title, Forename
and Surname with a space between each field.
The Name is constructed from the Title, Forename
and Surname with a space between each field.
Order the records ascending using
this column.
Note: There are no criteria defined for this query so it
returns all the records from the customers table.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
102/146
Navraj Bains Kidzcare Babysitting System
102
Test Results: - Pass, as it retrieves the Customer_ID and the Name for all the records in the
Customers Table.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
103/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
104/146
Navraj Bains Kidzcare Babysitting System
104
4.7.3 Testing Multi Table Parameter Query - ChildrenRepQry
Purpose: - This query selects all the records from the Customers and the Childrens Table
returning all the fields for a given Customer_ID. The Customer_ID will be used from the
Customers Form.
The screen shot below shows the criteria column used to select the particular Customer record that
weve interested in:
To test just the query in isolation the window below prompts for the desired Customer_ID:
Test Results: - Pass, given Customer_ID = 4, the query returns the only record for Serena Bains
Search Criteria using the Customer_ID from the
Customer form.
Multi table query between Customers and
Children, the key used to join the two tables is
Customer_ID
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
105/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
106/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
107/146
Navraj Bains Kidzcare Babysitting System
107
Test Results: - Pass, given Customer_ID = 4 it shows all four bookings made for the customer:
This shows all the booking for Customer_ID = 4
Customer Forename and Surname from
the Customer Table
Child Carers Forename and Surname from
the Child_Carers Table
Booking Date from the Bookings Table
Cost of the Booking from the Payments
Table
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
108/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
109/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
110/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
111/146
Navraj Bains Kidzcare Babysitting System
111
To test just the query in isolation the window below prompts for the desired Customer_ID entered
value 110:
Test Results: - Pass the two records with Customer_ID = 110 for First Piggy and Second Piggy
have been deleted, records that remain in the table shown below:
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
112/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
113/146
Navraj Bains Kidzcare Babysitting System
113
As the system is opened you are prompted to enter a password.
The user must enter a
password and only then
can they progress onto
the main database.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
114/146
Navraj Bains Kidzcare Babysitting System
114
Test with incorrect password
If the User was to enter
in the wrong password
then they would be
prompted with a
message, Not a valid
Password, and then
would have to enter a
right password.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
115/146
Navraj Bains Kidzcare Babysitting System
115
Test Number 11 - Test calculation is correct
This is part of the Booking forms and calculates the cost for the customer.
I clicked on the calculate costs button and the hourly rate, total hours and cost text boxes were
filled with the correct values. Therefore the test was a success.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
116/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
117/146
Navraj Bains Kidzcare Babysitting System
117
5.2 Details of how to enter passwords or other security
procedures
When the system is opened you will be prompted for a username and password. Use your user
name and password to access the system (see appendix for details on user names and passwordsalready created). Warning: You will not be able to access the system without your password.
To change existing user names and passwords or add additional usernames and passwords you must
have admin access to the system or your access will be denied and you will not be able to make any
changes to the security settings.
5.2.1 Changing usernames and passwords:
1. Open the system from the Kidzcare Babysitting Service folder created in the installation
procedure, and log in using administrative access. Please note you will be able to amend
existing user names and passwords, or add additional ones without the administrative user
name and password.
A rom t like the one above will a ear to allow the user to enter their user name and assword
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
118/146
Navraj Bains Kidzcare Babysitting System
118
2. Once you gain access to the system click on Tools, Security and User and Group Accounts
3. In the User and Group Accounts box click on the user tab to add and remove users. In the
Available groups column select the group you wish to add or remove and click Add to add it
to the Members column, or remove to get rid of it.
4. To change a password of an existing user click on the change logon password tab and type in
your current password. In the text boxes below type in your new password. Please note to
change the password of your own account you do not require administrative access.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
119/146
Navraj Bains Kidzcare Babysitting System
119
5. To change the permissions of an individual users click on Tools, Security and User Group
Permissions. Again this can only be done using administrative access.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
120/146
Navraj Bains Kidzcare Babysitting System
120
6. To Change the permissions of a user, click on the Permissions tab and select the user/group name
whose permissions you wish to change. In the permissions box check or uncheck the permissions
you want to amend.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
121/146
Navraj Bains Kidzcare Babysitting System
121
The Main Switchboard shown below allows you to navigate your way around the system.
Opens the customers
Opens the Reports Switchboard
Opens the Child Cares
Switchboard
Shows a message box
about the system
Opens the Bookings form
Opens a form which allows
you to exit the system
Opens the children form
The Kidzcare Babysitting
Service logo
Shows the current
time (24 clock)
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
122/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
123/146
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
124/146
Navraj Bains Kidzcare Babysitting System
124
In the customers
form the Past Bookings
button allows you to look
at all the bookings thatthe customer you have
selected has made. Of a
particular customer.
When you click on the Past Bookings button the form shown below will appear showing the
details of the past bookings of the customer you have selected in the customers form.
When you click on the Save and Exit button in the CustomerQry form the form will close andthe customers form will reopen.
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
125/146
Navraj Bains Kidzcare Babysitting System
125
After you have selected a customer
from the customers form you can view
and print a report on the customers
details. To do this you click on the View
Report button from the customersform.
To print the customers reportsimply click on the print icon
from the toolbar
The report can also be accessed
from the reports switchboard or
the navigation toolbar
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
126/146
Navraj Bains Kidzcare Babysitting System
126
5.3 Making a Booking
The Make booking button on the Customers form opens the bookings form shown below. Thebookings form can also be accessed from the navigation toolbar and the Main Switchboard.
Once the form is opened first select the customer from the customer details section. (Youmust complete the sections in order or error messages will appear telling you to go back to a
missed section.
Next enter the data and time you wish to book the customersbooking for. If there are no carers available for the date and
time you have picked, then an error message will appear telling
you that no carers are available as they are either fully booked
or on holiday.
If no message box appears then click on the Find carer box and
select any of the carers which are available to work. You will be able to choose any one from
the carers box as all the ones in here will be available for the day and time entered.
Click on the Calculate costs button to find the hourly rate, total hours, and cost of the booking Enter the payment details for the customer. You must enter their method of payment, for
example either enter their credit card details or enter an alternative method of payment.
The Make Booking button
confirms the booking with a
message box, and opens a
report based on the Booking
details
See next page to view an
example of a bookings report
The Exit button closes the form
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
127/146
Navraj Bains Kidzcare Babysitting System
127
Below is a screenshot to show what a bookings report would look like
The report can also be accessed from the reports switchboard or the navigation toolbar
To print the report click on the print icon from the menu bar
-
7/31/2019 Kidzcar Babysitting Service Documentation.docx
128/146
Navraj Bains Kidzcare Babysitting System
128
5.4 Adding and amending child carer details
When the form appears you can search for a carer from the combo box. Once you select a customer from
the combo box, their details are copied into the text boxes in the form. You may edit details by replacingthe current text boxes in the form.
The Past Bookings button on the Child Carers form opensanother form which shows their booking history according
to the date.
(See the Carer Bookings form below as an example)
To add a new carer simply click on the Add New Carer
button. T