You are on page 1of 12

Faculty of Science

Discovering tomorrow

Module Guide 2024

Programming Fundamentals 1.1


WRAV101

Computer Science for Engineers 1.1


MSEV101

Department of Computing Sciences

Please read this document carefully and keep it in a safe place — it


contains important information that you will need to refer to
throughout the module.
Possession of this document does not guarantee your registration
for the module nor does it guarantee access to the Departmental
computer laboratories.
Table of Contents

Module Overview..................................................................................... 2
Module Objectives ................................................................................... 3
Module Content ....................................................................................... 3
Intended Learning Outcomes ................................................................. 4
Module Activities ..................................................................................... 4
Module material ...................................................................................... 7
Assessment ............................................................................................... 7
Academic Support ................................................................................... 9
File Locations & Saving ....................................................................... 10
Important Departmental Rules and University Policies ...................... 11

1
Module Overview
An introduction to programming using C# is required in different programs, for
example: the WRAV101 (Programming Fundamentals) module forms part of BSc,
BCom and BIT programs, while MSEV101 (Computer Science for Engineers)
forms part of the B Eng (Mechatronics) program.
Even though it is different programs and different module codes, you need to
master the same content, so the two modules will be run together, implying
different lecture slots, but the same content and assessments.
To help you check the modules you are registered for (only the modules offered
by the department of Computing Sciences), see the relevant item below:
• BSc and BCom programs:
o WRFV101/WRSC11 AND WRAV101 in the first semester
o WRFV102 AND WRAV102 in the second semester

• BIT program:
o WRAV101 in the first semester
o WRAV102 in the second semester

• B Eng (Mechatronics) program:


o WRSC111 AND MSEV101 in the first semester
o MSEV102 in the second semester

It is important to realize that you need to pass WRAV101/MSEV101 if you


wish to continue with the second semester module (WRAV102/MSEV102).
The Computing Fundamentals modules (WRFV101 and WRFV102) will cover
topics such as basic computer skills, file management, word processing,
spreadsheets, email and the Internet. Further details may be obtained from your
WRFV101 and WRFV102 lecturer. WRSC111 covers some of the WRFV101
content as well as MatLab, and is taken by Mechatronics students and BSc
students who do Applied Mathematics.
The Programming Fundamentals modules (WRAV101/MSEV101 and
WRAV102/MSEV102) cover problem solving, structured programming techniques,
and the development and use of some common algorithms (e.g. searching, sorting
and merging). The programming language that is used is C#.
The credit value of the module (for the purposes of obtaining your qualification at
NMU) is 8, which equates to what is known as 80 notional hours - that is, you are
expected to spend 80 hours of the semester (or about 6 hours per week) on
WRAV101/MSEV101.

2
Excluding your weekly scheduled contact hours, namely lecture
(1.5 hours) and practical times (80 minutes), you will be expected to spend at least
2 hours of your own time on the module per week for the purposes of self-
study.

Notional Hour Allocation


Type of Activity Hours
Lectures 28
Practical assignments 12
Assessment 6
Assessment preparations 16
Self-study at home 18
Total Notional Hours 80
Equivalent Credit Allocation 8

The prerequisite for WRAV101/MSEV101 are 50% in Grade 12 Mathematics. If


you do not have the required prerequisite, your registration for
WRAV101/MSEV101 will be automatically cancelled and your username for the
module deactivated.
Module Objectives
On successful completion of this course, you will be able to make correct decisions
regarding the use of appropriate data inputs and outputs. You will be able to
implement arithmetic and logical expressions, and use three types of control
structures, namely sequence, selection and iteration. Further, you will be able to
implement a solution to a problem in a structured manner. In order to cultivate
these skills, you will practice the techniques in both theoretical and practical
environments.
Module Content
The following units will be covered in the module:
• A first program using C#
• Using Data
• Making Decisions
• Using Loops
• Using Methods
• Advanced Method Concepts
• Using Arrays

