PROGRAMME OVERVIEW

This programme is designed to develop and produce graduates with a broad understanding of both computing principles and computing practice. The programme is designed to help graduates effectively communicate computing concepts and solutions to bridge the gap between computing industry experts and business leaders to create and initiate innovation.

 

ENTRY REQUIREMENTS

  1. For all entry pathways candidates must have at least five Ordinary Level subjects/ National Foundation Certificates including English Language, Mathematics and a Science subject at grade C or better:
  1. Normal Entry

A minimum of 2 A’ Level passes in Mathematics AND (Physics OR Computer Science OR any other relevant Science subject).

  1. Special Entry

Special entry may be granted to applicants with a National Diploma in Computer Science or any related field from a recognized institution. 

  1. Mature Entry

Refer to Section 3.3 of the General Academic Regulations.

  • Visiting School/Block Release

Should have at least an ND or HND in Software Engineering or any relevant field AND have proof of employment in the field specifying the nature of duties.

 

CAREER OPPORTUNITIES AND FURTHER EDUCATION

  1. Employability: Careers in the Computer Science field which include:

Research Scientists, IT Managers, IT Consultants, Software Engineers, Analyst Programmers, Systems Analysts, Security Analysts, Website Designers, Website Developers, Database Administrators, Network and Systems Administrators, and Hardware Technicians.

  1. Further Studies: Master’s and doctoral studies in Computer Science or in interdisciplinary programmes related to computing practices.

 

PROGRAMME STRUCTURE

A student will not be allowed to register for a module with a pre-requisite if the pre-requisite is not passed. Electives will be offered subject to the availability of personnel. * denotes core modules.

Level 1 Semester 1
Code Module Description Credits
HCSCI131* Introduction to Computers and Computer Applications 10
HCSCI132* Principles of Programming Languages 10
HCSCI133* Operating Systems 10
HCSCI134* Fundamentals of Digital Electronics 10
HCSE133* Ethics and Professionalism 10
CS131* Basics of Communication Skills 12
Level 1 Semester 2
Code Module Description Credits
HCSCI135* Computer Architecture and Organization 10
HCSCI136* Data Structures and Algorithms 10
HCSCI137* Software Engineering 10
HCSE135* Database Systems 10
HCSE138* Discrete Mathematics 10
HTENG133 Physics for Engineers 10
Level 2 Semester 1
Code Module Description Credits
HCSCI231* Web Development 10
HCSCI232* Systems Analysis and Design 10
HCSCI233 Computer Security 10
HCSCI234* Research Methods 10
HSTA132* Applied Statistics 12
GS231* Gender Studies 12
TCNP201* Technopreneurship 12
Level 2 Semester 2
Code Module Description Pre-Requisites Credits
HCSCI235* Software Project Management HCSCI137 10
HCSCI237* Data Communications and Computer Networks   10
HCSCI238* Design and Analysis of Algorithms HCSCI136 10
HCSCI239 Digital Image Processing   10
HCSCI240* Group Project HCSCI232 10
HCSE224* Object Oriented Programming HCSCI132 10
Level 3 Semester 1
Code Module Description Credits
HCSCI311* Work-Related Learning I 40
Level 3 Semester 2
Code Module Description Pre-Requisites Credits
HCSCI321* Work-Related Learning II HCSCI311 80
Level 4 Semester 1
Code Module Description Pre-Requisites Credits
HCSCI431* Theory of Computation   10
HCSCI432* Simulation and Modelling   10
HCSCI433* Parallel and Distributed Computing HCSCI237 10
HCSCI434* Artificial Intelligence   10
HTENG432* Communications Network Design HCSCI237 10
Electives (Select 1 module from the following)      
HCSE433 IoT and Cloud Systems Engineering HCSCI237 10
HCSE434 Machine Learning   10
HCSE435 Digital Media Engineering   10
Level 4 Semester 2
Code Module Description Pre-Requisites Credits
HCSCI435* Computer Graphics   10
HCSCI437* Human Computer Interaction   10
HCSCI438* Research Project HCSCI240 20
HCSE439* Network Security and Cryptography   10
Electives (Select 1 module from the following)      
HCSCI439 Fundamentals of Data Science and Big Data   10
HCSCI436 Information Security   10

 

