Assignment title: Information


Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 1 of 30 ITC558 - Programming Principles Session 1 2017 Faculty of Business, Justice and Behavioural Sciences School of Computing and Mathematics Internal Mode Welcome to a new session of study at Charles Sturt University. Please refer to the University’s Acknowledgement of Country (http://student.csu.edu.au/study/acknowledgement-of-country). This subject outline is accessible through mobile devices from http://m.csu.edu.au. Subject Coordinator Rajasekaran Lakshmiganthan Email [email protected] Phone 0399357900 Campus To be advised. Building/Room number To be advised. Consultation procedures Any questions concerning the teaching of this subject can be made by contacting your Subject Lecturer. Lecturer Name : Recep Ulusoy Lecturer Email : [email protected] Email is the best option. Please send a brief message regarding the issue and include the subject name and subject code in your email ?it really helps to know which class you belong to, before I respond to your query. If your query is urgent then meet with your respective Course Coordinator on Level-4. Class times and location General Timetable as below will be available at the following website before the start of 201730 semester, which can be accessed on any Mobile Phone or IPAD: https://csutimetable.au.studygroup.com/Melbourne/ If you cannot contact your Subject Coordinator, please contact your teaching team using the contact details and consultation procedures provided on your Interact2 subject site. What is your subject about? A brief overview This subject introduces students to the programming process. It begins with the development of problem solving skills relevant to the solution of programming problems. This subject is one of the foundation subjects for other studies in information technology because it develops skills, techniques and approaches that underpin many other areas of the discipline of computing. Learning outcomes On successful completion of this subject, you should: be able to analyse the steps involved in a disciplined approach to problem-solving, algorithm development and coding; be able to demonstrate and explain elements of good programming style; be able to identify, isolate and correct errors; and evaluate the corrections in all phases of the programming process;Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 2 of 30 be able to interpret and implement algorithms and program code; be able to apply and justify the concept of object orientation as an approach to data abstraction; be able to apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems; be able to write code in an appropriate coding language; be able to compare and contrast aspects of the procedural and object oriented programming approaches. Pass Requirements A student must obtain at least 50% in both the examination and the total mark in order to pass this subject. To be eligible for the grade AA or AE you must have submitted all assessment items in the subject, including the final exam and scored overall marks 45 or above. If you choose not to complete an assessment item or do not sit the final exam then you will not be granted an AA or an AE grade Key Subjects Passing a key subject is one of the indicators of satisfactory academic progress through your course. You must pass the key subjects in your course at no more than two attempts. The first time you fail a key subject you will be 'at risk' of exclusion; if you fail a second time you will be excluded from the course. The Academic Progress Policy (https://policy.csu.edu.au/view.current.php?id=00250) sets out the requirements and procedures for satisfactory academic progress, for the exclusion of students who fail to progress satisfactorily and for the termination of enrolment for students who fail to complete in the maximum allowed time. Assumed knowledge Academic integrity means acting with honesty, fairness and responsibility, and involves observing and maintaining ethical standards in all aspects of academic work. This subject assumes that you understand what constitutes plagiarism, cheating and collusion. If you are a new student we expect you to complete the modules called Academic Integrity at CSU (https://interact2.csu.edu.au/webapps/blackboard/execute/courseMain?course_id=_16412_1&task=true&src=). Prescribed Text Students must have access to a copy of the prescribed textbook. Gaddis, T., 2014. Starting out with Python (3rd Edition). ISBN-10: 1292065508 ISBN-13: 978-1-29-206550-2 Addison-Wesley, Pearson Education The textbooks required for each of your enrolled subjects can also be found via the Student Portal Textbooks (http://student.csu.edu.au/study/study-essentials/textbooks) page. Subject and Assessment Schedule Schedule Session Week Week Commencing Topic/Modules Textbook ReadingCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 3 of 30 Session Week Week Commencing Topic/Modules Textbook Reading 1 27/02/2017 Topic 1 - Fundamentals of software development: Algorithms and the software development life cycle Chapters 1 & 2.1 2 06/03/2017 Topic 2 - Program elements: Literals, variables, operators, and expressions Chapter 2.2 to 2.8 3 13/03/2017 Topic 3 - Selection: If statements, conditional expressions, and Boolean logic Chapter 3 Assessment Item 1 Due: 17/03/2017 4 20/03/2017 Topic 4 - Iteration: Definite and indefinite loop control patterns, and accumulator variables Chapter 4 5 27/03/2017 Topic 5 - Program structure: Functions, arguments, parameters, and return values Chapter 5 Assessment Item 2 Due: 31/03/2017. 6 01/04/2017 - 16/04/2017 Mid-session break 8 17/04/2017 Topic 6 - Files and exceptions: Opening, reading, and writing files, dealing with errors and exceptions. Review. Chapter 6 And Chapters 1 to 5 9 24/04/2017 Topic 7 - Data structures: Sequences: Lists and strings, indexing and slicing Chapter 7.1 to 7.7, Chapter 8.1 to 8.2 10 01/05/2017 Topic 8 - Data structures: Dictionaries: Chapter 9.1Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 4 of 30 Session Week Week Commencing Topic/Modules Textbook Reading Dictionaries, dictionary methods, and key-value pairs 11 08/05/2017 Topic 9 - Object oriented programming: Objects, classes, attributes and methods Chapters 8.3 and 10 Assessment Item 3 Due: 12/05/2017 12 15/05/2017 Review 1 13 22/05/2017 Review 2 14 29/05/2017 Review 3 15 05/06/2017 - 16/06/2017 Examination period Subject Content Information regarding the subject’s content is outlined above in the Schedule Subject Delivery Class/tutorial times and location If you are enrolled in an internal offering of this subject, your class times can be found at Timetable @ CSU (http://timetable.csu.edu.au). If you are enrolled in the online offering of the subject, this timetable will not apply. Find out how to use Timetable @ CSU via the Student Portal Class Timetable (http://student.csu.edu.au/study/study-essentials/timetable) page. Learning, teaching and support strategies How you are expected to engage with the subject How you are expected to engage with the subject This is a very active, interesting and introductory subject. Various subject materials will be available in the subject Interact site. For example, we will upload the lecture slides week by week. You will also find tutorial tasks and eventually their solutions in the subject Interact site. We generally upload example Python programs relevant to your study topics week by week. We will also upload study modules for the study topics. Each module will have a brief introduction to the topic of the week, a couple of short (around 5 minutes) videos on the topic where we will describe the topic with some Python examples. You will see us writing a Python code line by line and running it to explain how the code words and outputs the result. The modules will also give you some small tasks so that you can assess your level of understanding. You can also contact an adviser through Student Central on the following number: 1800 275 278 (or +61 2 6933 7507 from outside Australia). Library ServicesCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 5 of 30 The CSU Library website provides access to online material and print, using Primo Search to find online journal articles, eBooks, hardcopy books from CSU Library (see Library Manager for Interlibrary Loan Requests), company & government reports, eJournals, dissertations, theses, newspapers including Business & Financial newspapers in Factiva (See Business & IT Journal Databases), and other reference resources (eg. Australian Bureau of Statistics, Australian standards, online encyclopaedias & dictionaries to be read on the computer). You will also find library guides, Subject Reserve for any readings eg. ITC100, ACC100, etc., and online assistance to help you use the Library's resources such as Ask a Librarian – Live Chat and Ask a Librarian - Web Form. You can find Library Services on both the SGA library online catalogue: http://primo.unilinc.edu.au/primo_library/libweb/action/search.do?vid=SGA The SGA library online catalogue allows students to Sign In, My Account shows student’s current library record including all books on loan, Renew your borrowed books online before the due date, also Search and Request all books in the SGA library, even if unavailable due to high demand from students. Students can Request books when all books are on loan to other students. When the requested book is returned to the SGA library, the student who requested the book receives an email immediately to pick up the book from the SGA library. View your library record online 24/7 at the above web link for SGA library. And also CSU Library online: http://student.csu.edu.au/library - CSU Library Services including Primo Search & Subject Reserve online with 24/7 access, online and video tutorials in research skills, finding journal articles for assignments, topic analysis, download Endnote referencing program and many other online library services to help you successfully complete your assignments for all CSU courses. http://trove.nla.gov.au/ - Powerful search engine from National Library of Australia to access many different online resources on any subject from one search. Contact Details for renewing loans, locating books and other information: SGA Melbourne Library: Marian Lees - Director, Library Services Ph: (03) 9935 7921 Email: [email protected] Library Help http://student.csu.edu.au/library/help -contacts Friendly and quick assistance is available. Ask for help finding information and navigating the library's extensive eResources. Online Tutorials http://student.csu.edu.au/library/study-research/training-tutorials-videos Learn how to: • use Primo Search to find eReserve material and journal articles • search journal databases and web resources for information for your assessments • identify appropriate sources of information and peer reviewed material, and evaluate resources. Bookmark your Subject Library Resource Guide Subject Library Guides are a great way to get started with research. Each online guide is tailored to a specific area of study, including Accounting, Business & Information Technology outlining how to research in your area and where to look for information. http://libguides.csu.edu.au/ Academic Learning Support Assistance Visit the learning support website for advice about assignment preparation, academic reading and note-taking, referencing, and preparing for exams at: http://student.csu.edu.au/study You may also contact:Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 6 of 30 Name: Monique Moloney Email: [email protected] Phone: (03) 9935 7919 Name: Bethany Winkler Email: [email protected] Phone: (03) 9935 7953 Name: Gail Ekici Email: [email protected] Phone: (03) 9935 7965 For appointments, please see Reception at Level 1. Queries regarding the content of this subject should be directed to your subject lecturer. Residential school You are not required to attend a residential school for this subject. Your workload in this subject CSU Academic Senate policy states that a standard 8 point subject should require you to spend a total of 140-160 hours engaged in the learning and teaching activities. This means an average of 10 to 12 hours each week. Assessment Items Item number Title Type Value Due date* Return date** 1 Assignment 1 Assignment 10% 17-Mar-2017 07-Apr-2017 2 Assignment 2 Assignment 15% 31-Mar-2017 26-Apr-2017 3 Assignment 3 Assignment 15% 12-May-2017 02-Jun-2017 4 Weekly topic quizzes Assignment 10% Variable Variable 5 Final exam Exam 50% To be Advised. - * due date is the last date for assessment items to be received at the University ** applies only to assessment items submitted by the due date Assessment item 1 Assignment 1 Value: 10% Due date: 17-Mar-2017 Return date: 07-Apr-2017 Submission method options Alternative submission method Task The Innovation University of Australia (IUA) has initiated an IT project for Automatic Grading of Students (AGoS). For the project, IUA has employed you to write a program in Python that will ask a lecturer to enter a student's marks for Assignment 1, Assignment 2 and the Final Exam, one by one. A lecturer is expected to enter a mark out of 100 for all assessment items. The weights of Assignment 1, Assignment 2 and the Final Exam are 20%, 30% and 50%, respectively. The program needs to useCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 7 of 30 the weights to calculate the weighted marks for the assessment items and the final mark for the subject. The program should then display the weighted mark of each individual assignment, total weighted mark of the assignments, weighted mark for the Final Exam, and total weighted mark of the subject. A weighted mark is calculated by multiplying the obtained mark and the weight of the assessment item. For example, if a student obtains 70 out of 100 in Assignment 1 then their weighted mark in the assignment will be 70 x 20/100 = 14. A typical example of the display of your program can be as follows. Your program MUST follow the same display style. ----------------------------------------------------------------------------------------- The Innovation University of Australia (IUA) Grade System ----------------------------------------------------------------------------------------- Please enter all marks out of 100. Please enter the marks for Assignment 1: 80 Please enter the marks for Assignment 2: 90 Please enter the marks for the Final Exam: 100 Thank You! Weighted mark for Assignment 1: 16 Weighted mark for Assignment 2: 27 Total weighted mark of the assignments: 43 Weighted mark for the Final Exam is: 50 Total weighted mark for the subject: 93 Goodbye. You need to develop the Grade System by completing the following three tasks: Task 1 - Draw a Nassi Shneiderman (NS) diagram that presents the steps of the algorithm required to perform the task specified. Some examples of NS diagrams can be found at the following web links: http://www.thern.org/projects/nassi-schneiderman/nassi.htm https://en.wikipedia.org/wiki/Nassi%E2%80%93Shneiderman_diagram https://www.cs.umd.edu/hcil/members/bshneiderman/nsd/Yoder-Schrag-nassi_schart.pdf There are tools (see links below) that can be useful in drawing a NS diagram. However, you can draw the diagram/s with a pen/pencil on a piece of paper and scan it for submission. Please ensure that the scanned file and your handwriting are clear and legible. https://www.edrawsoft.com/Nassi-Schneiderman.php http://www.breezetree.com/articles/nassi-shneiderman-diagram.htm http://wiki.c2.com/?NassiShneidermanDiagrams Task 2 - Select three sets of test data that will demonstrate the 'normal' operation of your program; that is, test data that will demonstrate what happens when a VALID input is entered. Select two sets of test data that will demonstrate the 'abnormal' operation of your program. Set it out in a tabular form as follows: test data type, test data, the reason it was selected, the outputCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 8 of 30 1. 2. 3. expected due to using the test data, and finally a screenshot of the output actually observed when the test data is used. It is important that the output listings (i.e., screenshots) are not edited in any way. Test Data Table Test data type Test data The reason it was selected The output expected due to the use of the test data The screenshot of actual output when the test data is used Normal Normal Normal Abnormal Abnormal Task 3 - Implement your algorithm in Python. Comment on your code as necessary to explain it clearly. Run your program using the test data you have selected and complete the final column of test data table above. Your submission will consist of: Your algorithm through Nassi Shneiderman (NS) diagram/s The table recording your chosen test data and results (it can be in a Word file) Source code for your Python implementation Rationale This assessment task is designed to reinforce topic material related to the programming work cycle, and the input, processing, output program structure. The task meets or partially meets the following learning objectives: LO1. be able to explain the steps involved in a disciplined approach to problem-solving, algorithm development and coding LO2. be able to demonstrate and explain elements of good programming style LO3. be able to identify, isolate and correct errors in all phases of the programming process LO4. be able to interpret algorithms and program code LO6. be able to apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems LO7. be able to write code in an appropriate coding language Marking criteriaCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 9 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Explain the steps involved in a disciplined approach to problem-solving, algorithm development and coding, demonstrate elements of good programming style (three marks allocated) NS diagram/s do not have any unnecessary component. NS diagram/s are presented where all variable names are meaningful. NS diagram/s follow the convention, they are free of errors, and they produce the algorithm correctly. NS diagram/s follow the convention and contain three or less errors NS diagram/s follow the convention, but contain more than three errors Identify, isolate and correct errors in all phases of the programming process. Apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems (three marks allocated) Test data explore every branch of the program. Clear explanation is provided of the expected output of the test results. AND The presented test output is in the form specified in the assignment. Sound reasons are provided for the selection of test data. AND The test output is correct for any test data in addition to those used in the submitted table to report the test result. Selected test data present both normal and abnormal data. AND The presented test output is correct. Selected test data are clearly presented in a table and allow easy calculation of output. AND The presented test output matches the actual results that can be obtained from the execution of the program. Selected test data are not clearly presented in a table and/or do not allow easy calculation of output. Or The presented test output does not match the actual results that can be obtained from the execution of the program.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 10 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems Interpret algorithms and program code, Write code in appropriate language. (four marks allocated) Python code is produced and contains only necessary statements and variables. Python code is produced and implements the NS diagram correctly. Python code is produced. It is fully documented with appropriate comments and all variable names are meaningful. Python code is produced and executes properly without any syntax errors. It produces correct results. Python code is produced and does not execute properly. It may contain syntax errors and/or produce incorrect results. Additional Comments: The standards outlined for each criteria are cumulative. So, for example, to achieve the standard for high distinction your work needs also to meet the standards outlined for Pass, Credit and Distinction.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 11 of 30 Presentation You MUST prepare and present all source code, test data table, and NS diagram/s as separate files within a single directory (folder) identified by your name. This directory will later be compressed into a single ZIP file - see the 'Requirements' section below. The Python source code you write should be saved with a name such as assA1.py by choosing File > Save As.. from the IDLE 'edit' window. The other documentation (such as your NS diagrams and your table of test data) should be saved in a Word document with a name such as assA1.doc. Thus your directory for Assignment A1 will contain two files - and be identified with your name (and not the name of the subject or the assignment). It is critically important that your test runs are unmodified outputs from your program, and that these results should be reproducible by the marker running your saved .py python program in IDLE. Requirements Once you have saved the files (as described under 'Presentation' above) into a single directory identified by your name, you MUST compress that directory into a single ZIP file (and only a ZIP file - not a RAR file or some other compressed file format), as outlined in the section on presentation. Failure to adhere to these requirements may disqualify the submission for marking. As you are submitting via Turnitin, this ZIP file is all you need to upload. Assessment item 2 Assignment 2 Value: 15% Due date: 31-Mar-2017 Return date: 26-Apr-2017 Submission method options Alternative submission method Task The Innovation University of Australia (IUA) decides to give bonus marks to students for a subject depending on their total weighted marks in the subject. It follows the table below to award bonus marks to a student. Bonus Policy Table Total Weighted Mark Bonus mark Between 0 and 50 Nil Greater than 50, but less than or equal to 70 10% of every mark above 50 Greater than 70, but less than or equal to 90 2 marks PLUS 15% of every mark above 70 Greater than 90, but less than or equal to 100 5 marks PLUS 20% of every mark above 90 For example, if a student gets the total weighted mark of 80 then they get a bonus mark of 3.5. Hence,Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 12 of 30 their total mark will be 83.5. However, the maximum possible mark is 100. That is, if a student gets more than 100 with the bonus mark then their total mark is set to be 100. The Department of IT of the Innovation University of Australia now asks you to modify the system developed for the IT project for Automatic Grading of Students (AGoS) in Assignment 1. You are required to develop a system to implement the bonus policy and compute total marks of students. The system will ask a lecturer to enter the marks of a student in Assignment 1, Assignment 2 and the Final Exam, one by one as before. It will then display the weighted mark of each individual assignment, total weighted marks of the assignments, the weighted mark for the Final Exam, and the total weighted mark of the subject. Additionally, it will now display the bonus mark and the total mark with bonus. A typical example of the display of your program can be as follows. Your program MUST follow the same display style. ----------------------------------------------------------------------------------------- The Innovation University of Australia (IUA) Grade System ----------------------------------------------------------------------------------------- Please enter all marks out of 100. Please enter the marks for Assignment 1: 80 Please enter the marks for Assignment 2: 90 Please enter the marks for the Final Exam: 74 Thank You! Weighted mark for Assignment 1: 16 Weighted mark for Assignment 2: 27 Total weighted mark of the assignments: 43 Weighted mark for the Final Exam is: 37 Total weighted mark for the subject: 80 Bonus mark: 3.5 Total mark with bonus: 83.5 Goodbye. You need to develop the Grade System by completing the following three tasks: Task 1 - Draw Nassi Shneiderman (NS) diagram/s that present the steps of the algorithm required to perform the task specified. Task 2 - Select three sets of test data that will demonstrate the 'normal' operation of your program; that is, test data that will demonstrate what happens when a VALID input is entered. Select two sets of test data that will demonstrate the 'abnormal' operation of your program. Set it out in a tabular form as follows: test data type, test data, the reason it was selected, the output expected due to using the test data, and finally the output actually observed when the test data is used. It is important that the output listings (i.e., screenshots) are not edited in any way. Test Data Table Test data Test The reason it The output expected due to the The screenshot of actual output whenCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 13 of 30 1. 2. 3. type data was selected use of the test data the test data are used Normal Normal Normal Abnormal Abnormal Task 3 - Implement your algorithm in Python. Comment on your code as necessary to explain it clearly. Run your program using the test data you have selected and complete the test data table above. Your submission will consist of: Your algorithm through Nassi Shneiderman (NS) diagram/s. The table recording your chosen test data and results (it can be in a Word file). Source code for your Python implementation. Rationale This assessment task is designed to reinforce topic material related to: decision structures and Boolean logic. The task meets or partially meets the following learning objectives: LO 1. be able to explain the steps involved in a disciplined approach to problem-solving, algorithm development and coding LO 2. be able to demonstrate and explain elements of good programming style LO 3. be able to identify, isolate and correct errors in all phases of the programming process LO4. be able to interpret algorithms and program code LO6. be able to apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems LO.7 be able to write code in an appropriate coding language Marking criteriaCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 14 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Explain the steps involved in a disciplined approach to problem-solving, algorithm development and coding, demonstrate elements of good programming style (four marks allocated) NS diagram/s do not have any unnecessary component. NS diagram/s are presented where all variable names are meaningful. NS diagram/s follow the convention, they are free of errors, and they produce the algorithm correctly. NS diagram/s follow the convention and contain three or less errors NS diagram/s follow the convention, but contain more than three errors Identify, isolate and correct errors in all phases of the programming process. Apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems (three marks allocated) Test data explore every branch of the program. Clear explanation is provided of the expected output of the test results. AND The presented test output is in the form specified in the assignment. Sound reasons are provided for the selection of test data. AND The test output is correct for any test data in addition to those used in the submitted table to report the test result. Selected test data present both normal and abnormal data. AND The presented test output is correct. Selected test data are clearly presented in a table and allow easy calculation of output. AND The presented test output matches the actual results that can be obtained from the execution of the program. Selected test data are not clearly presented in a table and/or do not allow easy calculation of output. Or The presented test output does not match the actual results that can be obtained from the execution of the program.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 15 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems Interpret algorithms and program code, Write code in appropriate language (eight marks allocated) Python code is produced and contains only necessary statements and variables. Python code is produced and implements the NS diagram correctly. Python code is produced. It is fully documented with appropriate comments and all variable names are meaningful. Python code is produced and executes properly without any syntax errors. It produces correct results. Python code is produced and does not execute properly. It may contain syntax errors and/or produce incorrect results. Additional Comments: The standards outlined for each criteria are cumulative. So, for example, to achieve the standard for high distinction your work needs also to meet the standards outlined for Pass, Credit and Distinction.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 16 of 30 Presentation You MUST prepare and present all source code, test data table, and NS diagram/s as separate files within a single directory (folder) identified by your name. This directory will later be compressed into a single ZIP file - see the 'Requirements' section below. The Python source code you write should be saved with a name such as assA2.py by choosing File > Save As.. from the IDLE 'edit' window. The other documentation (such as your NS diagrams and your table of test data) should be saved in a Word document with a name such as assA2.doc. Thus your directory for Assignment A2 will contain two files - and be identified with your name (and not the name of the subject or the assignment). It is critically important that your test runs are unmodified outputs from your program, and that these results should be reproducible by the marker running your saved .py python program in IDLE. Requirements Once you have saved the files (as described under 'Presentation' above) into a single directory identified by your name, you MUST compress that directory into a single ZIP file (and only a ZIP file - not a RAR file or some other compressed file format), as outlined in the section on presentation. Failure to adhere to these requirements may disqualify the submission for marking. As you are submitting via Turnitin, this ZIP file is all you need to upload. Assessment item 3 Assignment 3 Value: 15% Due date: 12-May-2017 Return date: 02-Jun-2017 Submission method options Alternative submission method Task The Innovation University of Australia (IUA) wants to allow a lecturer to enter the marks of a number of students (instead of just a single student) and store the information permanently in a text file on their computer. They also want to allow a lecturer to search details of a student in the text file by the student ID. The main program should first display a menu as follows. A lecturer needs to select an operation from the main menu. ================================================ Welcome to the AGoS System of IUA Please select an option from the following. dd details of a student. earch student details for a student. uit. ================================================Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 17 of 30 If a lecturer chooses the option the program then asks them to enter a student’s ID, name, and the Assignment 1, Assignment 2 and Final Exam mark one by one. Once all marks for a student are entered it will display the student ID, name, weighted mark for each assignment, the total weighted mark of the assignments, weighted mark for the Final Exam, total weighted mark of the subject, bonus mark and total mark with bonus. The system will then ask the lecturer 'Do you want to enter marks for another student (Y/N)?' If they enter 'Y' the system will allow them to enter details and marks for another student as before, if they enter 'N' the system will display the main menu again, otherwise it will ask the same question again. A typical example of the display of the program (once a lecturer chooses the option ) can be as follows. Your program MUST follow the same display style. ----------------------------------------------------------------------------------------- The Innovation University of Australia (IUA) Grade System ----------------------------------------------------------------------------------------- Please enter all marks out of 100. Please enter the student ID: 1111 Please enter the student name: Alice Furner Please enter the marks for Assignment 1: 80 Please enter the marks for Assignment 2: 90 Please enter the marks for the Final Exam: 74 Thank You! Weighted mark for Assignment 1: 16 Weighted mark for Assignment 2: 27 Total weighted mark of the assignments: 43 Weighted mark for the Final Exam is: 37 Total weighted mark for the subject: 80 Bonus mark: 3.5 Total mark with bonus: 83.5 Do you want to enter marks for another student (Y/N)? z Do you want to enter marks for another student (Y/N)? Y Please enter the student ID: 1112 Please enter the student name: Bob Siers Please enter the marks for Assignment 1: 68 Please enter the marks for Assignment 2: 68 Please enter the marks for the Final Exam: 92 Thank You! Weighted mark for Assignment 1: 13.6 Weighted mark for Assignment 2: 20.4 Total weighted mark of the assignments: 34 Weighted mark for the Final Exam: 46 Total weighted mark for the subject: 80 Bonus mark: 3.5 Total mark with bonus: 83.5 Do you want to enter marks for another student (Y/N)? NCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 18 of 30 ================================================ Welcome to the AGoS System of IUA Please select an option from the followings. dd details of a student. earch student details for a student. uit. ================================================ The system will also store the details and marks of each student in a file called IUA.txt in the same folder as the Python code of the AGoS system. Every time a student's details are entered the system should append them in the text file. For example, the IUA.txt file will have the following content after the details of Alice Furner are entered. However, the file content will be as follows after the details of Bob Siers are entered. If a lecturer chooses the option from the main menu then the program asks the lecturer to enter the student number for whom they want to see details. To facilitate the search option you need to use an appropriate data structure such as List. The program then collects the student details from the IUA.txt file and displays it as follows (assuming the following student was searched for). After displaying the student information the program prompts the lecturer with the following message, 'Do you want to search for another student (Y/N)?' If a lecturer enters 'Y' then the program asks them to enter the student number for whom the information needs to be searched and displayed, else if the lecturer enters 'N' then the program displays the main menu, otherwise the program prompts the same message again. Finally, the program quits if the user chooses the option < Q>. You need to develop the system by completing the following three tasks:: Task 1 - Draw Nassi Shneiderman (NS) diagram/s that present the steps of the algorithm required to perform the task specified.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 19 of 30 1. 2. 3. Task 2 - Select three sets of test data that will demonstrate the 'normal' operation of your program; that is, test data that will demonstrate what happens when a VALID input is entered. Select two sets of test data that will demonstrate the 'abnormal' operation of your program. Set it out in a tabular form as follows: test data type, test data, the reason it was selected, the output expected due to using the test data, and finally the output actually observed when the test data is used. It is important that the output listings (i.e., screenshots) are not edited in any way. Test Data Table Test data type Test data The reason it was selected The output expected due to the use of the test data The screenshot of the actual output when the test data are used. Task 3 - Implement your algorithm in Python. Comment on your code as necessary to explain it clearly. In addition for this exercise, use multiple functions, instead of using a single function to do everything. Create a good design of the functions to make the best use of the code and avoid duplicate calculations. For example, you can have a function for calculating the weighted mark of an assignment and the function can be used for calculating all weighted marks. Avoid duplicate code. You also need to design your program so that it has components that can be reused in another program, if needed. Handle exceptions appropriately. Use appropriate data structure. Run your program using the test data you have selected and complete the test data table above. Your submission will consist of: Your algorithm through Nassi Shneiderman (NS) diagram/s. The table recording your chosen test data and results (it can be in a Word file) Source code for your Python implementation Rationale This assessment task is designed to reinforce topic material related to simple functions, files, exceptions and lists. The task meets the following learning objectives: LO 1. be able to explain the steps involved in a disciplined approach to problem-solving, algorithm development and coding LO 2. be able to demonstrate and explain elements of good programming style LO 3. be able to identify, isolate and correct errors in all phases of the programming processCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 20 of 30 LO4. be able to interpret algorithms and program code LO6. be able to apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems LO.7 be able to write code in an appropriate coding language Marking criteriaCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 21 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Explain the steps involved in a disciplined approach to problem-solving, algorithm development and coding, demonstrate elements of good programming style (four marks allocated) NS diagram/s do not have any unnecessary component. NS diagram/s are presented where all variable names are meaningful. NS diagram/s follow the convention, they are free of errors, and they produce the algorithm correctly. NS diagram/s follow the convention and contain three or less errors NS diagram/s follow the convention, but contain more than three errors Identify, isolate and correct errors in all phases of the programming process Apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems (three marks allocated) Test data explore every branch of the program. Clear explanation is provided of the expected output of the test results. AND The presented test output is in the form specified in the assignment. Sound reasons are provided for the selection of test data. AND The test output is correct for any test data in addition to those used in the submitted table to report the test result. Selected test data present both normal and abnormal data. AND The presented test output is correct. Selected test data are clearly presented in a table and allow easy calculation of output. AND The presented test output matches the actual results that can be obtained from the execution of the program. Selected test data are not clearly presented in a table and/or do not allow easy calculation of output. Or The presented test output does not match the actual results that can be obtained from the execution of the program.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 22 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Apply sound program analysis, design, coding, debugging, testing and documentation techniques to simple programming problems Interpret algorithms and program code, Write code in appropriate language (eight marks allocated) Python code is produced and contains only necessary statements and variables. Python code is produced and implements the NS diagram/s correctly. Python code is produced. It is fully documented with appropriate comments and all variable names are meaningful. It handles exceptions appropriately. It uses appropriate data structure. Python code is produced and executes properly without any syntax errors. It produces correct results. It uses multiple functions effectively. It uses a good design of functions to avoid duplicate calculations. It has components that are reusable. Python code is produced and does not execute properly. It may contain syntax errors and/or produce incorrect results. Additional Comments: The standards outlined for each criteria are cumulative. So, for example, to achieve the standard for high distinction your work needs also to meet the standards outlined for Pass, Credit and Distinction.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 23 of 30 Presentation You MUST prepare and present all source code, test data table, and NS diagram/s as separate files within a single directory (folder) identified by your name. This directory will later be compressed into a single ZIP file - see the 'Requirements' section below. The Python source code you write should be saved with a name such as assA3.py by choosing File > Save As.. from the IDLE 'edit' window. The other documentation (such as your NS diagrams and your table of test data) should be saved in a Word document with a name such as assA3.doc. Thus your directory for Assignment A3 will contain two files - and be identified with your name (and not the name of the subject or the assignment). It is critically important that your test runs are unmodified outputs from your program, and that these results should be reproducible by the marker running your saved .py python program in IDLE. Requirements Once you have saved the files (as described under 'Presentation' above) into a single directory identified by your name, you MUST compress that directory into a single ZIP file (and only a ZIP file - not a RAR file or some other compressed file format), as outlined in the section on presentation. Failure to adhere to these requirements may disqualify the submission for marking. As you are submitting via Turnitin, this ZIP file is all you need to upload. Assessment item 4 Weekly topic quizzes Value: 10% Due date: Variable Return date: - Submission method options Interact2 Test Task Beginning in Week 2, you are required to complete a series of ten topic quizzes, each one associated with the current topic. You can attempt each weekly quiz once only. So, be prepared before you sit for the quiz. Each quiz has ten multiple choice questions and each question is worth one mark. The quizzes are located in test centre in your Interact2 subject site. They are marked automatically. Rationale The quizzes are intended as formative assessment tasks to test your knowledge, understanding and skill development, and also to monitor your progress in learning good programming principles using the Python language. Marking criteriaCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 24 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Demonstrate an ability to answer questions about concepts learned in the subject. The concepts tested are drawn from the text book, lectures, tutorials, online meetings, modules and forum discussions. A mark of 85% or more was scored in the test A mark of 75% or more was scored in the test A mark of 65% or more was scored in the test A mark of 50% or more was scored in the test A mark below 50% was scored in the testCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 25 of 30 Assessment item 5 Final exam Value: 50% Date: To be advised Duration: 2 hours Submission method options N/A - submission not required/applicable Rationale A final exam is used to check that students actually do understand the material, and can apply the programming techniques presented throughout the session. It serves to verify that the knowledge and skills that students possess are consistent with the work they have presented in assignments. Students who have submitted assignments during the session that are not their own original work are unlikely to be able to pass the exam. The exam questions cover all the learning objectives for this subject. Requirements The final exam is a 2-hour exam consisting of 20 multiple choice and 8 short answer questions. The concepts tested are drawn from the text book, lectures, tutorials, onlnine meetings, modules and forum discussions. Students must pass this exam in order to pass the subject - regardless of the marks achieved on the other assessment items. A sample exam can be accessed from the CSU DOMS collection: ITC558 Sample Exam (https://doms.csu.edu.au/csu/file/069d208f-b3ed-4feb-9ce4-5f1718db0bba/1/Sample%20Exam%20ITC558%20201730 Marking criteriaCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 26 of 30 Criteria High Distinction (85-100%) Distinction (75-84%) Credit (65-74%) Pass (50-64%) Fail (0-49%) Part 1: 20 multiple choice questions Students will demonstrate an ablility to give correct answers to multiple choice questions about concepts learned in the subject. Each questions carries 1 mark for a possible total of 20 marks A mark of 17 or above was scored in part one of the exam: multiple choice questions A mark of 15 or above was scored in part one of the exam: multiple choice questions A mark of 13 or above was scored in part one of the exam: multiple choice questions A mark of 10 or above was scored in part one of the exam: multiple choice questions A mark below 10 was scored in part one of the exam: multiple choice questions Part 2: 8 short answer questions Students will demonstrate their understanding of concepts learned in the subject by writing short answers to the set questions. Each question carries 10 marks for a possible total of 80 marks. Student demonstrates a clear understanding of the concept and has correctly applied that understanding to the concept. In addition, the answer is clear, concise, correct and complete. Student demonstrates a clear understanding of the concept and has correctly applied that understanding to the concept in answering the question. Student demonstrates a clear understanding of the concept. An attempt has been made to apply that understanding to the concept in answering the question. Student demonstrates a clear understanding of the concept. Student fails to demonstrate an understanding of the concept.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 27 of 30 1. 2. 3. Material provided by the University Multiple choice answer forms and answer booklets will be supplied. Material required by the student 2B pencil, eraser, and writing tools. Assessment Information Learning materials Details of learning materials that support your success in this subject can be found in the Interact2 Subject Site. Referencing Referencing is an important component of academic work. All assessment tasks should be appropriately referenced. The specific details of the referencing requirements are included in each assessment task description. Get referencing style guides and help (http://student.csu.edu.au/library/integrity/referencing-at-csu) to use for your assessments. Plagiarism CSU treats plagiarism seriously. We may use Turnitin to check your submitted work for plagiarism. You can use Turnitin to check for plagiarism (http://student.csu.edu.au/library/integrity/referencing-at-csu/checking) in your assessments before submission. How to apply for special consideration Academic regulations provide for special consideration to be given if you suffer misadventure or extenuating circumstances during the session (including the examination period) which prevents you from meeting acceptable standards or deadlines. Find the form on the Student Portal Special Consideration, Misadventure, Advice and Appeals (http://student.csu.edu.au/study/academic-advice) page. Extensions In order to ensure that students who hand their assignments in on time are not disadvantaged, and to enable the lecturer to comply with the requirement to return assignments to the class within 21 days, the following rules about extensions will be strictly enforced: Extensions cannot be granted for online tests, as these have to be done within a specific time frame, after which the answers are released to the class automatically. Computer problems and normal work-related pressures and family commitments do not constitute sufficient reasons for the granting of extensions. If it becomes obvious that you are not going to be able to submit an assignment on time because of an unavoidable problem, you must submit your request for an extension to the Subject Coordinator in writing (email or post) prior to the due date. Requests for extensions will not be granted on or after the due date so you must make sure that any extension is requested prior to the day on which the assignment is due.Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 28 of 30 4. 5. 6. 7. 8. You are expected to do all you can to meet assignment deadlines. Work and family related pressures do not normally constitute sufficient reasons for the granting of extensions or incomplete grades. If you apply for an extension, you may be asked to email your lecturer on what you have done so far on the assignment. You must be able to provide documentary evidence (such as a certificate from a doctor or counsellor) justifying the need for an extension as soon as practicable - but please note that if the circumstances giving rise to the request for an extension arise on a day when you cannot get documentary evidence, you must still apply for the extension before the due date and submit the documentary evidence afterwards. Given the tight deadlines involved in returning assignments to students and putting feedback on Interact, the maximum extension granted generally will be seven (7) days from the due date. Assignments received more than 10 days after the due date or extension date will not be marked unless the staff member decides otherwise. Items received late will be penalised at 10% of the mark available for the assessment item per day it is late (see below). Note that for purposes of measuring lateness, the 'day' begins just after 00.00 hrs AEST - so an assignment received after midnight of the due date will be penalised 10% for lateness. This rule will be applied to all students uniformly. Penalties for Late Submission The penalty for late submission of an assessment task (without obtaining the Subject Coordinator's approval for an extension) will be: 10% deduction per day, including weekends, of the maximum marks allocated for the assessment task, i.e. 1 day late 10% deduction, or 2 days late 20% deduction. An example of the calculation would be: Maximum marks allocated = 20 Penalty for one day late = 2 marks (so, a score of 18/20 becomes 16/20 and a score of 12/20 becomes 10/20). If an assignment is due on a Friday but is not submitted until the following Tuesday, then the penalty will be four days (40% deduction or 8 marks in the example above). Submissions more than 10 days late will be acknowledged as received but will not be marked. Resubmission Under normal circumstances resubmission of assessment items will not be accepted for any of the assessments required in this subject. Online Submission Assignments should be submitted through TurnItIn. Please meet with your respective lecturer to enroll in the Turnitin (If you do not receive any email from Turnitin). Assessments such as Blogs, Quizzes and Journals are required to submit in the Interact2. TurnItIn does not accept Excel files and PDF files. Assignment/s must be submitted through Turnitin by midnight (AEST) according to the date mentioned in the subject outline. Charles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 29 of 30 Postal Submission Under normal circumstances postal submissions will not be accepted for any of the assessments required. Hand Delivered Submission Under normal circumstances hand delivered submissions will not be accepted for any of the assessments required. Feedback Feedback for assessment items will be provided by subject lecturer/s. Assignment Return You should normally expect your marked assignment to be returned to you within 15 working days of the due date, if your assignment was submitted on time. If you submitted your assignment on time but have not returned by the return date, you should make enquiries in the first instance to the subject lecturer. If the subject lecturer is not available, contact Level 1, Reception. Student Feedback and Learning Analytics Evaluation of Subjects CSU values constructive feedback and relies on high response rates to Subject Experience Surveys (SES) to enhance teaching. Responses are fed back anonymously to Subject Coordinators and Heads of Schools to form the basis for subject enhancement and recognition of excellence in teaching. Schools report on their evaluation data; highlighting good practice and documenting how problems have been addressed. You can view a summary of survey results via the Student Portal SES Results (https://student.csu.edu.au/study/subject-experience-survey-results) page. We strongly encourage you to complete your online Subject Experience Surveys. You will be provided with links to your surveys via email when they open three [3] weeks before the end of session. Changes and actions based on previous student feedback Based on past analytics, changes made to the subject included more face-to-face interactions with the subject Lecturer and Course Coordinator can significantly improve learning outcomes. Learning analytics in this subject Learning Analytics refers to the collection and analysis of student data for the purpose of improving learning and teaching. It enables the University to personalise the support we provide our students. All Learning Analytics activities will take place in accordance with the CSU Learning Analytics Code of Practice. For more information, please visit CSU’s Learning Analytics (http://www.csu.edu.au/division/student-learning/home/analytics-and-evaluations/learning-analytics) website. Data about your activity in the Interact2 site and other learning technologies for this subject will be recorded and can be reviewed by teaching staff to inform their communication, support and teaching practices. Services and Support Your Student Portal (http://student.csu.edu.au) tells you can how you can seek services and support. These include study, admin, residential, library, careers, financial, and personal support. Develop your study skills Develop your study skills (https://student.csu.edu.au/study/skills) with our free study services. We have services online, on campus and near you. These services can help you develop your EnglishCharles Sturt University Subject Outline ITC558 201730 SM I-1 February 2017-Version 1 Page 30 of 30 language, literacy, and numeracy. Library Services CSU Library (https://student.csu.edu.au/library) provides access to the eBooks, journal articles, books, and multimedia resources needed for your studies and assessments. Get the most out of these resources by contacting Library staff either online or in person, or make use of the many Library Resource Guides, videos and online workshops available. CSU Policies and Regulations This subject outline should be read in conjunction with all academic policies and regulations, e.g. Student Academic Misconduct Policy, Assessment Policy – Coursework Subjects, Assessment Principles Policy, Special Consideration Policy, Academic Progress Policy, Academic Communication with Students Policy, Student Charter, etc. Please refer to the collated list of policies and regulations relevant to studying your subject(s) (http://student.csu.edu.au/administration/policies-regulations-subjects) which includes links to the CSU Policy Library (http://www.csu.edu.au/about/policy) – the sole authoritative source of official academic and administrative policies, procedures, guidelines, rules and regulations of the University. Subject Outline as a Reference Document This Subject Outline is an accurate and historical record of the curriculum and scope of your subject. CSU's Subject Outlines Policy (https://policy.csu.edu.au/view.current.php?id=00267) requires that you retain a copy of the Subject Outline for future use such as for accreditation purposes.