Question
Tasks Refactor or re-use your project started in Practical Project Part 1 to meet the following requirements: Project has a layered design and implementation e.g.
Tasks
Refactor or re-use your project started in Practical Project Part 1 to meet the following requirements:
Project has a layered design and implementation e.g. Presentation, Business, and Persistence with record-objects (also known as Model or Entity objects) or uses a Model View Controller framework. For example, all user interactions are via the Presentation Layer, the sequential data structure in memory is within the Business Layer, and the File-IO is within the Persistence Layer.
Re-use your record object, or create one, (also known as entity object, data-transfer object) that uses the column names from the dataset as part of the source code, e.g. variable names, accessors/mutators names, or constants.
Use File-IO on startup to open and read the dataset, initializing one hundred record objects with data parsed from the first one hundred records in the csv file. If there are fewer than 100 records in the dataset, use them all. The record objects should be stored in a simple data structure (array or a list), use exception handling in case the file is missing or not available.
Displays your full name on screen so it remains visible at all times, or after each user interaction.
Provide the user the interactive options and functionality to:
Reload the data from the dataset, replacing the in-memory data.
Persist the data from memory to the disk as a comma-separated file, writing to a new file.
Select and display either one record, or display multiple records from the in-memory data.
Create a new record and store it in the simple data structure in memory
Select and edit a record held in the simple data structure in memory
Select and delete a record from the simple data structure in memory
Take a screen shot of your program performing each task above, ensuring your full name is within each screen shot. E.g., print Program by Your Name replacing Your Name with your ACSIS name every 10 records of output when displaying many records and / or as part of the menu system (or GUI or Web Page etc.)
Write a single unit-test as proof of concept using a testing framework to test one part of your program.
Unit-Test Examples (you would only do one test, or a similar test):
Does the program read in records, placing data into correct fields of record objects?
Does the program add a new record into the sequential data structure?
Does the program update a record in the sequential data structure as expected?
Does the program remove a record from the sequential data structure as expected?
Does the program catch any exceptions or errors if the file is missing?
Etc.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started