SYNOPSES

 

HCSCI131 Introduction to Computers and Computer Applications

Basic Computer Concepts, Data Processing Cycle, Number System. Computer Arithmetic, Types of Computer, Evolution of Computers, Concepts of computer languages, Programming construct, Programming data structure, Programming algorithms. Data Communications (Wired, Hybrid and Wireless networks). Variations in Computer Architecture including buses, internal.

 

HCSCI132 Principles of Programming Languages

The module aims to introduce the basic principles of programming, programming paradigms, program constructs and implementation of algorithms using Python programming language. Modular programming through use of functions, modules will also be covered to enhance students’ understanding of code reusability. Moreover, data persistence will be demonstrated in files and data structures. The module will equip students with knowledge on the basics of Object-Oriented Programming (OOP) and databases. Lastly, students will get to explore fundamentals of object-based programming using the Tkinter library in Python.

 

HCSCI133 Operating Systems

This module explores the design and implementation of computer operating systems. Topics include historical aspects of operating systems development, systems programming, process scheduling, synchronization of concurrent processes, deadlocks, virtual machines, memory management, virtual memory and paging, I/O and file systems, system security, os/architecture interaction, and distributed operating systems.

 

HCSCI134 Fundamentals of Digital Electronics

Introduction to digital design, number systems and codes, digital circuits, combinational logic design principles and practices, combinational circuit design examples, sequential logic design principles and practices, sequential circuit design examples. Memory (ROM, RAM, static and dynamic RAMs), CPLDs and FPGAs, computer-aided design tools.

 

HCSE133 Ethics and Professionalism

This module covers ethical and social issues related to the development and use of computer technology. Topics include ethical theory, social, political, and intellectual property (IP) and other legal considerations. Scenarios in problem areas: privacy, reliability and risks of complex systems, and responsibility of professionals for applications and consequences of their work.

 

CS131 Basics of Communication Skills

Refer to Communication Skills Department regulations

 

HCSCI135 Computer Architecture and Organization

This module studies the basic instruction set architecture and organization of a modern computer. Topics include Assembly language, The Von Neumann Machine Instructions, Registers, translating high level arithmetic into Assembly, Memory and Registers Addressing Modes, Logic Gates, Truth Tables, implementing Truth Tables, Latches and Memory Reading, Multicycle implementations, the concept of a Cycle. Finite State Machines, Balancing the work into Single Cycles, ROMs, PLAs, Microcode, RISC/CISC, Pipelines, Principle of Locality, Direct Mapped Caches, I/O Polling and Interrupts.

HCSCI136 Data Structures and Algorithms

This module builds on the programming skills acquired in Principles of Programming Languages. It couples work on Program Design, Analysis, and Verification with an introduction to the study of Data Structures. Students are introduced to: Lists, Stacks, Queues, Trees, Hash Tables, and Graphs. Students are expected to write several programs, ranging from very short programs to more elaborate systems. Emphasis is placed on the development of clear, modular programs that are easy to read, debug, verify, analyze, and modify.

 

HCSCI137 Software Engineering

The module gives the students practical experience in applying Software Life Cycle Models, standards and technologies. Topics covered include: Software Process and Problems, Requirements, Specifications and Software Design approaches, Modular Designs, CASE tools, Case Studies. Object Oriented Analysis and Design using the Unified Modelling Language (UML) to capture Requirements, Model User Interactions and Business Process, Verification and Validation, Implementation and Integration Issues, Reuse Concepts and Maintenance.

HCSE135 Database Systems

The module focuses on concepts and principles related to database management systems and links these to Relational Database Systems. Topics covered include: Database Systems Evolution, Database Systems in the Organization, Principles of Conceptual Design, Database Models, The Relational Data Model, Data Modelling, Database Design Theory, Data Definition and Manipulation Languages, Storage and Indexing Techniques, Query Processing and Optimization, Concurrency Control and Recovery and Database Programming Interfaces.