3
Intended Learning Outcomes
On completion of this module, the learner will be able to:
• Understand, organize and critically evaluate knowledge pertinent to basic
programming concepts using manual and practical tools
• Synthesise and implement basic programming concepts using manual and
practical tools
• Practice a design methodology
• Select an appropriate principle, tool and/or technique to design and
implement a solution to a problem
• Test whether the solution to a problem is accurate
• Practice initiative in the implementation of a solution to a problem
• Collaborate in developing solutions to problems
• Read and comprehend a problem scenario
• Write down the steps to be followed in order to solve a given problem
• Be skilled in the basic use of a computer laboratory
• Use a programming application software package
• Transfer basic programming knowledge to different contexts
• Integrate programming knowledge in the solution for a given problem
• Learn independently and practice self-discipline
• Manage time in approaching solutions to given problems
• Think abstractly when faced with problem scenarios

Module Activities
For the duration of this module, it is required that you attend the following on
campus activities each week:
• 1 single lecture (35 minutes duration)
• 1 double lecture (70 minutes in duration)

Lecturers
Lecturer/ Marinda Taljaard (office 09-02-29),
co-ordinator: Email: marinda.taljaard@mandela.ac.za
Second lecturer Ntembeko Jafta (office 09-02-37)
(BIT students) Email: ntembeko.jafta@mandela.ac.za
MSEV101 Ighsaan Salie
lecturer Email: ighsaan.salie@mandela.ac.za

4
Lecture sessions
A number of different sessions is offered, but you need to attend the pair of lectures
for your specific degree program:

Lecture sessions – BSc and BCom students (South campus)


Lecture 1 Monday, 14:25 – 15:00 (South campus 35-00-05)
Lecture 1 duplicate Monday, 15:00 – 15:30 (South campus 35-00-05)
Lecture 2 Thursday, 09:05 - 10:15 (South campus 123-00-07)

Lecture sessions – BIT students (North campus)


Lecture 1 Tuesday, 15:45 – 16:55 (North campus M-237)
Lecture 2 Wednesday, 10:25 - 11:35 (South campus 05-00-03)

Lecture sessions – B Eng (Mechatronics) students (North campus)


Lecture 1 Tuesday, 09:05 - 10:15 (North campus M-237)
Lecture 2 Thursday, 11:45 - 12:55 (North campus M-237)

Practicals:
The practical tasks are designed to help you develop and test your theoretical and
practical knowledge, as well as your general problem solving skills — you will be
expected to think beyond the theory that is covered in lectures.
Attendance and submission of practical tasks are compulsory and will be
recorded and taken into consideration for the calculation of the final mark.
The following practical sessions are available on campus – you will need to make
a booking for your preferred session using the link on the module site on Moodle.

Practical sessions – BSc and BCom students (South campus)


Option 1 Monday, 11:45 – 12:35 (South campus Lab 4 (09-02-06))
Option 2 Tuesday, 15:45 – 16:55 (South campus Lab 1 (09-02-41))
Option 3 Wednesday, 15:45 – 16:55 (South campus Lab 4 (09-02-06))
Option 3 Thursday, 15:45 – 16:55 (South campus Lab 4 (09-02-06))

Practical sessions – BIT students (North campus)


Only option Wednesday, 13:05 – 14:15 (South campus labs 1 & 5)

Practical sessions – B Eng (Mechatronics) students (North campus)


Option 1 Wednesday, 09:05 – 10:15 (M-104)
Option 2 Wednesday, 10:25 – 11:35 (M-104)
5
Even though you will be required to attend practical sessions on campus, you are
advised to install the required software on your own computer – to use while
preparing for assignments and assessments.

Required Software
Visual Studio 2022 – you can download and install the community version – once
installed you need to sign in with your NMU student number and password.

The link is: https://visualstudio.microsoft.com/downloads/


Note that the download and installation can be quite big – look at this image (and
the description below) to help you to only download and install the components
required for this module:

On the left the .Net desktop development component is selected; while on the
right, the following items are selected under the heading Optional:
• Development tools for .NET
• .NET Framework 4.8 development tools
• Entity Framework 6 tools
• .NET profiling tools
• IntelliCode
• IntelliTrace
• Just-in-Time debugger
• Live Unit Testing
• Live Share
• ML.NET Model Builder
• Blend for Visual Studio
• .NET Framewordk 4.6.2-4.7.1 development tools
• Windows Communication Foundation
6
• SQL Server Express 2019 LocalDB
• MSIX Packaging Tools
• JavaScript diagnostics
• .NET Framework 4.8.1 development tools
• Architecture and analysis tools

