Register to study through Unisa

COMPUTER SCIENCE

Students who register for any Computer Science or Information Systems modules should: (a) have access to an Internet cafe or a Unisa Regional Learning Centre or other Internet facilities. After registration, access to myUnisa on a regular basis is compulsory. (b) have passed Computer Application Technology or Information Technology with a rating of 4 (new NSC) or passed Computer Studies (old Senior Certificate) or hold an industry standard qualification such as the ICDL in computer literacy. Students who do not satisfy this requirement are advised to register for EUP1501 BEFORE they register for COS1511.
The following hardware and software requirements can be used as a guideline for the minimum requirements for most modules. Some modules have higher requirements and in those cases the requirements will be made available in the first tutorial letter or under 'module information' on myUnisa. Configuration: PC with a Pentium 233(500) MHz or higher processor, Windows XP (with SP2) or a later version, 512 MB of RAM or higher, 80 GB hard-disk space, a CD-ROM and a flash drive or memory stick for your own data. If you intend to buy a computer, we recommend that you obtain a computer with the highest processor speed and RAM you can afford, AND which is upgradable (to allow you to improve its configuration at a later stage).
Major combinations:
NQF Level 5: COS1501, COS1511 and COS1512
NQF Level 6: COS2601, COS2611, COS2614, COS2621 and COS2661
NQF Level 7: COS3701, COS3711, COS3721, COS3751 and COS3761