HCSE138 Discrete Mathematics

This module introduces and discusses the fundamentals of discrete mathematics as applied to computer science, focusing on providing a basic theoretical foundation for further work. Students are exposed to logic and proof techniques, set theory, elementary number theory, functions and relations, graphs, trees, modelling computations and abstract algebra. This module integrates symbolic tools, graphical concepts, and numerical calculations. Techniques of counting: permutations, combinations, recurrences, algorithms are also covered.

 

HTENG133 Physics for Engineers

The physics of electricity and magnetism; application of electronic, semiconductor and magnetic materials, ferromagnetism, electric and magnetic fields. Forces on magnetized iron surfaces; forces of attraction and alignment, Waves and Optics. Mechanics: work and energy, momentum and collisions. Thermal physics: temperature, kinetic theory and the ideal gas, heat and the first law of thermodynamics.

HCSCI231 Web Development

The module will explain the basics of Web Design, Site Development Processes, Design Principles; Page Layout Navigation. Topics include; HTML, CSS and JavaScript, developing dynamic, database-driven web pages using frameworks and scripting languages. This module introduces students to web database connections.

 

HCSCI232 Systems Analysis and Design

This module will cover the principles of Information Systems including analysis and design. Students will learn techniques in data requirements collection and analysis along with methods 18 to modelling data needs. Modelling of data will occur at the conceptual, logical, and physical levels along with an ability to compare the different approaches. Students will understand the importance and constraints imposed by the domain of the information system along with business rules that guide the design. Functional dependencies and domain normalization will also be discussed as part of the requirements analysis. Object-Oriented information system modelling and User-Centered design techniques will be explored.

 

HCSCI233 Computer Security

Basic concepts in information security, including security policies, security models, and security mechanisms. Concepts related to applied cryptography, including plain-text, cipher-text, the four techniques for crypto-analysis, symmetric cryptography, asymmetric cryptography, digital signature, message authentication code, hash functions, and modes of encryption operations. concepts of malicious code, including virus, Trojan horse, and worms. Common vulnerabilities in computer programs, including buffer overflow vulnerabilities, time-of-check to time-of-use flaws, incomplete mediation. The requirements and mechanisms for identification and authentication. Issues about password authentication, include dictionary attacks (password guessing attacks), password management policies, and one-time password mechanisms. Security mechanisms for conventional operating systems, including memory, time, file, and object protection requirements and techniques and protection in contemporary operating systems.  The requirements for trusted operating systems, and describe the independent evaluation, including evaluation criteria and evaluation process. Security requirements for database security, and describe techniques for ensuring database reliability and integrity, secrecy, inference control, and multi-level databases. Threats to networks, and techniques for ensuring network security, including encryption, authentication, firewalls, and intrusion detection. The requirements and techniques for security management, including security policies, risk analysis, and physical threats and controls.

 

HCSCI234 Research Methods

This module equips students with research techniques including definition of research objectives, research framework, design, research problem, experimental research, experiment data acquisition and processing, population and sampling methods, research methods and instruments, data processing and analysis, descriptive statistics, inferential statistics, data presentation and interpretation, research ethics, report writing.

 

HSTA132 Applied Statistics

This module covers Introduction to statistics: definition, uses of statistics, Probability, Probability distributions, Measures of central tendency and dispersion, Sampling techniques, Data types, Presentation and Summarization techniques, Regression and Correlation, Simple Statistical Inference.

GS231 Introduction to Gender Studies 

This module will empower the students with knowledge and skills that enable them to be gender sensitive in the University, workplace and in all their social interaction. Topics covered include: understanding gender, gender analysis, gender issue in Zimbabwe, redressing gender imbalances, empowerment and strategies for creating gender responsive environment. Students gain insight into accounts of gender studies in Science and Technology

 

TCNP 201 Technopreneurship  

