Bachelor of Science Computer Science Honours Degree

Purpose of the Programme
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
  • Normal Entry

To qualify for acceptance to the BSc Computer Science Honours Degree, the candidate must have obtained a pass at ‘A’ level in Mathematics and in at least one of the following subjects or their equivalents:

  1. Physics
  2. Computer Science/Studies

2. Special Entry

     Refer to Section 3.2 of the General Regulations.

 3. Mature Entry

    Refer to Section 3.3 of the General Regulations.

Programme Characteristics
Areas of Study: Computer Architecture and Organization; Computational Mathematics; Computer Graphics and Visual Simulation; Computer Security; Intelligent Systems; Networking and Data Communication; Operating Systems; Programming Languages; Software Development Fundamentals, Website Development, Software Engineering and Software Project Management; Social Issues and Professional Practice; Database Systems
 
Specialist Focus: Programming, Networking , Computer Hardware, Computer Software
Orientation:  Research and innovation oriented. Teaching and learning are professionally oriented and focused on practical aspects
Distinctive Features: The programme builds the research-technology-innovation continuum and focuses on knowledge development and application using a student-centred approach.
Career Opportunities and Further Education
Employability: Careers in the Computer Science field which include:

  1. Research Scientists
  2. IT Managers
  3. IT Consultants
  4. Software Engineers 
  5. Analyst Programmers
  6. Systems Analysts 
  7. Security Analysts
  8. Website Designers 
  9. Website Developers
  10. Database Administrators
  11. Network and Systems Administrators
  12. Hardware Technicians 
Further Studies: Master’s and doctoral studies in Computer Science or in interdisciplinary programmes related to computing practices.
Programme Delivery
Teaching and Learning Methods: Lectures, tutorials, programming  laboratory classes, seminars, group work, industrial visits, industrial attachment, research project, individual independent study
Assessment Methods: Written and oral examinations, tests, laboratory reports, seminar presentations, industrial attachment report, mini-research project report, final year dissertation, continuous  assessments
Programme Competencies
Generic:

  • Multidisciplinary: Ability to draw appropriately from multiple academic disciplines to define and solve problems based on understanding of complex phenomena. Should be flexible work across many disciplines.
  • Flexibility; to succeed in a rapidly changing field.
  • Quantitative and innovative reasoning: Capability to draw on big data and use analytics for informed decision making and strive to seek new ways of doing things
  • Communication skills: Ability to communicate effectively and to present information orally and in writing and using ICTs to both expert and non-expert audiences
  • Analysis and synthesis: Capacity for analysis and synthesis using logical arguments and proven facts.
  • Ethical commitment: Professional integrity and awareness of impact of science and technology on society and the environment
  • Entrepreneurial skills: Capability to identify and create new business ventures based on knowledge and new thinking paradigms
Discipline specific:

  • Technical understanding of Computer Science; Graduates should have a mastery of Computer Science as described by the core of the Body of Knowledge. 
  • Familiarity with common themes and principles; Graduates need understanding of a number of recurring themes, such as abstraction, complexity, and evolutionary change, and a set of general principles, such as sharing a common resource, security, and concurrency. Graduates should recognize that these themes and principles have broad application to the field of Computer Science and should not consider them as relevant only to the domains in which they were introduced. 
  •  Appreciation of the interplay between theory and practice; A fundamental aspect of Computer Science is understanding the interplay between theory and practice and the essential links between them. Graduates of a Computer Science programme need to understand how theory and practice influence each other. 
  • Problem solving skills; Graduates need to understand how to apply the knowledge they have gained to solve real problems, not just write code and move bits. They should to be able to design and improve a system based on a quantitative and qualitative assessment of its functionality, usability and performance.
  •  Project experience; To ensure that graduates can successfully apply the knowledge they have gained, all graduates of Computer Science programmes should have been involved in at least one substantial project. 
  • Commitment to life-long learning; Graduates should realize that the computing field advances at a rapid pace, and graduates must possess a solid foundation that allows and encourages them to maintain relevant skills as the field evolves.
  • Communication and organizational skills; Graduates should have the ability to make effective presentations to a range of audiences about technical problems and their solutions. This may involve face-to-face, written, or electronic communication. They should be prepared to work effectively as members of teams. 
  • Appreciation of domain-specific knowledge; Graduates should understand that computing interacts with many different domains. Solutions too many problems require both computing skills and domain knowledge. 
Intended Learning Outcomes
The programme must enable students to attain, by the time of graduation:

  1. An ability to apply knowledge of computing and mathematics appropriate to the program’s student outcomes and to the discipline
  2. An ability to analyse a problem, and identify and define the computing requirements appropriate to its solution
  3. An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs
  4. An ability to function effectively on teams to accomplish a common goal
  5. An understanding of professional, ethical, legal, security and social issues and responsibilities
  6. An ability to communicate effectively with a range of audiences
  7. An ability to analyse the local and global impact of computing on individuals, organizations, and society