1. System background
The Star Hotel is a recently built hotel located in the popular seaside resort of Marina Beech
. It has a swimming pool, a games room, an exercise room, and a sauna. The rooftop restaurant Edges seats 50 people and offers a buffet with a wide range of salads, as well as fine a la carte dining with stunning views over the harbour. The hotel was acquired
by a group of local business people who are keen to enhance the appeal of Marina Beech as a tourist destination by providing reasonably priced, quality accommodation.
A management group was appointed to develop an up-to-date hotel reservation and customer service billing system. Your group has won the tender to provide the software component of a computerised hotel reservation and customer service billing system. In carrying out this contract, Red Gum expects that you make yourselves
aware of and use your best endeavours to comply with the following vision statement and requirements.
2. Vision statements
Star Hotel CEO
I expect that this system will allow us to provide an exemplary
level of service to our guests. We are in the very competitive tourism market, so that it is imperative that we are able to satisfy all our guests' needs, quickly, efficiently and economically. The system must be fully functional within the next 14 weeks in order to be ready for the next peak tourist season.
Chief Financial Officer
We have a strict budget for this system and it is vital that there be no cost overruns. I need to be provided with a development
cost plan showing the expected rate of expenditure over the next 14 weeks so that I can plan the required fund drawdown’s from the line of credit we have established with our bank.
I am responsible for the overall operation of the hotel, both Customer Service
(Front Desk, customer bookings and billing), and the Restaurant. I need to access the system at any time and see up-to-the- minute details of bookings, occupancy rates, and financial details - particularly room charges and customer payments. The system needs to be 100% reliable and secure. I need to know what provisions you are going to make to ensure this.
We will employ a small but competent staff.
We expect that only minimal training on the system will be required. In order to ensure that they work effectively, your system must be user friendly, intuitive and fast. We cannot afford to inconvenience
customers by having them wait too long for their account to be finalised and the bill to be printed.
3. System description
The hotel has 80 units for rent. There are 50 standard rooms, 20 executive suites, 2 penthouse suites, and 8 family suites. All units have a bathroom, a telephone, cable TV, pay-per-view TV, a table with several chairs and at least one comfy chair. A standard room may contain one or two beds. An executive suite consists of a master bedroom with one bed and a living room; all executive suites have Internet access. A family suite has a master bedroom with one bed, a children's room with two beds, and a living room. The price of a standard room is $120 per night, an executive suite is $250 a night, and a family suite is $300 a night. An executive suite on the top floor rents for $500 a night. A room on the ground floor has a one or two digit integer identifier. All other rooms have a three-digit identifier, where the first digit indicates the floor. The hotel has six floors of accommodation, plus the rooftop restaurant and four executive suites on the seventh floor.
Enquiries can be made by phone, email, or in person. The customer asks for a room of a given type for some period, and the clerk at the front desk checks all rooms of that type to see if any are vacant. A customer can also ask for a specific room number. If no room of the requested type is vacant, the clerk asks if another type of room would be suitable; if the nominated room is not available, then the clerk asks if another room of the same type would be acceptable, or a room of a different type.
A room can be reserved up to two months before it is used for a period of up to one week, if a major credit card is provided; major credit cards are Visa, MasterCard, and American Express. A credit card must be authorised by the credit provider at the time the reservation is made. A reservation cannot be made with cash, only with a credit card. A 10% advance deposit is paid when the room is reserved; reservations may be made by phone, by email, or in person at the front desk. The deposit is kept if the room is not used or used for only part of the reserved time, and it is subtracted from the final charge if the room is used for the whole of the scheduled period. When a room has been reserved, the customer is given a unique reservation identifier that consists of the room number (3 digits), followed by the start date of the reservation (6 digits in the form ddmmyy). When the customer checks in, either the reservation number or the customer name is given to the clerk, who finds the reservation on the computer, and gets the customer to sign the room booking form. The booking form shows the room number and period, the customer name and address, and the payment details. Finally, the clerk gives the room key to the customer. A customer can, of course, simply appear with no prior reservation and book a room. If cash is paid, then 80% of the scheduled cost must be paid at the time the room is booked; this is kept or subtracted in the same way as the 10% credit deposit. A penthouse suite can only be booked with a credit card. A frequent customer gets a 5% reduction in their final charge; a frequent customer is one that has stayed in the hotel for more than two weeks in the previous two years, with no history of defaulting. A customer with a reservation checks in to the front desk at the start of the scheduled period. A customer can also simply turn up with no notice and reserve a room for some period. The clerk at the front desk asks for the credit card (if credit is used) and one form of pictorial identification; valid forms of identification are a driver's licence or a passport. If the customer has neither of these, then the customer can still book a room with the personal approval of the manager. The identification data is stored, along with the customer's name, gender, and address. An address has three fields, the street number and name, the suburb and the postcode. The customer signs the room booking form, and the clerk hands over the room key.
Each telephone charge is added to the bill at the end of the call, unless the total phone bill is greater than $200; if the phone bill goes over that limit, then no further phone calls are allowed until the phone bill has been paid in full. A customer can select a movie from a menu shown on the TV screen, and pay to see that movie; this is called pay-per-view TV. The movie is selected from the list shown on the TV screen. A general audience movie costs $5, and an adult movie costs $10. The charge is added to the bill when the selection is made; there is no limit to the number of movies that can be charged. Check-out time is 11:00 am. The customer goes to the front desk and receives an itemised bill showing the date, time, type, and amount of every single charge along with all existing payments. Every charge is shown, grouped into the categories such as movies and calls; the names of the movie, and the called telephone numbers, are not shown. The customer then pays the outstanding balance by cash or credit and gets a receipt for the payment. Before 11:00, the customer can extend the stay in the room (if it is not already booked) up to another week by telling the customer service operator at the front desk. If a cash deposit was paid, then all existing charges must be paid at that time. If the room was booked with a credit card, then the bill must be paid at the time of extension if the amount owing is over $2000; for a penthouse suite, the limit is $5000. A customer is not allowed to shift between rooms without paying the existing bill in full. If a customer leaves without paying, they are marked as a defaulter and can never use the hotel again. If the room was booked using a credit card, then the card is debited for the full amount owing. If credit authorisation fails or the customer paid by cash, then the charges are cancelled. When a defaulter tries to reserve or book a room, the hotel's database is scanned for a match on name and address and service is refused. If a customer cannot pay any bill when it is due, the customer is forced to leave the hotel and marked as a defaulter. The hotel keeps any deposit, and any further amount owed to the hotel is written off (cancelled).
At 3:00 pm, the day manager collects the cash from the safe and the front desk, checks that the cash at the front desk matches the cash receipts for that day, and deposits the cash in the bank, leaving $500 for the next day's front desk operations. An additional $1,000 is kept in the safe in the office for emergencies.
At any time, the day manager can request a display that shows the availability of every room at the time of the request. The manager can also request the percentage of time that each type of room was occupied within a given period. This occupancy data can also be displayed for all rooms on a given floor in a given period. The manager can also request a graphical display, as well as the textual details, of when an individual room was occupied within a given period; the graphical display can show at most three months of data. At the end of each week, the system produces a summary report that shows the income for that week from all sources,
4. Deadlines and deliverables
The items to hand in, the date to hand them in, and the marks for each part, are shown below. The estimated workload for all parts, for each person on the team, is about 36-54 hours. The actual workload may vary by a factor of three due to individual variation.
4.1 Week 5, (10 marks)
Use Case Model (Objectives 1 to 6)
Identify all the use cases mentioned in the system description and draw a use case diagram, with all use case relationships. It has an expected workload of 8 hours for each group member. There can be approximately 15-20 use cases selected from this system description.
Suitable Use Cases/Actors/Links: 6
Include/Extend/Generalization relationships: 4
4.2 Week 5, (5 marks)
Use Case Descriptions (Objectives 1 to 6)
Describe 3 use cases using the format described in the lecture notes, showing all details for each use case; describe any included or extended tasks that are required by the stated use cases. It has an expected workload of 3-4 hours for each group member. Each use case should require at most 3 pages of text, and some may take less than one page.
Mainline:2 Extensions: 1.5
4.3 Week 8, (10 marks)
Class Diagram (Objectives 1 to 6)
Design a design class diagram which shows, for each class in the system, the class name and attributes, plus the class associations, multiplicities and operations. Include any inheritance, composition or aggregation relations. It has an expected workload of 15 hours for each group member.
Suitable Classes: 2.5
Suitable attributes and types: 2.5
Appropriate Associations: 2.5
Suitable Operations: 2.5
4.4 Week 8, (5 marks)
Sequence Diagram (Objectives 1 to 6)
Draw 3 sequence diagram which show all messages (method calls) between classes, including any parameters, and any value returned from a method call. It shows object selection, iteration, and object creation and / or destruction. It has an expected workload of 5 hours for each group member.
Appropriate Control Flow: 3
Correct Notation: 2
4.5 Week 12, (10 marks)
Java Code (Objectives 1 to 6)
Write Java code for 3 methods of any one class or different classes in the class diagram. It has an expected workload of 5 hours for each group member.
Reasonable method logic: 3
Specific correct parameters: 2
Executable code: 5
4.6 Week 12, (5 marks)
User Interface Design (Objectives 1 to 6)
Each group has to design user interface for three methods’ data input and output. The design consists of a set of screen layouts that define the data input to and displayed on each screen. It has an expected workload of 5 hour for each group member.
Appropriate Screen Layout: 2.5
Executable input/output: 2.5
4.7 Week 12, (5 marks)
Connection to Database (Objectives 1 to 6)
Connect one class or entity to MySQL database. Apply or show CRUD operations on one or two objects.
Appropriate Code: 2.5
Executable code: 2.5
5. Group and individual marks
The assignment is done in groups of three. When you hand in the final part of the assignment, you must rate each member of the group on how much that person has contributed to the overall mark; the form is included at the end of this document. The contribution of each team member is written on the form, and each person signs the form. The individual mark is the team mark weighted by the individual contribution. You must fill in and sign the form; if you do not, then your assignment mark will be zero. Any group experiencing problems that cannot be resolved within the group should contact the Subject Coordinator as soon as possible. In extreme cases, the Subject Coordinator may withdraw a problem student from a group. That student must then find another group, or work alone. No complaints will be heard after the submission date.
6. Academic Conduct
The solution should be the original work of the members of your team. No collaboration is allowed with any other person. You are not permitted to discuss your solution with, or show it to, any student outside your team. The Faculty penalty for proven and serial misconduct of this nature is zero marks for the subject, as stated on the Subject Outline.
7. Assignment Submission and Return
You build a system specification by delivering seven documents, where each document builds on the previous one; the timing and deliverables are described in section 4. For each part • hand in a hard copy of the assignment to the tutor at the start of the Laboratory
• submit a soft copy of the assignment on UTSOnline.
• the marked assignment is returned two week later in the Laboratory
• No late submission is accepted. Failure to submit assignment on time will result in penalty (10% of marks obtained will be deducted per day).
8. Special Consideration
Special cases are to be discussed and considered by the subject coordinator. If any student’s performance in an assessment item or items has been affected by extenuating or special circumstances beyond his/her control (work problems, family problems, or health problems), then he/she may apply for Special Consideration. If you are requesting an extension of time of one week or less to submit an assignment you should contact your subject coordinator, do not formally apply for special consideration.
9. Minimum Requirements
In order to pass the assignment, each student must get more than 50% of the total assignment mark.
Appendix A: Individual contribution to the assignment
Fill in and submit this form with the last part of the assignment in week 13.
One way to allocate marks is to give each member of the group an initial weighting of 100. If a member of the group has contributed more than the others, then that person's weight is increased and the weights on the other members are decreased so the total weight is always 100*n, where n is the number of people in the group (normally three). No person can score more than 60 marks for the assignment; any marks above 60 will be ignored. The following table must be filled in and signed by every member of the group, and submitted with the final part of the solution in week 13. No individual mark will be given until this form has been signed and submitted.
Student id, name Weight Signature
java assignment help, java homework help, programming homework help, python assignment help, programming assignment, computer science assignment help, computer science homework help, python homework help, do my programming homework, computer science assignment, computer science homework, c++ homework help, java programming assignment help, php assignment help, coding assignment help, coding homework help, r programming assignment help, c++ assignment help, pay someone to do my programming homework, c programming assignment help, python programming assignment help