Curriculum for B.Sc. CS Program of Bagalkot University, Jamkhandi w.e.f.
2024-25
Proposed Curricular and Credits Structure under Choice Based Credit System [CBCS] of Computer Science with Three Majors
General Scheme for the Three Years Computer Science B.Sc. Undergraduate Programme with effect from 2024-25
SEMESTER-I
Teaching Duration
Teaching Marks
Catego Course Title of the Paper hours/week Credit of exams
Dept.
ry code IA SEE Total L T P (Hrs)
L1 Kannada/ Functional Kannada Kannada 20 80 100 4 - - 3 3
English/Hindi/Sanskrit/Telugu/
L2 English 20 80 100 4 - - 3 3
Urdu/Marathi/Arabic
Computer Fundamentals and
2A1COMM01T Computer Sci. 20 80 100 4 - - 3 3
DSC1 Programming in C
2A1COMM01L C Programming Lab Computer Sci. 10 40 50 - - 4 2 3
Theory Theory Course Title 20 80 100 4 - - 3 3
DSC2
Lab Lab Course Title 10 40 50 - - 4 2 3
Theory Theory Course Title 20 80 100 4 - - 3 3
DSC3
Lab Lab Course Title 10 40 50 - - 4 2 3
Constitutional Values/
COM1 24BSC1CSCV1 Pol Sci. / Bio Sci. 10 40 50 1 - 2 2 2
Environmental Studies
Semester
Total Marks 700 23
Credits
Page 6 of 18
Curriculum for B.Sc. CS Program of Bagalkot University, Jamkhandi w.e.f. 2024-25
Year I Course Code: 2A1COMM01T Credits 04
Course Title: Computer Fundamentals and Programming in C
Sem. 1 Hours 52
Course Pre-requisites, if any NA
Formative Assessment Marks: Summative Assessment Marks : 80 Duration of ESA:
20 03hrs.
Course After completing this course satisfactorily, a student will be able to:
Outcomes • Confidently operate Desktop Computers to carry out computational
tasks
• Understand working of Hardware and Software and the importance
of operating systems
• Understand programming languages, number systems,
peripheral devices, networking, multimedia and internet
concepts
• Read, understand and trace the execution of programs written in C
language
• Write the C code for a given problem
• Perform input and output operations using programs in C
• Write programs that perform operations on arrays.
Unit No. Course content Hours
Fundamentals of Computers :Introduction to Computers- 13
Computer Definition, Characteristics of Computers, Evolution and
History of Computers, Generations of Computers, Types of
Computers, Basic Organization of a Digital Computer; Number
Systems – Different types, Conversion from one integer number
system to another; Computer Codes – BCD, Gray Code, ASCII and
Unicode; Boolean Algebra – Boolean Operators with Truth Tables;
Unit I Types of Software – System Software and Application Software ;
Operating System – Functions of O.S and Types of O.S ; Computer
Languages - Machine Level, Assembly Level & High Level Languages,
Translator Programs –Assembler, Interpreter and Compiler; Planning
a Computer Program - Algorithm, Flowchart with Examples.
Introduction to C Programming: Introduction, History and 13
Features of C; Characterstics of C, Structure of C Program with
Examples ; Creating and Executing a C Program;
Unit II C Programming Basic Concepts: C Character Set, Data types, C
tokens - keywords, identifiers, constants and variables
Declaration&initialization of variables ; Symbolic constants.
Input and output with C: Formatted I/O functions – printf() and
scanf(),control strings and escape sequences, output specifications
with printf();Unformatted I/O functions, to read and display single
character and a string- getchar(), putchar(), gets() and puts()
Operators & Expressions: Arithmetic operators; Relational
operators; Logical operators; Assignment operators; Increment &
Decrement operators; Bitwise operators; Conditional operator;
Special operators; Operator Precedence and Associativity,
Evaluation ofarithmetic expressions; Type conversion.
Page 9 of 18
Curriculum for B.Sc. CS Program of Bagalkot University, Jamkhandi w.e.f. 2024-25
Control Structures: Decision making Statements - Simple if, if_else, 13
nested if_else, else_if ladder, switch case, goto, break & continue
statements; Looping Statements - Entry controlled and Exit
controlled statements, while, do while, for loops, Nested loops with
examples.
Arrays: One Dimensional arrays - Declaration, Initialization and
Unit III
Memory representation; Two Dimensional arrays - Declaration,
Initialization and Memory representation with examples.
Strings: Declaring & Initializing string variables; String handling 13
functions – strlen(), strcmp(), strcpy() and strcat(); Character handling
functions – toascii(), toupper(), tolower(), isalpha(), isnumeric() etc.
User Defined Functions: Need for user defined functions; Format of
C user defined functions; Components of user defined functions-
return type, name, parameter list, function body, return statement
Unit IV and function call; Categories of user defined functions - With and
without parameters and return type.
User defined data types: Structures - Structure Definition,
Advantages of Structure, declaring structure variables, accessing
structure members, Structure members initialization, comparing
structure variables, Array of Structures;
Unions - Union definition, declaration & initialization, accessing
union members, difference between Structures and Unions.
Recommended Learning Resources
1. Pradeep K. Sinha and Priti Sinha: Computer Fundamentals(Sixth
Edition),BPB Publication
2. E. Balgurusamy: Programming in ANSIC (TMH)
3. Kamthane :Programming with ANSI and TURBO C(Pearson Education)
4. V. Rajaraman: Programming in C (PHI–EEE)
5. S. Byron Gottfried: Programming with C(TMH)
6. Kernighan & Ritche: The C Programming Language(PHI)
7. Yashwant Kanitkar: Let us C
Page 10 of 18
Curriculum for B.Sc. CS Program of Bagalkot University, Jamkhandi w.e.f. 2024-25
Year I Course Code: 2A1COMM01L Credits 02
Course Title: C Programming Lab
Sem. I Hours 50
Course Pre-requisites, if any: Knowledge of Programming
Formative Assessment Marks:25 Summative Assessment Marks:25 Duration of ESA: 03hrs.
Practice Labs
1. The following activities be carried out/ discussed in the lab during the initial
period of the semester.
1. Basic Computer Proficiency
a. Familiarization of Computer Hardware Parts
b. Basic Computer Operations and Maintenance.
c. Do’s and Don’ts, Safety Guidelines in Computer Lab
2. Familiarization of Basic Software – Operating System, Word
Processors, Internet Browsers, Integrated Development Environment
(IDE) with Examples.
3. Type Program Code, Debug and Compile basic programs
covering C Programming fundamentals discussed during theory
classes.
Part A:
1. Write a command to create a directory, change directory and
Type a C Program to read radius of a circle and to find area and circumference. And
save and run it.
2. Write a C Program to read three numbers and find the biggest of three.
3. Write a C Program to demonstrate library functions in math.h
4. Write a C Program to check for prime.
5. Write a C Program to generate n primes.
6. Write a C Program to read a number, find the sum of the digits, reverse the
number and check it for palindrome.
7. Write a C Program to read numbers from keyboard continuously till the
user presses 999 and to find the sum of only positive numbers.
8. Write a C Program to read two nos and perform arithmetic operations using
switch case.
9. Write a C program to read marks scored by n students and find the
average of marks (Demonstration of single dimensional array.
10. Write a C Program to remove Duplicate Element in a single dimensional Array.
11. Program to perform addition and subtraction of Matrices.
PART B:
1. Write a C Program to find the length of a string without using built-in function.
2. Write a C Program to demonstrate string functions.
3. Write a C Program to check a number for prime by defining isprime() function.
4. Write a C Program to read, display and to find the trace of a square matrix.
5. Write a C Program to read, display and multiply two mxn matrices using functions.
6. Write a C Program to read a string and to find the number of alphabets, digits,
vowels, consonants, spaces and special characters.
Page 11 of 18
Curriculum for B.Sc. CS Program of Bagalkot University, Jamkhandi w.e.f. 2024-25
7. Write a C Program to Reverse a String.
8. Write a C Program to Swap Two Numbers.
9. Write a C Program to demonstrate student structure to read & display records of n
students.
10. Write a C Program to demonstrate the difference between structure & union.
11. Write a C Program to find the roots of quadratic equation (demonstration of else if
ladder).
Page 12 of 18
CurriculumforB.Sc.CSProgramofBagalkotUniversity,Jamkhandiw.e.f.2025-26
SEMESTER-III
Teaching Duration
Marks
Category Course code Title of the Paper hours/week Credit Of Exam
IA SEE Total L T P (Hrs)
L5 Language-I 20 80 100 4 - - 3 3
L6 Language-II 20 80 100 4 - - 3 3
20 80 100 4 - - 3 3
2A3COMM03T Object oriented programming in JAVA
DSC7
10 40 50 - - 4 2 3
2A3COMM03L JAVA Lab
20 80 100 4 - - 3 3
DSC8 Theory Theory Course Title 10 40 50 - - 4 2 3
Lab Lab Course Title 20 80 100 4 - - 3 3
DSC9 Theory Theory Course Title 10 40 50 - - 4 2 3
Lab Lab Course Title
2A3COME01T Multimedia and Animation 20 80 100 3 - - 3 3
CEC1 Lab Open Source Tools
2A3COME02T
2A3COME03T Digital Marketing
Lab Semester
Total Marks 750 24
Credits
Page8of19
Curriculum for B.Sc. CS Program of Bagalkot University, Jamkhandi
Year I Course Code: 2A3COMM03T Credits 03
Sem. 2 Course Title: Object oriented programming in JAVA Hours 52
Course Pre-requisites, if any NA
Summative Assessment Marks: 80 Duration: 03 Hrs.
Formative Assessment Marks: 20
After completing this course satisfactorily, a student will be able to:
1. Understand the features of Java and the architecture of JVM
2. Write, compile, and execute Java programs that may include
basic data types and control flow constructs and how type casting is
done.
3. Identify classes, objects, members of a class and relationships among
Course them needed for a specific problem and demonstrate the concept of
Outcomes polymorphism and inheritance.
4. The students will be able to demonstrate programs based on interfaces
and threads and explain the benefits of JAVA‟s Exception handling
mechanism compared to other Programming Languages
5 programming and also programs based on files.
. Write, compile, execute Java program that include GUIs and event driven
Unit No. Course Content Hours
Fundamentals of Object Oriented Programming (OOP) - Object, classes,
abstraction, encapsulation, inheritance, polymorphism. Difference
between Procedural and Object oriented programming.
Unit-I History of Java, features of Java, Identifiers and Keywords, Constants,
13
Variables, Data types, Input and output statements, Math class, Decision
making statements, Looping statements, Arrays and its methods,
Defining a class with instance variables and methods, object creation,
accessing class members, Constructors, Constructor overloading,
Method overloading, static members, this and super keywords,
Inheritance and its types, Overriding methods, Dynamic method 13
Unit-II
Dispatch, final variables and methods, final classes, finalizer(), Abstract
methods and classes, Visibility controls.
Strings, String methods, Interfaces: Defining interfaces, Extending
interfaces, Implementing interfaces, Accessing interface variables.
Importing classes, user defined packages,
Java Input Output: Java IO package, File, Class Byte/Character Stream,
Buffered reader / writer, File reader / writer, Print writer File Sequential /
Random Serialization and de serialization.
Unit III 14
Exception handling: Types of Exceptions, try, catch, finally, throw, throws
keywords, creating your own exception, nested try blocks, multiple
catch statements, user defined exceptions.
Event and GUI programming: Event handling in java, Event types, Mouse
and key events, GUI Basics, Panels, Frames, Layout Managers: Flow
Layout, Border Layout, Grid Layout, GUI components like Buttons, Check
Unit IV Boxes, Radio Buttons, Labels, Text Fields, Text Areas, Combo Boxes,
Lists, ScrollBars, Sliders, Windows, Menus. 12
Recommended Learning Resources
Reference Books:
1.Herbert Schildt, The Java
2.The Complete Reference, Fourth edition, TMH,
3. Balaguruswamy, Programming with JAVA, A primer, TATA McGraw-Hill Company.
4. https://docs.oracle.com/javase/tutorial/ Additional Reading:
5. Peter Van der Liden, Just Java, Prentice Hall
6. H. M. Deitel, P. J. Deitel, Java: how to program, 5th edition, Prentice Hall of India.
Year I Course Code: 2A3COMM03L Credits 02
Course Title: JAVA Lab
Sem. II Hours 50
Course Pre-requisites ,if any: Knowledge of Programming
Formative Assessment Marks:10 Summative Assessment Marks : 40 Duration of ESA : 03hrs.
Part A:
1. Program to demonstrate class and object.
2. Program to find the biggest of two integer numbers entered by the user.
3. Program to list the factorial of the numbers 1 to 10 .To calculate the factorial value, use
while loop.(Hint: Fact of 4=4*3*2*1)
4. Program to find the area and circumference of the circle by accepting the radius from the
user.
5. Program to demonstrate the use of method over loading.
6. Program to demonstrate the use of static members.
7. Program to demonstrate the use of method overriding.
8. Program to demonstrate the concept of dynamic method dispatch.
9. Program to demonstrate the use of abstract methods and classes.
10. Create a package ”BSC‟ in your current working directory. a. Create a class student in the
BSC package with the following attributes: Name, age, gender. Include appropriate
constructor and a method for displaying the details. b. Import above package and access
the member variables and function contained in a package.
PART B:
1. Program to Illustrate creation of thread by a) Extending Thread class. b)Implementing
Runnable Interfaces
2. Program to demonstrate the concept of inheritance.
3. Program to demonstrate the use of implementing interfaces.
4. Program to demonstrate the use of any 4 string methods.
5. Program to demonstrate exception handling with try, catch and finally.
6. Program which creates and displays a message on the window
7. Program which creates a frame with two buttons father and mother. When we click the
father button the name of the father, his age and designation must appear. When we
click mother button similar details of mother also appear.
8. Create a frame which displays your personal details with respect to a button click
9. Program to create a window with Text Fields and Buttons. The "ADD" button adds the
two integers and displays the result. The "CLEAR" button shall clear all the text fields.
10.Demonstrate the various mouse handling events using suitable example.
SEMESTER-5
Teaching Duration of
Category Course code Title of the Paper Marks Credit
hours/week exams(Hrs)
IA SEE Total L T P
21BCA5C13L Design & Analysis of Algorithms 40 60 100 4 0 0 4 2
DSC13
21BCA5C13P Design & Analysis of Algorithms Laboratory 25 25 50 0 0 3 2 3
Statistical Computing and R
21BCA5C14L 40 60 100 4 0 0 4 2
DSC14 Programming
21BCA5C14P R Programming Lab 25 25 50 0 0 3 2 3
DSC15 21BCA5C15L Software Engineering 40 60 100 4 0 0 4 2
21BCA5DE1AL Information Security & Cryptography
DSE-E1 21BCA5DE1BL Cloud Computing 40 60 100 3 0 0 3 2
21BCA5DE1CL Business Intelligence
21BCA5VC1AL Digital Marketing
VC1 40 60 100 3 0 0 3 2
SEC3 21BCA5SE3L Cyber Security 20 30 50 2 0 2 3 2
Semester
Total Marks 650 25
Credits
Program Name B.C.A Semester V
Course Title Software Engineering (Theory)
Course Code: DSC15 No. of Credits 04
Contact hours 42 Hours Duration of SEA/Exam 2 hours
Formative Assessment
40 Summative Assessment Marks 60
Marks
How to apply the software engineering lifecycle by demonstrating competence in
CO1
communication, planning, analysis, design, construction, and deployment.
CO2 An ability to work in one or more significant application domains.
Work as an individual and as part of a multidisciplinary team to develop and deliver quality
CO3
software.
Demonstrate an understanding of and apply current theories, models, and techniques that
CO4
provide a basis for the software lifecycle.
CO5 Demonstrate an ability to use the techniques and tools necessary for engineering practice.
Description 42 Hrs
Introduction: Professional software development, Software engineering ethics Requirements
engineering: Functional and non-functional requirements, The software requirements
document - IEEE structure of a requirements document (SRS) , Requirement elicitation and 08
analysis, Requirement validation, Requirement management
Software Processes: Software process models – Waterfall model, Incremental
development, Reuse oriented software engineering, Process Activities, Boehm’s spiral
model of the software process Agile software development: Plan-driven and agile 08
development, The extreme programming release cycle, The Scrum process (scrum sprint
cycle).
Architectural Design: Architectural Views, Architectural Patterns – MVC, Layered,
Repository, Client Server, Pipe and Filter System Modeling: Interaction Modeling: Use case 10
diagrams, Sequence diagrams; Structural modeling: Class diagrams; Behavioral Modeling :
State diagrams; Functional modeling : Data flow diagrams
User Interface Design: The golden rules, User Interface Analysis and Design models and
process, Webapp and mobile interface design (interface design principles and guidelines)
Implementation issues: Reuse, configuration management, Host target development Software 08
quality: What is software quality, McCall’s quality factors, ISO 9126 quality factors
Software Testing: Types of testing – white box, black box, stages of testing
(development
testing) – Unit, Component, System, Test-driven development (TDD) , Release testing, User 08
Testing
Reference Books
Software Engineering, Ian Summerville, 9th Edition, Pearson Education (for Unit 1 , Unit 2, Unit3 ,
Unit 4 (Implementation issues ) , Unit 5
Software Engineering A Practitioner’s Approach, Roger S Pressman , McGraw Hill , 8th Edition -
Indian Edition (for Unit 4 )
Additional Reading:
An Integrated Approach to Software Engineering, Pankaj Jalote, 3rd Edition, 2013, Narosa Publishing
House