CIS 345 – Business Information Systems Development – II
Assignment 3: Transaction Logger
1. Utilize modules to Read and Write from CSV Files.
2. Develop a module to utilize in another python file.
3. Implement functions to perform basic functionality.
Throughout the Software Development Life Cycle (SDLC) it is common to add upgrades over
time to a code file. As we add code our files become very large, less organized, and more
difficult to maintain. We have been adding upgrades for our Bank client. They have requested
the addition of the ability to log all transactions for record keeping. They require a Comma
Separated Values (.csv) file format to aid in the quick creation of reports and record keeping.
The log will be used to verify transactions are accurate. The transaction logger code will be
placed in a separate python module to avoid increasing the size of our existing code. We will
also make use of the time module to timestamp all transactions.
Instructions & Requirements
• Create a PyCharm Project using standard naming convention.
• Use your PE5 file as the starting point and download the customers.json file from
• Rename your asurite_transaction5.py to [ASUrite]_a3transaction.py in your project
• Create a new python module/file and name it [ASUrite]_logger.py.
Important Note: Before you start, make sure your PE5 transaction.py file works!
Open and develop code in the new [ASUrite]_logger python module as follows:
1) Import csv to allow the functions defined in this file access to the functions needed
to write to a CSV file.
2) Define a function log_transactions( ) that accepts a data structure containing all
transactions made during the execution of the application and writes the entire data
structure to a csv file. Review CSV video lectures for ideas of a data structure used
with the csv module. This function returns nothing.
3) Move the create_pin( ) function we created in PE5 to the new
4) (Optional) Define a function format_money( ) that accepts a decimal value and
formats it as a dollar amount adding a dollar sign, commas, and 2 decimal places.
ex. $ 15,190.77 Return the formatted dollar amount.
Modify and enhance the [ASUrite]_a3transaction.py module as follows:
5) Import your newly created logger module developed above and time. The time
module has within it a function ctime() function that returns the current time:
time.ctime(). Print it in a console to become familiar with it.
6) Declare a data structure for all transactions and initialize it with the CSV file’s
column headers (listed below and in screenshot). The data you must log later, in a
list data structure, is asfollows:
• DateTime – date and time the transaction occurred in the system
• Username – customer’s username of the account the transaction was performed
• Old Balance – account balance before the transaction
• Amount – amount of the transaction (can be positive or negative)
• New Balance – account balance after the transaction
7) Add code to save the account balance before performing the math to compete
the transaction. Place this code where it best fits the transaction process.
8) After each transaction, add all log data to the data structure you declared in step 6
(see step 6 for the list of all log data). Make use of your function in logger to format
any dollar amount or format in the [ASUrite]_a3transaction.py file so that all
dollar amounts are formatted the same using thisfunction.
9) Write the transaction data structure to a single CSV file using the logger module
function. Place this code in the best location within the code where it makes the most
sense within the business process.
Assignment-specific Submission Instructions (if any)
• CIS 345 Assignment Submission Instructions
o Uploade your [ASUrite]_a2transaction.py and [ASUrite]_logger.py modules
Why Work with Us
Top Quality and Well-Researched Papers
Our writers are encouraged to read and research widely to have rich information before writing clients’ papers. Therefore, be it high school or PhD level paper, it will always be a well-researched work handled by experts.
Professional and Experienced Academic Writers
For one to become part of our team, thorough interview and vetting is undertaken to make sure their academic level and experience are beyond reproach, hence enabling us give our clients top quality work.
Free Unlimited Revisions
Once you have received your paper and feel that some issues have been missed, just request for revision and it will be done. In addition, you can present your work to the tutor and he/she asks for improvement/changes, we are always ready to assist.
Prompt Delivery and 100% Money-Back-Guarantee
All our papers are sent to the clients before the deadline to allow them time to review the work before presenting to the tutor. If for some reason we feel our writers cannot meet the deadline, we will contact you to ask for more time. If this is not possible, then the paid amount will be refunded.
Original & Confidential
Our writers have been trained to ensure work produced is free of plagiarism. Software to check originality are also applied. Our clients’ information is highly guarded from third parties to ensure confidentiality is maintained.
24/7 Customer Support
Our support team is available 24 hours, 7 days a week. You can reach the team via live chat, email or phone call. You can always get in touch whenever you need any assistance.
Try it now!
How it works?
Follow these simple steps to get your paper done
Place your order
Fill in the order form and provide all details of your assignment.
Proceed with the payment
Choose the payment system that suits you most.
Receive the final file
Once your paper is ready, we will email it to you.
You have had a hectic day, and still need to complete your assignment, yet it is late at night. No need to panic. Place your order with us, retire to bed, and once you wake up, the paper will be ready.
It does not matter the urgency of your paper, or the academic level, our team is ready to help you 24/7. Just contact us and all your academic needs will be sorted.
Admission Essays & Business Writing Help
A student is often required to write an admission letter requesting to be admitted in a certain institution. For you to be gain that admission in your dream institution, you must write a convincing letter. You can depend on our team for the best admission letters.
Academic writing is not just about getting information and throwing it all over. Our team will ensure you have a polished paper that is coherent and has a good flow of information. We also ensure the paper follows the correct formatting styles like APA, Harvard, MLA, Chicago/Turabian.
If our writers write a paper but you are not satisfied in one way or another, you can always ask for revision. This is totally free. Our writers and editors will revise your paper untill you are be totally satisfied. We as well offer revision for papers not done by our writers at a small fee.