Question: Write a multi-class C++ prototype system that employs programming best practices to promote code readability and maintainability. Include in-line comments (i.e.: short headers, details of

Write a multi-class C++ prototype system that employs programming best practices to promote code readability and

maintainability.

Include in-line comments (i.e.: short headers, details of what the code is doing, etc.)

Analyze your code and solve programming errors in logic, syntax, and exceptions to ensure acceptable program output. Be

sure to:

Look for syntax errors

Use appropriate naming conventions

Validate user input

Test code to ensure it meets functional requirements

Directions: you will write a multi-class C++ interfacing prototype system for the WILD LIFE Zoo that incorporates Object Oriented functionality. The functional requirements for this problem are:

1. Allow for ease of system use - a user menu must display with the following options:

Load Animal Data

Display Animal Data (Report showing animals grouped by type).

Add Record

Delete Record

Update Record

Save Animal Data

2. Load Animal Data - For this prototype, you will be provided with a fixed length file (see sample of input file in CANVAS) from

the tracking system vendor. It will contain the following fields:

Track# - Received from the RFID chip technology

Name - Name given to the animal

Type - Oviparous (egg laying) or mammals (primarily non-egg laying)

Sub-type - Crocodile, Bat, Whale, etc.

Eggs - Number of eggs laid

Nursing - Number of babies being fed from their mothers milk

Data in the file will look like this (column widths are 6, 15, 10, 15, 5, 5 respectively):

Give users the ability to load this data into memory via a vector within your system using this UML diagram to build your class

hierarchy and inheritance.

A message, Load complete. will display after the data loads successfully.

3. Display Animal Data - Display data on the users computer screen in tabular (i.e.: presented in the form of a table with rows

and columns) format .

4. Add Record - Provide the capability to add new animal records. An input screen for Track#, Name, Type, Sub-type,

Eggs, and Nursing should be enabled when the user selects the Add Record option from the user menu. The user

should have the ability to save or cancel the add.

5. Delete Record - Provide the capability to delete animal records. Deletes an animal record by Track# or Name when the

user selects the Delete Record option from the menu. The user should be prompted to confirm the deletion before the

record is removed from the system. A message Animal successfully deleted. should display once the operation finishes.

6. Update Record - Provide the capability to update animal data. The system should allow a user to update any information for

any animal, by Track# or Name when the user selects the Update Record option from the menu. The system will:

a. Retrieve the correct animal record by Track# or Name

b. Display information for the animal selected

c. Allow all fields on that animals record to be edited

d. Allow the user to save or cancel the update

7. Save Data - Permit the user to save modified animal data back to the original input file erasing the data that was previously

there. A message Save successfully completed. should display once finished.

8. Input validation and error handling are expected to anticipate, detect, and respond to runtime and user errors during

program execution.

9. Before you begin coding, remember that you must demonstrate industry standard best practices in all your code to ensure

clarity, consistency, and efficiency. This includes:

a. Inserting in-line comments to denote your changes and briefly describe the functionality of the code

b. Using appropriate variable, parameter, etc. naming conventions throughout your code

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!