COURSEWORK ASSESSMENT SPECIFICATION
Background
Many parents worry that their children do not do enough physical activity. The press often carry scare stories regarding rising levels of childhood obesity as well as how social skills will be important in the future economy. These scare stories often state that children who engage in sports from a young age are more likely to be successful, happy and healthy. Many parents feel that they have little choice other than to force their children to do extra-curriculum spots, such as swimming, football, dancing, kickboxing, and gymnastics.
The system you are to design manages the subscription and attendance of an after school gymnastics club located in Northumberland.
The system you need to model is based on a real scenario, there is some simplification and changes as the real system is a paper based system.
The club offers classes on four days a week days and time are listed in the tables below, there are different classes depending on age and ability. The club has a good reputation and there is currently a waiting list for most of but not all classes. Waiting lists are a problem that the system must solve, see below for more details.
Class Timetable
Mondays and Wednesdays
Time |
Approximate Age |
Ability |
16:00 – 17:00 |
4 - 7 |
Level 0 - 2 |
17:00 – 18:00 |
7 – 10 |
Level 2 - 3 |
18:00 – 19:00 |
10 - 16 |
Level 3+ |
Fridays
Time |
Approximate Age |
Ability |
16:00 – 17:00 |
4 - 7 |
Level 0 - 2 |
17:00 – 18:00 |
4 – 7 |
Level 0 – 2 |
18:00 – 19:00 |
7 – 10 |
Level 2 – 3 |
Saturday
Time |
Approximate Age |
Ability |
10:00 – 11:00 |
4 - 7 |
Level 0 - 2 |
11:00 – 12:00 |
7 – 10 |
Level 2 - 3 |
12:00 – 13:00 |
10 - 16 |
Level 3+ |
Class sizes are set to be a maximum of 30.
Taster sessions and membership commitment.
There are waiting list for most of but not all
The club requires payment for a two month block as they only go through the payment cycle and allocation cycle once every two
New children are given two free sessions on consecutive
This is before they have to make a financial commitment paying for a two month block.
If the new child wants to join the
Page 2 of 6
KF5008 Program Design and Development Sem 1: 2018
The remaining sessions of the payment cycle are billed pro-rata. so that they pay a maximum of six out of eight weeks for their first membership payment.
For example if a normal child is paying £40 for two months, a new child would not have to pay for the two free taster sessions and only pay £30 ( or £35 if they only did one free taster session).
If in this time the child decides they do not wish to continue then the next child on the waiting list is offered the same two week trial
This is followed by the same pro-rata payment as for the weeks remaining in the billing cycle. For example if only one trial week is left then the child who wishes to continue will pay £30 and the previous child who rejected it pays
A few of the classes do not have a waiting list, therefore a parent making an enquiry may offered the two free sessions at any point during the billing
Waiting list
Most classes are already full.
As already discussed when a parent makes an enquiry they most often end up on a waiting list rather than being offered a taster session,
Each class maintains its own waiting When a parent makes an enquiry they are added to any waiting lists which are relevant to them, for example if the parent can only take their child to a Friday and Saturday class then they will be added to these classes waiting list but not any that they cannot attend.
When a place is offered and accepted it is normally the case that the parent/child is removed from any other class waiting lists as they now have a
However, a parent may still ask to stay on the other class’s waiting list if they wish to swap classes when a place becomes
The system must be able to allow for a parent to have more than one
Membership and payment cycle
When a child becomes a member details about the child need to be held such as name, date of birth and any medical conditions. When they are no longer members this information is sanitized by zeroing out attributes which are personal in nature. If the parent has other children who are attending then the parents details are not sanitized, however if the parent has no other children their personal information is also sanitized with the exception of their name and email address.
Information about the parent such as name, address and most importantly email and telephone number is stored. This information is used to remind parents when fees are payable.
Fees are payable in advance and are paid in full for two months of classes. If a child stops attending there are no refunds for the unused sessions, and the space in the class is not filled until the end of the pre-paid sessions. If a child has prepaid for the next payment cycle but cancels their membership before the start of the prepaid period they can get a full refund.
Four weeks before the fees are due, a printed sheet ( letter) is given to each parent when they drop their child off at club. This has details regarding the payment including the last day it must be paid by and consequences of not paying on time. The class attendance record is used to identify parents who did not drop their child off and therefore did not get the payment reminder letter. An SMS is sent to these parents with the reminder.
A check is made two weeks prior to the end of the billing cycle to identify anyone who has not yet paid. A final SMS and email are sent to the parents restating the date that the fees must be paid by. If the fees are not paid one week in advance (end of the billing cycle) of the next membership period, the child loses their place and a place can be offered to someone on the waiting list.
Allocating from the waiting list
Once the payment deadline has passed, all those who have not paid on time are removed from the class registers. These free spaces need to be allocated to new children where possible. It can sometimes be difficult to contact parents are they are working or busy therefore a SMS message has been composed which offers a place in a class and also contains a deadline of 24 hours to
Page 3 of 6
KF5008 Program Design and Development Sem 1: 2018
respond. The spaces are offered purely based on a queue. If a parent responds and says they are no longer interested then all the data and their place in the list is removed.
If no response has been made after twenty-four hours the place is offered to the next available student. However a unresponsive parent is not initially removed from the list and they have not lost their place at the top of the list; however they will not be considered again in this billing cycle. If a parent has been contacted twice (two separate billing cycles) and there has not been a response from them, then they are removed from the waiting list.
For example John has a child Mary. John puts Mary on the waiting list for Saturday Kickboxing. This is followed by Kayla who has a child Jenny, and Parent Ricky who has Keiv. The Waiting list is ( John, Kayla, Ricky ). John is contacted but is very very busy answering email. So Kayla is offered a place leaving the list as John, Ricky
Attendance
Attendance is monitored; a class list is generated before the beginning of class. At the start of the class those who attend are ticked off the list and the date data is then fed into the system at some point in the week.
Assessment Tasks
Develop the Design Class Diagram for the system. You should follow sound design principles when creating the class diagram. The diagram should also be consistent with the sequence diagrams
[ 20 Marks]
Develop the Sequence Diagrams for the membership and payment
[ 20 marks]
Evaluate your class diagram, explain elements which you think are good practice and identify anything you think are weaknesses in the design. You should consider OO Design principles when evaluating this diagram. Approximately 700 words
[ 30 marks ]
Research question, you are required to carry out some research. It is important that you use a range of quality sources and your findings and conclusions must be supported by the literature. The mark you are awarded is based on the quality of the research carried out, and principle conclusion you have drawn from the research you have conducted. The task is “Discuss the need for automated testing in an agile development”. You need to look at what benefits automated testing has, what considerations much be made when constructing the code to maximize the benefit from testing. What disadvantages are there to testing in an agile environment such as one where you may have code refactoring? Approximately 700 words
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of