Introduction to Programming II - COS1512
Under Graduate Degree Year module NQF level: 5 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS1511 (or XOS1511) Co-requisite: COS1511
Purpose: To introduce students to the detailed design and implementation of algorithms as programs, and includes the fundamentals of simple data structures with object-orientation.
Logic-Based Reasoning - COS4851
Honours Year module NQF level: 8 Credits: 12
Module presented in English Module presented online
Purpose: To provide the student with the skills to solve AI problems using automated reasoning.
Computer Systems: Fundamental Concepts - COS1521
Under Graduate Degree Year module NQF level: 5 Credits: 12
Module presented in English Module presented online
Purpose: To introduce students to the computer as a system. This covers hardware concepts such as internal representation of numbers and characters and basic computer architecture, and software concepts such as systems software and applications software. It also includes a brief introduction to databases, and to systems analysis and design.
Machine Learning - COS4852
Honours Year module NQF level: 8 Credits: 12
Module presented in English Module presented online
Purpose: To provide an introduction to some of the theoretical and practical aspects of learning techniques in AI and to solve practical AI problems using these learning techniques.
Theoretical Computer Science II - COS2601
Under Graduate Degree Year module NQF level: 6 Credits: 12
Module presented in English
Pre-requisite: COS1501
Purpose: This module together with COS3701 will acquaint students with the capabilities and limitations of computers from a theoretical viewpoint. Module COS2601 covers formal languages, recursive definitions, regular expressions, finite automata, Moore and Mealy machines, transition graphs, the pumping lemma and decision problems.
Natural Language Processing - COS4861
Honours Year module NQF level: 8 Credits: 12
Module presented in English Module presented online
Purpose: To provide an introduction to the theoretical and practical aspects of natural language processing. The focus is on fundamental algorithms, whether logical or statistical, on practical applications, and on scientific evaluation related to the processing of words and syntax.
Programming: Data Structures - COS2611
Under Graduate Degree Year module NQF level: 6 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS1512
Purpose: To show learners how abstract data types and data structures can be implemented and used in an object-oriented programming language. The module covers recursion, linked lists, dynamic memory allocation, binary trees, and graphs.
Formal Program Verification - COS4892
Honours Year module NQF level: 8 Credits: 12
Module presented in English Module presented online
Purpose: To provide an introduction to the design, verification and implementation of a computer program via a formal specification. Verification rules for a number of procedural constructs, namely, the assignment statement, sequential composition, the if-then-else statement, skip and while statements are derived and applied to a wide variety of problems.
Programming: Contemporary Concepts - COS2614
Under Graduate Degree Year module NQF level: 6 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS1511 and COS1512
Purpose: To enable students to understand and apply the principles of object-orientated programming (inheritance, encapsulation, abstraction, and polymorphism). Students are also introduced to the Unified Modelling Language (UML) and required to apply it when designing solutions to problems introduced in the course. Students are also taught the principles of graphical user interface (GUI) programming, design patterns, and how to apply them when designing and implementing contemporary software systems.
Research Methods and Proposal - HPCOS81
Honours Year module NQF level: 8 Credits: 12
Module presented in English Module presented online
Purpose: This module serves as a fundamental building block in equipping students with the knowledge and competencies to conduct research in the computing field. Qualifying students have an appreciation of the research process and the reason for conducting research according to a specific research paradigm, to solve a problem. They determine appropriate sources to consult for a literature review. Students understand appropriate research strategies, data gathering and analysis techniques to obtain answers to the stated research problem. Students use an academic writing style and recognized referencing techniques to complete an acceptable written research proposal. Students are required to have a computer and Internet access for weekly online study.
Computer Organisation - COS2621
Under Graduate Degree Year module NQF level: 6 Credits: 12
Module presented in English
Pre-requisite: COS1521
Purpose: To introduce students to the underlying structure of a modern digital computer, including digital logic level, machine code level and the software system level. It involves programming in an assembly language.
Honours Research Report - HRCOS82
Honours Year module NQF level: 8 Credits: 36
Module presented in English Module presented online
Pre-requisite: HPCOS81
Purpose: The purpose of this module is to prepare the student for research based postgraduate study on masters level. It allows students the opportunity to undertake a research project and produce a research report in a formalized manner under the close supervision of study leaders within research disciplines of the School of Computing. The qualifying student has mastered scientific writting, literature references and can complete an acceptable written research report.
Computer Networks I - COS2626
Under Graduate Degree Year module NQF level: 6 Credits: 12
Module presented in English
Purpose: To introduce the fundamental building blocks that form a modern network, such as protocols, topologies and hardware. This module provides an in-depth coverage of the most important concepts in contemporary networking, such as TCP/IP, Ethernet, wireless transmission, and security. Students will also acquire the skills to build a network from scratch and maintain, upgrade, and troubleshoot an existing network.
Formal Logic II - COS2661
Under Graduate Degree Year module NQF level: 6 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS1501
Purpose: To introduce students to the syntax of propositional language and the truth functionality of first order logic, enabling them to deal with proofs for validity via deduction and resolution in an interpreted first-order language.
Theoretical Computer Science III - COS3701
Under Graduate Degree Year module NQF level: 7 Credits: 12
Module presented in English
Pre-requisite: COS2601
Purpose: To enable students to understand the concept of computability. In the process they are introduced to context-free languages, recursively enumerable languages and the machines that accept them. It includes details of the Chomsky hierarchy, pushdown automata and Turing machines.
Advanced Programming - COS3711
Under Graduate Degree Year module NQF level: 7 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS2611 & COS2614
Purpose: To increase the depth of student's insight into advanced programming principles and consolidate their competence there-in.
Computer Graphics - COS3712
Under Graduate Degree Year module NQF level: 7 Credits: 12
Module presented in English
Pre-requisite: COS2611 & MAT1503
Purpose: The purpose of this module is to equip students with knowledge of the fundamental principles and techniques of modern Computer Graphics, and enable them to use these ideas, methods and tools to write and implement graphics applications of medium complexity.
Operating Systems and Architecture - COS3721
Under Graduate Degree Year module NQF level: 7 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS2614
Purpose: To acquaint students with general operating system functionality such as CPU scheduling, process coordination and concurrency, deadlocks, memory management, protection and security. It also covers the case of distributed systems.
Techniques of Artificial Intelligence - COS3751
Under Graduate Degree Year module NQF level: 7 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS2611 & COS2661
Purpose: To equip students with a basic understanding of knowledge representation approaches (logic-based and alternative approaches), search techniques (exhaustive and heuristic), automated reasoning, and basic skills in logic programming.
Formal Logic III - COS3761
Under Graduate Degree Year module NQF level: 7 Credits: 12
Module presented in English
Pre-requisite: COS2661
Purpose: To enable students to construct a number of different formal languages (such as opaque or transparent propositional languages, firstorder languages, sorted languages, modal languages and non-monotonic logics) and to solve problems of validity and truth for these languages.
Theoretical Computer Science I - COS1501
Under Graduate Degree Year module NQF level: 5 Credits: 12
Module presented in English Module presented online
Purpose: To introduce students to some concepts from Discrete Mathematics as a theoretical foundation for Computer Science. This background is relevant to relational databases, the development of provably correct programs, and the analysis of algorithms.
Formal Logic - COS4807
Honours Year module NQF level: 8 Credits: 12
Module presented in English Module presented online
Purpose: To provide an introduction to the methods of formal logic used in computing.
Introduction to Programming I - COS1511
Under Graduate Degree Year module NQF level: 5 Credits: 12
Module presented in English
Co-requisite: EUP1501 (or XUP1501)(Only applicable to NDEEN, 98906, 98907 & 98801 streams not listed above)
Purpose: To provide students with an introduction to programming and to cover the fundamentals of control structures, problem-solving techniques, and the incremental testing of programs.
Ontology Engineering - COS4840
Honours Year module NQF level: 8 Credits: 12
Module presented in English Module presented online
Purpose: To provide an overview of ontologies, their uses, their languages, and the tools and techniques (methodologies) for developing and debugging them.