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
- 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:
- Normal Entry
A minimum of 2 A’ Level passes in Mathematics AND (Physics OR Computer Science OR any other relevant Science subject).
- Special Entry
Special entry may be granted to applicants with a National Diploma in Computer Science or any related field from a recognized institution.
- 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
- 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.
- 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.