CIS096-1 – Principles of Programming and Data Structures
Assignment No. 2 – Group / Individual Assignment
The Learning Outcomes to be addressed in this assignment:
Carry out a software project collaboratively by implementing a program following the stages of analysis, design, implementation and testing using a modern high level programming language.
Please Note: Assignment 2 for these units is usually a Group Project and you would be expected to work in a group. However due to the constraints imposed by the COVID pandemic the Assignment 2 has been adapted to allow for a student to work as an Individual.
It is very important that, whether you are working in a group or as an individual, you read this assignment brief very carefully. You should also look at related documents and guidelines, and any guidance posted on BREO under Announcements.
It is YOUR responsibility to be aware of what you have to do and what you have to submit in order to successfully pass this Assessment.
Work with colleagues in your assigned/formed group (or you can work as an individual) to develop and implement the case study which is described below.
Submit a word-processed Group or Individual Report detailing the work that you have done as part of the group (or as an individual). This Report must be professionally structured, and presented and have the required content. Please use the Report Template provided as guidance. If working in a group, all members of the group must be clearly identified (providing full name and student ID) on the title page and in the body of the report. If working as an individual, you need to clearly identify that the work is NOT group work but individual work.
You are strongly recommended to use the Report Template which will be provided.
Each group will be given a mark, but each group member will also be assigned an individual mark. Your individual mark will be influenced by your individual contribution to the development of your program as evidenced in your Group Report, and your contribution to the group presentation. See later. Due to the impact of COVID presentations on campus are unlikely to be possible.
Therefore, every student will need to record and upload a video recording demonstrating the application and explaining at least some of the code.
If working as an Individual and we are back on Campus you would be expected to do an Individual presentation.
The size of the groups should not be larger than five (5) people. Assignments by a group of two (2) people are also acceptable in exceptional cases that need to be approved by the lecturer. However, you will not gain any advantage by doing so.
For those working in a Group:
You will not need to sign-up to a group on BREO (since there are two units involved). However, you will need to provide student ID numbers and names for all group members at the front of the submitted Group Report. You can also give your group an appropriate name. Each member of a Group needs to submit the Group Report. If you do not submit a copy of your Group Report you WILL NOT pass. If your name does not show on the report, this means you have not attempted this assignment.
If there is a dispute within the group, you should inform the lecturer / unit coordinator, so that a meeting with the group can be held where the matter can be resolved.
1. Consider the task description as a group (or individual). In your group, agree on the features to be part of your solution to the problem described, and on how you might be able to deliver these features. (This includes determining what data may be required to support the functionality in each case). List and describe any assumptions you make.
2. Develop an appropriate database to store all the required Hotel Online Booking and Management System information. Develop the required client / database or client/server system with a GUI-driven client and a server that handles appropriate requests (see Task Description).
3. Code and test the critical features of the Hotel Online Booking and Management System you have identified by analysis using the range of programming features of the Java language such as I/O file operations, JDBC, Networking classes etc.
· Develop GUIs for each of the forms you need to use within the system as user interface. Note that you have 4 different users: Customer, Corporate Client, Receptionist, and Bar/Restaurant Staff.
· Make sure the database is deployed on the server side, and the users access this via a GUI-based client program.
· Please carefully design your database using your database design and SQL skills. (Please refer to the Report Template provided which has guidance on what you should include).
1. Group Project Report (10-20 pages with Code Appendices)
Illustrate and justify your choices in analysis and implementation. Provide evidence that you actually tested your code. Include and explain your class diagram. Any code may go into the appendix, except core classes that you may explain in the main text. Please do not exceed the page limit as you may be penalised. (The pages in the Appendix do not count in the total page count.)
This is a formal report and attention should be given to the format of this work. You should include a title page, table of contents, heading and sub-
headings (introduction, main part, summary, appendices), and Fig. Nos. and captions for diagrams, screenshots, and graphics. You are strongly advised to use the report template provided.
A Group / Individual Report template is provided on BREO.
2. Video / Presentation / Demonstration (5 slides max with demonstration of your program – approx. 5 mins total)
Provide an overview of your work as a group and demonstrate your working system.
Due to the constraints imposed by COVID-19 it may well not be possible for you present your Project work on campus.
In this case, every group member (and individual if working on an Individual Project) will be required to record and upload an individual video demonstrating their working application and explaining parts of the code. [Max. 5 minutes duration.]
3. Complete program code submitted as a zipped file.
Note: The lecturers / demonstrators will be happy to advise you at any stage during the development of this program.