Nature and importance of technopreneurship, Differences between technopreneurship and entrepreneurship; Relationship between technopreneurship and the national economy. Developing a business model and basics of small business management, Risks and stages of funding, Sources of funding, Financial funding for growth, product valuation. Opportunity recognition and creation, Sources of opportunity, Screening technology opportunities. The New Product Development process. Concept of intellectual property and its significance, Basics of patenting, legislation governing IP in Zimbabwe. 

 

HCSCI235 Software Project Management

Software Project Management is the practice of controlling the cost, time, manpower, hardware and software resources involved in the development activity that commences with a problem statement and ending with the delivery of complete software product to the customer. It will include planning, monitoring and controlling, Project evaluation, scope management, team building, stakeholder management, risk assessment, scheduling, quality and conflict management.

 

HCSCI237 Data Communications and Computer Networks

This module explores the principles underlying the design of computer networks. Topics covered include: Computer network technologies and applications, Transmission Media, Signaling, Communication protocols, Communication architectures, Network connections, Network types, Routing and routing algorithms, spanning tree protocol and IP addressing.

 

HCSCI238 Design and Analysis of Algorithms.

This module investigates methods for designing efficient and reliable algorithms. It introduces several algorithm design strategies that build on data structures and programming techniques introduced in Data structures and Algorithms. These include induction, divide-and-conquer, dynamic programming, and greedy algorithms. Topics of study include graph theory, hashing, and advanced data structures.

 

HCSCI239 Digital Image Processing

The module introduces basic concepts and methodologies for the formation, representation, compression, enhancement and analysis of digital images. It introduces students to the fundamental techniques and algorithms used for acquiring, processing and extracting useful information from digital images. Particular emphasis will be placed on covering methods used for image sampling and quantization, image transforms, image enhancement and restoration, image encoding, image analysis and pattern recognition. In addition, the students will learn how to apply the methods to solve real-world problems in several areas including medical, remote sensing and surveillance and develop the insight necessary to use the tools of digital image processing (DIP) to solve any new problem.

 

HCSCI240 Group Project

The students work in a group to produce a working Product including a Project Proposal, a Project Plan, a System Specification, and User Documentation and perform Project Management Activities to ensure the product is delivered on time. The Implementation includes Developing the Product, Testing and Evaluation and Presentation.

 

HCSE234 Object Oriented Programming 

The module aims at providing a solid foundation in Object Oriented Paradigm. Topics covered include: Objects Overview and Review, creating Class Instances within constructors, Object Analysis, creating Fields and Properties, Inheritance and specialized Classes, Base Class and Abstract Classes, Events and Exceptions, providing services using Interfaces and Abstract Classes, Polymorphism, Shared and Static members, Overloading Operators, Overriding, Multithreading

HCSCI311 Work-Related Learning I

Refer to Section 8 of the Faculty of Science and Technology Regulations

 

HCSCI321 Work-Related Learning II

Refer to Section 8 of the Faculty of Science and Technology Regulations

 

HCSCI431 Theory of Computation

The module explores Turing machines, universal computation, the halting problem and general undecidability, Rice’s theorem, the recursion theorem, efficient computation models including finite automata, regular languages, context-free grammars, time and space (memory) bounds, deterministic and nondeterministic computation and their relationships, the P versus NP problem and hard problems for NP and beyond.

HCSCI432 Simulation and Modelling

The module presents general mathematical modelling and simulation principles by applying them to concrete problems. Topics covered include the Modelling Process, System Dynamics, Computational Error, Simulation techniques, Empirical Models, Cellular Automaton and High-Performance Computing.

HCSCI433 Parallel and Distributed Computing

The module covers Parallelism Fundamentals, Parallel Decomposition, Parallel Algorithms, Analysis, and Programming, Parallel Architecture, Parallel Performance, Formal Models and Semantics. The module will also cover key design principles of distributed systems including communication protocols, processes and threads, naming, synchronization, consistency and replication, fault tolerance, and security

HCSCI434 Artificial Intelligence

The module develops in students a working knowledge of intelligent systems as well as the understanding of the application of artificial reasoning in industrial processes. Topics covered include: An introduction to intelligence, historical and current trends and characterization of knowledge-based systems, knowledge representation, reasoning, problem solving, and learning. It then explores those further by surveying current applications in selected areas such as game playing and natural language processing

 

