Reference no: EM133028760
GIS3006 Programming Skills And Statistics - Gulf College
Aims
This module aims to introduce simple programming concepts including variables, loops and branching of code. The students will also be introduced to the use of statistical based software packages as a means of describing,
analysing and modelling data.
Learning Outcome 1: Demonstrate an awareness of key principles of programming, including the use of variables, looping and branching of code.
Learning Outcome 2: Demonstrate an understanding of the importance of principles of good design of software products.
Learning Outcome 3: Use statistical software to describe, analyse and model data.
Practical Project Overview
PART A
The Scenario
A flower shop owner asked you to write a program that would maintain information of the items it is selling in a file. Items that the flower shop sells include bouquets, leis, corsages, crowns, wreaths, and other flower arrangements for various occasions. Information of each item includes type, unit price, and quantity on-hand.
When a customer buys an item, the quantity on hand of the item bought is decreased by the quantity bought by the customer. Item quantities must be replenished once they reach 5. Your program should allow users to:
1. add flowers
2. input sales
3. replenish stocks
4. search item
5. display items
6. quit the program
Add Flowers. This is done when there is a new type of flower arrangement or type of cut flower to be added to the items for sale. The user simply inputs the type, unit price, and quantity of the new item to a file type of your choice (text file, Excel file, or CSV file).
Input Sales. When a customer buys an item, the program checks the items file for the availability of the item to be bought. If the quantity is enough, the sales information is recorded to the file, which includes the date of the transaction, item type, unit price, quantity bought, and total amount. Use the same file type as you use to store items information. The quantity on hand of the item bought is decreased by the quantity bought by the customer
Replenish Stocks. When the on-hand quantity of an item for sale reaches 5 or less, the program should prompt the user to replenish it by entering a quantity value which will be added to the quantity on-hand information of the item.
Search Item. This option is used when the user wishes to view the information of a specific item by entering the item type. The program then displays the information of the searched item. This function is most useful as this will also be used every time an item is checked for availability (when a sales transaction occurs) as well as when replenishing stock quantities.
Display Items. When displaying the items, the total amount of each item on-hand should be displayed as well as the overall total amount. Make sure to display all these information in a tabular format.
Quit. This should close and end the session with the program application
Appropriate testing and validation should be done to make sure that all data and program functions are correct and appropriate and that all system responses and appropriate error messages are displayed. Important parts of the code, such as functions and variables, should be properly documented through comments.
Report and Documentation
I. Introduction. Introduce your project, its purpose, and its relationship to your field of specialisation. Your introduction should be at least one paragraph long (about 200 words). Also, properly paraphrase and/or write at least one in-text citation in this section.
II. Program Design. Identify some software product design principles that you founded your project on and discuss how you are able to meet or implement them through the programming language tool you are using. Be sure to elaborate on how adherence to software product design principles can lead to a better working software application. Also, properly paraphrase and/or write at least two in-text citations.
III. Implementation and Testing. In this section, present screenshots of the working program application. Show how your program works by entering correct and wrong data. Properly label or caption each screenshot and explain it by tracing the interaction between the user and the program. Also discuss some important code snippets.
IV. Conclusion. This section of the report should include a reflection on whether or not this assignment met your expectations of the module. Focus on the tasks that you performed to accomplish the project and of how these tasks enable you to meet the learning outcomes of this module.
V. Reference List. List down all the references you used using the Harvard style of referencing.
Presentation and Demo
Finally, you are required to present and demonstrate your output before the end of the semester. The demo and presentation will be video-recorded.
PART B
Objective of the Tasks
In this practical project you are expected to investigate and visualise data using Python in the Jupyter Notebook
environment. This will test your ability to:
• Read data from files in Python
• Manipulate the data
• Describe the data using basic statistics
• Produce non-graphical and graphical visualisation to explore the data
• Communicate your findings as insights
The Dataset
You will be using the sales file you produce in Part A. Therefore, make sure that you have enough sample data in this file.
The Tasks
Using the Jupyter Python environment, you must accomplish the following requirements. Make sure to explain each step in accomplishing these requirements.
a. Import the necessary libraries.
b. Read the file.
c. Wrangle the data.
i. Sub-set the data. For the related DataFrame, keep only the item type and the aggragated total amount information of each item
ii. Appropriately rename the columns.
iii. Provide some statistical description of the final data that you have. Interpret the data that you have obtained using basic statistics.
2. Select an appropriate graph and provide some basic insights to the following question:
a. What item is most saleable? Which item is least saleable?
b. For each of the item, plot a bar graph to show the sales performance. Be sure to label and format appropriately your graph.
c. Using the original sales file data, plot a line graph on the sales performance of the top 5 items over time. What does the resulting graph signify?
Attachment:- Programming Skills And Statistics.rar