These are the components installed on the PC’s in the Computing Sciences labs.
You will be able to add packages later from the Visual Studio installer in the Start
Menu (if necessary).
Module material
All relevant lecture material will be made available on the module’s Moodle site.
All practical assignments and any additional material will also be provided on the
module’s Moodle site.
A recommended textbook is Visual C#. NET by Joyce Farrell. Any edition will be
acceptable.

Assessment
In order to be successful in this module, the learner is required to have a successful
weighted average mark based on formal as well as informal assessments.
In 2024 this module will be an examinable module, which means that there will be
semester tests during the semester, as well as an examination at the end of the
semester. All the informal and formal assessments will contribute to your final
mark.
All high-stakes assessments (e.g semester tests) are planned as on campus
assessments, and will not be available online.
Should you miss any of the above assessments for a valid reason only, you need
to communicate this with the module co-ordinator within 3 days of the missed
assessment (providing any relevant documentation). You might be required to
complete a special assessment covering all the work for the entire semester, which
will take place at the end of the semester.
Should you have any query regarding these assessments, you need to contact the
module co-ordinator Marinda Taljaard (office 09-02-29, email
marinda.taljaard@mandela.ac.za).
If any changes need to be made to the current assessment plans, you will be
notified via email and the module Moodle site.
Assessments and marking of assessments are moderated – the moderator for this
module is Mr D Kunjuzwa.
Calculation of marks
To pass the module, you must:
Achieve a minimum final mark of 50%, and
Perform satisfactorily throughout the semester.

7
The General Rules are in the 2024 NMU Prospectus, but we want to draw your
attention to some of the issues:
1. A minimum class mark of 40% is required for the course to allow you
access to the examination.
2. A sub-minimum of 40% is required for the examination mark.
3. Attendance at lectures and practical sessions is COMPULSORY.
Should you fail to attend lectures or practicals, and do not produce a
valid medical certificate, you may forfeit consultation rights for that week.
4. We reserve the right to change relative weights for all components of the
class mark and final mark. Students will be notified of such changes.

The provisional weightings for the calculations are as follows:


15% Pracs
15% Quizzes
Class Mark
30% Semester Test 1
40% Semester Test 2
Final Mark 40% Class Mark
60% Examination

Duly Performed (DP) certificates


Satisfactory Performance means that you have performed the work of the
module to a satisfactory degree. It is determined prior to the examination, based
on your work performance from the beginning of the module up to the date of issue
when it is published on the notice board.
In order to be allowed to write the examination, you have to meet the following
requirements:
• You must achieve a minimum class mark of 40%.
If you do not achieve satisfactory performance, the examination office will be
informed that you do not have admission to the examination (examination code
FA). This information will also be posted on the module notice board prior to the
examinations. If you do not achieve satisfactory attendance or fail this module,
you will have to repeat it the following year. Note that you are only allowed to
attempt a module a limited number of times, as indicated in the 2024 NMMU
Prospectus.

If you are absent from any assessment you will receive a mark of zero, unless you
have a valid reason. If you do have a valid reason, you must hand in the necessary
documentation (e.g. a medical certificate) within three days of the missed
assessment, otherwise it will not be accepted. All submitted certificates will be
verified and disciplinary action instituted against any student submitting a
fraudulent certificate.

8
Academic Support
Learners are encouraged to communicate problems experienced with the work to
their lecturer and to always prepare for lectures and complete their practical tasks.
Competency Test
The Department recognizes evidence of prior learning and provides learners with
an opportunity to display Algorithmic proficiency. Should the learner be successful
in his/her application to the competency test and displays a successful level of
proficiency, the learner may apply to be exempted from Programming
Fundamentals 1.1 and Programming Fundamentals 1.2.
Student Assistants
Trained and suitably qualified student assistants will be available for during
practical sessions. The duties of the student assistants include the following:
• Helping students with problems experienced with the assigned practical
task(s) for the relevant week
A student assistant is not expected to
• do the practical tasks for you
• assist you if you have not prepared the work for the week
• spend a large proportion of their time exclusively with you
If you experience any problems with any individual student assistant, please
contact the module co-ordinator, Marinda Taljaard with your problem.
How to manage your module
In order to be successful in this module you must be prepared to work consistently
and on a weekly basis. Before a lecture, revise any work covered in the previous
lecture. Before attempting your practical tasks, read through the assignments for
the week and plan your solution(s) carefully. Be prepared to spend at least 3 hours
per week outside of lecture time on this module.
Contact your lecturer as soon as possible if you discover that there is a concept
that you do not fully understand. Clear up any problems with your work as soon
as possible. Hoping that you'll understand a concept during the next lecture, or
when you start learning for a test is unfortunately not the solution. This merely
results in the problems becoming compounded and eventually becoming so large
that you are demotivated and loose interest in trying to cope.
Discuss the solutions of programming tasks with your peers (co-students as well
as student assistants). We encourage the sharing of ideas during class group work
and practical sessions. You never know, you might have the opportunity of helping
someone, or they might be able to assist you. However, the solution you submit
must be your own work – there is a big difference between discussing the tasks
and submitting somebody else’s work as your own. Submitting somebody else’s
work is plagiarism, and can get you into big trouble.
Please read and pay attention to the Plagiarism guidelines Dept CS document
available in the General Documents section on the Moodle site.

