Introduction

Computer Science is the study of the theoretical and practical aspects of computer technology and computer usage. Computer science major attracts students who are interested in both the mathematical theory and technical applications of computer science. While proficiency in computer programming is an essential skill, computer science students’ deal with the fundamental nature of computation, what can and cannot be computed, and how efficiently a computation can be accomplished by a machine. They study how to build computer systems (computer architecture), how to make machines think (artificial intelligence), how to build computers that can see (computer vision), how to design software that works seamlessly from different locations (computer networks and distributed systems), how to model complex problems (modelling and simulation) and how to design more efficient computing algorithms (theory of computation).
The Center of Excellence in IT (CEIT) at IMSciences has highly research-active faculty, who encourage students to be involved in their applied/research work. Research opportunities focus both on fundamental research in theory of computation, computer networks, computer vision, data mining, software engineering, artificial intelligence, and robotics, as well as on projects of practical socio-economic significance, such as building systems to communicate relevant information to farmers, designing mapping solutions for rural areas and building record keeping solutions for the judicial system. A Computer Science (CS) degree is excellent preparation for the job market of the future and CS majors take up careers in every imaginable field. Our graduates have enjoyed excellent job placements, both within Pakistan and internationally. Many have chosen to make their own successful companies.

Program Structure

The Bachelor of Computer Science (BCS) combines a solid core of computer science courses as well as an understanding and appreciation for arts, humanities, and social sciences, and their importance in today’s society. This is a 4-year degree program, which aims to enable students to apply scientific and engineering methodologies to the analysis of problems and the design, implementation, and evaluation of computer-based solutions. At the same instance, it attempts to utilize the breadth and depth of theoretical computer science and mathematics to emerging technologies and the ever-changing needs of industry as well as the cutting edge of computer science research.

Eligibility Criteria

  • FA/F. Sc or Equivalent qualifications with at least second division, securing 50% marks in aggregate.
  • The students who have not studied Mathematics at intermediate level must pass deficiency courses of Mathematics of 6 credit hours within one year of their regular studies.
  • Qualifying the admission test and interview is compulsory. A candidate scoring less than 40% marks in the test and interview will stand disqualified for admission.
  • Candidates who have secured at least 40% in the NTS-NAT are also eligible to apply.
  • The merit of a candidate shall be measured by a 50 % weight age to the marks obtained in HSC or equivalent, 40 % to the marks obtained in the written test, and 10% to the marks obtained in the interview.
  • A candidate shall be given a special credit of thirty marks for admission in each program mentioned above if he/she has studied Computer Science and/or statistics at intermediate level (for BS Data Science program only) at intermediate level or has done A level.
  • The Hafiz Quran shall be given a special credit of 20 marks.
  • The credit marks shall be added to the marks obtained at HSC or equivalent, subject to fulfilment of basic eligibility criteria of 50% marks.

Degree Requirements

For a BCS   4-year degree, a student is required to complete a minimum of 130-140 credit hours including a 6-credit hour research thesis/project. The normal duration for completion of BCS degree is 8 semesters over a period of 4 years. The maximum duration for obtaining BCS degree shall be 7 years. 

Program Education Objectives (PEOs)

Following are the Program Education Objectives (PEOs) of BCS.

  • (Fundamental Computing Knowledge): Graduates responsibly practicing in a variety of computer science and allied disciplines.
  • (Basic Knowledge): Provide students with a combination of knowledge, hands-on experience, and application of theory to information issues.
  • (Modern Tools usage): Graduates utilizing their skills and knowledge to solve complex computing problems in real world settings.
  • (Continuous Improvement): Graduates demonstrating sustained learning and adapting to evolving fields through continued professional development and self-study.
  • (Leadership/Teamwork): A graduate who is effective in a leadership role of a team assigned to him/her or in an entrepreneurial environment.
  • (Research Orientation): Inculcate and enhance research abilities of students in respective fields.

