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 and COS2661
NQF Level 7: COS3701, COS3711, COS3721, COS3751 and COS3761

Theoretical Computer Science I (Extended) - XOS1501
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 III - COS3761
Diploma,Under Graduate Degree Semester module NQF level: 7 Credits: 12
Module presented in English
Pre-requisite: COS2661 (Not applicable to 98801-AMC & 98801-XAC)
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.
Introduction to Programming I (Extended) - XOS1511
Under Graduate Degree,Diploma Year module NQF level: 5 Credits: 12
Module presented in English Module presented online
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.
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 II (Extended) - XOS1512
Under Graduate Degree Year module NQF level: 5 Credits: 12
Module presented in English Module presented online
Pre-requisite: XOS1511 (or 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.
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.
Computer Systems: Fundamental Concepts (Extended) - XOS1521
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.
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.
Theoretical Computer Science II - COS2601
Under Graduate Degree Semester module NQF level: 6 Credits: 12
Module presented in English
Pre-requisite: COS1501 ( or XOS1501) or MAT2612
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.
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.
Programming: Data Structures - COS2611
Under Graduate Degree Semester module NQF level: 6 Credits: 12
Module presented in English
Pre-requisite: COS1512 (or XOS1512)
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.
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: Contemporary Concepts - COS2614
Under Graduate Degree Semester module NQF level: 6 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS1512 (or XOS1512)
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.
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.
Computer Organisation - COS2621
Under Graduate Degree Semester module NQF level: 6 Credits: 12
Module presented in English
Pre-requisite: COS1512 (or XOS1512) & COS1521 (or XOS1521)
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.
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 Networks I - COS2626
Under Graduate Degree Semester module NQF level: 6 Credits: 12
Module presented in English Module presented online
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.
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.
Numerical Methods I - COS2633
Under Graduate Degree Semester module NQF level: 6 Credits: 12
Module presented in English,Afrikaans
Pre-requisite: COS1511 (or XOS1511), MAT1512 (or XAT1512) & MAT1503 (or XAT1503)
Purpose: To enable students to understand and use numerical methods in solving scientific and mathematical problems that are difficult to solve analytically. It includes solutions of non-linear equations and systems of linear equations, interpolating polynomials, numerical integration and differentiation, and least-squares approximation.
Formal Logic II - COS2661
Under Graduate Degree Semester module NQF level: 6 Credits: 12
Module presented in English
Pre-requisite: COS1501 (or XOS1501)
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,Diploma Semester 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.
Theoretical Computer Science I - COS1501
Under Graduate Degree Semester 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.
Advanced Programming - COS3711
Under Graduate Degree,Diploma Semester 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.
Introduction to Programming I - COS1511
Diploma,Under Graduate Degree Semester 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.
Computer Graphics - COS3712
Under Graduate Degree,Diploma Semester module NQF level: 7 Credits: 12
Module presented in English
Pre-requisite: COS2611 & MAT1503 (or XAT1503)
Purpose: To enable a student to understand and apply the basic principles and techniques of modern computer graphics.
Introduction to Programming II - COS1512
Under Graduate Degree Semester module NQF level: 5 Credits: 12
Module presented in English Module presented online
Pre-requisite: COS1511 (or XOS1511)
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.
Operating Systems and Architecture - COS3721
Under Graduate Degree,Diploma Semester module NQF level: 7 Credits: 12
Module presented in English
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.
Computer Systems: Fundamental Concepts - COS1521
Under Graduate Degree Semester 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.
Techniques of Artificial Intelligence - COS3751
Under Graduate Degree,Diploma Semester module NQF level: 7 Credits: 12
Module presented in English
Pre-requisite: COS2611 & COS2661 (Not applicable to 98801-AMC & 98801-XAC)
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.