联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2025-03-27 08:40

Assessment Brief

PROG2007 PROGRAMMING II

Summary

Title Assessment 2

Type Portfolio

Due Date Monday of Week 6 at 11:59 pm AEST/AEDT

Length NA

Weighting 60%

Academic Integrity

(See below for limits

of use where GenAI

is permitted)

Please see the Academic Integrity section below for acceptable use of

GenAI in this assessment.

Submission Please see the Submission section below on how to submit your

assessment.

Unit Learning

Outcomes

This assessment task maps to the following ULOs:

ULO2: design, implement, test, and debug simple programs in an object oriented programming language.

ULO3: demonstrate how to use class mechanisms to support

encapsulation and efficient code.

ULO4: analyse and determine appropriate data structures and iteration

methods to support a solution.

Rationale

No matter what field of IT you go into when you graduate from university the ability to develop

software in an object-oriented programming language is an important skill to have. This may seem

obvious for those students who are planning on a career in software development. However, it's also

important for those students pursuing careers in fields like networking, cyber security, and data

analysis. For networking, the ability to develop programs simplifies tasks such as device

configuration and network analysis. In cybersecurity, it's used for developing programs for

penetration testing, vulnerability scans, and automation of security incident responses. For data

analysis, programming enables efficient data manipulation and analysis, making it an indispensable

tool for extracting insights from large datasets.

Task Description

In this assignment, you will write a bot that extracts, and processes data from the following website

– https://prog2007.it.scu.edu.au/weather/

. The assignment contains two programming parts as follows:

• In part one you will design and implement an object-oriented program that reads weather

data from a csv file, stores it in an appropriate collection, and performs some simple data

analysis.

• In part two you will modify your program from part one and add the ability to handle dates

and times, log messages to a log file, and implement web scraping and data analysis

capabilities using third party libraries.

2

Assessment Brief

This assignment also requires you to create a video explaining why you completed the assignment

the way you did.

Task Instructions

Part 1

You will notice that all three pages have an identical format as follows:

• A location for the forecast.

• The date and time the forecast was last updated.

• A daily forecast covering 7 days from Friday the 6th of September until Thursday the 12th of

September.

Create one csv file called weather.csv based on the three pages (Sydney, Melbourne, and Brisbane) that

contains all of the data from the pages. You can use the following example as a template if needed or you can

create your own template. This example contains a headings row along with the data for the first record on

the Sydney forecast page:

Location,Updated Date,Forecast Date,Min Temp,Max Temp,Condition,Possible Rainfall,Chance of any

Rain,Forecast,Warning

Sydney,Forecast updated at 9:39 am EDT on Thursday 5 September 2024,Friday 6 September,Min:

21,Max: 28,Morning shower or two.,Possible rainfall: 0 to 1 mm,Chance of any rain: 50%,Partly

cloudy. Medium chance of showers in the morning and early afternoon. Light winds becoming east

to northeasterly 15 to 20 km/h in the late afternoon then becoming light in the evening.,Sun

protection recommended from 9:30 am to 4:30 pm. UV Index predicted to reach 9 [Very High]

Once you have created the csv file with all of the data from the Sydney, Melbourne, and Brisbane pages,

create a Python file called part1.py.

Your job is to write an object-oriented program in Python with a minimum of five classes that:

• Reads the data in the csv file and uses the data to create appropriate objects.

• Stores all of the objects in appropriate collection(s).

• Uses a Set to perform some basic data analysis.

Thing to think about:

• How will you handle and manipulate the strings in the csv file?

• How will you structure your classes and what relationships will the classes contain?

• What attributes should each class have and what data type should they be?

• How will you secure and validate the data in each class?

• How will you handle any potential errors in your program?

Two possible ways to approach the problem may be to:

• Have a forecast class with attributes for individual items in each forecast.

• Have an observation class and view the individual items in each forecast as an observation (similar to

the sample project used in the Live Coding sessions).

3

Assessment Brief

You mark will be determined based on:

• Your proficiency in handling and manipulating the strings in the CSV file into suitable data types e.g.

ints or doubles for values, units of measurements, start time and end time that sun protection should

be worn etc.

• How well you demonstrate ALL the class design concepts you have learned in Modules 1 and 2.

