So basically i have got to do this in Java, and i havent got a clue to start can someone help me please it would be much appreciated Please please pleaase
create part of a scheduling system for internal television programmes in a hotel. The system
enables a member of the hotel staff to set up a week’s viewing schedule and view the result.
The hotel schedule is much simpler than a broadcast television schedule because:
There are only two channels (Channel 1 and Channel 2)
The channels are only on air from 6 am until midnight
The duration of every programme item is in multiples of ½ hours
There is only a 1 week schedule (the schedule is changed every week).
The different kinds of programmes that the hotel shows are:
1. Hotel Information
5. Music Video
All programmes have a title, a duration (in ½ hours), and a start time. The start time is set
when a programme is added to a schedule.
The hotel information programmes have two distinct types:
i. Still pictures e.g., Evening menu
ii. Videos – e.g., video of beach activities, local tourist attractions, fire safety
Films, Comedy and Drama have the normal information that one would expect including
director, actors and a short synopsis (description of what it is about). Films also have a
rating (All, PG, 15, 18).
Most programmes are available to anyone but some must be rented by a guest wishing to
view them. These rentable programmes are usually films (but not always) and provision
should be made for allowing any future programme to be rentable. Rentable programmes
are special and allow a potential viewer (someone who might want to rent them) to watch a
trailer. The trailer is typically just the beginning of the programme, i.e., the first few
minutes. Any rentable item should allow the scheduler to set the duration of the trailer.
Rentable programmes should display in some way that they are rentable.
Music Video Programmes are not single videos but videos that have been edited into a onehour compilation
Each day has a schedule. The schedule has a maximum duration of 18 hours (made up of
half hour slots) and contains programmes that are sorted by start time. Programmes can be
removed or added to a schedule. This would be done by a User who is setting up a
schedule. If the schedule is full, programmes would need to be deleted to make space for
new programmes in the schedule. Programmes can be added to the end of a schedule or
inserted between two items already in the schedule. In either case, the end of the schedule
must not be after midnight.
So, if a schedule has an hour space in the middle but is otherwise full and a User tries to add
a 2 hour film, one of three things should happen:
1. the User should be prevented from adding this until a suitable space exists
2. The schedule should allow the insertion but delete programmes that are
3. The schedule should allow the insertion but remove any programme(s) at the
end of the schedule
You are required to decide, as the software designer, which of the actions described above
is going to be performed by your system.
Your schedule must allow programmes to be added at a specific start time (which is when
the start time of the programme would be set) and added to the end of the schedule.
The Graphical User Interface (GUI)
The software system must be a desktop application (i.e., not an applet) which has a
graphical user interface (GUI) which must be implemented using Java Swing components.
The GUI should enable a User to:
Display the schedule for a day (both channels)
Display all available programmes (sorted alphabetically), i.e., this will include
programmes that are scheduled and programmes that are not in the schedule.
Display all programmes of single type (e.g., Comedies)
Display all films that must be rented
Add a programme to the schedule
Set the trailer duration on a rentable programme
Remove a programme from the schedule
Select a programme item and display all the details relevant to a particular type of
Note: the GUI must not have any functionality for programme creation – programmes
already exist in a database of available programmes.
I'd start by planning the classes you'll need to create (draw a class diagram?) and what methods/attributes each one will need, which is just a case of pulling the relevant details out of the description.