Train Station Accounting System Assignment brief

Train Station Accounting System Assignment brief

Train Station Accounting System Assignment brief

Assessment

This Train Station Accounting System Assignment brief contains details of a valid daily ticket income of a train station by the day (1 to 30) of the month.
Please choose an option from the followings.

  •  Add a daily income to the database.
  • Search daily income for a given day of a month in the database.
  • Calculate total monthly income
  • Quit.

If the user selects the option 1 the user should be prompted to enter day (Ex: 30 January) and income (including 10% GST); then write (append) the day’s income into the ‘income.txt’ file.
If the user selects the option 2 the user should be prompted to enter the day of the month (Ex: 30 January). For the given day and month, if an income is found in the income.txt file the income details of that day of the month should be displayed on the screen.

Notes:

  • The algorithm should be written in pseudocode (structured English).
  • The menu should repeat if the user selects options 1 to 3.
  • The records read from the data file should be checked and NOT placed into the list if they are something other than a day and a month. (Display a sensible message if the file is found to have corrupt records in it.)
  • The numbers entered by the user should be checked to ensure they are valid alphanumeric (as distinct from valid days of a month) and not processed further if they are not.
  • Your programs should use one or more functions where sensible, and be documented fully.
  • Use exceptions where necessary.
  • Specify 3 sets of test data that will demonstrate the correct ‘normal’ operation management of your program. Show your test data in a table as you have done in earlier assignments.
  • Run your program using the test data you have selected and save the output produced in a single text file.

Submit:

  • Your algorithm and test data table.

  • The table recording your chosen test data.

  • Source code for your Python implementation.

  • Output test file demonstrating the results of using the test data.

  • Contents of the data file income.txt read by the program.

  • It is important that the output listings are not edited in any way.

If the user selects the option 3 the program should calculate the total income for the whole month and display the total income and 10% GST on the screen.