• How well you demonstrate the error handling concepts you have learned in Module 3.

• How well you demonstrate your ability to choose and implement appropriate collections based on the

concepts you have learned in Modules 3 and 4.

All code for part 1 of the assessment must be in in part1.py.

Part 2

Create a Python file called part2.py. Copy the code you wrote in part 1 into the part2.py file. Then update

your code so that it:

• Scrapes the data from the Sydney, Melbourne, and Brisbane pages using the request library and

Beautiful Soup instead of reading it from a csv file.

• Uses the datetime module for any date or time related data.

• Uses the logging module to output appropriate messages where applicable e.g. info, warning, error

messages.

• Performs some basic data analysis using pandas instead of a set.

You mark will be determined based on:

• The criteria listed in the previous section.

• How well you demonstrate the concepts you have learned in Module 5.

All code for part 2 of the assessment must be in in part2.py.

Video

You are required to create a video explaining why you completed the assignment the way that you did. Your

video should address each part of the assignment separately i.e. cover part one first, then part two.

You are not required to explain your code line by line. Rather for each part of the assessment your video

should focus on the following:

• Your class design.

• Any techniques you've employed to secure and validate your data.

• Your error handling.

• Your use of collections.

• The data analysis you chose to do.

Resources

Everything that you need to know to complete this assessment was covered in:

• Programming 1

• Module 1 through 5 in this unit.

Task Submission

Your assignment must run using Python 3. This is covered in the Getting Started section of MySCU.

The submission requirements are identical to assessment one as follows:

4

Assessment Brief

• Your submission must be named FirstName_LastName_A2. For example, mine would be called

Alex_Hendry_A2

• Your submission must contain the weather.csv, part1.py, and part2.py files correctly named.

• You are required to use the WakaTime plugin and submit a screenshot of your WakaTime dashboard

when submitting your assignment clearly identifying how much time you spent on each part of the

assessment.

• Your video must be uploaded to your student OneDrive account and shared using a link.

All of the above points are covered in the submission instruction video for assessment one. The video covers

how to submit your Python files, your screenshot of the WakaTIme dashboard, and your video. The only

difference is the A2 in the submission name.

Please note that all submission instructions in this assignment and the submission video must be followed

EXACTLY, including the folder names you are instructed to use. Failure to do so may result a requirement to

resubmit. The reason for this is as a programmer, you will often work as part of a team and will be required to

follow design documentation. If the design parameters are not followed precisely, bugs will be introduced into

the software when all of the individual components of the program are assembled.

Academic Integrity

Use of GenAi

There are no limitations on using genAI in this assignment providing you follow the following guidelines:

• You understand the code you are submitting and can explain it.

• You are not using any concepts that are not taught in the unit.

• All code that was created using genAI must be clearly identified using a comment. The following are

possible examples of comments you may use:

o This method was created using genAI.

o This block of code was partly created using genAI.

o This constructor was generated using ChatGPT.

• Your code runs without errors.

If your submission is deemed to be suspicious by your marker you may be asked to attend an interview in your

tutorial class to explain your code. If you cannot explain your code, you may be submitted for academic

integrity. Possible reasons your submission may be deemed suspicious could include:

• Using programming concepts not taught in the unit.

• Using programming concepts considered by your marker to be beyond your programming abilities as

demonstrated in the class.

• Submitting code suspected of being generated using GenAI software but is not clearly identified.

To summarise:

• You can use GenAI as much as you like as long as you clearly identify the code you submit and

understand what it does.

• DO NOT SUBMIT ANY CODE THAT YOU DO NOT UNDERSTAND AND CANNOT EXPLAIN.

Collusion

Please note that your source code for this assignment will be run through a plagiarism detection system

designed for code that compares all assignments and highlights identical or very similar submissions. If you are

found to have colluded with other students, you will be submitted for academic integrity.

5

Assessment Brief

Academic Integrity

At Southern Cross University, academic integrity means behaving with the values of honesty, fairness,

trustworthiness, courage, responsibility and respect in relation to academic work.

The Southern Cross University Academic Integrity Framework aims to develop a holistic, systematic and

consistent approach to addressing academic integrity across the entire University. For more information,

see: SCU Academic Integrity Framework

NOTE: Academic Integrity breaches include unacceptable use of generative artificial intelligence (GenAI) tools,

