You are on page 1of 8

CSC241 

Object Oriented Programming  Fall 2021 

COMSATS University Islamabad 
 

COURSE DESCRIPTION FILE 

CSC241 Object Oriented Programming 

DEPARTMENT OF ELECTRICAL & COMPUTER ENGINEERING 

   

COMSATS University Islamabad Page 1


CSC241 Object Oriented Programming  Fall 2021 

COMSATS University Islamabad 
 

COURSE DESCRIPTION FILE 

CSC241 Object Oriented Programming 

DEPARTMENT OF ELECTRICAL & COMPUTER ENGINEERING 

Prepared By:  Checked By:  Approved By: 


 
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐  ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐  ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ 
   

COMSATS University Islamabad Page 2


CSC241 Object Oriented Programming  Fall 2021 

Object Oriented Programming  
Course code:  
CSC241 (3+1) 

Prerequisites:  
CSC141‐Introduction to Computer Programming 

Co requisites: 
None 

Course Catalog Description: 
This course covers the object oriented programming paradigm in C++. The topics covered: Concepts of 
object oriented paradigm, encapsulation, inheritance, polymorphism, abstract classes , overloading and 
overriding, operator Overloading, exception handling, object‐oriented design, Templates 

Textbooks: 
1. Object Oriented Programming in C++, Robert Lafore 

Reference Books:  
1. C++ How to Program, Deitel & Deitel 
2. Object oriented programming, Ashok N. Kamthane 

Course Learning Objectives: 
This  course  aims  to  familiarize  the  students  with  the  basic  concepts  in  digital  logic  design.  Two  basic 
categories are emphasized: combinational and sequential logic circuits. The teaching material helps the 
students to solve many practical hardware problems and to be able to understand the principles of digital 
hardware design. 

Course Learning Outcomes:   
After successfully completing the course, the students will be able to: 
1. Understand basic concepts of OOP (classes, objects, abstraction, encapsulation. (C1‐PLO1) 
2. Understand and analyze inheritance and polymorphism. (C4‐PLO2) 
3. Understand and analyze operator overloading and exception handling. (C3‐PLO2) 
4. Develop solutions for a range of problems using OOP approach and modern tools. (A3‐PLO5) 

Course Schedule: 
3 credit hours/week 
One laboratory session/week (3 hours/session) 
   

COMSATS University Islamabad Page 3


CSC241 Object Oriented Programming  Fall 2021 

Topics Covered: 
1. Introduction  of  the  course.  Review  of  basic  programming  concepts,  Control  Structures,  Functions, 
Arrays, Strings.  Introduction to C++ programming (Chapters 3,4,5,7) 
2. Defining classes and objects, Information Hiding and Encapsulation, Overloading, Constructors, Static 
and Non‐Static Methods and Variables (Chapters 6) 
3. Objects as Function Arguments, Returning Objects from Functions, Using References (Chapters 6) 
4. Inheritance, Parent and Child Classes, Encapsulation and Inheritance, Programming with Inheritance 
(Chapters 9) 
5. Polymorphism, Abstract Classes (Chapters 11) 
6. Operator Overloading (Chapters 8) 
7. Exception Handling, Templates (Chapters 14) 

Assessment Plan: 
Theory  Quizzes(4)  15% 
  Homework assignments   10% 
  2 Sessional exams (in class, 60‐80 minutes each,  10%+15%)  25% 
  Terminal exam (3 hours)  50% 
  Total (theory)    100% 
Lab work  Lab reports (12)   25% 
  2 Lab sessionals   25% 
  Lab project and terminal exam    50% 
  Total (lab)    100% 
Final marks  Theory marks * 0.75 + Lab marks * 0.25   

Learning Outcomes Assessment Plan (Tentative): 
Sr. #  Course Learning Outcomes  Assessment 
1.   CLO1  Quiz 1 
2.   CLO1  Quiz 2 
3.   CLO2  Quiz 3 
4.   CLO3  Quiz 4 
5.   CLO1  Assignment 1 
6.   CLO1  Assignment 2 
7.   CLO2  Assignment 3 
8.   CLO3  Assignment 4 
9.   CLO1  Sessional 1 
10.   CLO1, CLO2  Sessional 2 
11.   CLO1, CLO2, CLO3,CLO4  Terminal 
   

COMSATS University Islamabad Page 4


CSC241 Object Oriented Programming  Fall 2021 

Laboratory Experiences: 
There is a Laboratory component in all 3+1 credit courses taught at the department. Lab work consists of 
a minimum of 12 experiments and related assignments, which constitute 25% of the overall course‐grade. 
The laboratory experiments include implementing the Object oriented Programs using Visual Studio in 
C++/Dev C++.  

Laboratory Resources: 
The  relevant  laboratory  is  equipped  with  workbenches  and  computers  to  facilitate  the  experiments 
outlined in the lab handbook(s) that are periodically updated.  A current list of the 12 lab experiments 
performed in this course is provided as Annexure‐II. The list of software and equipment available is also 
posted in all labs and is managed by staff dedicated for this purpose. 

Computer Resources: 
For the purposes of this course Visual Studio C++/Dev C++ are installed in the laboratory that are used for 
implementation of C++. 

Mapping Course Learning Outcomes (CLOs) to Program Learning Outcomes (PLOs): 
PLO 1  Engineering  Knowledge:  An  ability  to  apply  knowledge  of  mathematics,  science, 
engineering fundamentals and an engineering specialization to the solution of complex 
engineering problems. 
PLO 2  Problem  Analysis:  An  ability  to  identify,  formulate,  research  literature,  and  analyze 
complex engineering problems reaching substantiated conclusions using first principles 
of mathematics, natural sciences and engineering sciences. 
PLO 3  Design/Development  of  Solutions:  An  ability  to  design  solutions  for  complex 
engineering problems and design systems, components or processes that meet specified 
needs with appropriate consideration for public health and safety, cultural, societal, and 
environmental considerations. 
PLO 4  Investigation: An ability to investigate complex engineering problems in a methodical 
way  including  literature  survey,  design  and  conduct  of  experiments,  analysis  and 
interpretation  of  experimental  data,  and  synthesis  of  information  to  derive  valid 
conclusions. 
PLO 5  Modern  Tool  Usage:  An  ability  to  create,  select  and  apply  appropriate  techniques, 
resources, and modern engineering and IT tools, including prediction and modeling, to 
complex engineering activities, with an understanding of the limitations. 
PLO 6  The  Engineer  and  Society:  An  ability  to  apply  reasoning  informed  by  contextual 
knowledge to assess societal, health, safety, legal and cultural issues and the consequent 
responsibilities  relevant  to  professional  engineering  practice  and  solution  to  complex 
engineering problems. 
PLO 7  Environment  and  Sustainability:  An  ability  to  understand  the  impact  of  professional 
engineering  solutions  in  societal  and  environmental  contexts  and  demonstrate 
knowledge of and need for sustainable development. 

COMSATS University Islamabad Page 5


CSC241 Object Oriented Programming  Fall 2021 

PLO 8  Ethics:  Apply  ethical  principles  and  commit  to  professional  ethics  and  responsibilities 
and norms of engineering practice.  
PLO 9  Individual and Team Work: An ability to work effectively, as an individual or in a team, 
on multifaceted and /or multidisciplinary settings. 
PLO 10  Communication: An ability to communicate effectively, orally as well as in writing, on 
complex  engineering  activities  with  the  engineering  community  and  with  society  at 
large,  such  as  being  able  to  comprehend  and  write  effective  reports  and  design 
documentation, make effective presentations, and give and receive clear instructions.   
PLO 11  Project  Management:  An  ability  to  demonstrate  management  skills  and  apply 
engineering  principles  to  one’s  own  work,  as  a  member  and/or  leader  in  a  team,  to 
manage projects in a multidisciplinary environment. 
PLO 12  Lifelong Learning: An ability to recognize importance of, and pursue lifelong learning in 
the broader context of innovation and technological developments.   
 
PLOs 

PLO10 

PLO11 

PL012 
PLO 9 
PLO1 

PLO2 

PLO3 

PLO4 

PLO5 

PLO6 

PLO7 

PLO8 
CLOs 
CLO1  C1                       

CLO2    C4                     

CLO3    C3                     

CLO4          A3               

Table 2: Mapping CLOs to PLOs 

   

COMSATS University Islamabad Page 6


CSC241 Object Oriented Programming  Fall 2021 

ANNEXURE‐I 
Tentative Lecture Breakdown (30 Lectures): 

No. of 
Topics 
Lectures 

Introduction  of  the  course.  Review  of  basic  programming  concepts,  Control  Structures, 

Functions, Arrays, Strings.  Introduction to C++ programming (Chapters 3,4,5) 

Defining  classes  and  objects,  Information  Hiding  and  Encapsulation,  Overloading, 



Constructors, Static and Non‐Static Methods and Variables, this pointer (Chapters 6) 

Objects  as  Function  Arguments,  Returning  Objects  from  Functions,  Using  References 

(Chapters 5) 

Inheritance,  Parent  and  Child  Classes,  Encapsulation  and  Inheritance,  Composition  



(Chapters 9) 

Operator Overloading (Chapter 8)  3 

Polymorphism, Virtual, Abstract Classes (Chapters 11 )  3 

Exception Handling, Templates (Chapters 14)  4 

File Handling   2 

 
   

COMSATS University Islamabad Page 7


CSC241 Object Oriented Programming  Fall 2021 

ANNEXURE‐II 
List of Experiments: 

Lab No.  Details 

1  Introduction to C++(Revision of Control structure, Arrays, functions ). 

2  Implementation of Classes and Objects. 

3  Implementation of Access specifiers , Constructors, Destructors. 

4  Implementation of Static members. 

5  Implementation of Friend function and friend classes. 

6  Implementation of Inheritance, Function Overridding 

7  Implementation of Types of inheritance 

8   Implementation of Composition. 

9  Implementation of Operator Overloading  

10  Implementation of Polymorphism. 

11  Implementation of Abstract Classes. 

12  Implementation of Exception Handling, 

13  Implementation of Files, 

14‐15  Lab Project / Viva 
 
 
 
 

Version  Applicable From 

Version 1  Fall 2016 

Version 2  Spring 2017 

Version 3  Fall 2017 

   

   
 
 

COMSATS University Islamabad Page 8

You might also like