quiz حل الأسئلة الجامعية manage_search الأرشيف

تم الحل ✓
categoryهندسة الحاسبات schoolبكالوريوس event_available2026-07-15

السؤال

Transcribed Image Text:

You have been asked to create a project management system for a small structural engineering firm called "Poised". Poised does the engineering needed to ensure the structural integrity of various buildings. They want you to create a Java program that they can use to keep track of the many projects on which they work. Poised stores the following information for each project that they work on: Project number. Project name. • What type of building is being designed? E.g. House, apartment block or store, etc. The physical address for the project. ERF number. The total fee being charged for the project. The total amount paid to date. Deadline for the project. The name, telephone number, email address and physical address of the architect for the project. The name, telephone number, email address and physical address of the contractor for the project. The name, telephone number, email address and physical address of the customer for the project. Poised wants to be able to use your program to do the following: Capture information about new projects. If a project name is not provided when the information is captured, name the project using the surname of the customer. For example, a house being built by Mike Tyson would be called "House Tyson" and an apartment block owned by Jared Goldman would be called "Apartment Goldman". • Update information about existing projects. Information may need to be adjusted at different stages throughout the lifecycle of a project. For example, the deadline might change after a meeting with various stakeholders. • Finalise existing projects. When a project is finalised, the following should happen: 。 An invoice should be generated for the client. This invoice should contain the customer's contact details and the total amount that the customer must still pay. This amount is calculated by subtracting the total amount paid to date from the total fee for the project. If the customer has already paid the full fee, an invoice should not be generated. • The project should be marked as "finalised" and the completion date should be added. All the information about the project should be added to a text file called "Completed project". • See a list of projects that still need to be completed. • See a list of projects that are past the due date. • Find and select a project by entering either the project number or project name. Compulsory Task Follow these steps: ⚫ Design your program to meet the specifications given by the client. Extend the program that you have written in previous Capstone Projects so that this program also: • Reads details about existing projects from a text file and uses this information to create a list of project objects. 。 Allows a user to add new objects to this list. • Allows a user to select and update or finalise any project on the list. • Allows a user to see a list of projects that still need to be completed. 。 Allows a user to see a list of projects that are past the due date. • Writes the updated details about the projects to the text file when the program ends. • Besides meeting the above criteria, you should also do the following: 。 Make sure that your program includes exception handling. Use try-catch blocks wherever appropriate. This should include ensuring that your program handles exceptions related to writing or reading to/from text files and exceptions related to acquiring user input. 。 Make sure that you have completely removed all errors from your code. Take extra care to ensure that logical and runtime errors have been detected and removed. 。 Make sure that your code has been adequately refactored. 。 Make sure that your code is adequately documented. Adhere to the style guide found here. • Use Javadoc to generate API documentation from documentation comments for your program.

check_circle الجواب — حل مفصل خطوة بخطوة

hourglass_top