HTENG432 Communications Network Design

Business justification. System requirements. System analysis and network modelling. System design and implementation. System performance and evaluation. Market forecasts of demand on the network to the implementation of plans. Aspects of the design that influence the likely replacement of legacy telecommunications networks. Network performance parameters that impact on the quality of service perceived by customers. Layered view of network requirements, signalling, operation, service management, support systems and associated architectures.

HCSE433 IoT and Cloud Systems Engineering 

IoT and Cloud Computing. IoT Physical Devices and Endpoints: IoT physical servers and cloud offerings: cloud storage models and communication Networks, Cloud technologies, Framework and Platforms. Internet of services, SOA, Grid computing, System types, architectures and models, applications in telecommunication systems, cloud systems examples, security management, Governance, legislation, economic environment.

 

HCSE434 Machine Learning

Introduction to machine learning, data mining, and statistical pattern recognition. Topics include: Supervised learning (parametric/non-parametric algorithms, support vector machines, kernels, neural networks); Unsupervised learning (clustering, dimensionality reduction, recommender systems, deep learning); Best practices in machine learning (bias/variance theory; innovation process in machine learning and AI); This module will also draw from numerous case studies and applications, so that learners will also learn how to apply learning algorithms to building smart robots (perception, control), text understanding (web search, anti-spam), computer vision, medical informatics, audio, database mining, and other areas.

 

HCSE 435 Digital Media Engineering

Audio Engineering: concepts and standards, Overview of audio in the broadcast context, Computer-based audio systems, Software engineering and the MAX programming environment, Audio quality assessment and monitoring. Video Engineering: Concepts and standards, Overview of video in the broadcast context, Compression standards for broadcast, internet distribution and streaming, video transmission over IP networks.

HCSCI435 Computer Graphics

The module covers characteristics of graphics I/O devices, 2D/3D transformations including scaling, translation, and rotation. It also explores Graphics Pipeline, Data Structures for Graphics, Geometrical representation, OpenGL programming, vertex processing, lighting and shading, rasterization including line and polygon drawing, ray casting, ray tracing, spline curves and surfaces, color models, fractals, computer graphics in games and Computer Animation; visualization.

HCSCI436 Information Security

The module covers concepts and applied methods in information security encompassing the confidentiality, integrity, and availability model of information assets. Topics include security threats, cryptography, security analysis (attack taxonomy), access control, threat protection, Security Policies, Laws, Computer Crimes and Cyber Security.

 

HCSCI437 Human Computer Interaction

Human characteristics: human and computer Graphic design basics, Interaction: input and output, Dialogue interactions and response times, Design process, Models of users in design, Dialog notations and design, Implementation support, Evaluation, Help and documentation, Hypertext, multimedia and WWW, Game design basics.

 

HCSCI438 Research Project (HCSCI238)

The Research project involves supervision. This project is intended for the student to demonstrate skills acquired to develop systems for an organization of their choice. Candidates must be able to demonstrate the highest level of innovation. A level of research is expected to ensure some level of originality and critical thinking in the project design and implementation.

HCSCI439 Fundamentals of Data Science and Big Data

Introduction: Big Data Overview, importance of data science, big data analytics in industry verticals. Data Analytics Lifecycle and methodology: Business Understanding, Data Understanding, Data Preparation, Modelling and Evaluation. Data exploration and pre-processing, Data Analytics: Theory and Methods, Unstructured Data Analytics, Data Visualization Techniques, Creating final deliverables

 

HCSE439 Network Security and Cryptography

Mathematical Foundations – Overview on Modern Cryptography, Number Theory, Probability and Information Theory. Classical Cryptosystems – Shannon theory I, II, III. Symmetric Key Ciphers, Cryptanalysis of Symmetric Key Ciphers, Stream Ciphers and Pseudo randomness, Hash Functions and MACs, Asymmetric Key Ciphers: Construction and Cryptanalysis, Digital Signatures, Modern Trends in Asymmetric Key Cryptography and Network Security.