Program Learning Outcomes (PLOs) of BCS

  • Gain an understanding of the underpinning theories of fundamental principles and technologies within the area of computer science (Academic education).
  • Apply knowledge of computing fundamentals, knowledge of a computing specialization, and mathematics, science, and domain knowledge appropriate for the computing specialization to the abstraction and conceptualization of computing models from defined problems and requirements (Knowledge for Solving Computing Problems).
  • Identify, formulate, research literature, and solve complex computing problems reaching substantiated conclusions using fundamental principles of mathematics, computing sciences, and relevant domain disciplines (Problem Analysis).
  • Design and evaluate solutions for complex computing problems, and design and evaluate systems, components, or processes that meet specified needs with appropriate consideration for public health and safety, cultural, societal, and environmental considerations (Design/ Development of Solutions)
  • Create, select, adapt, and apply appropriate techniques, resources, and modern computing tools to complex computing activities, with an understanding of the limitations (Modern Tool Usage)
  • Function effectively as an individual and as a member or leader in diverse teams and in multi-disciplinary settings (Individual and Teamwork)
  • Communicate effectively with the computing community and with society about complex computing activities by being able to comprehend and write effective reports, design documentation, make effective presentations, and give and understand clear instructions (Communication)
  • Understand and assess societal, health, safety, legal, and cultural issues within local and global contexts, and the consequential responsibilities relevant to professional computing practice (Computing Professionalism and Society)
  • Understand and commit to professional ethics, responsibilities, and norms of professional computing practice (Ethics)
  • Recognize the need, and have the ability, to engage in independent learning for continual development as a computing professional (Life-long Learning)

Upon completion of BCS degree, all the students should have attained the aforementioned ten PLOs/Student Outcomes (SOs).

Curriculum for BCS

Following are the proposed areas, which are required to cover to complete the degree. Covered areas consist of core courses (compulsory), foundation courses, general courses, and electives.

AREAS COVERED IN BCS

COMMON COURSES
Course Group

Min. No. of Credit Hours

Min. No. of Courses

Percentage

General Education

19

7

14.2 %

Mathematics & Science Foundation

12

4

09.0 %

Computing Core

39

11

29.3 %

Institute Electives

12

4

09.0 %

Common Courses

82

26

61.7 %

DOMAIN COURSES
Computer Science Core

24

7

18.0 %

Computer Science Electives

18

6

13.5 %

Computer Science Supporting

09

3

06.7 %

Domain Courses

51

16

38.3 %

TOTAL

133

42

100%


General Education Courses

Course Code

Course Title

Credit Hours

Contact Hours

CSC 301

Introduction to Information & Communication Technologies

3 (2-1)

2-3

ENG 301

English (General)

3 (3-0)

3-0

ENG 302

English (Functional)

3 (3-0)

3-0

ENG 401

English (Academic)

3 (3-0)

3-0

HSS 305

Fundamentals of Islamic Studies/ Ethics

2 (2-0)

2-0

HSS 301

Fundamentals of Pakistan Studies

2 (2-0)

2-0

CSC 595

Professional Practices

3 (3-0)

3-0

TOTAL

19 (18-1)

18-3

Mathematics and Science Foundation Courses

Course Code

Course Title

Credit Hours

Contact Hours

MTH 311

Calculus & Analytical Geometry

3 (3-0)

3-0

MTH 315

Linear Algebra

3 (3-0)

3-0

STA 415

Probability & Statistics

3 (3-0)

3-0

PHY 305

Applied Physics

3 (3-0)

3-0

TOTAL

12 (12-0)

12-0

Computing Core Courses

Course Code

Course Title

Credit Hours

Contact Hours

CSC 305

Programming Fundamentals

4 (3-1)

3-3

CSC 321

Discrete Structures

3 (3-0)

3-0

CSC 315

Object Oriented Programming

4 (3-1)

3-3

CSC 451

Database Systems

4 (3-1)

3-3

CSC 401

Data Structures & Algorithms

4 (3-1)

3-3

CSC 556

Information Security

3 (3-0)

3-0

CSC 575

Computer Networks

4 (3-1)

3-3

CSC 465

Operating Systems

4 (3-1)

3-3

SWE 401

Software Engineering

3 (3-0)

3-0

FYP 611

Final Year Project – I

3 (0-3)

0-9

FYP 612

Final Year Project – II

3 (0-3)

0-9

TOTAL

39 (27-12)

27-36

Institute Elective Courses

(Must be any FOUR courses or 12 credit hours, not limited to the areas listed below, Institutions may add/replace courses)

Course Code

Course Title

Credit Hours

