2019 ATMC Semester 1
Generated Web Site for Aussie Road Fatalities
Your task in this assignment is to write a Python program that generates an informative web site about Australian Road Fatalities over the last 30 years, showing summary statistics about the crash types, speed limits, vehicle types, times of day, and the ages and genders of the people who died. This will allow viewers to get insights into the data, and to identify trends that are changing
over time. Figure 1. https://commons.wikimedia.org/wiki/File:Ljubljana_car_crash_2013.jpg Your program will read some input data from a text file (e.g., a spreadsheet in comma-separated-values, or CSV, format) and automatically generate several web pages with links going between the pages. The input data is updated each month, so the idea is that your program will be run on the updated input data each week or each month to automatically generate an updated web site that shows the latest trends and statistics.
Each web page should show a different aspect of road fatalities, and how that aspect has changed over time. Some of your pages must have photos and graphs. Here are some suggestions for different pages you might generate:
• Fatalities per year, and how this rate is changing over time;
• Fatalities per Australian state;
• Fatalities at different times of the day (each hour);
• The impact of different types of crash (single vehicle, multiple vehicle, pedestrian, etc.);
• The contribution of crashes involving buses and trucks, compared to other kinds of crashes;
• The impact of different speed limit zones on road fatalities;
• The impact of different road-user roles (driver; passenger; motor cyclist; cyclist, pedestrian, etc.) on road fatalities;
• The impact of gender on road fatalities – note that the data shows the gender of the deceased person, not necessarily of the driver; • The impact of age (of the deceased) on road fatalities.
ICT112 TASK 2 2019 ATMC 1
Four more important goals:
A. For most of these pages, it would be even more interesting and useful if you could display the change in these statistics over time, such as comparing 1989 against 2017, or the first 10 years against the most recent 10 years.
B. Also, for many of these pages, it would be more meaningful if you could display the statistics relative to the total number of vehicles or vehicle-kilometres in that category. For example, display the fatalities for buses and trucks relative to how many buses and trucks are on the roads, rather than just the absolute numbers of fatalities – this makes it possible to compare fatality rates between those different types of vehicles. To generate some of these relative percentages, you will need to obtain additional data from other sources – for example, the
ABS has lots of data about vehicle usage in Australia
(http://www.abs.gov.au/ausstats/abs@.nsf/mf/9208.0). Make sure you clearly document all your data sources!
C. There must be one top-level page, index.html, that is the entry point for the web site. This must give an overview of the whole website, and should have links to all the other pages.
D. All the HTML files and graphs in your whole web site must be generated by your Python program, so that your whole web site can be automatically updated when the input data values are updated, just by rerunning your Python program.
In this assignment you will learn how to:
1. use top-down design to divide a larger data processing task into parts;
2. use Python to read and write text files (CSV data files);
3. use functions to raise the abstraction level of your program; 4. analyse data to produce graphs and summary statistics; 5. use string and list methods to generate HTML.
This assignment is due at the end of Week 12
(Friday 7 June 11:59pm). You must submit To create a .zip file on a
your files in a single .zip file, via Blackboard. Windows PC, rightthe folder containing all your -click on
Your .zip file should include your Jupyter Task 2 files, then select Notebook (containing your Python program), ‘Send to / Compressed your input data files, all your generated output (zipped) folder’. On a Mac, web pages; and any image files, graphs and right-click on your folder and CSS files that are used in your web pages. select the ‘Compress
It will be marked out of 30. The marking criteria foldername’ option.
is as follows:
• Jupyter Notebook Structure [6 marks].
This should use markup cells and headings to divide your program into
2 ICT112 TASK 2 2019 ATMC
o Title, plus your name and student number;
o Introduction, which explains the structure of your web site, and the features / statistics / graphics that you have implemented;
o Web-site overview, to explain the structure of your web site; o Python code, preferably broken into subsections for each part of your program;
• Web Design and Functionality [6 marks]. To achieve maximum marks, the generated web site should contain several (5-10) web pages, with an entry page (index.html) that links to all the other pages, and the other pages linking back to the entry page; good use of images; the layout and organisation of the pages should be elegant and readable, with appropriate choices of colours; good use of HTML tables for layout; the generated pages should conform to HTML standards; a simple CSS file should be used to specify the look of the web pages (this CSS file does not have to be generated by your program).
• Data Analysis and Visualisation [6 marks]. Your program should analyse the data and generate (and include in the web pages):
o one or more informative graphs that visualise various aspects of the data;
o summary statistics for various group of data (e.g. an average, or maximum, or minimum, or sum);
o some percentages that are relative to the available population (e.g. display the fatalities for each Australian State relative to the population of that state, rather than just the absolute numbers of fatalities – this makes it possible to compare accident rates between states). NOTE: To generate some of these relative percentages, you will need to obtain additional data from other sources, such as the population of each state, the number of drivers of each gender or each age group, etc. Make sure you clearly document your data sources;
• Python Functions [6 marks]. Most your Python code should be inside functions; function parameters should be used to make your program concise and flexible; each function should include appropriate function docs; correct and meaningful naming conventions should be followed for function names and variable names.
• Program Design and Algorithms [6 marks]. To achieve maximum marks, your program should be elegantly designed: be concise; use constants for important values/strings that are likely to change; use appropriate data structures (e.g. strings, lists, tuples, dictionaries, or objects) to store the data; make good use of Python libraries and methods (e.g. for strings and lists); and be reasonably efficient during execution (e.g. reading the input files just once, rather than many times). A key criterion is that your program should not contain blocks of code that are duplicated or similar (such blocks of code should be simplified into a single block of code by good use of loops or functions).
ICT112 TASK 2 2019 ATMC 3
We always make sure that writers follow all your instructions precisely. You can choose your academic level or professional level, and we will assign a writer who has a respective degree.
We have a team of professional writers with experience in academic and business writing. Many are native speakers and able to perform any task for which you need help.
If you think we missed something, send your order for a free revision. You have 10 days to submit the order for review after you have received the final document.
All papers are always delivered on time. In case we need more time to master your paper, we may contact you regarding the deadline extension.A 100% refund is guaranteed.
We use several writing tools checks to ensure that all documents you receive are free from plagiarism. Our editors carefully review all quotations in the text.
Tutorpro support agents are available 24 hours a day 7 days a week and committed to providing you with the best customer experience. 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.
At Tutorpro, we have top rated masters and PhD writers who will help you tacke that homework and score A+ grade. Tutorpro services covers all levels of education : high school, college, university undergraduate, masters and PhD academic level.
No matter what kind of academic paper you need and how urgent you need it, you are welcome to choose your academic level and the type of your paper at an affordable price. We take care of all your paper needs and give a 24/7 customer care support system.
An admission essay is an essay or other written statement by a candidate, often a potential student enrolling in a college, university, or graduate school. You can be rest assurred that through our service we will write the best admission essay for you.
Tutorpro academic writers and editors make the necessary changes to your paper so that it is polished. We also format your document by correctly quoting the sources and creating reference lists in the formats APA, Harvard, MLA, Chicago / Turabian.
If you think your paper could be improved, you can request a review. In this case, your paper will be checked by the writer or assigned to an editor. This is free because we want you to be completely satisfied with the service offered.