BI1PR3: Programming
Module code: BI1PR3
Module provider: School of Biological Sciences
Credits: 20
Level: Level 1 (Certificate)
When you'll be taught: Semester 1 / 2
Module convenor: Dr Evangelos Delivopoulos, email: e.delivopoulos@reading.ac.uk
Module co-convenor: Eur Ing Professor Simon Sherratt, email: r.s.sherratt@reading.ac.uk
Pre-requisite module(s):
Co-requisite module(s):
Pre-requisite or Co-requisite module(s):
Module(s) excluded:
Placement information: NA
Academic year: 2024/5
Available to visiting students: Yes
Talis reading list: No
Last updated: 21 May 2024
Overview
Module aims and purpose
This module introduces students to procedural and object-oriented programming. The C and C++ programming languages within the Windows Visual Studio integrated development environment are used for examples and practical work. You will gain practical programming skills in developing and writing your own programs. By the end of the module, you will be able to predict the outputs a segment of code will produce. You will write moderately complex programs in C/C++, using a variety of programming constructs, such as classes, objects, arrays, loops and conditionals.
This module will provide you with a strong foundation in programming. You will learn fundamental problem analysis techniques, logic, and design algorithmic solutions. You will gain a broad understanding of different programming approaches and constructs and be able to employ the ones suited best to a particular problem.
By the end of the module, you will design and program your own software: a grid-based game or an organization toolkit for your local General Practice clinic.
Module learning outcomes
By the end of the module, it is expected that students will be able to:
- Demonstrate how to compile and run programs within an integrated development environment
- Demonstrate how to edit and debug programs
- Recognise programming constructs in C/C++
- Predict what a segment of code will produce (tracing)
- Develop a program
Module content
Lecture material includes the following topics:
- Problem solving,
- Logic,
- Keywords and operators in C/C++, libraries in C/C++
- Computer architecture
- Variables in C/C++: characters, strings, integers, floats, structures, unions
- User interaction: formatted input/output
- Conditional statements: if…then, do…while, while, switch
- Loops and arrays
- Functions and scope, casting
- Pointers
- File processing
- Data structures
- Classes: objects, constructors inheritance, polymorphism, virtual functions (static/dynamic binding)
- Function overloading, default arguments
Practical classes include the following training / activities:
- Good coding practice: writing comments, structuring your code properly
- Use of conditionals and nested if…then…else statements
- Use of loops and arrays to handle large amounts of data
- Use of functions, passing parameters by value and by reference
- Designing and writing a class
- Instantiating objects and arrays of objects
- Use of constructors and overloaded constructors
- Use of inheritance and overriding functions
Structure
Teaching and learning methods
The learning outcomes will be met through a mixture of lectures, PC-based practical classes, self-directed learning and directed independent study. Appropriate supplementary information and reading lists will be provided on Blackboard.
Practical sessions will prepare and support students to write their own grid-based game or software package for a local General Practice clinic.
Study hours
At least 40 hours of scheduled teaching and learning activities will be delivered in person, with the remaining hours for scheduled and self-scheduled teaching and learning activities delivered either in person or online. You will receive further details about how these hours will be delivered before the start of the module.
Scheduled teaching and learning activities | Semester 1 | Semester 2 | Summer |
---|---|---|---|
Lectures | 12 | 6 | |
Seminars | |||
Tutorials | |||
Project Supervision | |||
Demonstrations | |||
Practical classes and workshops | 12 | 6 | |
Supervised time in studio / workshop | |||
Scheduled revision sessions | |||
Feedback meetings with staff | 4 | ||
Fieldwork | |||
External visits | |||
Work-based learning | |||
Self-scheduled teaching and learning activities | Semester 1 | Semester 2 | Summer |
---|---|---|---|
Directed viewing of video materials/screencasts | 40 | 20 | |
Participation in discussion boards/other discussions | |||
Feedback meetings with staff | |||
Other | |||
Other (details) | |||
Placement and study abroad | Semester 1 | Semester 2 | Summer |
---|---|---|---|
Placement | |||
Study abroad | |||
Independent study hours | Semester 1 | Semester 2 | Summer |
---|---|---|---|
Independent study hours | 100 |
Please note the independent study hours above are notional numbers of hours; each student will approach studying in different ways. We would advise you to reflect on your learning and the number of hours you are allocating to these tasks.
Semester 1 The hours in this column may include hours during the Christmas holiday period.
Semester 2 The hours in this column may include hours during the Easter holiday period.
Summer The hours in this column will take place during the summer holidays and may be at the start and/or end of the module.
Assessment
Requirements for a pass
Students need to achieve an overall module mark of 40% to pass this module.
Students taking the BEng Biomedical Engineering programme must also achieve a mark of at least 30% in each assessment.
Summative assessment
Type of assessment | Detail of assessment | % contribution towards module mark | Size of assessment | Submission date | Additional information |
---|---|---|---|---|---|
In-class test administered by School/Dept | Online Blackboard MCQ test | 20 | 18 questions in 1 hour | Semester 1, Teaching Week 12 | 17 MQCs and 1 long answer question. |
Portfolio or Journal | Lab practicals | 30 | 4 x programs with representative outputs | Semester 1, Teaching Week 12 | Throughout semester 1, students will be completing a range of programming labs to supplement learning. Students will develop a portfolio of their work (their programs and evidence they work.) Labs in semester 2 receive formative feedback before the project report. |
Written coursework assignment | Project report | 50 | 3,500 word report | Semester 2, Teaching Week 12 |
Penalties for late submission of summative assessment
The Support Centres will apply the following penalties for work submitted late:
Assessments with numerical marks
- where the piece of work is submitted after the original deadline (or any formally agreed extension to the deadline): 10% of the total marks available for that piece of work will be deducted from the mark for each working day (or part thereof) following the deadline up to a total of three working days;
- the mark awarded due to the imposition of the penalty shall not fall below the threshold pass mark, namely 40% in the case of modules at Levels 4-6 (i.e. undergraduate modules for Parts 1-3) and 50% in the case of Level 7 modules offered as part of an Integrated Masters or taught postgraduate degree programme;
- where the piece of work is awarded a mark below the threshold pass mark prior to any penalty being imposed, and is submitted up to three working days after the original deadline (or any formally agreed extension to the deadline), no penalty shall be imposed;
- where the piece of work is submitted more than three working days after the original deadline (or any formally agreed extension to the deadline): a mark of zero will be recorded.
Assessments marked Pass/Fail
- where the piece of work is submitted within three working days of the deadline (or any formally agreed extension of the deadline): no penalty will be applied;
- where the piece of work is submitted more than three working days after the original deadline (or any formally agreed extension of the deadline): a grade of Fail will be awarded.
The University policy statement on penalties for late submission can be found at: https://www.reading.ac.uk/cqsd/-/media/project/functions/cqsd/documents/qap/penaltiesforlatesubmission.pdf
You are strongly advised to ensure that coursework is submitted by the relevant deadline. You should note that it is advisable to submit work in an unfinished state rather than to fail to submit any work.
Formative assessment
Formative assessment is any task or activity which creates feedback (or feedforward) for you about your learning, but which does not contribute towards your overall module mark.
Students will receive feedback, while writing code during practical sessions.
Students will receive formative feedback from labs in semester 2.
Formative practical sessions during semester 2 will provide student with feedback on their projects as their project develops.
Reassessment
Type of reassessment | Detail of reassessment | % contribution towards module mark | Size of reassessment | Submission date | Additional information |
---|---|---|---|---|---|
In-class test administered by School/Dept | Online Blackboard MCQ test | 20 | 18 questions in 1 hour | During the University resit period | 17 MQCs and 1 long answer question. |
Portfolio or Journal | Portfolio | 30 | During the University resit period | ||
Written coursework assignment | Project report | 50 | 3,500 words | During the University resit period |
Additional costs
Item | Additional information | Cost |
---|---|---|
Computers and devices with a particular specification | ||
Required textbooks | ||
Specialist equipment or materials | ||
Specialist clothing, footwear, or headgear | ||
Printing and binding | ||
Travel, accommodation, and subsistence |
THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.