1.
School Science and Technology
2. Department Computer Science and Information Systems
3. Programme Bachelor of Science in Information Technology
4. Module Title Programming I
5. Module Code CIS-PRO-111
6. Year 1
7. Credits 10
8. Revised September 2022
9. Approval Date
10. Lecture Hours per week 2 hours
11. Tutorial/Lab Hours per 2 hours
week
12. Prerequisites:
None
13. Co-requisites:
None
14. Module Aim
The aim of this module is to introduce students to computer programming
concepts for and skills for problem solving.
15. Intended Learning Outcomes
On completion of this module the student should be able to:
a) Distinguish between different types of programming languages.
b) Analyse programmes requirements.
c) Design algorithms using various techniques.
d) Code simple programmes.
e) Test simple programmes.
f) Document simple programs.
g) Explain the concepts of modular programming.
h) Develop modular computer programs using functions.
61
16. Indicative Content
a) Programming concepts:
i. Definitions of programming terms.
ii. Basics of how a programme is run.
iii. Different types of programming languages.
b) Stages of programming:
i. Programme specification.
ii. Design.
iii. Coding.
iv. Testing and documentation.
c) Basic data types and variable declaration:
i. Numeric types.
ii. Non-numeric types.
d) Operators:
iii. Arithmetic.
iv. Comparison.
v. Logical.
e) Program control structures:
. Sequence.
i. Selection.
ii.Loop.
f) Algorithm development:
i. Flowchart.
ii. Pseudocode.
g) Programme coding:
i. Compilers.
ii. Interpreters.
h) Modular programming:
i. Definition.
ii. Advantages and limitations.
iii. Development of modular programmes.
iv. Declaring, defining and calling functions and procedures.
i) Programme testing and debugging:
62
i. Unit and System testing.
ii. Coding errors and logic errors.
j) Programme documentation:
i. User manuals.
ii. System technical manual.
17. Method of Assessment
Examination : 50%
Coursework : 50%
18. Teaching and Learning Methods
a) Lectures
b) Lab work
c) Group discussions
19. Prescribed Reading Lists
Busbee, K.L.(2018) Programming Fundamentals: A Modular Structured
Approach Using C++. Samurai Media Limited
Dmitrovic, S. (2020). Modern C++ for Absolute Beginners: A Friendly
Introduction to C++ Programming Language and C++11 to C++20
Standards.
Gregoire, M. (2021). Professional C++ (5th ed.). Wrox.
20. Recommended Resources
Deitel, P., and Deitel, H. (2016). C++ How to Program (10th ed.). Pearson.
Nathan. C. (2017), C++: A Detailed Approach to Practical Coding (Step-By-Step
C++ Book 2). Kindle Edition.
63