Contact Hours

ACC 301

Fundamentals of Accounting

3 (3-0)

3-0

BUS 301

Introduction to Business

3 (3-0)

3-0

ENI 301

Entrepreneurship

3 (3-0)

3-0

FIN 301

Fundamentals of Business Finance

3 (3-0)

3-0

HRM 301

Fundamentals of Human Resource Management

3 (3-0)

3-0

HSS 311

Fundamentals of Sociology

3 (3-0)

3-0

HSS 415

Fundamentals of Psychology

3 (3-0)

3-0

HSS 505

Logic and Critical Thinking

3 (3-0)

3-0

MGT 301

Principles of Management

3 (3-0)

3-0

POL 301

Introduction to Political Science

3 (3-0)

3-0

POL 501

International Relations

3 (3-0)

3-0

LAN 512

Regional Language (Pashto)

3 (3-0)

3-0

LAN 513

Regional Language (Sindhi)

3 (3-0)

3-0

LAN 514

Regional Language (Punjabi)

3 (3-0)

3-0

LAN 521

Foreign Language (French)

3 (3-0)

3-0

LAN 522

Foreign Language (Chinese)

3 (3-0)

3-0

LAN 523

Foreign Language (German)

3 (3-0)

3-0

LAN 524

Foreign Language (Persian)

3 (3-0)

3-0

CSC 550

Computing and Society

3 (3-0)

3-0

TOTAL

12 (12-0)

12-0

Domain Courses for BCS

Computer Science CORE Courses

Course Code

Course Title

Credit Hours

Contact Hours

CSC 601

Artificial Intelligence

4 (3-1)

3-3

CSC 405

Digital Logic Design

4 (3-1)

3-3

CSC 531

Design and Analysis of Algorithms

3 (3-0)

3-0

CSC 411

Computer Organization & Assembly Language

4 (3-1)

3-3

SWE 539

Parallel and Distributed Computing

3 (3-0)

3-0

CSC 561

Compiler Construction

3 (3-0)

3-0

CSC 501

Theory of Automata

3 (3-0)

3-0

TOTAL

24 (21-3)

21-9

Computer Science SUPPORTING Courses

(Any Three from the list)
Coverage of relevant pre-requisite must be ensured while offering any of the following courses from this category

Course Code

Course Title

Credit Hours

Contact Hours

MTH 415 Multi-variate Calculus

3 (3-0)

3-0

CSC 510 Graph Theory

3 (3-0)

3-0

CSC 509 Theory of Programming languages

3 (3-0)

3-0

MTH 651 Numerical Computing

3 (3-0)

3-0

MTH 505 Differential Equations

3 (3-0)

3-0

TOTAL

9 (9-0)

9-0

Computer Science ELECTIVES Courses

(Must be any SIX courses or 18 credit hours, not limited to the areas listed below, Institute may add/replace courses)

Course Code

Course Title

Credit Hours

Contact Hours

CSC 611 Advance Database Systems

3 (3-0)

3-0

CSC 685 Machine Learning

3 (2-1)

2-3

CSC 605 Artificial Neural Networks

3 (2-1)

2-3

CSC 631 Cloud Computing

3 (3-0)

3-0

CSC 619 Text Mining

3 (3-0)

3-0

CSC 453 Fundamentals of Internet of Things (IoT)

3 (3-0)

3-0

CSC 461 Human Computer Interaction

3 (3-0)

3-0

CSC 505 Real-Time Systems

3 (3-0)

3-0

CSC 525 Computer Architecture

3 (3-0)

3-0

CSC 541 Systems and Network Administration

3 (2-1)

2-3

CSC 545 Computer Graphics

3 (2-1)

2-3

CSC 551 E-Commerce

3 (3-0)

3-0

CSC 565 Biometric Systems

3 (3-0)

3-0

CSC 571 Mobile Application Development

3 (3-0)

3-0

CSC 625 Natural Language Processing

3 (3-0)

3-0

CSC 641 Computer Vision

3 (2-1)

2-3

CSC 645 Wireless Networks

3 (3-0)

3-0

CSC 656 Multimedia Systems

3 (3-0)

3-0

CSC 675 Digital Image Processing

3 (2-1)

2-3

CSC 681 Fuzzy Logic

