Bachelor of Computer Science in Software Engineering Course at Botswana College of Engineering and Technology (BCET)
What is Software Engineering?
Software engineering is an engineering-based approach to software development. A software engineer is a person who applies the engineering design process to design, develop, maintain, test, and evaluate computer software.
Courses
Semester I, Core courses
- CSI131 Discrete Structures I
- CSI141 Programming Principles
- CSI161 Introduction to Computing
- MAT111 Introductory Mathematics I
- COM141 Communication and Academic Literacy skills (Science)
Semester II , Core Courses
- CSI132 Discrete Structures II
- CSI142 Object-Oriented Programming
- MAT122 Introductory Mathematics II
- STA122 Introductory Concepts of Probability
- COM142 Academic and Professional Communication (Science)
Semester III , Core Courses
- CSI247 Data Structures
- CSI243 Functional Programming
- CSI213 Discrete Structures III
- MAT221 Calculus I
Elective *(3 Credits)
- *- students are advised to take MGT202 which is a pre-requisite to MGT303
Semester IV, Core Courses
- CSI262 Database Concepts
- CSI223 Systems Programming
- CSI251 Computer Architecture & Organization
- MAT212 Introductory Linear Algebra
Elective (3 Credits)
Semester V, Core courses
- CSI323 Algorithms
- CSI354 Operating Systems
- CSI374 Computer Networks
- CSI342 Systems Analysis & Design
Elective (3 Credits)
Semester VI, Core Courses
- CSI315 Web Technology and Applications
- CSI332 Programming Languages
- CSI341 Introduction to Software Engineering
Optional Courses, (Min 6 credits from)
- CSI344 Artificial Intelligence
- CSI392 Human Computer Interaction
- MGT303 Entrepreneurship and New Business Formation
Winter Semester
- CSI352 Industrial Attachment
For semester VII and VIII, students choose from the following areas of specialization:
- Software Engineering
- Systems & Networks
Semester VII, Core courses (All Streams)
- CSI413 Theory of Computation
- CSI475 Social Informatics
- CSI481 Database Systems
Semester VII, Software Engineering stream
Optional Courses (minimum 6 credits)
- CSI473 Software Design
- CSI443 Requirements Engineering
- CSI435 Intelligent Systems
Semester VII, Systems & Networks stream
Optional Courses (minimum 6 credits)
- CSI462 Distributed Computing
- CSI453 Sensors Networks
- CSI493 Computer Graphics
Semester VIII, Core courses (All Streams)
- CSI408 Project
- CSI428 Programming Language Translation
- CSI468 Computer Networks & Security
Semester VIII, Software Engineering stream
Optional Courses (minimum 6 credits)
- CSI444 Software Project Management
- CSI392 Human Computer Interaction
- CSI345 Integrative Programming
Semester VIII, Systems & Networks stream
Optional Courses (minimum 6 credits)
- CSI464 Mobile Computing
- CSI424 Network Algorithms