1762imguf - BCA Course - Structure and Syllabus Batch 2020 2023
1762imguf - BCA Course - Structure and Syllabus Batch 2020 2023
DIT UNIVERSITY
Dehradun
Course
Course Code Course Title L T P Credit
Category
DC CAF301 Introduction to Data Science 3 0 1 4
DC CAF302 Computer Graphics 3 0 1 4
DC CAF303 Python Programming 3 0 1 4
CAF351/CAF352 Multimedia Tools
DE 2 0 1 3
Artificial Intelligence
FE Free Elective 3 0 0 3
Total 18
Course
Course Code Course Title L T P Credit
Category
PR CAF304 Capstone Project/ Internship 0 0 12 12
Total 12
Free Electives
Name of Courses L T P C
ECF481 Analogue Electronics (ECE) 2 0 2 3
ECF482 Cellular Communication Network (ECE) 2 0 2 3
ECF381 Microcontroller (ECE) 2 0 2 3
ECF382 Bio Medical Instrumentation (ECE) 2 0 2 3
Course Summary
This course will introduce students with the basics of computer- Hardware, Software, Operating System,
Communication Systems. This course will also make students to be familiar with Office Tools – MS-
Word, MS-Excel and MS- Power Point.
Course Objectives
The main objective of this course is to aware the student with the basics of computer- Hardware,
Software, Operating System, Communication Systems.
Student need to be familiar with Office Tools – MS-Word, MS-Excel and MS- Power Point.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Understand the fundamental hardware components that make up a computer‟s hardware and the
role of each of these components
Understand the difference between an operating system and an application program, and what
each is used for in a computer
Curriculum Content
UNIT 1: Computer
Introduction, characteristics of computer; History of computers; classification of computers on size,
architecture and chronology; Applications of computers; Commonly used terms–Hardware, Software,
Firmware; Computer Architecture and organization; Input, Process and Output; Representation of
information; BIT, BYTE. (6L)
UNIT 2: Memory
Memory, Memory size; Units of measurement of storage; Input/output devices; Secondary storage
devices; Networking concepts - LAN, WAN and Topologies: Types of software; system and application
software. (6L)
UNIT 3: Operating System
Operating system concepts, Different types of operating systems, structure of operating
system/UNIX/LINUX commands, Data Processing, File systems and Database Management Systems,
Different types of Database Management System. (8L)
Reference Books
1. Computer Today, Suresh Basandra, Galgotia Publication ,1stedition,2010
2. Unix Concepts and Application, Sumitabha Das, Tata Mc-Graw Hills, 4th edition, 2008.
3. MS-Office 2000(For Windows), Steve Sagman, Peachpit press, 1st Edition, 1999.
COURSE OUTLINE:
This course contains the fundamental concepts about the computer hardware and intends to provide to
students about the knowledge of C language
COURSE OBJECTIVE:
The objective of the course is to make the students to understand the key hardware components in a
modern computer system and as to how the software is mapped to the hardware. The student shall also be
able to learn make the computer programs using C language by exploring the various features of C.
COURSE OUTCOMES:
At the end of the course, the student will be able to:
To formulate simple algorithms for arithmetic and logical problems.
To implement conditional branching, iteration and recursion.
To decompose a problem into functions and synthesize a complete program using divide and
conquer approach.
To use arrays, pointers and structures to formulate algorithms and programs.
To apply programming to solve matrix addition and multiplication problems and searching and
sorting problems
COURSE PRE/CO- REQUISITE (IF ANY):
CURRICULUM CONTENT
UNIT 1: Introduction to Computer, Programming & algorithms
Introduction to components of a computer system (disks, memory, processor, where a program is stored
and executed, operating system, compilers etc.).
Idea of Algorithm: steps to solve logical and numerical problems. Representation of Algorithm:
Flowchart/Pseudocode with examples, From algorithms to programs; source code, variables (with data
types) variables and memory locations, Syntax and Logical Errors in compilation, object and executable
code. (8L)
UNIT 2: Arithmetic Expression, and Conditional statements, Loops, Expression:
Arithmetic, Logical, Relational expressions and precedence. Loops & Branching: Writing and evaluation
of conditionals and consequent branching, Iteration and loops. (7L)
UNIT 3: Arrays & Functions
Arrays: Arrays (1-D, 2-D), Character arrays and Strings. Functions: functions (including using built in
libraries), Parameter passing in functions, call by value, passing arrays to functions: idea of call by
reference.
Lab Practical:
S.NO. EXPERIMENT NAME
1 Familiarization with programming environment.
2 Programming for Simple computational problems using arithmetic expressions.
3 Programming for Problems involving if-then-else structures.
4 Programming for Iterative problems e.g., sum of series.
5 Programming for 1-D Array manipulation.
6 Programming for Matrix problems, String operations.
7 Programming for Simple functions
8 Programming for Recursive functions.
9 Programming for Pointers and structures.
10 Programming for File operations
11 Programming for solving Numerical methods problems
Course Summary
This course provides the knowledge of sets, relations and functions, it also explains partial order relations
and lattices, graphs, propositional logic, groups and rings.
Course Objectives
To understand the needs, the precision of mathematical notation and techniques.
Specify computational problems using mathematical objects such as sets, functions, relations,
orders, and sequences.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Problem solving through computer programming
Ability to use different memory allocation methods
Ability to deal with different input/output methods
Curriculum Content
Unit 1: Sets, Relations and Functions
Sets, Subsets, Equal Sets Universal Sets, Finite and Infinite Sets, Operation on Sets, Union, Intersection
and Complements of Sets, Cartesian Product, Cardinality of Set, Simple Applications. Properties of
Relations, Equivalence Relation, Partial Order Relation Function: Domain and Range, Onto, Into and
One to One Functions, Composite and Inverse Functions, Hashing functions, Recursive function.
(8L)
Unit 2: Partial Order Relations and Lattices:
Partial Order Sets, Representation of POSETS using Hasse diagram, Chains, Maximal and Minimal
Point, Glb, lub, Lattices & Algebraic Systems, Principle of Duality, Basic Properties, Sublattices,
Distributed &Complemented Lattices. (8L)
Unit 3: Graphs
Types and operations (bipartite graph. Subgraph, distance of a graph, cut-edges & cut vertices,
isomorphic and homomorphic graphs), degree of graphs, adjacent and incidence matrices, path circuit
(Floyd‟s and Warshall algorithms), Hamiltonian graph, graph colouring. (8L)
Unit 4: Propositional Logic:
Proposition, First order logic, Basic logical operation, truth tables, tautologies, contradictions, Algebra of
Proposition, logical implications, logical equivalence, predicates, Universal and existential quantifiers.
(6L)
Unit- 5: Groups and Rings:
Groups -Subgroups, Generation and evaluation of process- Rings, Integral domains and fields
(definitions and simple properties only). (6L)
Course Summary
Foundation in design and analysis of the operation of digital gates. Design and implementation of
combinational and sequential logic circuits. Concepts of Boolean algebra, Karnaugh maps, flip-flops,
registers, and counters along with various logic families and comparison of their behavior and
characteristics.
Course Objectives
To acquire the basic knowledge of digital logic levels and application of knowledge to understand
digital electronics circuits.
Prepare students to perform the analysis and design of various digital electronic circuits.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Have a thorough understanding of the fundamental concepts and techniques used in digital
electronics.
To understand and examine the structure of various number systems and its application in digital
design.
Curriculum Content
UNIT 1 Introduction:
Logic gates NOT, AND, OR, Universal gates- NAND, NOR. EX-OR and EX-NOR gates. Diode and
Transistor as a switch Logic Families-RTL, DTL, TTL, ECL, CMOS – (Main features only - without
details of circuit connections and working). Definition of- current and voltage parameters, noise margin,
Concepts of Fan -in, Fan-out, Boolean algebra: Basics Laws of Boolean Algebra, Logic Gates,
Simplifications of Boolean equations using K-maps. (8L)
UNIT 2 Data and Number representation:
Binary-complement representation BCD-ASCII, conversion of numbers forms one system to the other,
2‟s complement representation, binary arithmetic Review of various number systems (Binary, Octal,
Hexadecimal), Definition of BCD, Gray codes and Excess – 3 codes and their application (without
design of code convertors), Parity generation and Checking. (8L)
UNIT 3 Arithmetic Circuits:
Adder, Subtractor, Parallel binary adder/Subtractor, binary multiplier and divider. Combinational
Circuits: Multiplexers, De-Multiplexers, decoders, encoders. (6L)
UNIT 4 Flips-flops:
S-R, D, J-K, T, Clocked Flip-flop, Race around condition, Master slave Flip-Flop, Realization of one
flip-flop using another flip-flop. Shift Registers: Serial-in-serial-out, serial-in-parallel-out, parallel-in-
serial-out and parallel-in-parallel-out, Bi-directional shift register. (8L)
Course Summary
This course will introduce students to Bisection Method, Iteration Method, Method of False Position,
Newton-Raphson Method, Methods of Finding Complex Roots, Gauss Seidel iterative methods,
Interpolation and approximation, Curve fitting, Time series and forecasting.
Course Objectives
The objective of this course is to provide conceptual understanding of various numerical methods, in
particular, with reference to numerical solution of non-linear equations and system of linear equations,
interpolation, numerical differentiation and integration and numerical solution of ordinary differential
equations.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
To learn fundamentals and concepts of statistical and optimization methods, in particular, with
reference to frequency distribution and measures of central tendency, measures of dispersion,
skew ness and kurtosis,
To solve problems on theory of probability, linear programming problems, transportation,
assignment and game problems.
Curriculum Content
UNIT 1 Floating point Arithmetic:
Representation of floating-point numbers, Operations, Normalization, Pitfalls of floating-point
representation, Errors in numerical computation. Iterative Methods: Zeros of a single transcendental
equation and zeros of polynomial using Bisection Method, Iteration Method, Regula-Falsi method,
Newton Raphson method, Secant method. (8L)
UNIT 2 Simultaneous Linear Equations:
Solutions of system of Linear equations, Gauss Elimination and Gauss Jordan. Gauss Seidel iterative
methods Interpolation and approximation: Finite Differences, Difference tables. Polynomial
Interpolation: Newton‟s forward and backward formula. Langrange‟s interpolation.
(8L)
UNIT 3 Numerical Differentiation and Integration:
Introduction, Numerical Differentiation, Numerical Integration, Trapezoidal rule, Simpson‟s rules,
Gaussian Quadrature Formula. Solution of differential equations: Picard‟s Method, Euler‟s Method,
Taylor‟s Method, Runge-Kutta methods, Predictor-corrector method. (8L)
Course Summary
This course introduces the role of databases in organizations. It also introduces the core components of a
database environment. This course discusses the entity relationship diagram; how it may be used to
model real-life situations, and its symbols and constructs. It also provides an understanding of relational
model, normalization, and how to transform an entity-relationship data diagram into a relational model.
Course Objectives
Objective of this course is to introduce the data base management system.
To introduce the server query language and designing the database for the system.
It enables the students to generate the query and to the transaction of data to perform various task
of the different management system.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Have a broad understanding of database concepts and database management system software.
Have a high-level understanding of major DBMS components and their function.
Be able to model an application‟s data requirements using conceptual modelling tools like ER
diagrams and design database schemas based on the conceptual model.
Be able to write SQL commands to create tables and indexes, insert/update/delete data, and query
data in a relational DBMS.
Curriculum Content
UNIT 1 Introduction:
History of Data base Systems, Database System Vs File System, Database System concepts and
architecture, data models schema and instances, data independence, interfaces, Database
Languages,DDL, DML, Overall Database Structure, data base Users and Administrator.ER model
concepts, notation for ER diagram, Mapping constraints, keys, Concepts of Super Key, candidate key,
primary key, Generalization, aggregation. (8L)
UNIT 2 Relational data model concepts:
Relational data model concepts, integrity constraints: entity integrity, Referential integrity, Keys
constraints, Domain constraints, relational algebra, relational calculus. (6L)
UNIT 3 Introduction to SQL:
Characteristics of SQL, Advantages of SQL, SQL data types and literals, Types of SQL Commands, SQL
operators and their procedure, Tables, views and indexes, Queries and sub queries, Aggregate Functions,
Insert, update and delete operations, Joins, Unions, Intersection, Minus, Cursors in SQL.PL/SQL,
Triggers and cursors. (8L)
Course Summary
This course provides the knowledge of basic building blocks for computations, understanding and
exploiting structure in computational problems, design space, costs, and trade-offs in computer
organization, register transfer and Micro operations, I-O and memory organization.
Course Objectives
This course will introduce students to the fundamental concepts underlying modern computer
organization and architecture.
Main objective of the course is to familiarize students about hardware design including logic
design.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Understand the basics of computer hardware and how software interacts with computer hardware
Analyse and evaluate computer performance
Understand how computers represent and manipulate data
Use Boolean algebra as related to designing computer logic, through simple combinational and
sequential logic circuits
Curriculum Content
UNIT 1 Register Transfer and Micro Operations:
Register Transfer Language, Register Transfer, Bus and Memory Transfer, Arithmetic Micro Operations,
Logic Micro Operations, Shift Micro Operations. (6L)
COURSE SUMMARY
The course is a foundation level course and requires the knowledge of the C programming language. The
course outlines the detailed architecture and implementation of basic data structures such as Stacks,
Queues, Linked Lists, Trees, and Graphs. It also covers the time and space complexity analysis of
different searching and sorting techniques. Some of the searching methods include Linear Search, Binary
Search, and sorting mechanism includes Bubble sort, Insertion sort, Selection sort, Quick sort, Merge
sort, and Heap Sort. The course also incorporates different hashing techniques, designing hash functions,
hash table implementation, and collision resolution technique.
COURSE OBJECTIVES
The main objective of this course is to introduce the concept of data structure, how to choose a particular
data structure, and how the choice of a data structure impacts the performance of programs. The other
objective may include:
How to select the appropriate data structure model specific to some application?
Solve problems using data structures like Stacks, Queues, Linked Lists, Trees, Graphs, and
writing programs for these solutions using C code.
Introduce the concept of algorithm writing, analyzing algorithms, converting pseudocode to
appropriate C code, and showing how one solution is better than others by analyzing their
computational complexities.
COURSE OUTCOMES
On successful completion of the course, students will be able to achieve the following:
The student will develop an ability to read, write, and analyze the time and space complexity of
any algorithms.
Able to describe the properties, behavior, and implementation of basic data structures like Stacks,
Queues, Linked List, Trees, and Graphs.
Able to convert pseudocode to its appropriate C code implementation.
Able to compare different searching and sorting techniques in terms of their memory usage and
time consumption.
Able to design and implement different hash functions, analyze the collision effect, and hash table
implementations.
CURRICULUM CONTENT
Unit 1: Introduction to Algorithms & Data Structure
Introduction: Data types, Abstraction, Abstract Data Type (ADT), Concept of data structure, Types of
data structures, Operations on Data Structures, Introduction to Algorithms, Writing Pseudocodes,
Algorithm analysis, Complexity of algorithms and Time space trade-off, Searching: Linear and Binary
Search Techniques and their complexity analysis. (8 L)
REFERENCE BOOKS
1. Horowitz and Sahani, “Fundamentals of Data Structures”, Galgotia Publication,2nd Edition. 2008.
2. Mark Allen Weiss, Data Structures and Algorithm Analysis in C, Addison-Wesley,Second
Edition
3. Robert Kruse, Data Structures and Program Design in C PHI.2nd Edition.2006.
4. Willam J. Collins, Data Structure and the Standard Template library –2003, T.M.H.1st Edition.
5. Kyle Loudon, Mastering Algorithms with C, O‟Reily Publication, 1st Edition, 1999
Course Summary
An introduction to fundamental concepts in operating systems: their design, implementation, and usage.
Topics include process management, main memory management, virtual memory, I/O and device
drivers, file systems, secondary storage management, and an introduction to critical sections and
deadlocks.
Course Objectives
Understanding of operating system concepts and the role it plays, An understanding of the
structure of operating systems, applications, and the relationship between them.
Some knowledge of the services provided by operating systems.
Exposure to some details of major OS.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Describe the important computer system resources and the role of operating system in their
management policies and algorithms.
Understand the process management policies and scheduling of processes by CPU
Evaluate the requirement for process synchronization and coordination handled by operating system
Describe and analyze the memory management and its allocation policies.
Identify use and evaluate the storage management policies with respect to different storage
management technologies. 6. Identify the need to create the special purpose operating system.
Curriculum Content
UNIT 1 Basic concepts and terminology:
Importance of OS, Basic concepts and terminology, types of OS, what is an OS, Functions, Structure,
Types: Batch, Multiprogramming, Timesharing, Real time, Multiprocessor system, Distributed system,
OS as Resource manager, Booting process. (8L)
COURSE SUMMARY
This course covers Java and fundamental programming techniques with primitive data types, variables,
constants, assignments, expressions, and operators, selection statements, mathematical functions,
characters, and strings, loops, methods, and arrays. Students will learn how to write recursive methods
for solving inherently recursive problems. The next part will introduce object-oriented programming.
Java is an object-oriented programming language that uses abstraction, encapsulation, inheritance, and
polymorphism to provide great flexibility, modularity, and reusability in developing software. Students
will learn programming with objects and classes, class inheritance, polymorphism, exception handling,
abstract classes, interfaces, Text I/O and binary I/O.
COURSE OBJECTIVES
The objectives of this course are to learn object oriented programming paradigm using Java as
programming language. Students will be exposed to fundamental concepts in java programming
language, followed by object oriented paradigm and its building blocks.
COURSE OUTCOMES
On successful completion of the course, students will be able to achieve the following:
Understand and implement fundamental programming techniques and data types, variables,
constants, assignments, expressions, and operators of Java programming language.
Understand and implement selection statements, mathematical functions, characters, and strings,
loops,
Understand and implement methods, arrays and recursion using Java.
Understand and implement object-oriented paradigm using abstraction, encapsulation,
inheritance, and polymorphism.
Understand and implement the objects and classes, exception handling, abstract classes,
interfaces, Text I/O and binary I/O.
CURRICULUM CONTENT
UNIT I: Introduction, Fundamental Programming Techniques
Introduction, the Java Language Specification, API, JDK, and IDE, Creating, Compiling, and Executing
a Java Program, Developing Java Programs Using Net Beans.
Identifiers, Variables, Assignment Statements and Assignment Expressions, Named Constants, Naming
Conventions, Numeric Data Types and Operations, Numeric Literals, Evaluating Expressions and
Operator Precedence, Increment and Decrement Operators, Numeric Type Conversions.
(6 L)
UNIT 2: Selection Statements, Loops, Mathematical Functions, Characters and Strings
Boolean Data Type, if Statements, Two-Way if-else Statements, Nested if and Multi-Way if-else
Statements, Logical Operators, switch Statements, Conditional Expressions, Operator Precedence and
Course Summary
This course is intended to teach the basics involved in publishing content on the World Wide Web. This
includes the „language of the Web‟ – HTML, the fundamentals of how the Internet and the Web function,
a basic understanding of graphic production with a specific stress on creating graphics for the Web
Course Objectives
This course is intended to teach the basics involved in publishing content on the World Wide Web.
This includes the „language of the Web‟ – HTML, the fundamentals of how the Internet and the Web
function, a basic understanding of graphic production with a specific stress on creating graphics for
the Web
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Analyze a web page and identify its elements and attributes.
Create web pages using XHTML and Cascading Style Sheets.
Build dynamic web pages using JavaScript (Client-side programming).
Create XML documents and Schemas.
Curriculum Content
UNIT 1 Internet Basic:
Introduction to HTML - List - Creating Table - Linking Document Frames - Graphics to HTML Doc -
Style sheet - Style sheet basic - Add style to document - Creating Style sheet rules - Style sheet properties
- Font - Text - List - Color and background color - Box - Display properties. (6L)
UNIT 2 Introduction to JavaScript:
Advantage of JavaScript, JavaScript Syntax - Datatype - Variable - Array - Operator and Expression -
Looping Constructor - Function - Dialog box. (8L)
UNIT 3 JavaScript document object model:
Introduction - Object in HTML - Event Handling - Window Object - Document object - Browser Object -
Form Object - Navigator object Screen object - Build in Object - User defined object - Cookies.
(8L)
UNIT 4: XML
XML: Introduction, The Need for XML, Structured Data and Formatting, Advantages of XML, SGML,
XML, and HTML, World Wide Web Consortium (W3C) Specifications and Grammars.
(8L)
Course Summary
This course will introduce to software life cycle models. Software requirements engineering, formal
specification and validation. Techniques for software design and testing. Cost estimation models. Issues
in software quality assurance and software maintenance.
Course Objectives
The program‟s goal is to provide a professionally guided education in software engineering that prepares
graduates to transition into a broad range of career options: industry, government, computing graduate
program, and professional education.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
An ability to design a system, component, or process to meet desired needs within realistic constraints
such as economic, environmental, social, political, manufacturability, sustainability, ethical, health and
safety;
Curriculum Content
UNIT 1 Introduction to Software Engineering:
Definitions - Size Factors - Quality and Productivity Factors - Managerial Issues - Planning a software
project: Defining the problem - Developing a Solution Strategy - Planning the Development Process -
Planning an Organization structure - Other Planning Activities. (6L)
UNIT 2 Software Cost Estimation:
Software cost factors - Software Cost Estimation Techniques - Staffing-level Estimation - Estimating
Software Maintenance Costs - The Software Requirements Specification - Formal Specification
Techniques - Languages and Processors for Requirements Specification. (6L)
UNIT 3 Software design:
Fundamental Design Concepts - Modules and Modularization Criteria - Design Notations - Design
Techniques - Detailed Design Considerations - Real-Time and Distributed System Design - Test Plans -
Milestones, walkthroughs, and Inspections. (8L)
UNIT 4 Implementation issues:
Implementation issues: Structured Coding Techniques - Coding Style - Standards and Guidelines -
documentation guidelines -Type Checking - Scoping Rules - Concurrency Mechanisms. (8L)
UNIT 5 Quality Assurance:
Quality Assurance - Walkthroughs and Inspections - Static Analysis - Symbolic Execution - Unit Testing
and Debugging - System Testing - Formal Verification: Enhancing Maintainability during Development -
Managerial Aspects of Software Maintenance - Source Code Metrics - Other Maintenance Tools and
Course Summary
Data communications, network architectures, communication protocols, data link control,
medium access control
Introduction to local area networks metropolitan area networks and wide area networks;
Introduction to OSI model, routing algorithms and networking services.
Course Objectives
Objective of this course is to build an understanding of the fundamental concepts of computer
networking and to familiarize the student with the basic taxonomy and terminology of the computer
networking area.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Independently understand basic computer network technology.
Understand and explain Data Communications System and its components.
Identify the different types of network topologies and protocols.
Enumerate the layers of the OSI model and TCP/IP. Explain the function(s) of each layer
Curriculum Content
UNIT 1 Introduction:
Motivation, OSI model, Signals and media, Bits over signals, Synchronous communication, Modulation
and modems, Bandwidth, Throughput, and noise, Time division and Frequency division multiplexing,
Standards, Switching methods, ISDN. (6L)
UNIT 2 Packet Transmission:
Multiplexing, Frames, Error correction techniques, LAN/WAN/MAN, Topology, CSMA/CD, LAN
protocol, Elementary Data link protocol- Sliding window protocols, Token passing rings, FDDI, IEEE
802.3, 802.5. (8L)
UNIT 3 Routing Algorithms:
Distance-Vector, Link-State, Shortest path computation, Dijkstra's algorithm, Congestion control, WAN
technologies including frame relay, X.25, ATM. (6L)
UNIT 4 Internetworking:
Motivation, Concept, Goals, TCP/IP model, IP addressing with sub netting, Address binding with ARP,
IP Datagram, Encapsulation IP fragmentation and reassembly, ICMP, IGMP, TCP. (8L)
UNIT 5 Network Services:
Electronic mail, File transfer, Access and management, Virtual terminals, Remote procedure call.
(6L)
COURSE SUMMARY
This course covers advanced Java programming concepts that includes Java user interface programming
and design, collections framework, multithreading, networking, java database programming. Students
will also be introduced to technologies like Java beans, Servlets and JSP.
COURSE OBJECTIVES
The objectives of this course are to learn advanced java programming techniques and technologies
required to build applications at enterprise level with good user interface.
COURSE OUTCOMES
On successful completion of the course, students will be able to achieve the following:
Understand and implement JavaFX technologies.
Understand and implement java collections framework.
Understand and implement multithreading in Java.
Understand and implement networking and java database programming.
Understand and implement enterprise level technologies like beans, servlets and jsp.
CURRICULUM CONTENT
UNIT I: User Interface
Java FX vs Swing and AWT, The Basic Structure of a Java FX Program, Panes, UI Controls, and
Shapes, The Color Class, The Font Class, The Image and Image View Classes, Layout Panes, Shapes.
Events and Event Sources, Registering Handlers and Handling Events, Inner Classes, Anonymous Inner
Class Handlers, Simplifying Event Handling Using Lambda Expressions, Mouse Events, Key Events,
Listeners for Observable Objects.
Labeled and Label, Button, Check Box, Radio Button, Text Field, Text Area, Combo Box, List View,
Scrollbar, Slider. (6L)
UNIT 2: Java Collections Framework
Collections, Iterators, Lists, the Comparator Interface, Static Methods for Lists and Collections, Queues
and Priority Queues, Binary Search Trees, Array Lists, Linked Lists, Queues, Maps.
(7 L)
UNIT 3: Multithreading
Thread Concepts, Creating Tasks and Threads, The Thread Class, Thread Pools, Thread Synchronization,
Synchronization Using Locks, Cooperation among Threads, Case Study: Producer/Consumer, Blocking
Queues, Semaphores, Avoiding Deadlocks, Thread States, Synchronized Collections.
(8 L)
Course Summary
This course aims to provide a basic understanding of Data Science concepts. This course introduces
students to the data science principles required to tackle real-world, data-rich problems in business
Course Objectives
Data Science is the study of the generalizable extraction of knowledge from data. This course serves as
an introduction to the data science principles required to tackle real-world, data-rich problems in business
and academia, including:
Data acquisition, cleaning, and aggregation
Exploratory data analysis and visualization
Feature engineering
Model creation and validation
Basic statistical and mathematical foundations for data science
Course Outcomes
An understanding of problems solvable with data science and an ability to attack them from a
statistical perspective.
An understanding of when to use supervised and unsupervised statistical learning methods on
labeled and unlabeled data-rich problems.
The ability to create data analytical pipelines and applications in Python.
Familiarity with the Python data science ecosystem and the various tools needed to continue
developing as a data scientist.
Curriculum Content
UNIT1:COMPUTER SCIENCE/STATISTICS/LINEAR ALGEBRA SHORT REVIEW
What is data science? Brief review of prerequisite knowledge for studying data science. Basics of
computer science; data structures/types, program control flow, and syntax in Python. Basics of statistics;
probability and probability distributions. Basics of linear algebra; matrices, vectors using Python
programming language. (8L)
UNIT2:EXPLORATORY DATA ANALYSIS (EDA) AND VISUALIZATION
Exploration of dataset using Pandas Python package. Compute Stem and Leaf plot, Box plot, Histogram,
Scatter plot of a data set. At this point, students decide on a course project that would benefit from the
data-scientific approach. The project involves exploration of freely-accessible and usable data that
answer some interesting questions about the data (Several resources of free data will be provided.) (8L)
UNIT3:DATA MODELING: SUPERVISED/UNSUPERVISED LEARNING
Two basic kinds of statistical models used for prediction. Supervised Learning algorithm: Linear
Regression and Logistic Regression. Unsupervised Learning algorithm: K-Means clustering. Advanced
Course Summary
Computer Graphics is a study of the hardware and software principles of interactive raster graphics.
Topics include an introduction to the basic concepts, 2-D and 3-D modelling and transformations,
viewing transformations, projections, rendering techniques, graphical software packages and graphics
systems. Students will use a standard computer graphics API to reinforce concepts and study
fundamental computer graphics algorithms.
Course Objectives
These subject helps students develop problem-solving, communication and research skills in the context
of computer graphics, including computer representation, and manipulation and display of pictorial
information. It also helps students enhance their skills to design and implement three-dimensional (3D)
computer images, such as those used in animated films, virtual reality (VR), data visualisation and
computer games.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Describe the major computer graphics applications.
Explain the operations of graphics hardware systems
Explain the viewing pipeline of generating a raster-scan image
Curriculum Content
UNIT 1 Introduction to Active and Passive Graphics:
Introduction to Active and Passive Graphics, Applications of Computer Graphics, concept of pixels,
resolution, aspect ratio, frame buffer. Pointing and Selection: the use of selection points defining a
boundary rectangle, multiple selections, Menu selection, Keyboard, Trackball, Joystick, Mouse, Light
Pen, Tablet, Scanner and Digitizing Camera etc.
Refresh Cathode Ray Tube, Raster Scan displays, Random Scan displays, Architecture of Raster and
Random Scan Monitors, Color CRT-monitors and Color generating techniques (Shadow Mask, Beam
Penetration), Direct View Storage Tube, Flat-Panel Displays; 3-D Viewing Devices, Raster Scan
Systems, Random Scan Systems, Graphics monitors and workstations, Color Models (RGB and CMY),
Lookup Table. (10L)
Course Summary
This course is intended for students with little or no programming experience. This course provides
knowledge of installation and Working with Python Understanding Python Variables Python Basic
Operators Understanding python block, Declaring and using Numeric data types: int, float, complex
Using string data type and string operations Defining list and list slicing Use of Tuple data type.
Course Objectives
To understand why Python is a useful scripting language for developers
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
To learn how to use lists, tuples, and dictionaries in Python programs
To define the structure and components of a Python program
To learn how to read and write files in Python.
To learn how to use exception handling in Python applications for error handling
Curriculum Content
UNIT 1 Introduction to python:
Introduction to python, Installation and versions of python, variables, expression and data types,
conditional statements, Loops and iterations, functions, strings, strings functions, Sequences: List, tuples,
Sets and Dictionaries, indexing and slicing lists, Functions, Functions parameters, closures, decorators,
lambda functions, map, reduce and filters. (6L)
UNIT 2 Numpy basics:
List comprehensions, dictionary comprehensions, set comprehensions, Numpy basics: ndarrays, data
types for ndarrays, operations between array and scalar, indexing, slicing, transposing, swapping axes,
conditional logics, mathematical and statistical methods, linear algebra, random number generation.
(8L)
UNIT 3 Classes and Objects:
Classes and objects: string representation of instances, making objects, encapsulating name in a class,
managed attributes, inheritance, constructors, modules and packages: import everything, import
submodule, splitting a module into multiple files, reloading modules. (6L)
UNIT 4 Pandas:
Pandas: series, data frame, index object, indexing, dropping, selection, filtering, reindexing, data
alignment, function application and mapping, sorting, ranking, summarizing, missing data, hierarchical
indexing, data loading, file formats, combining, merging, reshaping, pivoting. (8L)
Course Summary
This examines the principles of mobile application design and development. Students will learn
application development on the Android platform. Topics will include user interface design; user
interface building; input methods; data handling; network techniques.
Course Objectives
Demonstrate knowledge of different software engineering techniques for mobile applications and apply
this knowledge to develop an application for a mobile device.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Describe those aspects of mobile programming that make it unique from programming for other
platforms,
Critique mobile applications on their design pros and cons,
Utilize rapid prototyping techniques to design and develop sophisticated mobile interfaces,
Program mobile applications for the Android operating system that use basic and advanced phone
features, and
Deploy applications to the Android marketplace for distribution
Curriculum Content
UNIT 1 Introduction to Android:
Introduction to Android, Brief History of Android, Downloading and Installing Eclipse, Downloading and
Installing the Android Studio, Downloading and Installing the Android SDK, Introduction to layout,
Buttons, Views. (8L)
UNIT 2 Introduction to Android SDK, Application Life Cycle:
Introduction to Android SDK, Application Life Cycle: Standard ASP Application Life Cycle, Introduction
to Activity, Android activity Life Cycle, Creating Android Project in Android, Examining the Android
applications. (8L)
Course Summary
This course gives detailed description of World Wide Web Consortium (W3C) standard markup
language and services of the Internet.
Course Objectives
This course introduces World Wide Web Consortium (W3C) standard markup language and services
of the Internet.
This includes the creating web pages, search engines, FTP, and other related topics. Upon
completion, students should be able to deploy a hand-coded web site created with mark-up language,
and effectively use and understand the function of search engines.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
Is able to understand and use the basics of the XML based technologies
Is able to understand and define and utilize the Web Services / Windows Communication
Foundations concept
Is able to describe how Web Services can be used to implement Service Oriented Architecture
(SOA)
Is able to design and implement user interfaces based on the AJAX technology
Curriculum Content
UNIT 1 PHP
Introduction to PHP Evaluation of PHP Basic Syntax Defining variable and constant PhP Data Type
Operator and Expression, GET & POST method PHP, Conditional Structure & Looping Structure, Array,
StringCreating and accessing, String Searching & Replacing, String Formatting String, String Related
Library function. (6L)
UNIT 2 Function:
Call by value and Call by reference, Recursive function. Handling Html Form withPhP: Capturing Form,
Data Dealing with Multi-value filed, Generating File uploaded form, Redirecting a form after submission
(8L)
UNIT 3 PHP Components:
PHP GD Library, PHP Regular expression function, Cookies, Session, Server variable, Database
Connectivity with MySQL (Using PhpMyAdmin) (8L)
UNIT 4: Working with file and Directories:
Understanding file& directory, Opening and closing a file Coping, renaming and deleting a file, Working
with directories, Building a text editor, File Uploading & Downloading (8L)
Course Summary
This course aims to provide understanding of Multimedia tools. This course introduces students to the
Multimedia tools required to tackle real-world.
Course Objectives
Aware the student with the basics of Multimedia and Graphics. Students need to be familiar with various
types and formats of animations, video and audio formats and learn Multimedia and animation Tools.
Course Outcomes
After studying this course, you should be able to:
Understand the fundamental principles of Multimedia and Animations.
Understand the working of various Multimedia tools
Understand various Designing Tools.
On successful completion of the course, students will be able to achieve the following:
Curriculum Content
UNIT 1
Introduction and Features of Photoshop: History of Photoshop, advertisement creation, wallpapers,
websites, animations& 3d effects,software development, and designs, Photo modification purpose,
Editing Photo in camera raw : photo lightings, temperature and color options for background shades.
(6L)
UNIT 2
Creating Web Galleries, PDF converts PDF Presentation, slide show presentation,Opening and
Importing images, Creating Documents with different sizes, New document properties, inserting of
images, Marquee Tool, selections on your image, Move tool, Working with layers & layer styles.
(8L)
UNIT 3
Introduction to WordPress: Creating WordPress Blog, Installing WordPress Themes, WordPress Plug-
ins, Widgets •, Using the WordPress Dashboard, Creating pages‟ / page title & body text, Draft vs.
Publishing Blogs. (8L)
UNIT 4:
Fundamentals of CAD/CAM: Automation, design process, Application of computers for design,
Benefits of CAD, Computer configuration for CAD applications, Computer peripherals for CAD, Design
workstation, Graphic terminal, CAD software- definition of system software and application software,
CAD database and structure. (8L)
Course Summary
The course will start with a brief introduction to artificial Intelligence. This course includes basic AI
search techniques like A*, BFS, DFS. Introduction to Prolog is also important part of the
content.Knowledge Representation, ReasoningPlanning and Learning being requirement for development
of expert system is also part of this course.
Course Objectives
The course is proposed to teach concepts of Artificial Intelligence. The subject will provide the
foundations for AI problem solving techniques and knowledge representation formalisms.
Course Outcomes
On successful completion of the course, students will be able to achieve the following:
1. Ability to identify and formulate appropriate AI methods for solving a problem.
2. Ability to implement AI algorithms.
3. Ability to compare different AI algorithms in terms of design issues, computational complexity,
and assumptions.
4. Student will be able to use the concepts of AI for real world problem solving.
5. Visualize the basic use of AI algorithms and their implementations in laboratory.
Curriculum Content
Unit I
Introduction- Definitions, Intelligent Agents, Problem solving and Search- Uninformed Search,
Informed Search, MiniMax Search, Constraint Satisfaction Problem, A*, Best Search, DFS, BFS.
Unit II
Prolog- Introduction to Prolog, Syntax and Meanings of Prolog Programs, Operators and Arithmetic,
Prolog for Artificial Intelligence.
Unit III
Unit IV
Text Books:
1. Stuart J. Russell and Peter Norvig, "Artificial Intelligence: A Modern Approach", Pearson
Education Asia,Third Edition, Latest Edision.
2. Elaine Rich, Kevin Knight and ShivashankarB.Nair, “Artificial Intelligence”, Tata McGraw-Hill,
Latest Edision.
3. Nils J. Nilsson, “Artificial Intelligence - A New Synthesis", Harcourt Asia Pvt. Ltd., Morgan
Kaufmann, Latest Edision.
Reference Books:
1. Ivan Bratko, “Prolog Programming for Artificial Intelligence”, Pearson Education Asia, Latest
Edision.
2. Dan W. Patterson, “Introduction to Artificial Intelligence and Expert Systems”, PHI Learning,
Latest Edision.
List of practical:
Experiment
Title of Experiment
No.
Introduction to PROLOG programming, PROLOG platform. “Hello
1
World” program.
2 Defining Clauses and Predicates, Variables, Anonymous Variables.
Arithmetic Operators, Arithmetic Functions and Logical Operators
3
(NOT, conjunction disjunction).
4 Binding Variables and Backtracking & Concept of Unification.
5 Implementation of Recursion in PROLOG.
6 Implementation of LIST and built-in predicates of LIST in PROLOG.
Implementation of State-Space Searching Problem using PROLOG
7
(Water-Jug or 8 Queens problem).
8 Universal and Existential Quantifier Variables in PROLOG.
Knowledge Base and Rule Base Creation for a specific domain in
9
PROLOG.
10 Implementation of Resolution process in PROLOG.
11 Implementation of an Expert System for a particular domain.