the use of GenAI has not been appropriately acknowledged or is beyond the acceptable limit as defined in the

Assessment, poor referencing, not identifying direct quotations correctly, close paraphrasing, plagiarism,

recycling, misrepresentation, collusion, cheating, contract cheating, fabricating information.

Special Consideration

Please refer to the Special Consideration section of Policy.

https://policies.scu.edu.au/document/view-current.php?id=140

Late Submissions & Penalties

Please refer to the Late Submission & Penalties section of Policy.

https://policies.scu.edu.au/view.current.php?id=00255

Grades & Feedback

Assessments that have been submitted by the due date will receive an SCU grade. Grades and

feedback will be posted to the ‘Grades and Feedback’ section on the Blackboard unit site. Please

allow 7 days for marks to be posted.

Assessment Criteria

In this section, outline the marking criteria and grade descriptors using an assessment rubric.

Rubrics, which contain marking criteria (left-hand column) and grade descriptors (the remaining

columns), are guides to assist markers in making consistent and reliable judgements about the

quality of students’ work. Rubrics may also be used to provide feedback to students about the

quality of their work and how they might improve. For more information on how to write a rubric,

see:

• What is a Rubric

Rubrics are commonly presented in the form of a table that includes:

1. Marking criteria – the elements that the marker will consider when judging a piece of work

(such as quality of argument, research, technical aspects, etc.). When you develop your

marking criteria, ensure that the criteria are aligned with the Unit Learning Outcomes being

assessed in the task. Use similar wording to the Unit Learning Outcome so students can

clearly see the links. Additional criteria may be included to assess other relevant elements of

the task (e.g. academic writing) but weighted minimally.

2. Grade descriptors – descriptive statements about the level. From Assessment, Teaching and

Learning Procedures, SCU’s Generic Grade Descriptors, which are general guides to the

standard of work required at each grade level (clause 7g) apply to all assessment tasks

(clause 50). Remember to include your expectations and requirements in clear,

unambiguous terminology and outline the standard expected. It is better to say what

students have achieved at each level rather than what they have not done. The exception to

this would be for the fail column, where it is appropriate to say that students have not

achieved the required standard. If a student scores between 35–49%, the Unit Assessor

should mention that they have marginally failed and highlight their mistakes. Students may

then be more likely to be inspired to improve their work to pass (if they are allowed to

resubmit), rather than becoming disheartened by a strong Fail in a single band. This will be in

line with the new resubmit policy (currently) being developed.

… continued on next page ...

6

Assessment Brief

7

Assessment Brief

Assessment Rubric

Note: The number of criteria used will vary depending on the complexity of the assessment task. Typically, 4–5 criteria are used.

Marking Criteria and %

allocation

High Distinction

(85–100%)

Distinction

(75–84%)

Credit

(65–74%)

Pass

(50–64%)

Fail

0–49%

Criterion 1

%

Criterion 2

%

Criterion 3

%

Criterion 4

%

Criterion 5

%

Description of SCU Grades

High Distinction:

The student’s performance, in addition to satisfying all of the basic learning requirements, demonstrates distinctive insight and ability in researching, analysing and

applying relevant skills and concepts, and shows exceptional ability to synthesise, integrate and evaluate knowledge. The student’s performance could be described as

outstanding in relation to the learning requirements specified.

Distinction:

The student’s performance, in addition to satisfying all of the basic learning requirements, demonstrates distinctive insight and ability in researching, analysing and

applying relevant skills and concepts, and shows a well-developed ability to synthesise, integrate and evaluate knowledge. The student’s performance could be described

as distinguished in relation to the learning requirements specified.

Credit:

The student’s performance, in addition to satisfying all of the basic learning requirements specified, demonstrates insight and ability in researching, analysing and applying

relevant skills and concepts. The student’s performance could be described as competent in relation to the learning requirements specified.

Pass:

The student’s performance satisfies all of the basic learning requirements specified and provides a sound basis for proceeding to higher-level studies in the subject area.

The student’s performance could be described as satisfactory in relation to the learning requirements specified.

Fail:

The student’s performance fails to satisfy the learning requirements specified.

8

Assessment Brief


相关文章

【上一篇】:到头了
【下一篇】:没有了

版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp