Curriculum
Curriculum
1 Introduction
Computer science is the study of the theory, experimentation, and engineering that form the basis
for the design and use of computers. It is the scientific and practical approach to computation and
its applications and the systematic study of the feasibility, structure, expression, and mechanization
of the methodical procedures (or algorithms) that underlie the acquisition, representation,
processing, storage, communication of, and access to information. Specifically, Computer Science
is the application of a systematic, disciplined and quantifiable approach to the design,
development, operation, and maintenance of software systems. It is in fact the practice of designing
and implementing large, reliable, efficient and economical software by applying well established
principles and practices.
Computer Science spans a wide range, from its theoretical and algorithmic foundations to cutting-
edge developments in several fields including machine learning, information management, World
Wide Web, bioinformatics, and other exciting areas. Advanced principles, concepts, methods,
approaches and technologies emerge with the passage of time to satisfy the dynamic and wide
range nature of Computer Science. Therefore, BS CS program curriculum needs to be revised
regularly to encompass the advanced ideas and technologies and enables students to meet the
growing demands of the field and software industry to help in the economic growth of the country.
2 Rationale of Revision
Computer Science is a rapidly expanding field. Its uses in society are ubiquitous. Since the
inception of the Department of Computer Science, the department has routinely revised its courses
to keep up with the new developments in the field of Computer Science and needs of society. A
Computer Science graduate typically finds a job as a technologist, developer/software engineer,
educator, or a researcher and these roles require competency in different knowledge areas.
Therefore, an effort was made to provide students with a balanced mix of skills and knowledge in
all the important areas in the previous revision. The knowledge areas were grouped into categories
of theory core, application core, advanced applications, and research specializations along in
strong compliance with the HEC proposed framework. The categories provided an expended
breadth of the course work at the undergraduate level along with preparation for further research
studies.
The HEC-NCEAC (National Computing Education Accreditation Council) is a recognized
accreditor of bachelor level computing programs in Pakistan. It ensures the quality of computing
degree programs in Higher Education institutions in Pakistan and fostering the intellectual
development of students interested in pursuing computing profession. To cater challenges and
enhance quality of BS CS program to meet international standards, HEC-NCEAC has revised BS
CS curriculum which is deemed to be compulsory adopted by the Higher Education institutions in
Pakistan to facilitate in accreditation process. The present revision in BS CS program is motivated
not only by the new trends in Computer Science research and applications domains but also to it
align with the HEC-NCEAC BS CS curriculum model/framework. The curriculum
model/framework is dynamic and provides students to learn theoretical and practical
understanding of Computer Science. Apart from the above requirement, the present revision is also
required to incorporate the HEC Undergraduate policy 2023 in the BS CS program.
A-2
BS Computer Science
The BS CS program needs to be transformed while keeping in view the latest knowledge-based
education philosophy. To prepare students for attaining educational objectives by ensuring that
students demonstrate achievements in different program outcomes. The BS CS program
curriculum needs to be revised and restructured to satisfy BS CS program educational objectives.
The following notable changes have been made in the existing BS CS 2017 semester plan and
courses.
1) Semesters have been reorganized with careful focus on computing core (theoretical
foundations) in earlier semesters, followed by more domain core and electives, applied
and advanced aspects in the later semesters. This will help to groom students, as
perspective software developers as well as researchers, in a logical and sustainable way.
2) Along with this, it is also kept in mind that the curriculum is in line with the HEC-
NCEAC guidelines of BS CS curriculum and HEC undergraduate policy 2023.
3) Apart from the existing courses, new courses have been added in the different
categories to train students in the latest technologies of Computer Science.
4) Course titles of the existing courses have been changed, where needed, to clearly reflect
their contents.
5) Contents of existing courses have been revised to incorporate topics related to recent
trends in Computer Science, to equip students with up-to-date information in Computer
Science theory and research.
6) Reference books have been updated where needed.
7) New course codes have been allotted to the existing and new courses according to the
new reorganization in the different semesters.
8) Courses’ credit hours have been changed to reflect the theory and practical content of
a course and contact hours.
9) Practical labs have been made mandatory with all courses, where required, to make the
courses more practically oriented instead of only theory based. This will help to
enhance practical/ implementation skill of students.
10) Lists of Domain Electives, Elective Supporting and in General Educations (Natural
Sciences and Social Sciences) courses are extended so that the students can be exposed
to a diverse set of related fields.
11) Course codes have been assigned as per UOP policy.
PEOs describe what the students are expected to achieve after 04 years of their graduation. For BS
CS program, the following three PEOs have been defined:
• PEO-1: Equipped with in-depth computer science knowledge (concepts, theories and
practices) to apply and build professional careers in computing and associated
technological fields to the best of society and industry.
• PEO-2: Having excellent problem solving and entrepreneurial skills to achieve
professional endeavors/practices with effective communication skills, work as a team
A-3
BS Computer Science
member in collaborative environments and excel in leadership capacity with highest legal,
ethical and moral standards.
• PEO-3: Prepared and zealous for life-long learning and continuous educational and
interpersonal skills development to achieve sustainable career development and
professional growth.
Program Learning Outcomes (PLOs) describe what students are expected to know and can do by
the time of graduation considering the knowledge, skills and attitude they acquire while
progressing through the program. The BS CS graduates of the Department of Computer Science,
University of Peshawar demonstrate the following graduate attributes (PLOs) in their professional
careers.
Program Learning
S# Computing Professional Graduate
Outcomes
1 Academic Education To prepare graduates as computing professionals.
Apply knowledge of computing fundamentals, knowledge of a
Knowledge for computing specialization, and mathematics, science, and
2 Solving Computing domain knowledge appropriate for the computing
Problems specialization to the abstraction and conceptualization of
computing models from defined problems and requirements.
Identify, formulate, research literature, and solve complex
computing problems reaching substantiated conclusions using
3 Problem Analysis
fundamental principles of mathematics, computing sciences,
and relevant domain disciplines.
Design and evaluate solutions for complex computing
problems, and design and evaluate systems, components, or
Design/Development
4 processes that meet specified needs with appropriate
of Solutions
consideration for public health and safety, cultural, societal,
and environmental considerations.
Create, select, adapt and apply appropriate techniques,
5 Modern Tool Usage resources, and modern computing tools to complex computing
activities, with an understanding of the limitations.
Individual and Function effectively as an individual and as a member or leader
6
Teamwork in diverse teams and in multi-disciplinary settings.
Communicate effectively with the computing community and
with society at large about complex computing activities by
7 Communication being able to comprehend and write effective reports, design
documentation, make effective presentations, and give and
understand clear instructions.
Understand and assess societal, health, safety, legal, and
Computing
cultural issues within local and global contexts, and the
8 Professionalism and
consequential responsibilities relevant to professional
Society
computing practice.
A-4
BS Computer Science
1 Academic Education ✓ ✓
3 Problem Analysis ✓ ✓
4 Design/Development of Solutions ✓ ✓
7 Communication ✓ ✓
9 Ethics ✓
10 Life-long Learning ✓
A-5
BS Computer Science
Programming Computing
1 1 CS102 - 4(3-3)
Fundamentals Core
Object Oriented Computing
2 2 CS123 CS102 4(3-3)
Programming Core
Computing
3 2 CS122 - Digital Logic Design 3(2-3)
Core
Computing
4 2 CS121 - Computer Networks 3(2-3)
Core
Computing
5 3 CS206 - Database Systems 4(3-3)
Core
Computing
6 3 CS202 CS123 Data Structures 4(3-3)
Core
Computing
7 3 CS204 - Software Engineering 3(3-0)
Core
Computing
8 3 CS201 CS123 Artificial Intelligence 3(2-3)
Core
Computing
9 4 CS203 - Information Security 3(2-3)
Core
Computing
10 4 CS208 CS202 Operating Systems 3(2-3)
Core
Analysis of Computing
11 4 CS205 CS202 3(3-0)
Algorithms Core
Computer
Computing
12 4 CS207 CS122 Organization and 3(2-3)
Core
Assembly Language
Computing
13 7 CS401 - Final Year Project – I 2(0-6)
Core
A-6
BS Computer Science
Domain
15 5 CS311 CS202 Theory of Automata 3(2-3)
Core
Advanced Database
Domain
16 5 CS301 CS121 Management 3(2-3)
Core
Systems
Human Computer Domain
17 6 CS319 CS102 3(2-3)
Interaction Core
Computer Domain
18 6 CS327 CS207 3(2-3)
Architecture Core
Compiler Domain
19 7 CS326 CS311 3(2-3)
Construction Core
Parallel and
CS123, Domain
20 8 CS403 Distributed 3(2-3)
CS208 Core
Computing
Domain
21 5-8 CS323 CS123 Web Technologies 3(2-3)
Elective
Advanced Domain
22 5-8 CS314 CS123 3(2-3)
Programming Elective
CS318 CS201 Data Mining Domain 3(2-3)
23 5-8
Elective
CS307 CS201 Machine Learning Domain 3(2-3)
24 5-8
Elective
Object Oriented Domain
25 5-8 CS324 CS123 3(2-3)
Analysis and Design Elective
Mobile Application Domain
26 5-8 CS341 CS314 3(2-3)
Development Elective
Domain
27 5-8 CS349 CS323 Web Engineering 3(2-3)
Elective
Domain
5-8 CS303 CS203 Cyber Security 3(2-3)
Elective
Advanced Mobile
Domain
5-8 CS410 CS341 Application 3(2-3)
Elective
Development
Domain
5-8 CS417 CS208 Cloud Computing 3(2-3)
Elective
Software Testing and Domain
5-8 CS421 CS204 3(2-3)
Quality Assurance Elective
A-7
BS Computer Science
Mathematics
Probability &
28 1 and 3(3-0)
Statistics
Supporting
Mathematics
Multivariable
29 4 and 3(3-0)
Calculus
Supporting
Mathematics
Applied Linear
30 5 and 3(3-0)
Algebra
Supporting
Mathematics
Technical and
31 7 and 3(3-0)
Business Writing
Supporting
Applications of
Information and General
33 1 CS101 - 3(2-3)
Communication Education
Technologies (ICT)
General
34 1 - Functional English 3(3-0)
Education
General
35 2 - Expository Writing 3(3-0)
Education
Quantitative
General
36 2 CS120 - Reasoning – 1 3(3-0)
Education
(Discrete Structures)
Quantitative
Reasoning – 2 General
37 3 - 3(3-0)
(Calculus and Education
Analytic Geometry)
A-8
BS Computer Science
Course Credit
# Course Title Department
Code Hours
Project Planning and
1 SW-682 3(3-0) Department of Social Work
Management
2 BA 324 Principles of Marketing 3(3-0) Institute of Management Studies
3 BA 322 Management 3(3-0) Institute of Management Studies
4 Psy-101 Introduction to Psychology – I 3(3-0) Department of Psychology
Any other University of Peshawar approved course from social sciences.
Course Credit
# Course Title Department
Code Hours
Department of Computer
1 CS423 Professional Practices 3(3-0)
Science
2 HIST-106 Introduction to History 3(3-0) Department of History
3 Phil:311 An introduction to Philosophy 3(3-0) Department of Philosophy
Any other University of Peshawar approved course from arts and humanities.
A-9
BS Computer Science
The courses are semester-wise distributed while keeping in view and considering the NCEAC
guidelines and HEC UG policy.
Course Credit
# Course Title Domain
Code Hours
Semester 1
1 CS102 Programming Fundamentals Computing Core 4(3-3)
Applications of Information &
2 CS101 General Education 3(2-3)
Communication Technologies
3 Functional English General Education 3(3-0)
Mathematics and
4 Probability & Statistics 3(3-0)
Supporting
Islamic Studies
5 General Education 2(2-0)
Religious Study/Ethics
6 Ideology and Constitution of Pakistan General Education 2(2-0)
Total Cr. Hrs 17(15-06)
Semester 2
7 CS123 Object Oriented Programming Computing Core 4(3-3)
8 CS122 Digital Logic Design Computing Core 3(2-3)
9 CS120 Discrete Structures Geneal Education 3(3-0)
10 Expository Writing General Education 3(3-0)
11 CS121 Computer Networks Computing Core 3(2-3)
Total Cr. Hrs 16(13-09)
Semester 3
12 CS202 Data Structures Computing Core 4(3-3)
13 Calculus and Analytical Geometry General Education 3(3-0)
14 CS201 Artificial Intelligence Computing Core 3(2-3)
15 CS204 Software Engineering Computing Core 3(3-0)
16 CS206 Database Systems Computing Core 4(3-3)
Total Cr. Hrs 17(14-09)
Semester 4
Computer Organization and Assembly
17 CS207 Computing Core 3(2-3)
Language
18 CS208 Operating Systems Computing Core 3(2-3)
19 CS205 Analysis of Algorithms Computing Core 3(3-0)
20 Natural Sciences General Education 3(2-3)
21 CS203 Information Security Computing Core 3(2-3)
Mathematics and
22 Multivariate Calculus 3(3-0)
Supporting
Total Cr. Hrs 18(14-12)
Semester 5
23 CS3XX Domain Core 1 Domain Core 3(3-0)
24 CS3XX Domain Core 2 Domain Core 3(2-3)
A-10
BS Computer Science
A-11
BS Computer Science
8 Revision at a Glance
Course Credit
# Course Title Remarks
Code Hours
• Title is kept same
Programming • Course code is changed
1 CS102 4(3-3)
Fundamentals • Course contents are kept same
• Lab contact hours is changed
• Title is kept same
Object Oriented • Course code is changed
2 CS123 4(3-3)
Programming • Course contents are kept same
• Lab contact hours are changed
• Course code is changed
• Title is kept same
• Course contents are kept same
3 CS122 Digital Logic Design 3(2-3)
• Credit/contact hours are changed
• Lab credit/contact hours are included
• Books are updated
• Course moved from semester 4
• Course code is changed
• Title is kept same
4 CS206 Database Systems 4(3-3) • Course contents are updated
• Books are updated
• Credit hours are changed
• Lab contact hours are changed
• Title is changed (previously was Data
Structures and Algorithms)
5 CS202 Data Structures 4(3-3) • Course code is changed
• Course contents are kept same
• Lab contact hours are changed
• Course moved from semester 6
• Course code is changed
• Title is kept same
6 CS204 Software Engineering 3(3-0) • Course contents are updated
• Books are updated
• Contact hours are changed
• Lab contact hours are included.
• Course code is changed
• Title is kept same
• Course contents are updated
7 CS201 Artificial Intelligence 3(2-3)
• Books are updated
• Contact hours are changed
• Lab contact hours are included.
A-12
BS Computer Science
Course Credit
# Course Title Remarks
Code Hours
• Title is kept same
• Course code is changed
1 CS311 Theory of Automata 3(3-0) • Course contents are kept same
• Contact hours are changed
• Lab contact hours are included
A-13
BS Computer Science
Course Credit
# Course Title Remarks
Code Hours
• Course code is changed
• Title is kept same
1 CS323 Web Technologies 3(2-3) • Course contents are updated
• Credit/contact hours are changed
• Lab contact hours are changed
• Course code is changed
• Title is kept same
Object Oriented
2 CS324 3(2-3) • Course contents are kept same
Analysis and Design
• Credit/contact hours are changed
• Lab contact hours are changed
• Title is kept same
Advanced • Course code is changed
3 CS314 3(2-3)
Programming • Course contents are kept same
• Credit/contact hours are changed
A-14
BS Computer Science
Course Credit
# Course Title Remarks
Code Hours
1 Probability & Statistics 3(3-0) • Course code is changed
A-15
BS Computer Science
Course Credit
# Course Title Remarks
Code Hours
• Course is moved from Semester 3
MATH- Computation in • Course code is kept same
1 3(2-3)
432 MATLAB • Course contents and books are kept
same
Course Credit
# Course Title Remarks
Code Hours
• Course is added as per HEC UG policy
guidelines
• Course code is changed
Applications of
• Title is changed as per HEC UG policy
Information and
1 CS101 3(2-3) guidelines (previously was
Communication Fundamentals of Computers)
Technologies (ICT) • Course contents are updated
• Books are updated
• Lab contact hours are changed
• Course is added as per HEC UG policy
guidelines
• Course code is changed
2 Functional English 3(3-0)
• Title is kept same
• Course contents are updated
• Books are updated
• Course is added as per HEC UG policy
guidelines
3 Expository Writing 3(3-0)
• Replace previously communication
skills course
A-16
BS Computer Science
A-17
BS Computer Science
9 Course Contents
Course Introduction
This course provides fundamental concepts of programming to freshmen. The courses is pre-
requisite to many other courses, therefore, students are strongly advised to cover all contents and
try to achieve CLOs to the maximum possible level. The course may be taught as language
independent. Further, it is up to the university to choose any language for the practical/Lab
purpose but that must be latest and market oriented. At the end of the course the students will be
able to:
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand basic problem-solving steps and C 2 (Understand)
logic constructs.
CLO-2 Apply basic programing concepts. C 3 (Apply)
CLO-3 Design and implement algorithms to solve real C 3 (Apply)
world problems.
Course Outline
A-18
BS Computer Science
Reference Material
The following is the recommended list of books (or their latest editions):
1. Dietel, Paul, and Harvey, Dietel. C++ How to Program. Prentice Hall, 2019.
2. Lafore, Robert. Object-Oriented Programming in C. Indianapolis, Sams, 2005.
3. Sahay, Sourav. Object Oriented Programming with C. Oxford University Press, 2012.
4. Kanetkar, Yashavant. Basic Programming in C++. BPB Publications, 2004.
Course Introduction
This course discusses the object-oriented model in programming. Students taking this course
would have already taken a course on programming. This will help build good quality software
using object-oriented techniques.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand principles of object-oriented C 2 (Understand)
paradigm.
CLO-2 Identify the objects & their relationships to C 2 (Understand)
build object-oriented solution.
CLO-3 Model a solution for a given problem using C 3 (Apply)
object-oriented principles.
CLO-4 Examine an object-oriented solution. C 4 (Evaluate)
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Deitel, Paul, and Deitel, Harvey. C++ How to Program. Prentice Hall, 2016.
2. Laurence, Paul. C++: The Ultimate Crash Course to Learning the Basics of C++.
CreateSpace Independent Publishing Platform, 2017.
3. Lafore, Robert. Object-Oriented Programming in C. Indianapolis, Ind: Sams, 2005.
4. Kanetkar, Yashavant. Basic Programming in C++. BPB Publications, 2004.
Course Introduction
This course introduces digital Logic to the students. The main objective of this course is to
establish proficiency in fundamental concepts of Digital logic, and to teach the students
Boolean Logic, Boolean algebra, gates, functions, multiple logic circuit designs. A key part of
this course is to make the students understand the background processing in the computer.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Acquire knowledge related to the concepts, C 2 (Understand)
tools and techniques for the design of digital
electronic circuits.
CLO-2 Demonstrate the skills to design and C 4 (Analyze) &
analyze both combinational and sequential 6 (Create)
circuits using a variety of techniques.
CLO-3 Apply the acquired knowledge to simulate and C 3 (Apply)
implement small-scale digital circuits.
A-20
BS Computer Science
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Morris, Mano. Digital Logic and Computer Design, 6th edition. Pearson Education
India, 2009.
2. Floyd, Thomas. Digital Computer Electronics, 11th edition. Pearson Education India,
2014.
3. Mazumder, Pinaki, and Idongesit E. Ebong. Lectures on Digital Design Principles.
River Publishers, 2023.
Course Introduction
The purpose of this course is to provide the students with solid foundations in the basic
concepts of programming: data structures and algorithms. The main objective of the course is
to teach the students how to select and design data structures and algorithms that are
appropriate for problems that they might encounter.
A-21
BS Computer Science
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand various data structures and their C 2 (Understand)
algorithms and apply them in implementing & 3 (Apply)
simple applications.
CLO-2 Analyze simple algorithms and determine their C 4 (Analyze)
complexities.
CLO-3 Apply the knowledge of data structure to other C 3 (Apply)
applicationdomains.
CLO-4 Design new data structures and algorithms to C 6 (Create)
solveproblems.
Course Outline
Introduction and Overview, Abstract Data Type, Arrays, Stacks(Push and Pop), Infix, Postfix
and Prefix, Basic Operations, Queues(Insertion, Deletion, De-queues), Heap, Lists, Linked
Lists, Searching(Binary and Sequential), Sorting, Sorting and Hashing, Recursion, Trees,
Linked Lists Implementation, Binary Trees, B-Trees, Trees Traversal, Basic Operations,
Traversals Sets, Graph, Representation of Directed and Undirected Graphs, Traversals,
Minimum Cost Spanning Tree, Complexity(Space and Time).
Reference Material
The following is the recommended list of books (or their latest editions):
1. Drozdek, Adam. Data Structures and Algorithms in C++, 4th Edition, Cengage
Learning, 2012
2. Weiss, Mark. Data Structures and Algorithm Analysis in C++. 4th Edition. Pearson,
2013.
3. Miller, Bradley. et al. Problem Solving with Algorithms and Data Structures Using
Python, 3rd Edition. Franklin, Beedle & Associates, 2023.
4. Lambert, Kenneth. Fundamentals of Python: Data Structures. 2nd Edition. Cengage
Learning, 2018.
5. Weiss, Mark. Data Structures and Algorithm Analysis in Java. 3rd edition. Pearson,
2011.
A-22
BS Computer Science
Course Introduction
The course aims to introduce basic database concepts, different data models, data storage and
retrieval techniques and database design techniques. The course primarily focuses on relational
data modelling and DBMS concepts.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand fundamental database concepts. C 2 (Understand)
CLO-2 Design conceptual, logical and physical database C 6 (Create)
schemas using different data models.
CLO-3 Understand and identify functional C 2 (Understand)
dependencies and resolve database anomalies by
normalizing database tables.
CLO-4 Understand and use Structured Query Language C 2 (Understand)
(SQL) for database definition and manipulation & 3(Apply)
in any DBMS.
Course Outline
Basic database concepts, Database approach vs. file based system, database architecture, three
level schema architecture, data independence, relational data model, attributes, schemas,
tuples, domains, relation instances, keys of relations, integrity constraints, relational algebra,
selection, projection, Cartesian product, types of joins, normalization, functional dependencies,
normal forms, entity relationship model, entity sets, attributes, relationship, entity-relationship
diagrams, Structured Query Language (SQL), Joins and sub- queries in SQL, Grouping and
aggregation in SQL, concurrency control, database backup and recovery, indexes, NoSQL
systems.
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
The students will be provided with a more concise description of state-of-the-art software
process models and application of software engineering concepts as used in a professional
software development environment. This course covers advanced theoretical concepts in
software engineering and provides extensive hands-on experience in dealing with various
issues of software development. It involves a semester-long group software development
project. Emphasis will be placed on agile software development methodologies for team
development, quality assessment, and knowledge management in software engineering.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand various software engineering C 2 (Understand)
processes and activates.
CLO-2 Apply the system modeling techniques to model C 3 (Apply)
a medium size software system.
CLO-3 Apply software quality assurance and testing C 3 (Apply)
principles to medium size software systems.
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
A-24
BS Computer Science
Course Introduction
Artificial Intelligence has emerged as one of the most significant and promising areas of
computing. This course focuses on the foundations of AI and its basic techniques like Symbolic
manipulations, Pattern Matching, Knowledge Representation, Decision Making and
Appreciating the differences between Knowledge, Data and Code. AI programming language
Python has been proposed for the practical work of this course.
Bloom’s Taxonomy
CLO No. Course Learning Outcomes
Domain Level
CLO-1 Understand the fundamental constructs of C 2 (Understand)
Python programming language.
CLO-2 Understand key concepts in the field of artificial C 2 (Understand)
intelligence.
CLO-3 Implement artificial intelligence techniques and C 3 (Apply)
case studies.
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
A-25
BS Computer Science
Course Introduction
This course familiarizes the students with the fundamental concepts of computer networks, its
components and design. The focus is on the data link, network and transport layers. The course
discusses the design, working and different protocols working on these layers.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand the key terminologies and C 2
technologies of computer networks. (Understand)
CLO-2 Understand the services and functions provided by C 2
each layer in the Internet protocol stack. (Understand)
CLO-3 Identify various internetworking devices and C 4 (Analyze)
protocols and their functions in a networking and
analyze working and performance of key
technologies, algorithms and protocols.
CLO-4 Build computer network on various topologies. P 3(Build)
Course Outline
Networking Concepts, Topologies: Bus, Star, Ring, Tree, Mesh, Need of Networks, Peer- to-
Peer networks, Client- Server Networks, Hybrid Networks, Network Models, TCP/IP Model,
OSI Model, Data Link Layer, Error Detection/Correction & Control Techniques, Error Control
Techniques, Stop and Wait ARQ, Go-Back-N ARQ, Selective-Reject ARQ, High Level Data
Link Control Protocols (HDLC, Stop & Wait, Sliding Window, Access Techniques, Random
Access techniques, Aloha, Slotted Aloha, CSMA, CSMA/CD, Controlled Access Techniques,
Reservation, Token Passing , Internetworking Devices, Hubs, Switches, Routers. NICs,
Switching Techniques, Circuit and Packet Switching, Message Switching, Structure of a
Switch, LAN Architectures, Wired LANs, IEEE Standards, Ethernet, Fast and Gigabit Ethernet,
Logical Addressing, IPv4 and IPv6 Addressing and Packet Structure, Transition from IPv4 to
IPv6, ICMPv6, IGMP, Forwarding and Routing, Unicast and Multicast Routing Protocols,
UDP, TCP and SCTP Protocols, Fundamentals of DNS, FTP, SMTP, WWW, HTTP and SNMP
Protocols.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Stallings, Willaim. Data and Computer Communications. 10th Edition. Pearson, 2013
A-26
BS Computer Science
2. Forouzan, Behrouz. Data Communications and Networking, 5th Edition. McGraw Hill,
2012.
3. Tenanbaum, Andrew, and Wetherall, David. Computer Networks, 6th Edition. Pearson,
2021.
4. Kuros, James, and Ross, Keith. Computer Networks: A Top-down Approach. 7th
Edition. Pearson, 2016
Course Introduction
This course will introduce the core concepts of operating systems, such as processes and
threads, scheduling, synchronization, memory management, file systems, input and output
device management and security. The course will consist of assigned reading, weekly lectures,
a midterm and final exam, and a sequence of programming assignments. The goal of the
readings and lectures is to introduce the core concepts. The goal of the programming
assignments is to give students some exposure to operating system code. Students are expected
to read the assigned materials prior to each class, and to participate in in-class discussions.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand the characteristics of different C 2 (Understand)
structures of the operating systems and identify
the core functions of the operating systems.
CLO-2 Analyze and evaluate the algorithms of the core C 4 (Analyze) &
functionsof the operating systems and explain the 5 (Evaluate)
major performance issues regarding the core
functions.
CLO-3 Demonstrate the knowledge in applying system C 3 (Apply)
softwareand tools available in modern operating
systems.
Course Outline
Reference Material:
The following is the recommended list of books (or their latest editions):
1. Silberschatz, Abraham; Galvin, Peter; Gagne, Greg. Operating System Concepts, 10th
Edition. John Wiley & Sons, 2021.
2. Tanenbaum, Andrew; Hebert, Bos. Modern Operating Systems, 5th Edition. Pearson,
2022.
Course Introduction
Detailed study of the basic notions of the design of algorithms and the underlying data
structures. Several measures of complexity are introduced. Emphasis on the structure,
complexity, and efficiency of algorithms.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Explain what is meant by “best”, “expected”, and C 2 (Understand)
“worst” case behavior of an algorithm. Identify
the characteristics of data and/or other conditions
or assumptions that lead to different behaviors.
CLO-2 Determine informally the time and space C 3 (Apply)
complexity of simple algorithms. Use big O,
Omega, Theta notation formally to give
asymptotic upper bounds on time and space
complexity of algorithms. Use of the strategies
(brute-force, greedy, divide-and- conquer, and
dynamic programming) to solve an appropriate
problem.
CLO-3 List and contrast standard complexity classes. C 4 (Analyze)
CLO-4 Solve problems using graph algorithms, C 5 (Evaluate)
including single- source and all-pairs shortest
paths, and at least one minimum spanning tree
A-28
BS Computer Science
Course Outline
Introduction; role of algorithms in computing, Analysis on nature of input and size of input
Asymptotic notations; Big-O, Big Ω, Big Θ, little-o, little-ω, Sorting Algorithm analysis, loop
invariants, Recursion and recurrence relations; Algorithm Design Techniques, Brute Force
Approach, Divide-and-conquer approach; Merge, Quick Sort, Greedy approach; Dynamic
programming; Elements of Dynamic Programming, Search trees; Heaps; Hashing; Graph
algorithms, shortest paths, sparse graphs, String matching; Introduction to complexity classes.
Reference Material:
The following is the recommended list of books (or their latest editions):
1. Cormen, Thomas, et al. Introduction to Algorithms. 4th Edition. The MIT Press, 2022.
2. Kleinberg, Jon, and Tardos, Eva. Algorithm Design. Pearson, 2005.
3. Sedgewick, Robert, and Wayne, Kevin. Algorithms. 4th Edition. Addison-Wesley
Professional, 2011.
Course Introduction
The main objective of this course is to introduce the organization of computer systems and
usage of assembly language for optimization and control. Emphasis should be given to expose
the low-level logic employed for problem solving while using assembly language. At the end,
students should be able to write moderately assembly language subroutines and interfacing
them to any high-level language.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Acquire basic knowledge of computer C 2 (Understand)
organization, architecture & assembly language.
CLO-2 Understand the concepts of basic computer C 2 (Understand)
organization, architecture, and assembly language
techniques.
A-29
BS Computer Science
Course Outline
Reference Material:
The following is the recommended list of books (or their latest editions):
1. Patterson, David A., and John L. Hennessy. Computer Organization and Design. 6th
Edition. Morgan Kaufmann, 2020.
2. Mano, M. Morris. Computer System Architecture. 3rd Edition. Prentice-Hall, Inc.,
1993.
3. Duntemann, Jeff. Assembly language step-by-step: Programming with Linux. 3rd
Edition. John Wiley & Sons, 2011.
4. Bryant, Randal E., and David Richard O’Hallaron. Computer systems: a programmer’s
perspective. 3rd Edition. Prentice Hall, 2016.
5. Britton, Robert. MIPS assembly language programming. 2003.
A-30
BS Computer Science
Course Introduction
This course provides a broad overview of the threats to the security of information systems,
the responsibilities and basic tools for information security, and the levels of training and
expertise needed in organizations to reach and maintain a state of acceptable security. It covers
concepts and applications of system and data security. Areas of particular focus include secure
network design, implementation and transition issues, and techniques for responding to
security breaches.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Explain key concepts of information security such C 1 (Remember)
as design principles, cryptography, risk
management, and ethics.
CLO-2 Discuss legal, ethical, and professional issues in C 2 (Understand)
information security.
CLO-3 Apply various security and risk management tools C 3 (Apply)
for achieving information security and privacy.
CLO-4 Identify appropriate techniques to tackle and solve C 4 (Analyze)
problems in the discipline of information security.
Course Outline
Reference Material:
The following is the recommended list of books (or their latest editions):
1. Stallings, William. Computer Security: Principles and Practice. 3rd Edition., Pearson,
2017.
2. Whitman, Michael E., and Herbert J. Mattord. Principles of Information Security. 6th
Edition., Cengage Learning, 2021.
3. Gollmann, Dieter. Computer Security. 3rd Edition., Wiley, 2016.
4. Easttom, William. Computer Security Fundamentals. 3rd Edition., Pearson, 2020.
Course Introduction
This course serves as an introduction to the basic theory of Computer Science and formal
methods of computation. This course will present the theory of finite automata, as the first step
towards learning advanced topics, such as compiler design. It will also enable the student to
apply the concepts learned in fundamental courses such as Discrete Mathematics, in a
theoretical setting; in particular, the application of proof techniques. The applications of finite
automata towards text processing will be discussed. This course will also develop an
understanding of computation through Turing Machines.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand the working of computer at abstract C 2 (Understand)
level.
CLO-2 Design software and some electronic circuits. C 3 (Apply)
CLO-3 Understand the basic theory behind computer C 2 (Understand)
languages.
CLO-4 Have a sound background for translator software. C 1 (Remember)
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understanding advance data models, technologies C 2 (Understand)
and approaches for building distributed database
systems.
CLO-2 Applying the models and approaches in order to C 3 (Apply)
become enabled to select and apply appropriate
methods for a particular case.
CLO-3 To develop a database solution for a given C 3 (Apply)
scenario/ challenging problem in the domain of
distributed database systems.
Course Outline
Introduction to advance data models such as object relational, object oriented. File
organizations concepts, Transactional processing and Concurrency control techniques,
Recovery techniques, Query processing and optimization, Database Programming (PL/SQL, T-
SQL or similar technology), Integrity and security, Database Administration (Role
management, managing database access, views), Physical database design and tuning,
Distributed database systems, Emerging research trends in database systems, MONGO DB, NO
SQL (or similar technologies)
A-33
BS Computer Science
Reference Material:
The following is the recommended list of books (or their latest editions):
1. Coronel, Carlos, and Steven Morris. Database systems: design, implementation and
management. Cengage learning, 2019.
2. Ramakrishnan, Raghu, and Johannes Gehrke. Database management systems.
McGraw-Hill, Inc., 2002.
3. Elmasri, Ramez. Fundamentals of database systems. Pearson Education India, 2008.
4. Hoffer, Jeffrey A, et al. Modern Database Management. Boston, Pearson, 2016.
5. Silberschatz, Abraham. Database System Concepts. New York Mcgraw-Hill
Education, 2020.
Course Introduction
This course is designed to provide students with a comprehensive introduction to the field of
Human Computer Interaction (HCI). This course aims to impart foundational knowledge in
order to design useful interactive systems based on the needs and the context of the use of the
interactive systems. The course covers topics about the design process and the design principles
that should be considered while designing interactive systems that would provide good a user
experience. This course helps to understand the concept of evaluating designs and prototypes
using different evaluation techniques with the assistance of experts and users.
Bloom’s Taxonomy
CLO No. Course Learning Outcomes
Domain Level
CLO-1 Capabilities of humans and computers that can be C 1 (Remember)
utilized while designing interactive systems.
CLO-2 Understand the process of interaction and causes C 2(Understand)
of problems during interactions and the process of
designing interactive systems.
CLO-3 Awareness and application of design principles for C 3(Apply)
improved user experience.
CLO-4 Awareness of different evaluation techniques to C 3(Apply)
evaluate designs.
Course Outline
Introduction to the field of HCI, The Human Factor, The Computer Factor, The Interaction,
A-34
BS Computer Science
Models of Interaction, Interaction Paradigms, Interaction Design Basics and the design process,
Personas, Scenarios Introduction to Wireframes and Prototypes, Design Principles, Principles
to Support Usability, Principles of Learnability, Principles of Learnability, Flexibility and
Robustness, Shneiderman’s Eight golden rules, Nielsen's heuristics, Introduction to Evaluation,
Evaluation Techniques, Experts Evaluations, Cognitive walkthrough, Heuristic evaluation,
Evaluating through user participation, Laboratory evaluation, Field evaluation, Observational
techniques, Query techniques, and Think-Aloud techniques, Usability Testing, Contemporary
topics and issues, Conducting Experimental, Understanding and the process of A/B Testing.
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
This course covers the basics of modern computer organization and architecture, emphasis on
understanding interaction between computer hardware and software at various levels. Students
will learn concepts of technology, performance evaluation, instruction set design, ALU, data
path and control unit design of processors and pipelining for performance enhancement.
Bloom’s Taxonomy
CLO No. Course Learning Outcomes
Domain Level
CLO-1 Understand the organization of modern computing C 2 (Understand)
systems - microprocessor organization and
architecture.
CLO-2 Understand pipelined processor organization & C 2 (Understand)
hazards, memory hierarchy & storage devices &
multiprocessors.
CLO-3 Perform performance analysis and evaluation. C 4 (Analyze) & 5
(Evaluation)
CLO-4 Apply ALU & control unit implementations, C 3 (Apply)
memory hierarchy and multiprocessors.
A-35
BS Computer Science
Course Outline:
Computer Architecture and Importance for Computer Science Graduates, Instruction Set
Architectures(ISA), Complex Instruction Set Computing (CISC), Reduced Instruction Set
Computing (RISC), Operations of the Computer Hardware, Assembly Language, Registers,
Data and Instruction Representation, Different Types of Instructions, Loops and IF Statements
in Assembly, Supporting Procedures/Functions in Computer Hardware, Supporting Different
Data Types in Hardware, Immediate and Addresses in Instructions, Compiling and Linking
Processes to Convert a C/Java Program into Assembly and Converting that into Machine Code,
Review of Number Systems, Signed and Unsigned Data Types, Arithmetic Operations
(Subtraction, Multiplication, Division) in Hardware, Float Data Types and Arithmetic
Operations on Float, Evaluating Performance of a System, Latency, Response Time, and
Throughput, CPU Execution Time, Calculating CPU Execution Time for a Program,
Benchmarks and Amdahl’s Law, Processor Design, Building a 32-bit ALU, Processor Data
path, Designing a Processor to Execute Instructions and Include Control Unit, Pipelining and
Hazards in Pipelining and Solutions, Memory Hierarchy, Caches, Measuring and Improving
Cache Performance, Direct Mapped Cache, Fully Associative Caches and Cache
Optimizations, Virtual Memory, Virtual Machines. Storage and other I/O topics,
Multiprocessors, Multi-cores and Clusters.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Patterson, David A, and John L Hennessy. Computer Organization and Design : The
Hardware/Software Interface. Cambridge, Ma, Morgan Kaufmann Publishers, 2020.
2. Hennessy, John L., and David A. Patterson. Computer Architecture: A Quantitative
Approach. Elsevier, 2020.
Course Introduction
The course is intended to teach the students basic techniques & practices of compiler
construction. The course will introduce the theory and tools that can be employed to perform
syntax-directed translation of a high-level programming language into an executable code. In
addition to the exposition of techniques for compilation, the course will also discuss various
aspects of the run-time environment into which the high-level code is translated. This will
provide insights into semantics aspects of programming languages (e.g., recursion, dynamic
memory allocation, types & inferences, object orientation, concurrency & multi-threading).
A-36
BS Computer Science
Bloom’s Taxonomy
CLO No. Course Learning Outcomes
Domain Level
CLO-1 Understand programming language concepts, C 2 (Understand)
phases of compilation and translation and execution
of high-level language programs.
CLO-2 Analyze & evaluate the compilation and C 4 (Analyze) & 5
transformation techniques used by the translation (Evaluation)
software.
CLO-3 Apply the knowledge of compiler concepts in C 3 (Apply)
developing application and translator software.
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Watson, Des. A practical approach to compiler construction. Vol. 254. Springer, 2017.
2. Mogensen, Torben Ægidius. Introduction to Compiler Design. Springer Nature, 2024.
3. Dave, Parag H., and Himanshu B. Dave. Compilers: principles and practice. Pearson
Education India, 2012.
4. Puntambekar, Anuradha A. Principles of Compiler Design. Technical Publications,
2009.
5. Cooper, Keith D, and Linda Torczon. Engineering a Compiler. San Francisco,
California. Morgan Kaufmann, 2004.
A-37
BS Computer Science
Course Introduction
Parallel and Distributed Computing is an advanced level programming course that helps to
analyze sequential algorithms for possible modifications and implementation on available
advance machines. This course will cover the study of various parallel and distributed
computing hardware, operating system, algorithm design and implementation techniques in
detail.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Learn about parallel and distributed computers. C 2 (Understand)
CLO-2 Write portable programs for parallel or C 3 (Apply)
distributed architectures using Message-
Passing Interface (MPI) library.
CLO-3 Analyze complex problems with shared memory C 4 (Analyze)
programming with openMP.
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Van Steen, Maarten, and Andrew S. Tanenbaum. Distributed Systems. Leiden, The
Netherlands: Maarten van Steen, 2017.
2. Hwang, Kai, J. J. Dongarra, and Geoffrey C. Fox. Distributed and Cloud Computing:
Clusters, Grids, Clouds, and the Future Internet. Morgan Kaufmann, 2011.
3. Joshi, Unmesh. Patterns of Distributed Systems. Addison Wesley, 2023.
A-38
BS Computer Science
This course provides a detailed presentation and understanding of the basic concepts, principles
and the essential web development languages, tools, and technologies. Students will
experience how to create basic web pages with HTML, including basic structuring of page
content, apply basic formatting styles using CSS, understanding JavaScript and client-side
scripting, and create dynamic web pages by implementing server-side script to perform
operations on a web server.
Bloom’s Taxonomy
CLO No. Course Learning Outcomes
Domain Level
CLO-1 Understand the fundamentals of web application C 2 (Understand)
architecture and web programming technologies.
CLO-2 Apply a structured approach to identifying needs, C 3 (Apply) & 6
interests, and functionality of a website to design (Create)
and develop dynamic websites using HRML, CSS,
JavaScript and PHP.
CLO-3 Design and implement an interactive website C 3 (Apply) & 6
regarding usability, accessibility, and (Create)
internationalization.
CLO-4 Analyze and evaluate website with respect to C 4 (Analyze) & 5
structure, maintainability, accessibility and (Evaluate)
optimization.
Course Outline:
History and Advantages and Disadvantages of Internet, Web Server, Web Browser, Web
Clients, and Search Engines, Client-Server Architecture, Types and Categories of Websites,
Creation and Basic Structure of HTML Document, HTML Tags (Headings , Paragraphs, Line
Break, Horizontal Line, Font, Preformatted Text, Lists, Images, Tables, Hyperlink, Fame, and
Form), CSS, Inserting JavaScript Code in HTML Document, JavaScript Constructs (Variables
and Rules of Naming Variables, Operators, Type Casting, Decision Control Structures, Loops,
Function, Array, and DOM), Creating PHP File, Overview of Variables and Constants, Output
Statement in PHP, Passing Variables Between Pages (URL, Sessions, Cookies, and Forms),
Accessing and Using Database in PHP.
A-39
BS Computer Science
Reference Material:
The following is the recommended list of books (or their latest editions):
1. Duckett, Jon. Web design with HTML, CSS, JavaScript and jQuery Set. Wiley
Publishing, 2014.
2. Nixon, Robin. Learning PHP, MySQL, JavaScript, and CSS: A Step-by-Step Guide to
Creating Dynamic Websites. " O' Reilly Media, Inc.", 2012.
3. Lars, Laurence. JavaScript from Beginner to Professional. Packt Publishing Limited,
2021.
Course Introduction
This course comprises of advanced programming topics in the Java programming Language.
This course builds on the earlier programming offered on Object Oriented Programming.
Advanced concepts of program design, implementation and testing will be introduced within a
framework of object-oriented programming using the Java programming language.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand basic OOP and advanced programming C 2 (Understand)
concepts using Java programming language.
CLO-2 Design, implement and test multi-threaded, C 3 (Apply)
database oriented and network and distributed
applications and event driven GUIs.
CLO-3 Understand Java for functional programming. C 2 (Understand)
CLO-4 Create innovative and robust mobile applications C 6 (Create)
that will be valuable addition to their programming
portfolio.
Course Outline
Java Platform, Java Virtual Machine and Portability, Classes and Object Creation in Java, OOP
Concepts in Java, Data Encapsulation and Abstraction, Inheritance and Polymorphism,
Abstract Classes and Interfaces in Java, Java Packages, Inner Classes and Usage, Accessing
Private Members, Java Collections and Generics , Exception Handling and Importance,
Throwing and Catching Exceptions, try-catch-finally Blocks, Threads and Importance,
A-40
BS Computer Science
Creating Threads, Starting Threads, Seep, Join, Priority, Daemon Threads, Thread
Synchronization and Importance, Sharing Objects Between Threads and Race Conditions,
Synchronized Methods and Synchronized Blocks, wait(), notify(), notifyall(), Explicit Locks
for Synchronization, features in the Java Concurrent Package, Reading and Writing String
Values from a File, Preserving Object State using Serialization, Network Programming, Java
Sockets and the java.net package, TCP Based Programming, UDP Based Programming,
Sending Objects Over the Network Using Serialization, Java Remote Method Invocation
(RMI), Graphical User Interfaces (GUIs), Event Driven Programming and using it with GUIs,
Java Database Connectivity (JDBC),Functional Programming and Importance, Lambdas, Data
Streams in Java.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Deitel, Paul J, and Harvey M Deitel. Java : How to Program. New York, Pearson, 2019.
2. Schildt, Herbert. Java: A Beginner’s Guide, Ninth Edition, 9th Edition. New York,
McGraw-Hill, 2022.
3. Schildt, Herbert. Java: The Complete Reference, 12th Edition. McGraw Hill
Professional, 2021.
Course Introduction
This course provides an overview of machine learning along with various learning tasks. Topics
include Overview of Machine Learning; Supervised Learning; Unsupervised Learning;
Reinforcement Learning; and Deep Learning.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Overview of machine learning. C 1 (Remember)
CLO-2 Supervised, unsupervised and reinforcement C 2 (Understand)
learning.
CLO-3 Implementation of ML algorithms using real world C 3 (Apply)
dataset.
A-41
BS Computer Science
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Alpaydin, Ethem. Introduction to machine learning, 4th Edition, MIT press, 2020.
2. Mitchell, Tom. M. Machine Learning, 1st Edition. McGraw Hill, 1997.
3. James, Gareth, et al. An introduction to statistical learning, 2nd edition. Vol. 112. New
York: springer, 2013.
4. Géron, Aurélien. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow,
3rd edition. " O'Reilly Media, Inc.", 2022
Course Introduction
Data Mining has emerged at the confluence of artificial intelligence, statistics, and databases as
a technique for automatically discovering hidden patterns in large datasets. The main purpose
of this course is the ability to analyze and construct knowledge from data to achieve an
understanding of the development of Classification, Prediction, and Clustering applications.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Apply preprocessing techniques on any given raw C 3 (Apply)
data.
CLO-2 Select and apply proper data mining algorithm to C 2 (Understand)
discover interesting patterns.
A-42
BS Computer Science
Course Outline
Introduction to data mining and basic concepts, Pre-Processing Techniques & Summary
Statistics, Association Rule mining using Apriori Algorithm and Frequent Pattern Trees,
Introduction to Classification Types, Supervised Classification (Decision trees, Naïve Bae
Classification, K-Nearest Neighbors, Support Vector Machines etc.), Unsupervised
Classification (K Means, K Median, Hieratical and Divisive Clustering, Kohonan Self
Organizing maps), outlier & anomaly detection, Web and Social Network Mining, Data Mining
Trends and Research Frontiers. Implementing concepts using Python.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Han, Jiawei, et al. Data Mining: Concepts and Techniques. Burlington, Ma, Elsevier,
2022.
2. Pang-Ning Tan, et al. Introduction to Data Mining. San Francisco, Pearson Education,
2006.
3. Aggarwal, Charu C. Data Mining. Springer, 2015.
4. Hand, David J, et al. Principles of Data Mining. Cambridge, Mass., MIT Press, 2001.
Course Introduction
Object Oriented Analysis & Design course focuses on the fundamental concepts of Object
Orientation and UML as part of the Software Development Life Cycle. The course focuses on
the core activities and artifacts of Object Orientation and UML when used with various
methodologies including XP, Agile and Unified Process. UML 2 notation is used throughout
the course.
A-43
BS Computer Science
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 To learn aspects of Object-oriented analysis and C 2 (Understand)
design.
CLO-2 To be able to analyze complex computing/ real C 4 (Analyze)
world problems using object-oriented principles.
CLO-3 To be able to design computing/real world problems C 6 (Create)
as object-oriented problems using object-oriented
techniques.
Course Outline
The following is the recommended list of books (or their latest editions):
A-44
BS Computer Science
Course Introduction
This course introduces mobile applications programming. The goal of this course is to teach
and train students how to design, implement, test, debug and publish smartphone applications
on smartphone platforms, especially Android. Students will learn how to take their innovative
ideas from conception to the apps market through a series of rigorous hands-on programming
assignments and group projects. This is an introductory course aimed at undergraduate students,
who have object-oriented programming experience. However, there is a significant amount of
programming in this course requiring a commitment on the part of the student. A key part of
this course is group projects where students will work in small teams for joint problem solving.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand aspects of mobile applications C 2
programming and uniqueness from programming for (Understand)
other platforms. & 4 (Analyze)
CLO-2 Understand mobile applications development for the C 2
Android operating system that use basic and (Understand)
advanced phone features.
CLO-3 Design, implement, test, debug and publish C 3 (Apply)
smartphone applications.
CLO-4 Create innovative and robust mobile applications that C 6 (Create)
will be valuable addition to their programming
portfolio.
Course Outline
Android Platform and Architecture, Comparison of Android and Other Platforms, Configuring
Development Environment, Activities, Services, Broadcast Receiver, Fragments, Intents,
Designing Interface Using Views and Widgets, Layouts, List View, Dialogs and Notification,
Menus, Multi-threading, Location and Maps Services, Shared Preferences, Creating and Using
Database, Accessing Sensors, Publishing and Deploying Applications on Android Market.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Horton, John. Android programming for beginners. Packt Publishing Ltd, 2015.
2. Phillips, Bill, and Brian Hardy. Android programming: the big nerd ranch guide.
Pearson Education, 2013.
3. Wei-Meng, Lee. "Beginning Android™ 4 Application Development." (2012).
A-45
BS Computer Science
4. Meier, Reto. Professional Android 4 application development. John Wiley & Sons,
2012.
Course Introduction
This course provides students with an introduction to common cyber security threats,
vulnerabilities, and risks related to web applications, networks, software and mobile
applications. The course provides basic concepts and terminology used in the information and
cyber security fields. Moreover, it will also enable students to differentiate between the various
forms of malware and how they affect computers and networks.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 To be able to identify computer system threats. C 2(Understand)
CLO-2 To be able to identify Malware attacks, and C 2(Understand)
understand the stages of attack and payloads.
CLO-3 Implement various cryptographic techniques and C 3(Apply)
simulate attack scenarios.
Course Outline
Introduction to Cyber security; Networks and the Internet; cyber threat landscape;
understanding security; information security Principles (Confidentiality, Integrity, Availability);
Information Security Terminology; Who are the attackers; Advanced Persistent Threat (APT);
Malware, types of malware; Attacks using malware; Malware Attack Lifecycle: Stages of
Attack; Social engineering attacks; types of payload; Industrial Espionage in Cyberspace; Basic
cryptography; Web application attacks; Database security; Cyber kill chain; Privacy and
anonymity; Network security; Software security; Mobile device security; Mobile app security;
Cyber Terrorism and Information Warfare; Introduction to Digital Forensics; Digital Forensics
Categories.
Reference Material
The following is the recommended list of books (or their latest editions):
A-46
BS Computer Science
Course Introduction
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand the fundamentals of the Flutter C 2 (Understand)
framework and Dart language, incorporate widgets
and state into mobile applications, and use Flutter's
tools to enhance development process.
CLO-2 Apply the principles, and methods of cross- C 3 (Apply)
platform tools to develop interactive mobile
applications.
CLO-3 Test cross-platform mobile applications. C 5 (Evaluation)
Course Outline
Setting Flutter Development Environment, Flutter UI: Important Widgets, themes and layout,
User Interactions: Forms and Gestures, Flutter Animations and Using Canvas, Flutter Routing,
Flutter State Management, Dart Object-Oriented Programming Concepts (Keywords, built-in
types, functions, operators, control flow statements, exceptions, classes, generics, libraries and
visibility, asynchrony support, generators, callable classes, isolates, typedefs, metadata,
comments), Working with Files (Reading/Writing to Files, Using JSON, Using Shared
Preferences), Working with SQLite Database, Making RESTful APL Calls with HTTP, Using
Firebase, Working with Location and Maps, Testing Flutter Applications.
A-47
BS Computer Science
Reference Material
The following is the recommended list of books (or their latest editions):
1. Alessandria, Simone, and Brian Kayfitz. Flutter Cookbook: Over 100 proven
techniques and solutions for app development with Flutter 2.2 and Dart. Packt
Publishing Ltd, 2021.
2. Bailey, Thomas, and Alessandro Biessek. Flutter for Beginners: An introductory guide
to building cross-platform mobile applications with Flutter 2.5 and Dart. Packt
Publishing Ltd, 2021.
3. Chopra, Deepti, and Roopal Khurana. Flutter and Dart: Up and Running: Build native
apps for both iOS and Android using a single codebase (English Edition). BPB
Publications, 2023.
Course Introduction
Cloud computing provides huge computation and storage resources on demand and exciting
most individuals and businesses. Large user-base is attracted to use cloud computing mainly
due to pay-per-usage and on-demand resource provisioning characteristics. However, cloud
computing systems are developed using distributed computing concepts and algorithms. In this
course, you will learn tools, techniques, algorithms, and systems related to cloud computing
theoretically and practically.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understanding basic concepts of distributed C 2 (Understand)
systems and cloud computing technologies.
CLO-2 Understanding of virtualization and its various C 2 (Understand)
flavors.
CLO-3 Ability to address large scale data processing C 3 (Apply)
challenges.
Course Outline
Service Models Data Storage in Clouds Miscellaneous Services of Cloud Computing Cloud
Deployment Models, Service Oriented Architecture, Cloud Security Threats, Trust Issues in
Cloud, Mechanisms Related to Cloud Infrastructure, Service Agreements, Cloud Hosting Data
Center Design, Cloud Architecture, Specialized Cloud Mechanisms, Cloud Management,
Fundamental Cloud Architectures, Advanced Cloud Architectures, Cloud Federation, Cloud
Delivery/Service Models’ Perspectives, Inter-Cloud Resource Management, Cloud Cost
Metrics and Pricing Models, Cloud Service Quality Metrics, Cloud Simulator, Computer
Security Basics, Network Security Basics, Cloud Security Mechanisms, Privacy Issues of
Cloud Computing, Security Issues of Cloud Computing, Trust Issues of Cloud Computing,
Open Issues in Cloud, Disaster Recovery in Cloud Computing, Migrating to the Cloud, Cloud
Application Scalability and Resource Scheduling, Mobile Cloud Computing, Special Topics in
Cloud Computing
Reference Material
The following is the recommended list of books (or their latest editions):
1. Erl, Thomas, Ricardo Puttini, and Zaigham Mahmood. Cloud computing: concepts,
technology & architecture. Pearson Education, 2013.
2. Kris Jamsa. Cloud Computing. Jones & Bartlett Publishers, 2013.
3. Liu, Fang, et al. "NIST cloud computing reference architecture." NIST special
publication, (2011).
Course Introduction
The World Wide Web has become a major delivery platform for information resources. Web
Engineering introduces a structured methodology utilized in software engineering to web
development projects. This course examines systematic, disciplined and quantifiable
approaches to developing of high-quality, reliable and usable web applications. The course
addresses the concepts, methods, technologies, and techniques of developing Web sites that
collect, organize and expose information resources.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand concepts, principles & methods of C 2 (Understand)
Web engineering.
CLO-2 Apply the principles, and methods of Web C 3 (Apply)
engineering to Web applications development.
A-49
BS Computer Science
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Rajiv Chopra. Web Engineering. Delhi, Phi Learning Private Limited, 2016.
2. Suh, Woojong. Web Engineering. IGI Global, 2005.
3. Pressman, Roger, and David Lowe. Web Engineering: A Practitioner’s Approach.
McGraw-Hill Science, Engineering & Mathematics, 2009.
Course Introduction
Testing is a critically important part of software development and delivery. This course will
give you a broad introduction to the established practices and approaches to testing and
improving the quality of software products.
A-50
BS Computer Science
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO 1 Understand and explain the key concepts and principles of C 2(Understand)
software testing.
CLO 2 Describe, plan and apply various testing techniques. C 3(Apply)
CLO 3 Specify and perform the activities involved in a testing C 3(Apply)
process.
Course Outline
Concept and difference between software verification and validation, Testing techniques. Black
Box testing, White Box and Grey Box testing techniques. Quality Assurance planning and
execution. Automated testing topics include constructing a framework, scripting techniques,
generating a test data, generating test architecture, pre/post-processing, test maintenance, and
job specific metrics. Introduction to latest trends and tools used for Software Testing and
Quality Assurance.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Jorgensen, Paul C., and Byron DeVries. Software Testing. Auerbach Publications 2021
2. Abu Sayed Mahfuz. Software Quality Assurance : Integrating Testing, Security, and
Audit. Boca Raton, Auerbach, 2020.
3. Utting, Mark, and Bruno Legeard. Practical model-based testing: a tools approach.
Elsevier, 2010.
4. Tian, Jeff. Software quality engineering: testing, quality assurance, and quantifiable
improvement. John Wiley & Sons, 2005.
5. Ammann, Paul, and Jeff Offutt. Introduction to Software Testing. Cambridge, United
Kingdom ; New York, Ny, Usa, Cambridge University Press, 2017.
Course Introduction
A-51
BS Computer Science
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand techniques for information retrieval, C 2
language translation, and text classification. (Understand)
CLO-2 Language Modeling. C 6 (Create)
CLO-3 Understand and contrast deterministic and stochastic C 2
grammars, providing examples to show the adequacy (Understand)
of each.
CLO-4 Solve classic and stochastic algorithms for parsing C 3 (Apply)
natural language.
Course Outline
Introduction & History of NLP, Parsing algorithms, Basic Text Processing, Minimum Edit
Distance, Language Modeling, Spelling Correction, Text Classification, Deterministic and
stochastic grammars, CFGs, Representing meaning /Semantics, Semantic roles, Semantics and
Vector models, Sentiment Analysis, Temporal representations, Corpus-based methods, N-
grams and HMMs, Smoothing and backoff, POS tagging and morphology, Information
retrieval, Vector space model, Precision and recall, Information extraction, Relation Extraction
(dependency, constituency grammar), Language translation, Text classification, categorization,
Bag of words model, Question and Answering, Text Summarization.
Reference Material
The following is the recommended list of books (or their latest editions):
A-52
BS Computer Science
Course Introduction
This is an introductory course in digital image processing. The course covers preliminary topics
in DIP with emphasis on the mathematics for image processing and enhancement, filtering,
segmentation, and restoration issues image processing. The aim is to enable students gain
familiarity with digital image processing problems, techniques, and methods.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understanding of the issues involved in image C 2 (Understand)
processing and the approaches, algorithms, and tools
used to solve them.
CLO-2 Able to compare and evaluate different approaches, and C 4 (Analyze) & 5
think about alternate solutions. (Evaluate)
CLO-3 Apply existing techniques to practical problems and C 3 (Apply)
undertake an undergrad level project in the area of image
processing.
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Gonzalez, Rafael C. Digital image processing. 4th Edition, Pearson education india,
2017.
2. Gonzalez, Rafael C. Digital image processing using MATLAB. 3rd Edition, Gatesmark,
2020.
3. Efford, Nick. Digital image processing: a practical introduction using java (with CD-
ROM). Addison-Wesley Longman Publishing Co., Inc., 2000.
Course Introduction
Data Science is the study of the generalizable extraction of knowledge from data. Being a data
scientist requires an integrated skill set spanning mathematics, statistics, machine learning,
databases and other branches of computer science along with a good understanding of the craft
of problem formulation to engineer effective solutions. The aim of this course is to: Introduce
students to this rapidly growing field and equip them with some of its basic principles and tools
as well as its general mindset. Explain the significance of exploratory data analysis in data
science. Identify common approaches used for Feature Generation as well as Feature Selection,
and finally discuss the Ethical and Privacy issues. Programming language Python has been
proposed for the practical work of this course.
Bloom’s Taxonomy
CLO No Course Learning Outcome
Domain Level
CLO-1 Describe what Data Science is and the skill sets C 2 (Understand)
needed to be a data scientist.
CLO-2 Apply EDA and the Data Science process in a C 3 (Apply)
case study.
CLO-3 Comprehend the fundamental constructs of C 2 (Understand)
Python programming language.
CLO-4 Apply basic machine learning algorithms to C 3 (Apply)
solve real world problems of moderate
complexity.
Course Outline
Introduction: What is Data Science? Big Data and Data Science hype, Datafication, Current
landscape of perspectives, Skill sets needed; Statistical Inference: Populations and samples,
Statistical modeling, probability distributions, fitting a model, Intro to Python; Exploratory
Data Analysis and the Data Science Process; Basic Machine Learning Algorithms: Linear
Regression, k-Nearest Neighbors (k-NN), k-means, Naive Bayes; Feature Generation and
Feature Selection; Dimensionality Reduction: Singular Value Decomposition, Principal
Component Analysis; Mining Social-Network Graphs: Social networks as graphs, Clustering
of graphs, Direct discovery of communities in graphs, Partitioning of graphs, Neighborhood
properties in graphs; Data Visualization: Basic principles, ideas and tools for data visualization;
Data Science and Ethical Issues: Discussions on privacy, security, ethics, Next-generation data
scientists.
Reference Material
The following is the recommended list of books (or their latest editions):
A-54
BS Computer Science
1. Blum, Avrim, John Hopcroft, and Ravindran Kannan. Foundations of Data Science.
Vorabversion eines Lehrbuchs, 2016.
2. Saltz, Jeffrey S., and Jeffrey M. Stanton. An Introduction to Data Science. 1 st Edition,
SAGE Publications, 2017.
3. Severance, Charles R. Python for Everybody: Exploring Data Using Python 3. 1 st
Edition, CreateSpace Independent Publishing Platform, 2016.
4. O'Neil, Cathy, and Rachel Schutt. Doing Data Science: Straight Talk from the
Frontline. 1st Edition, O'Reilly Media, 2014.
5. EMC Education Services. Data Science and Big Data Analytics: Discovering,
Analyzing, Visualizing and Presenting Data. 1 st Edition, John Wiley & Sons, 2015.
Course Introduction
Gives an overview about importance & significance of Data Warehousing (DWH) and Business
Intelligence (BI). Discusses the main concepts and solutions for DWH and BI. The key concepts
underpinning the logical design, physical design and implementation of data warehouses are
appraised. Data collection, data extraction, cleansing, transformation and loading methods are
considered along with query optimization techniques. Differentiation between OLAP & OLTP.
Data Warehousing supports information processing by providing a solid platform of integrated,
historical, and consistent data for performing enterprise- wide data analysis.
Logical Model; Indexes; Physical Model; Optimizations; OLAP Operations, Queries and Query
Optimization; Building the DW; Data visualization and reporting based on Datawarehouse
using SSAS and Tableau; Data visualization and reporting based on Cube; Reports and
Dashboard management on PowerBI; Dashboard Enrichment; Business Intelligence Tools.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Inmon, William H. Building the data warehouse. 4th Edition. John Wiley & Sons, 2005.
2. Kimball, Ralph. The Data Warehouse Toolkit, 3rd Edition. Wiley, 2013.
3. Golfarelli, Matteo, and Stefano Rizzi. Data warehouse design: Modern principles and
methodologies. 1st Edition. McGraw-Hill, Inc., 2009.
Course Introduction
Probability has applications in computer science disciplines. This course is intended to fill the
gap in students’ knowledge of probability.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Measures of central tendency and variation. C 1 ( Remember )
CLO-2 The concept of a sets, probability, random C 2 ( Understand )
variables and probability distribution.
CLO-3 Statistical inference, regression and correlation. C 4 ( Analyze )
Course Outline
Introduction to Statistics and Data Analysis, Statistical Inference, Samples, Populations, and
the Role of Probability. Sampling Procedures. Discrete and Continuous Data. Statistical
Modeling. Types of Statistical Studies. Probability: Sample Space, Events, Counting Sample
Points, Probability of an Event, Additive Rules, Conditional Probability, Independence, and the
Product Rule, Bayes’ Rule. Random Variables and Probability Distributions. Mathematical
Expectation: Mean of a Random Variable, Variance and Covariance of Random Variables,
Means and Variances of Linear, Combinations of Random Variables, Chebyshev’s Theorem.
Discrete, Probability Distributions. Continuous Probability Distributions. Fundamental
Sampling Distributions and Data Descriptions: Random Sampling, Sampling Distributions,
A-56
BS Computer Science
Sampling Distribution of Means and the Central Limit Theorem. Sampling Distribution of S2,
t-Distribution, F-Quantile and Probability Plots, Single Sample & One- and Two-Sample
Estimation Problems. Single Sample & One- and Two-Sample Tests of Hypotheses. The Use
of P-Values for Decision Making in Testing Hypotheses (Single Sample & One- and Two-
Sample Tests), Linear Regression and Correlation. Least Squares and the Fitted Model,
Multiple Linear Regression and Certain, Nonlinear Regression Models, Linear Regression
Model Using Matrices, Properties of the Least Square Estimators.
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
Course Outline
derivatives, tangent planes and differentiability, the chain rule, the gradient and directional
derivatives, maxima and minima, Lagrange multipliers, double integrals over rectangles and
general regions, double integrals in polar coordinates, applications of double integrals, surface
area as double integral, triple integral, cylindrical and spherical coordinates, vector fields and
line integrals, Greens theorem, divergence and curl, Stokes theorem, divergence theorem.
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
This elementary course in applied linear algebra prepares students for learning advanced
concepts in computer science.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Algebra of linear transformations and matrices. C 2 ( Understand )
CLO-2 Systems of equations. C 1 ( Remember )
CLO-3 Eigenvalues and eigenvectors. C 3 ( Apply )
Course Outline
A-58
BS Computer Science
Factorization of the DFT. Matrix. Fast Fourier Transforms. The Discrete Time Fourier
Transform.
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
Students in the senior level needs good technical writing skills not only for writing project report
but also useful for them to communicate their resume and get place in the market. This is a high
level course which provide useful knowledge to the students for writing proposals etc. Further,
the course aims at augmenting students’ proficiency in technical writing in order to sensitize
them to the dynamics, challenges, and needs of the modern world characterized by
technologically advanced social, cultural, and corporate settings. It will focus on students’
ability to effectively convey and exchange information in cross-cultural, international, and
multinational milieu necessitated by the emergence of global society.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Organizing information and generating solution. C 2 ( Understand )
CLO-2 Designing document with best layout and C 3 ( Apply )
structure.
CLO-3 Creating a professional report. C 6 ( Create )
A-59
BS Computer Science
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Zobel, Justin. Writing for Computer Science. 3rd Edition., Springer London, 2014.
2. Hardesty, Ray E. Technical and Business Writing for Working Professionals. Xlibris,
2011.
3. Brown, Bill Wesley. Successful Technical Writing: Documentation for Business and
Industry. 2nd Edition., Goodheart-Willcox, 2000.
Course Introduction
A-60
BS Computer Science
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand basic concepts, principles and methods C 2 (Understand)
of MATLAB programming.
CLO-2 Write small programs for mathematical problems C 3 (Apply)
and to perform computations in MATLAB.
CLO-3 Use MATLAB effectively. C 3 (Apply)
Course Outline:
Introduction to MATLAB Windows, Built-in Functions, Arrays, Matrices, Script Files, Plots,
Functions and Function Files, Loops, Selection Statements, Polynomials, Curve Fitting and
Interpolation.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Lipsman, Ronald L., et al. A Guide to MATLAB: For Beginners and Experienced Users.
3rd Edition., Cambridge University Press, 2014.
2. Etter, Delores M., David C. Kuncicky, and Douglas W. Hull. Introduction to MATLAB.
4th Edition., Pearson, 2018.
3. Moore, Holly. MATLAB for Engineers. 4th Edition., Pearson, 2022.
Course Introduction
Main objective of the course is to build an appreciation for the fundamental concepts in
computing and to become familiar with PC productivity software.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand basics of computing technology C 2 (Understand)
(software hardware and computer networks).
CLO-2 Understand number systems conversions and C 2 (Understand)
arithmetic.
A-61
BS Computer Science
Course Outline
Brief history of Computer, Four Stages of History, Computer Elements, Processor, Memory,
Hardware, Software, Application Software its uses and Limitations, System Software its
Importance and its Types, Types of Computer, Introduction to CBIS (Computer Based
Information System), Methods of Input and Processing, Class2. Organizing Computer Facility,
Centralized Computing Facility, Distributed Computing Facility, Decentralized Computing
Facility, Input Devices. Keyboard and its Types, Terminal (Dump, Smart, Intelligent),
Dedicated Data Entry, SDA (Source Data Automation), Pointing Devices, Voice Input, Output
Devices. Soft- Hard Copies, Monitors and its Types, Printers and its Types, Plotters, Computer
Virus and its Forms, Storage Units, Primary and Secondary Memories, RAM and its Types,
Cache, Hard Disks, Working of Hard Disk, Diskettes, RAID, Optical Disk Storages (DVD, CD
ROM), Magnetic Types, Backup System, Data Communications, Data Communication Model,
Data Transmission, Digital and Analog Transmission, Modems, Asynchronous and
Synchronous Transmission, Simplex. Half Duplex, Full Duplex Transmission,
Communications, Medias (Cables, Wireless), Protocols, Network Topologies (Star, Bus, Ring),
LAN, LAN, Internet, A Brief History, Birthplace of ARPA Net, Web Link, Browser, Internet
Services provider and Online Services Providers, Function and Features of Browser, Search
Engines, Common Services available on Internet, Introduction to MS Word, MS Excel, MS
PowerPoint.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Shelly, Gary B., and Misty E. Vermaat. Discovering Computers: Digital Technology,
Data, and Devices. 17th Edition., Cengage Learning, 2022.
2. Sinha, P.K. Computer Fundamentals. 8th Edition., BPB Publications, 2020.
3. Williams, Brian K. Using Information Technology: A Practical Introduction to
Computers & Communications. 11th Edition., McGraw-Hill Education, 2015.
4. O'Leary, Timothy J., and Linda I. O'Leary. Computing Essentials 2024. 29 th Edition.,
McGraw-Hill Education, 2023.
Course Introduction
This is first course in English to the Bachelor of Science students and covers all thefundamental
concept of English composition and comprehension. The course is designed in such a way that
students can use this knowledge to further enhance theirlanguage skills in English. The course
aims at enhancing students’ skill andcompetence in communicating their ideas in writing and
speaking in English language. It will primarily focus on four areas of language to help the
students achieve proficiency in language use, develop skills in listening comprehension,
improve reading efficiency, use the conventions of standard written English with skill and
assertion, build-up vocabulary, and clearly and accurately reproduce specific data. It will
illustrate the force and effectiveness of simple and direct English.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO 1 Essay writing and sentence errors. C 1 ( Remember )
CLO 2 Deliver oral presentations. C 3 ( Apply )
CLO 3 Narration and reviewing. C 5 ( Evaluate )
Course Outlines
Paragraph and Essay Writing, Descriptive Essays; Sentence Errors, Persuasive Writing; Howto
give presentations, Sentence Errors; Oral Presentations, Comparison and Contrast Essays,
Dialogue Writing, Short Story Writing, Review Writing, Narrative Essays, Letter Writing
Reference Material
The following is the recommended list of books (or their latest editions):
1. Langan, John. College writing skills with readings. 5th Edition. New York. 2001.
2. Khattak, Arif. A Textbook of English Prose and Structure. GIKI Institute, 2000.
3. Bloor, Thomas, and Meriel Bloor. The functional analysis of English: A Hallidayan
approach. 3rd Edition. Routledge, 2013.
4. Klammer, Thomas P. Analyzing English Grammar, 4th Edition. Pearson Education
India, 2004.
A-63
BS Computer Science
Course Introduction
The course introduces students to communications so they can effectively communicate their
message. The course also covers how to make an effective presentation, both written and verbal.
Various modern techniques of communicationand presentation skills are covered in this course.
Further the course aims to enhancestudents’ linguistic command, so they could communicate
effectively in diversifiedsocio-cultural situations; create larger stretches of interactive text in
speech and writing; and identify and repair any instances of potential communication break-up.
Course Outline
Principles of writing good English, understanding the composition process: writing clearly;
words, sentence and paragraphs; Comprehension and expression; Use of grammar and
punctuation. Process of writing, observing, audience collecting, composing, drafting and
revising, persuasive writing, reading skills, listening skills and comprehension, skills for taking
notes in class, skills for exams; Business communications; planning messages, writing concise
but with impact. Letter formats, mechanics of business, letter writing, letters, memo and
applications, summaries, proposals, writing resumes, styles and formats, oral communications,
verbal and non-verbal communication, conducting meetings, small group communication, taking
minutes. Presentation skills; presentation strategies, defining the objective, scope and audience
of the presentation, material gathering material organization strategies, time management,
opening and concluding, use of audio-visual aids, delivery and presentation.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Vawdrey, Colleen, Ted D. Stoddard, and R. DerMont Bell. Practical Business English.
Richard d Irwin,1993.
2. Nielsen, John. Effective Communication Skills: The Foundations for Change. Xlibris
Corporation, 2008.
3. Langan, John. College writing skills with readings. 5th Edition. McGraw-Hill Education.
2001.
4. Khattak, Arif. A Textbook of English Prose and Structure. GIKI Institute, 2000.
A-64
BS Computer Science
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand the key concepts of Discrete Structures C 2 (Understand)
such as Sets, Permutations, Relations, Graphs and
Trees etc.
CLO-2 Apply formal logic proofs and/or informal, but C 3 (Apply)
rigorous, logical reasoning to real problems, such as
predicting the behavior of software or solving
problems.
CLO-3 Apply discrete structures into other computing C 3 (Apply)
problems such as formal specification, verification,
databases, artificial intelligence, and cryptography.
CLO-4 Differentiate various discrete structures and their C 4 (Analyze)
relevance within the context of computer science,
in the areas of data structures and algorithms, in
particular.
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
A-65
BS Computer Science
1. Rosen, Kenneth H. Discrete Mathematics and Its Applications. 7th Edition., McGraw-
Hill Education, 2012.
2. Epp, Susanna S. Discrete Mathematics with Applications. 4 th Edition., Cengage
Learning, 2010.
3. Johnsonbaugh, Richard. Discrete Mathematics. 7th Edition., Pearson, 2018.
4. Kolman, Bernard, Robert Busby, and Sharon Ross. Discrete Mathematical Structures.
4th Edition., Pearson, 2014.
5. Grimaldi, Ralph P. Discrete and Combinatorial Mathematics: An Applied Introduction.
Pearson, 2016.
6. Grassmann, Winifred. Logic and Discrete Mathematics: A Computer Science
Perspective. Springer, 2007.
Course Introduction
The course focuses on differential and integral calculus and other topics that are relevant to
undergraduate program studies.
Course Outline
Real Numbers and the Real Line, Coordinates, Lines, and Increments, Functions, Shifting
Graphs, Trigonometric Functions. Limits and Continuity: Rates of Change and Limits, Rules
for Finding Limits, Target Values and Formal Definitions of Limits, Extensions of the Limit
Concept, Continuity, Tangent Lines. Derivatives: The Derivative of a Function, Differentiation
Rules, Rates of Change, Derivatives of Trigonometric Functions, The Chain Rule, Implicit
Differentiation and Rational Exponents, Applications of Derivatives. Integration: Indefinite
A-66
BS Computer Science
Reference Material
The following is the recommended list of books (or their latest editions):
1. Thomas, George, and Finney, Ross. Calculus and Analytic, 10th Edition. Addison
Wesley. 2000.
2. Swokowski, Earl. Calculus and Analytical Geometry, 6th Edition. Brooks/Cole
Publishers. 1994.
3. Stewart, James. Calculus, 8th Edition. Cengage Learning. 2015
Course Introduction
To provide Basic information about Islamic Studies. To enhance understanding of the students
regarding Islamic Civilization. History of Islam, understanding of the worship and its
usefulness. The basic concept of Quran Pak: wisdom, patience, loyalty. The comparative
analysis of Islam with other religions. The Concept and Value of Haqooq ul Ibad (Bandon Kay
Haqooq) in Islam. What is The rights of people in Islamic Point of View. Islamic point of view
about other religions.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 To further enhance the knowledge of Islam. C 1 (Remember)
CLO-2 To understand the basic concept of Islam and C 2 (Understand)
Quran Pak.
CLO-3 To understand the concept of Haqooq ul ibad in C 2 (Understand)
the light of Quran.
CLO-4 To know the importance of Islamic concept about C 4 (Analyze)
A-67
BS Computer Science
other religions.
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
Pakistan studies is an important course at this university in which students study about their
motherland. The following are the specific objective of the course
• To develop vision of Historical Perspective, Government, Politics, Contemporary
Pakistan, ideological background of Pakistan.
• To study the process of governance, national development, issues arising in the
modern age and posing challenges to Pakistan.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 To further educate students about the history of C 1 (Remember)
Pakistan.
CLO-2 To educate student about the various pillar of the C 2 (Understand)
state.
CLO-3 To educate student Government and politics. C 2 (Understand)
A-68
BS Computer Science
Course Outline
Historical background of Pakistan: Muslim society in Indo-Pakistan, the movement led by the
societies, the downfall of Islamic society, the establishment of British Raj- Causes and
consequences. Political evolution of Muslims in the twentieth century: Sir Syed Ahmed Khan;
Muslim League; Nehru; Allama Iqbal: Independence Movement; Lahore Resolution;Pakistan
culture and society, Constitutional and Administrative issues, Pakistan and its geo- political
dimension, Pakistan and International Affairs, Pakistan and the challenges ahead.
Reference Material
The following is the recommended list of books (or their latest editions):
Course Introduction
This course is designed to help students evaluate the business skills and commitment necessary
to successfully operate an entrepreneurial venture and review the challenges and rewards of
entrepreneurship. Students will learn about themselves, their decisions, and their goals to
determine how entrepreneurship can play a role in their lives. Students will also be introduced
to entrepreneurship from an economic perspective and the concepts of environmentally
sustainable practices and social entrepreneurship.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Identify and assess sources of support for small C 2 (Understand)
businesses and entrepreneurs and identify the
critical factors that are used to identify business
start-up ideas – including forms of ownership.
CLO-2 Identify the financial, marketing, legal, human C 2 (Understand)
resource, operations, and general management
skills that are necessary to successfully launch and
operate a successful new venture.
A-69
BS Computer Science
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Hisrich, Robert D., Michael P. Peters, and Dean A. Shepherd. Entrepreneurship. 9th
Edition, McGraw-Hill/Irwin, 2012.
2. Greene, Christopher L. Entrepreneurship: Ideas in Action. 5th Edition, South-Western
Educational Pub, 2011.
3. Bygrave, William D., and Andrew Zacharakis. Entrepreneurship. 2nd Edition, Wiley,
2010.
4. Kuratko, Donald F. Entrepreneurship: Theory, Process, and Practice. 8th Edition, South-
Western College Pub, 2008.
5. Barringer, Bruce R., and R. Duane Ireland. Entrepreneurship: Successfully Launching
New Ventures. 4th Edition, Prentice Hall, 2011.
Course Introduction:
This course is designed to provide students with fundamental knowledge about civics,
citizenship, and community engagement. In this course, the students will learn about the
essentials of civil society, government, civic responsibilities, inclusivity, and effective ways to
participate in shaping the society which will help them apply theoretical knowledge to the real-
world situations to make a positive impact on their communities.
A-70
BS Computer Science
Bloom’s Taxonomy
CLO No. Course Learning Outcomes
Domain Level
CLO-1 Demonstrate fundamental understanding of civics, C 2(Understand)
government, citizenship and civil society.
CLO-2 Understand the concept of community and recognize C 2(Understand)
the significance of community engagement for
individuals and groups.
CLO-3 Recognize the importance of diversity and inclusivity C 4(Analyze)
for societal harmony and peaceful co-existence.
Course Outline
A-71
BS Computer Science
• Promoting inclusive citizenship and equal rights for societal harmony and peaceful co-
existence.
As part of the overall learning requirements, the course may have one or a combination of the
following practical activities:
1. Community Storytelling: Students can collect and share stories from community members.
This could be done through oral histories, interviews, or multimedia presentations that capture
the lived experiences and perspectives of diverse individuals.
2. Community Event Planning: Students can organize a community event or workshop that
addresses a specific issue or fosters community interaction. This could be a health fair,
environmental cleanup, cultural festival, or educational workshop.
3. Service-Learning: Students can collaborate with a local nonprofit organization or
community group. They can actively contribute by volunteering their time and skills to address
a particular community need, such as tutoring, mentoring, or supporting vulnerable populations.
4. Cultural Exchange Activities: Students can organize a cultural exchange event that
celebrates the diversity within the community. This could include food tastings, performances,
and presentations that promote cross-cultural understanding.
Reference Material:
The following is the recommended list of books (or their latest editions):
A-72
BS Computer Science
Course Introduction
A Computing graduate as professional has some responsibilities with respect to the society. This
course develops student understanding about historical, social, economic, ethical, and
professional issues related to the discipline of Computing. It identifies key sources for
information and opinion about professionalism and ethics. Students analyze, evaluate, assess
ethical & professional computing case studies.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Understand the concepts of key, ethical, managerial C 2(Understand)
and legal issues typically encountered by an IT
professional.
CLO-2 Identify, access and critically review appropriate and C 3(Apply)
relevant literature drawn from academic, technical,
legal, professional business sources.
CLO-3 Evaluate and critically reflect upon self-presentation. C 5(Evaluate)
Course Outline
Reference Material
The following is the recommended list of books (or their latest editions):
1. Bott, Frank, Allison Coleman, Jack Eaton, and Diane Rowland. Professional Issues in
Software Engineering. 3rd Edition., CRC Press, 2000.
2. Johnson, Deborah G. Computer Ethics. 4th Edition., Pearson, 2009.
3. Bott, Frank. Professional Issues in Information Technology. 2nd Edition., BCS Learning
& Development Limited, 2014.
4. Baase, Sara. A Gift of Fire: Social, Legal, and Ethical Issues for Computing and the
Internet. 3rd Edition., Prentice Hall, 2008.
A-73
BS Computer Science
Course Introduction
The course introduces students with the basic concept of Physics and electronics. Students are also
taught Physics laws and other associate topics to prepare them for the advanced level courses in this
area. The focus of the course on e lectric force and its applications and related problems,
conservation of charge, charge quantization, Electric fields due to point charge and lines of
force and many other useful topics.
Bloom’s Taxonomy
CLO No Course Learning Outcomes
Domain Level
CLO-1 Comprehend the working knowledge of fundamental C 2(Understand)
laws of physics.
CLO-2 Apply the knowledge of fundamental laws to solve C 3(Apply)
various real world problems.
CLO-3 Analyze different physical problems using the C 4(Analyze)
knowledge gained from different areas like
electromagnetism, optics etc.
Course Outline
Electric force and its applications and related problems, conservation of charge, charge
quantization, Electric fields due to point charge and lines of force. Ring of charge, Disk of
charge, A point charge in an electric field, Dipole in a n electric field, The flux of vector field,
The flux of electric field, Gauss’ Law, Application of Gauss’ Law, Spherically symmetric
charge distribution, A charge isolated conductor, Electric potential energy, Electric potentials,
Calculating the potential from the field and related problem Potential due to point and
continuous charge distribution, Potential due to dipole, equipotential surfaces, Calculating the
field from the potential, Electric current, Current density, Resistance, Resistivity and
conductivity, Ohm’s law and its applications, The Hall effect, The magnetic force on a current,
The Biot- Savart law, Line of B, Two parallel conductors, Amperes’ s Law, Solenoid, Toroids,
Faraday’s experiments, Faraday’s Law of Induction, Lenz’s law, Motional emf, Induced
electric field, Induced electric fields, The basic equation of electromagnetism, Induced
Magnetic field, The displacement current, Reflection and Refraction of light waves, Total
A-74
BS Computer Science
internal reflection, Two source interference, Double Slit interference, related problems,
Interference from thin films, Diffraction and the wave theory, related problems, Single-Slit
Diffraction, related problems, Polarization of electromagnetic waves, Polarizing sheets, related
problems.
Reference Material
The following is the recommended list of books (or their latest editions):
1. Halliday, David, Robert Resnick, and Jearl Walker. Fundamentals of physics. John Wiley
& Sons, 2013.
2. Garcia, Narciso, and Arthur Damask. Physics for computer science students: with emphasis
on atomic and semiconductor physics. Springer Science & Business Media, 2012.
A-75