The aim of this assignment is to produce a simulation of a national chain of Health and Fitness Clubs administered by a single head office. Each club offers personal services by a team of trainers to the clients of the club and a central fitness and nutrition advice and record management service.
Occasionally, you will be asked to design and develop a piece of software for a problem domain of which you have no direct experience. It is important, therefore, for you to be able to research or draw on experience outside your current area of study. Although, this assignment does makes use of the techniques and technologies covered in the lectures and tutorials.
A large amount of work will be required to complete this assignment in full. You must produce a full design specification and an implementation discussion. You must implement and test fully working client/server architecture, but need only to implement a selection of the functionality to demonstrate that your application would fully fulfil the requirements of a Health and Fitness franchise if it were completed entirely. The choice of which functionality to implement is yours. Remember, this is a design module and if the design is good it will code itself. This topic will be discussed during the module and specifically addressed in guidance week.
Topics for Assessment
1. Use of development tools - make, sccs, subversion.
2. Use of design tools - Together, Rational Rose
3. Choice and use of an Application Development Environment.
4. Modification of existing software, software re-use etc.
5. Develop an OO (design and implement) application in Java
6. Implement application as a simple client server deployment
7. Develop graphical user interfaces – client
8. Iterative server
9. Concurrent server
10. Test plan, data and results of testing
11. Evaluation of system
There is a growing section of the population concerned with the state of their health and an industry striving to meet those concerns. Imagine an organisation similar to the real Weight Watchers where once a month a group of weight conscious people meet up record their statistics and discuss their nutritional aspirations. This version of the Health Clubs also offers physical training sessions.
Each local base will maintain a queue of trainers ready to train a client. Clients will arrive randomly between a start time and a finish time. There is a Poisson distribution to generate the probabilities of an arrival. Each client will also have a waiting time if no trainer is available, a training time and perhaps a further wait before reporting the updated statistics to head office. The weight of the person will need to be modelled by assuming a diet regime and fitness regime. It is unlikely the person’s height will change and as to their gender, well, it is not that sort of club.
The scenario is a random stream of arriving clients into a queue being served by a trainer from a queue of available trainers. This part of the simulation can be modelled as a simple application using queues. The storage of statistics needs to be modelled as multiple clients connecting to a single server across a network. The simulation is required to store data on a per month basis containing the training details and the customer details and statistics history. This server code should offer various options to its clients, must include a mechanism to persist the data. The simulations should be able to demonstrate the various scenarios such as the effect on transaction time if
1. the number of clients swamps the number of trainers
2. the retrieval of records from head office is slow
3. the sever connection fails
The simulation should be able to answer questions
1. What is the average transaction time for a customer?
2. What are the statistics for the year for a customer?
3. Which trainer services the most clients?
Customers queue for the nutritionist, but only queue for a trainer if they are all busy. Trainers are queued for clients while waiting for the customers to arrive.
The assignment must discuss iterative and concurrent servers, and the suitable technologies to support the client-server implementation and implement what you consider most appropriate. For the attainment of the higher grades the assignment must discuss design patterns appropriate to this application and identify / describe where suitable patterns could be implemented and at least one pattern must be implemented.
1. Nutritionist / fitness adviser.
2. Record keeping mechanism
3. Corporate details
4. Transaction log
1. number of trainers
2. number of members
3. fitness programmes offered
4. trainer availability
5. client arrivals
6. statistics collected
1. trainer details - Id
2. session time
3. rest time
4. number of sessions
1. personal details
2. arrival time
3. waiting time
4. fitness programme
5. personal statistics history
There are three statistics considered to be very important in this field of study
1. Body Mass Index
2. Body Surface Area
3. Body Fat Content
These three statistics can be generated from a person’s weight, height and gender. These three statistics can be generated from a person’s weight, height and gender. Algorithms for the derivation of these statistics are given in the Appendix to this assignment document.
Fitness & Nutrition Programmes
Session durations, 0.25, 0.5, 1.0 hour
Exercise regime, light, medium, hard
Feeding type, salad, tofu & two veg, MacRonnie’s death burgers
Arrival distribution – Poisson’s
Weight reduction algorithm - base on exercise regime and frequency
Weight gain algorithm - base on feeding type
Max number of sessions
Programmes qualified for
Many clients, few trainers
Few clients, many trainers
Loss of head office connection
A resizable graphical user interface (Gui)
A mechanism to persist the input data and results, and generate reports
Persistent data – saves input and output to a remote file or database
Ability to process multi person input data
Takes input from a data file
Make use of inheritance and polymorphism.
Well-designed classes and methods – cohesion and coupling.
Programming techniques used, style, and quality
Bullet proof, readable and stylish code.
Your simulation must install from a floppy disk or CD with sufficient instructions to enable me to run it.
UML diagrams of your analysis and design
Design – class diagram
Design – narrative of considerations and decisions
The source code on the disk, which must compile
A printed copy, in a fixed pitch font, of your source code.
A copy of your documentation (can be by hand, drawn and written) covering the assessed areas.
Evaluation of the usability
Test plan and test cases
Evidence of testing, test results, and discussion of any discrepancies
Persistent data – saves input and output to a file or database
Ability to process multi person input data
Takes input from a data file
Evidence of progressive development from a basic system to the final version through various stages of enhancements.
A detailed marking scheme will be discussed during guidance week when specific assistance with this assignment will be given. An indicatative weighting is given on the assignment coversheet.
This appendix describes the algorithms to be used in this assignment. Note that all three statistics are generated from a person’s height, weight and gender.
Body Mass Index
A person’s Bmi is defined as their weight divided by their height squared.
A “normal” weight for a man is between 20.7 and 26.4 and for a woman is 19.1 and 25.8 (probably, due to the difference in brain mass &#61514;).
Body Surface Area
Should you wish to make your own wet suit you will need to know how much neoprene to purchase. To minimise the cash outlay you will need to calculate the surface area of your body.
The Bsa in square metres is given by the following formula
Bsa = &#61654; ( height * weight / 3600 )
where height is in centimetres and weight is in kilograms.
Lean Body Weight
This is the total weight of your body minus the fat content. NB, if you removed all the fat from your body you would die – so fat is good.
The lean body weight for men is
(1.10 * weight) – ( 128 * ( weight2 / ( ( 100 * height)2) )
and for women is
(1.07 * weight) – ( 148 * ( weight2 / ( ( 100 * height)2) )
(And so I lied about the reason for the difference in gender weight. &#61514; )
3 freelancers are bidding on average $287 for this job
I am a software developer working in Java domain for 2 years. Contact mail address - webvoyager1001@[url removed, login to view] .pls go to my profile for further info. - Thanks and Regards Prince, India