University of Westminster - School of Computer Science & Engineering

computer science

Description

University of Westminster - School of Computer Science & Engineering 4COSC001W: Programming Principles I - Assignment Specification (2019/20) Module leader W Purdy Unit Practical Exercises Weighting: 50% Qualifying mark: 30% Description: Practical Work Learning Outcomes Covered in this Assignment: The coursework rationale is: • LO1 Identify program requirements and select appropriate algorithms to implement them; • LO2 Represent algorithms in a structured manner (e.g., by use of flow diagrams or pseudo-code); • LO3 Implement algorithms using an algorithmic, strongly typed programming language, and design and run appropriate tests on the resulting code; • LO4 Write program code that conforms to norms of good style and meets generally accepted referencing criteria; Handed Out: 21st October 2019 Due Date: Tuesday 19th November at 1:00 PM Expected deliverables: a) Flow chart (Part 1 and Part 2) b) Python program code - Important: Submit your python code file created in IDLE using the name convention: “student_id.py”, e.g. w1234567.py - DO NOT submit your code as word, notepad or a PDF document. c) Test case results (Part 1 and Part 2) d) Demo - Monday 25 November (during your scheduled tutorial) Method of Submission: Submitted online via Blackboard Type of Feedback and Due Date: Written feedback and marks 15 working days (3 weeks) after the submission deadline. All marks will remain provisional until formally agreed by an Assessment Board. BCS Criteria covered in this Assignment: 2.1.1 Knowledge and understanding of facts, concepts, principles & theories 2.1.2 Use of such knowledge in modelling and design 2.1.3 Problem solving strategies 2.2.1 Specify, design or construct computer-based systems 2.2.4 Deploy tools effectively 2.3.2 Development of general transferable skills 4.1.1 Knowledge and understanding of scientific and engineering principles 4.1.2 Knowledge and understanding of mathematical and statistical principles Assessment regulations Refer to section 4 of the “How you study” guide for undergraduate students for a clarification of how you are assessed, penalties and late submissions, what constitutes plagiarism etc. Penalty for Late Submission If you submit your coursework late but within 24 hours or one working day of the specified deadline, 10 marks will be deducted from the final mark, as a penalty for late submission, except for work which obtains a mark in the range 40 – 49%, in which case the mark will be capped at the pass mark (40%). If you submit your coursework more than 24 hours or more than one working day after the specified deadline you will be given a mark of zero for the work in question unless a claim of Mitigating Circumstances has been submitted and accepted as valid. It is recognised that on occasion, illness or a personal crisis can mean that you fail to submit a piece of work on time. In such cases you must inform the Campus Office in writing on a mitigating circumstances form, giving the reason for your late or non-submission. You must provide relevant documentary evidence with the form. This information will be reported to the relevant Assessment Board that will decide whether the mark of zero shall stand. For more detailed information regarding University Assessment Regulations, please refer to the following website: http://www.westminster.ac.uk/study/current-students/resources/academic-regulations Principles I 4COSC00W: Assignment Specification Page | 1 Coursework Description The University requires a program to predict progression outcomes at the end of each academic year. You should write this program in Python using the data shown in Table 1. Part 1 - Student Version 1. The program should allow students to predict their progression outcome at the end of each academic year. 2. The program should prompt for the number of credits at pass, defer and fail and then display the appropriate progression outcome for an individual student. 3. The program should let the user know if a credit input is the wrong data type. I.e., ‘Integers required’ is displayed. 4. The program should let the user know if credits are not in the range 0, 20, 40, 60, 80, 100 and 120. I.e., ‘Range error’ is displayed. 5. The program should let the user know if the total of the pass, defer and fail credits is not 120. I.e., ‘Total incorrect’ is displayed. • Use conditions and user-defined functions in your solution as appropriate. • Flow Diagram - Before you start to program your solution you should create your flow diagram that represents your algorithm in a structured manner. Submit flowchart for Part 1 for marking. • Test Plan - A Part 1 test plan is provided in the appendix. Submit the completed test plan (with your flow diagram and program code) and bring a printed copy of the test plan to the demo. Table 1: Progression outcomes as defined by the University regulations. Volume of Credit at Each Level Pass (including Progression Outcome condoned pass) Defer Fail 1 120 0 0 Progress 2 100 20 0 Progress – module trailer 3 100 0 20 Progress – module trailer 4 80 40 0 Do not Progress – module retriever 5 80 20 20 Do not Progress – module retriever 6 80 0 40 Do not Progress – module retriever 7 60 60 0 Do not progress – module retriever 8 60 40 20 Do not progress – module retriever 9 60 20 40 Do not progress – module retriever 10 60 0 60 Do not progress – module retriever 11 40 80 0 Do not progress – module retriever 12 40 60 20 Do not progress – module retriever 13 40 40 40 Do not progress – module retriever 14 40 20 60 Do not progress – module retriever 15 40 0 80 Exclude 16 20 100 0 Do not progress – module retriever 17 20 80 20 Do not progress – module retriever 18 20 60 40 Do not progress – module retriever 19 20 40 60 Do not progress – module retriever 20 20 20 80 Exclude 21 20 0 100 Exclude 22 0 120 0 Do not progress – module retriever 23 0 100 20 Do not progress – module retriever 24 0 80 40 Do not progress – module retriever 25 0 60 60 Do not progress – module retriever 26 0 40 80 Exclude 27 0 20 100 Exclude 28 0 0 120 Exclude Principles I 4COSC00W: Assignment Specification Page | 2 Part 2 - Staff Version This extension should meet the requirements specified for Part 1 but also allow a staff member to predict progression outcomes for multiple students. 1. The program should prompt for credits at pass, defer and fail and display the appropriate progression for each individual student until the staff member user enters ‘q’ to quit. 2. When ‘q’ is entered, the program should produce a ‘histogram’ where each star represents a student who achieved a progress outcome in the category range: progress, trailing, module retriever and exclude. See example below. 3. The program should display the number of students for each progression category and the total number of outcomes processed. • The program will make use of loops and user-defined functions. • Flow Diagram - Before you start to program your solution you should create your flow diagram that represents your algorithm in a structured manner. Submit flowchart for Part 2 for marking. • Test Plan – You are required to create your own test plan for Part 2. Submit the completed Part 2 test plan (with your flow diagram and program code) and bring a printed copy to the demo. This following horizontal histogram example shows the output distribution for 20 outcomes. However, your program should work with any number of outcomes generated.


Related Questions in computer science category