3 (3-0)

3-0

CSC 689 Expert Systems

3 (3-0)

3-0

SWE 411 Object Oriented Analysis and Design

3 (3-0)

3-0

SWE 515 Web Engineering

3 (2-1)

2-3

CSC 637 Selected Topics in IoT

3 (3-0)

3-0

TOTAL (Any SIX courses or 18 credit hours)

18 (x-x)

x-x

BCS – Semester-wise Breakdown

4-Year Program (8 Regular Semester of 18 weeks each) (133 Credit Hours)

Semester 1

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite

CSC 301

Introduction to Information & Communication Technologies

3 (2-1)

2-3

CSC 305

Programming Fundamentals

4 (3-1)

3-3

ENG 301

English (General)

3 (3-0)

3-0

HSS 301

Fundamental of Pakistan Studies

2 (2-0)

2-0

MTH 311

Calculus and Analytical Geometry

3 (3-0)

3-0

PHY 305

Applied Physics

3 (3-0)

3-0

Total

18(16-2)

16-6

 

Semester 2

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite(s)

CSC 315

Object Oriented Programming

4 (3-1)

3-3

Programming Fundamentals

CSC 321

Discrete Structures

3 (3-0)

3-0

ENG 302

English (Functional)

3 (3-0)

3-0

English (General)

HSS 305

Fundamentals of Islamic Studies

2 (2-0)

2-0

MTH 315

Linear Algebra

3 (3-0)

3-0

Institute Elective – I

3 (3-0)

3-0

Total

18(17-1)

17-3

 

Semester 3

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite

CSC 401

Data Structures and Algorithms

4 (3-1)

3-3

Object Oriented Programming

CSC 405

Digital Logic Design

4 (3-1)

3-3

Applied Physics

ENG 401

English (Academic)

3 (3-0)

3-0

English (Functional)

MTH 415

(CS Supporting – I)
Multi-variate calculus

3 (3-0)

3-0

STA 415

Probability and Statistics

3 (3-0)

3-0

Total

17(15-2)

15-6

 

Semester 4

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite

CSC 411

Computer Organization and Assembly Language

4 (3-1)

3-3

CSC 451

Database Systems

4 (3-1)

3-3

Data Structures and Algo.

CSC 465

Operating Systems

4 (3-1)

3-3

Data Structures and Algo.

SWE 401

Software Engineering

3 (3-0)

3-0

Institute Elective – II

3 (3-0)

3-0

Total

18(15-3)

15-9

 

Semester 5

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite

CSC 501

Theory of Automata

3 (3-0)

3-0

CSC 575

Computer Networks

4 (3-1)

3-3

MTH 505

(CS Supporting – II)
Differential Equation

3 (3-0)

3-0

Institute Elective – III

3 (3-0)

3-0

Computer Science Elective – I

3 (x-x)

x-x

Total

16(x-x)

x-x

 

Semester 6

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite

CSC 531

Design and Analysis of Algorithms

3 (3-0)

3-0

Data Structures and Algo.

CSC 561

Compiler Construction

3 (3-0)

3-0

Theory of Automata

CSC 595

Professional Practices

3 (3-0)

3-0

Computer Science Elective – II

3 (x-x)

x-x

Institute Elective – IV

3 (3-0)

3-0

Computer Science Elective – III

3 (3-0)

3-0

Total

18(x-x)

x-x

 

 

Semester 7

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite

CSC 601

Artificial Intelligence

4 (3-1)

3-3

Discrete Structures

FYP 611

Final Year Project – I

3 (0-3)

0-9

Computer Science Elective – IV

3 (x-x)

x-x

Computer Science Elective – V

3 (x-x)

x-x

Computer Science Elective – VI

3 (x-x)

x-x

Total

16(x-x)

x-x

 

Semester 8

Course Code

Course Title

Credit Hours

Contact Hours

Pre-requisite

CSC 556

Information Security

3 (3-0)

3-0

FYP 612

Final Year Project – II

3 (0-3)

0-9

Final Year Project – I

MTH 651

(CS Supporting – III)
Numerical Computing

3 (3-0)

3-0

SWE 539

Parallel and Distributed Computing

3 (3-0)

3-0

Operating Systems

Total

12(x-x)

x-x