Answered step by step
Verified Expert Solution
Question
1 Approved Answer
For this program you will work from the code base for the Student database solution and project from recent class exercises. Here is the spec
For this program you will work from the code base for the Student database solution and project from recent class exercises. Here is the spec for the parts of the program that you are to submit when complete:
The test should use a List of data objects, of each subclass kind, for testing. Use good test data. Good test data means that values are logical and correlate to other field values so that correct output becomes intuitively obvious to a casual observer. See more about testing below.
Your inheritance hierarchy for the data objects will have the following spec:
Student is the base class. Undergrad and GradStudent inherit from Student.
Students have a first name, last name, email address, and a GPA.
Undergrads have a year rank in school that can only take on the literal values Freshman, Sophomore, Junior, or Senior and a degree program major.
GradStudents have a graduate faculty advisor and they have a financial tuition credit for the teaching they do while in their grad programs.
Your database application has the following requirements for basic operations:
Email address is a good choice for the primary key
C Create or add a record to the database Extra Credit
R Read the details of a record find or search utility
U Update or modify some details of an existing record in the database.
D Delete or remove a record from the database Extra Credit
Ability to Save the database between program runs we are using a plain ASCII text file for this
Some additional requirements:
The program must read from and write to plain ASCII text files for its persistent storage No other database software allowed
C# allows any extension for text files but you will use txt so that it opens easily using Notepad
Any content, format, or layout of data or metadata in the text file is allowed.
During program runtime, Student objects must be stored and manipulated in a List collection.
Testing Test reports and results should be obvious, even to a person with little C# knowledge.
Include the output of good test runs of your program so that an observer can immediately see, in an obvious way, that your program produces correct results. Use Powershell StartTranscriptStopTranscript or simply copy and paste from the shell to notepad, etc.
Your testing should completely test the code, meaning that at least one execution of every method and property get or set should be covered in a single run of the test. At least one record should remain unchanged from the input file through the complete test run to the output file. This proves that your database can store a record safely without modification. Changes to records should be distributed evenly among them so the changes are easily traced back to the original data.
Create, Delete, and Update all need to be tested "end to end" meaning that the contents of the output file need to reflect the change, not just the List This is a database and changes need to be persistent across program "run" instances to represent effective storage and operations. the other solution are not the same question as the other "The test should use a List of data objects, of each subclass kind, for testing'" The test should use a List of data objects, of each subclass kind, for testing. not the same
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