9
File Locations & Saving
Each module has its own spot in a common place, which can be shared by all
students, no matter where you are working in a laboratory. This common place is
referred to as the COURSES folder and contains all the files and folders you
need for the entire semester. You cannot save to this location. For
WRAV101/MSEV101 the location of this folder in the Computing Sciences labs
is:
F:\WRAV101
The 2nd storage location is your SUBMISSIONS folder where you need to
always save all your WRAV101/MSEV101 work. You should also back up (make
a copy of) this folder on a weekly basis, to a removable drive or your OneDrive
cloud storage space, to minimize the chances of losing your work. The location
(or path) of this folder is:
S:\s<student number>
You must keep your SUBMISSIONS folder tidy by creating sub-folders and
saving your documents within the appropriate folder, as instructed in your Weekly
Instructions. You have limited space available on your S: drive and it should
ONLY be used for saving required work for your modules in the Dept CS.
When working in the labs on campus or your local device hard drive at home, do
NOT save your work to the default Documents folder – make sure that you use
the structure given in the task instructions. Work saved to a local workstation in
the labs, will not be available to you when you work on a different computer.
Always save your WRAV101 files to the network SUBMISSIONS folder and work
for other modules to your OneDrive.
The 3rd storage location that you have access to is your OneDrive folder where
you may store your own private documents and documents for modules. Please
be aware that this is a CLOUD storage space supplied by Microsoft and is not
part of the Mandela University ICT server system. As cloud based storage,
uploading and downloading of documents here will require an internet connection
and incur data costs. Do NOT use this space for working documents, as this can
lead to errors when uploading working to iLearn and Assessment Moodle – only
use it for making backups or transporting files. A basic guide to using OneDrive
can be found here: https://www.windowscentral.com/how-get-started-onedrive-
windows-10 and you need to use your NMU student email details to sign in to
OneDrive. Standard practice at NMU is to Map the OneDrive to the O: drive
letter, so make sure you select this file path when requested in the mapping
process on your personal PC. This folder will show in the university labs as:
O:\
During a practical test or examination, you have to save your work in the TEST
folder, where the lecturer can easily access it for marking, no matter where you
are working in the Dept CS laboratories. The TEST folder can be found on the T:
drive. The test-username and test-password are provided within the test venue,
at the start of the test session.

10
Important Departmental Rules and University Policies
Attendance Policy
• If you are absent from any contact session or formal assessment, you will be
marked as having not attended, unless you have a valid reason.
• If you have a valid reason, you must, within three days of having missed
the activity
o submit the necessary documentation via email to your lecturer.
Academic Integrity and Plagiarism
All work submitted for assessment (formal and informal) must be your own work.
Submitting work that is not your own is an example of academic dishonesty and
has severe implications.
See the Policy for the Promotion of Academic Integrity and Prevention of
Plagiarism available on the intranet at
http://my.mandela.ac.za/default.asp?id=308&IRCno= under Teaching &
Learning:

Disciplinary
Please note that strict action will be taken on any infringements – for example:
plagiarism (e.g. copying information or work from the Internet, a published work or
a classmate); fraudulent documentation submitted for absenteeism; allowing
another to use your user code & password or your workstation, etc. All tasks
submitted for assessment should be your own work.
It is important that you familiarise yourself with the content of the sections on
“Misconduct” and “Addendum to Student Disciplinary Code” in the General
Prospectus. In addition, make sure that you have read and understand the
Departmental rules regarding laboratory usage (laboratory usage rules are
available inside each of the Departmental laboratories).

11

You might also like