Diploma CSE Syllabus 3rd, 4th
Diploma CSE Syllabus 3rd, 4th
Ranchi, 834010
SYLLABUS
For Diploma Program in
Computer Science Engineering
(Effective from 2024-25)
1. Rationale
Computer programming is the core of the computer science and strong fundamentals of programming can give
competitive edge in this technology driven world. It not only instils coding skills but also enhances problem
solving ability. Python is one of the programming languages which is versatile and feature rich yet simple and easy
to learn, has applications in various domains. Python programming sets the basis for further study of web
development, data science, IoT, machine learning etc.
2. Course Outcomes: At the end of the Course, the student will be able to:
Install the latest version of python distribution and configure it for an appropriate workspace
CO-01
as needed for a given project.
Write a program by selecting python constructs needed to solve a given problem and then code,
CO-02
execute, test and debug the program to obtain the desired result.
CO-03 Demonstrate how a program can be optimized by using modular programming approach.
CO-04 Identify and resolve both syntactical and semantic errors in a given code snippet.
3. Course Content
Tutorial
Lecture Practice
(Activity
(Knowledge Criteria) Criteria) (Performance Criteria)
Week CO PO
Fundamental Concepts:
brief history; features; applications of
python; python distributions; versions;
1. Setup python
python IDEs; Python interpreter;
environment
Execution of python programs,
2. Executing python:
debugging python code; Indentation,
1 1,2 1,4 explore different
Comments; best practices for python
ways to run python
programming;
program
Character set; tokens; keywords,
3. debug python code
variables, naming rules for variables,
Assignment,
Refer Table 1
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all
possible activities for that course. Student and faculty are encouraged to choose activities that are relevant to the
topic and the availability of such resources at their institution)
Sl no Activity
1. Compare and contrast excel and python
1
2. Identify various python IDEs and identify differences between them.
1. Identify use cases like reading student name and contact details and display in a required
2 format
2. Compare and contrast input () and raw_input() and identify its appropriate use.
3. Identify use of operators and develop algorithms to solve the same
4. Compare and contrast different types of operators
3 1. Identify use cases that involve decision making and develop algorithms to solve the same
1. Identify common syntactical errors when using control flow statements
1. Identify use cases that involve iteration and develop algorithms to solve the same
4 2. Compare and contrast different types of loops
2. Identify common syntactical errors when using loops
1. Identify use cases and solve them using sets
5 2. Identify use cases and solve them using tuples
3. Identify common syntactical errors when working with sets and tuples
1. Identify use cases and solve them using List
6 2. Identify common syntactical errors when working with List
3. Reimplement built in list functions
1. Identify use cases and solve them using dictionary
7 2. Reimplement built in dictionary functions
3. Identify common syntactical errors when working with dictionary
1. Identify use cases and solve them using arrays
8 2. Reimplement built in string functions
3. Identify common syntactical errors when working with arrays and strings
9 1. Optimize previously written programs by using modular programming approach
10 1. Identify and present pros and cons of modules and packages
1. Explore and present python built in modules.
11 1. Identify the applications of Pandas
2. Perform data analysis using Pandas module on a dataset such as .
12 1. Identify use cases on files concept and develop algorithms to solve the same
2. Explore regular expressions and present how they can be used for file manipulation
13 3. Compare and contrast error and exception.
4. Rewrite the programs using exceptions if needed
4. Reference:
Sl. No. Description
1 Core python programming, Wesley J. Chun Publisher: Prentice Hall PTR
2 Fluent Python by Luciano Ramalho
3 https://www.softcover.io/read/e4cd0fd9/conversational-python
4 https://realpython.com/
5 https://www.python-course.eu/
6 https://www.datacamp.com/
7 https://www.w3schools.com/
Computer Hardware, Maintenance and Administration
Subject code – CSE302
1. Rationale
Professional computer maintenance ensures computer hardware and software systems run efficiently to increase
productivity while lowering the chances of downtime. This course aims to help understand the internal working of
computers/laptops and prepare the student for a role as an entry-level IT support technician. This course sets a basis
for different facets of information technology like computer hardware, software, trouble shooting and customer
service.
2. Course Outcomes: At the end of this course, students will be able to:
CO-01 Assemble a computer as per given technical specifications following all necessary safety protocols and
install, configure and setup an administrator for a Windows Operating System.
CO-02 Diagnose a computer using the right diagnostic tools, identify the hardware problem and
troubleshoot to resolve the problem following all safety protocols.
CO-03 Diagnose an installed software using the right diagnostic tools, identify the bug/issue, troubleshoot to
resolve bugs/issues and ensure all data and applications are backed up before
troubleshooting.
CO-04 Explain e-waste protocols to be followed while disposing computer hardware, to ensure compliance
with all required state pollution control board regulations.
3. Course Content
Tutorial
Lecture Practice
(Activity
Week CO PO (Knowledge Criteria) Criteria) (Performance Criteria)
I/O devices and Interfaces Types 1. Hardware Identification:
of I/O devices and ports on Computer Case- Types,
astandard PC for connecting I/O Features- Front panel, back
devices. panel; A look inside the
Function of serial port, parallel computer case.
port, and brief principle of Identify the front and rear
communication through these panel controls andports on a
1,
1 01 ports,types of devices that can be PC cabinet.
4
connected and interface Identify and understand different
standards. Explain basic cable
Refer Table 1
Total in hours 39 13 52
*PO = Program outcome as listed and defined in year 1 curriculum
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all
possible activities for that course. Student and faculty are encouraged to choose activities that are relevant to the
topic and the availability of such resources at their institution)
SL
Activity
NO
1. Study multipurpose cables used with different models of computers and their
applications.
2. Identify the cables and list the devices that can be connected to computer using these
1
cables.
3. Identify commercially available brands of keyboard, mouse and monitor and their
distinguishable features.
1. Identify preventive measures that help to eliminate or reduce electrostatic discharge.
2. Describe effective ways to reduce the risk of injury or damage while working with respect to
powersupply in computer systems.
2 3. Make your observations on why a technician may choose to use a UPS instead of a surge
suppress or to protect a computer.
4. Identify the components that are powered by the PSU.
5. Identify the common causes of PSU/SMPS failure and explainhow it can be maintained in a
healthy state.
6. Explain the factors on which the PSU wattage is decided.
7. Describe the features of different Power supplies available commercially that support a gaming PC.
4. Reference:
Sl. No. Description
https://www.dell.com/support/kbdoc/en-in/000139662/what-does-the-msconfig-utitility-
1
do-in-windows-7-on-your-dell-pc#TOC
https://www.google.co.in/amp/s/www.ufsexplorer.com/amp/articles/how-to/connect-sata-
2
disks-instruction.php
3 http://www.qiguaninc.com/met/faq/faq35_en.html
4 https://www.ciscopress.com/articles/article.asp?p=2999386&seqNum=3
5 https://www.crucial.in/articles/pc-builders/what-is-computer-hardware
6 https://www.udemy.com
7 https://www.pluralsight.com
Computer Networks
Subject code – CSE303
1. Rationale
The computer networking skills are essential in today's information and communication technology driven world.
It enables students with essential skills and knowledge to explore the world of communication and networking for
further study and career.
2. Course Outcomes: At the end of the course, the student will be able to:
Select an appropriate communication technology for a given network and ensure optimal
CO-01
performance by addressing issues arising from transmission impairments.
CO-02 Design a network for a given specification by using the right network components, devices,
topologies, protocols and software.
CO-03 Design, build, test and troubleshoot a SOHO network for a given premises.
Demonstrate the configuration of IP address, routing, subnetting, client-server interaction (TCP,
CO-04 UDP) and DNS for a given WAN network using a network simulator and troubleshoot common
network issues
3. Course Content
Tutorial
Lecture Practice
(Activity
Week CO PO (Knowledge Criteria) (Performance Criteria)
Criteria)
Electromagnetic waves - Generation of
electromagnetic waves and their
properties
Electromagnetic spectrum -
classification and its applications
Communication Systems - Basic
elements of communication systems 1.Build a circuit to Generate
1, 2 with block diagram, List commonly used and detect of BASK signal
1 01
terms in electronic communication and BFSK signal using
systems, Data representation, Data flow, communication kit.
Modulation, Demodulation
Analog and Digital Signals, Periodic and
Non-Periodic Signals, Sine Wave, Phase,
Wavelength, Digital Signals, Bit-
Refer Table 1
rate, Bit-length.
Total in hours 39 13 52
*PO = Program outcome as listed and defined in year 1 curriculum
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all possible
activities for that course. Student and faculty are encouraged to choose activities that are relevant to the topic and
the availability of such resources at their institution)
Sl.
Activity
No
Prepare a report on advanced communication systems and suggest best way to connect remote
1
villages of India.
2 Prepare a report on Communication satellites of Indian Space Research Organization.
3 Prepare a presentation on 5 networking protocols being used in your smart phone.
My Protocol Rules Objectives
4 a) Relate computer network protocols to the rules that you use every day for various forms of
communication.
b) Define the rules that govern how you send and interpret text messages.
c) Explain what would happen if the sender and receiver did not agree on the details of the
protocol.
My Local Network
a) Record all the different network-attached devices in your home or classroom.
5 b) Investigate how each device connects to the network to send and receive information.
c) Create a diagram showing the topology of your network.
d) Label each device with its function within the network.
6 Detailed study of Packet tracer and present the same.
Trace a Route
7 a) Determine network connectivity to a destination host
b) Trace a route to a remote server using tracert
8 Presentation on wireless Ethernet protocols
1. Calculate whether destination address is local or remote using IP address.
9 2. Calculate whether destination address is local or remote using mask.
3. Use logical AND to determine network address
Identify IPv6 Addresses
10 a) Identify the different types of IPv6 addresses.
b) Examine a host IPv6 network interface and address.
c) Practice IPv6 address abbreviation.
11 Prepare a report on ICANN
List the popular port numbers with their use.
12 Prepare e report on popular application layer protocols and present the same.
Identify and correct any misconfiguration of a wireless device ( Scenario : A small business
13 owner learns that a wireless user is unable to access the network. All the PCs are configured with static
IP addressing. Identify and resolve the issue)
4. Reference:
Sl. No. Description
1 www.netcad.com
2 Computer Networks - Behrouz A. Forouzan
3 www.howtonetwork.com
4 vlab.co.in
Database System Concepts and PL/SQL
Subject code – CSE304
1. Rationale
Data, factual information, is the main driving force that is changing the face of our world. Database is an organized
collection of related data which is stored and accessed electronically using a computer. Database management has
evolved from a specialized computer application to a central component of virtually all enterprises, and, as a result,
knowledge about database systems has become an essential part of an education in computer science. SQL is a
powerful language for both querying and updating data in relational databases. Study of SQL empowers students to
implement and work with relational data model.
2. Course Outcomes: At the end of the course, the student will be able to:
Identify the elements of ER model for a given requirement, draw ER diagram and validate with the
CO-01
given requirement.
Translate the given ER diagram to a relational model and verify against integrity constraints. Also
CO-02
refine and normalize the relational database design against first three normal forms.
CO-03 Use appropriate SQL statements to create a database and other DB objects using a DBMS software.
Perform insert, delete and/or update operations on the database and query the database to
CO-04
retrieve the required information using appropriate SQL statements and clauses.
3. Course Content
Tutorial Practice
Lecture
(Activity (Performance
(Knowledge Criteria)
Week CO PO Criteria) Criteria)
Introduction
Overview of DB: why a database? Purpose of
1. Install and setup
database; Classification; Application; DBMS:
DBMS software
features, providers;
such as MySQL,
Functional components of DBMS; Types of
PostgreSQL
1 1 1,4 DBMS architecture;
2. Learn the interface
View of data in DBMS; Database users; Role
and explore the
and responsibilities of DBA;
features of installed
Case study: Example of any database
Refer Table 1
DBMS
application, recruitment database
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not
inclusive of all possible activities for that course. Student and faculty are encouraged to
choose activities that are relevant to the topic and the availability of such resources at their
institution)
1. Identify the drawbacks of file system and how DB enables us to overcome them. Identify
1
distinguishable features of each of DBMS available in the market.
1. Transform given n-ary relationship to binary relationship
2 2. Document the steps to create ER diagram.
3. Identify the components of ER model in the given requirements.
4. Reference:
Sl. No. Description
1 Database System Concepts by Abraham Silberschatz, Henry F. Korth, S . Sudarshan
2 https://binaryterms.com/
3 https://beginnersbook.com/
4 https://www.oracletutorial.com/
5. Equipment/software list
Sl.
Particulars Specification Quantity
No.
1 Computers 20
1. Rationale
Data structures are the techniques organizing data and of designing the algorithms for real-life projects. Knowledge
of data structures is essential for software design and development. Learning data structures with Python offer
flexibility and ease of programming with many built in data structures and libraries.
2. Course Outcomes: At the end of the Course, the student will be able to:
CO-01 Explain data structures types, list their applications.
CO-02 Apply the right Algorithm design strategies to solve a given problem.
CO-03 Choose the right data structure to develop solution to a given computing problem.
CO-04 Analyse space and time complexities of the algorithm used and plot a graph.
3. Course Content
Tutorial
Lecture Practice
(Activity
Week CO PO (Knowledge Criteria) (Performance Criteria)
Criteria)
Introduction to Data Structures, operations,
classification, Characteristics.
Primitive types – primitive data structures, 1. Python program to
python examples. Non primitive types - Non Use and demonstrate
primitive data structures, python examples. basic data structures.
1,
1 01 Linear and nonlinear data structures – with 2. Implement an ADT
2, 3
python examples. with all its
Introduction, Abstractions, Abstract Data Types, operations.
An Example of Abstract Data Type (Student,
Date, Employee), Defining the ADT,
Using the ADT, Implementing the ADT.
1. Implement an ADT
and Compute space
and time
1, Algorithm Analysis – Space Complexity,
complexities.
01, 2, Time Complexity.
2. Implement above
Refer Table 1
1. Implement Binary
Search using
recursion Compute
space and time
complexities, plot
graph using
asymptomatic
Divide and conquer - Merge Sort, Quick Sort, notations and
Binary search. compare two.
1, Dynamic programming - Fibonacci sequence 2. Implement Merge
01, 2, Backtracking – Concepts only (Implementation and quick sorting
4 02, 3, examples with recursion in week 9). algorithms compute
04 4, Greedy – Concepts only. space and time
7 complexities, plot
graph using
asymptomatic
notations and
compare all
solutions.
3. Implement Fibonacci
sequence with
dynamic
programing.
Linear(arrays) vs nonlinear (pointer) 1. Implement Singly linked
01, 1, structures – Run time and space list (Traversing the
02, 2, requirements, when to use what? Nodes, searching for a
5
03, 3, Introduction to linked list, Examples: Image Node, Prepending
04 4, viewer, music player list etc. (to be used to Nodes,
explain concept of list), applications. Removing Nodes)
1,
01, The Singly Linked List- Creating Nodes,
2,
02, Traversing the Nodes, searching for a Node, 1. Implement linked list
6 3,
03, Prepending Nodes, Removing Nodes. Iterators.
4,
04 Linked List Iterators.
The Doubly Linked List, Examples: Image
01, 1,
viewer, music player list etc. (to be used to
02, 2, 1. Implement DLL.
7 explain concept of list).
03, 3, 2. Implement CDLL
DLL node, List Operations – Create,
04 4,
appending nodes, delete, search.
The Circular Linked List-Organization, List
Operations – Appending nodes, delete,
iterating circular list.
Last In First Out (Stack) Data structures –
Example: Reversing a word, evaluating an
01, 1, expression, message box etc. (to be used to 1. Implement Stack Data
02, 2, explain concept of LIFO). Structure.
8
03, 3, The Stack implementation – push, pop, 2. Implement bracket
04 4 display. matching using stack.
Stack Applications- Balanced Delimiters,
Evaluating Postfix Expressions.
Recursion. 1. Program to
Properties of Recursion. demonstrate recursive
01, 1,
Recursive functions: Factorials, Recursive Call operations (factorial/
02, 2,
9 stack, The Fibonacci Sequence. Fibonacci)
03, 3,
How Recursion Works- The Run Time Stack. 2. Implement solution
04 4,
Recursive Applications- Recursive Binary for Towers of Hanoi.
Search, Towers of Hanoi.
The First In First Out (Queue) Data structure
– Example: Media player list, keyboard buffer
01, 1,
queue, printer queue etc. (to be used to explain 1. Implement Queue.
02, 2,
10 concept of FIFO). 2. Implement priority
03, 3,
Implementing the Queue and its operations queue
04 4,
using Python List.
Priority Queues, Implementation.
The Tree data structure – Example: File
explorer/Folder structure, Domain name
1, server.
01, 1. Implement Binary
2, Tree Terminologies, Tree node
02, search tree and its
11 3, representation.
03, operations using list.
4, Binary trees, Binary search trees, Properties,
04 Implementation of tree operations – insertion,
deletion, search, Tree traversals
(in order, pre order and post order).
1, 1. Implementations of
01, Depth-first traversal
2, BFS.
12 02, Breadth-first traversal
3, 2. Implementation of
04 Tree applications: Expression evaluation.
4, DFS.
Introduction to Hashing.
1,
01, Hashing - Perfect hashing functions. 1. Implement Hash
2,
13 03, Hash table functions.
3,
04 Hash Functions, Operations, Hash collision,
4,
Application.
Total in hours 39 13 52
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all possible
activities for that course. Student and faculty are encouraged to choose activities that are relevant to the topic and
the availability of such resources at their institution)
Sl.
Activity
No
1 Design a Data structure for handling Student Records- Designing a Solution, Implementation
(Using Basic DS).
2 Design a Data structure for handling Student Records- Designing a Solution, Implementation
(Using ADT).
3 Optimize your solution (Bubble sort, selection sort and Insertion sort)
4 Implement Radix sort.
5 Prepare report on nonlinear data structures.
6 Design and implement sparse matrix representation using linked list.
7 Design and implement simple application that require DLL data structure.
8 Implement and demonstrate evaluating postfix expression.
9 Presentation on run time stack.
10 Design and implement priority queue data structure.
11 Prepare a Report on balanced trees.
12 Implement expression evaluation tree.
13 Prepare a report on hashing and analyze time complexity.
4. Reference:
Sl. No. Description
1 Data Structures and Algorithms using Python by Rance D. Necaise
2 Python Data Structures and Algorithms by Benjamin Baka
3 www.geeksforgeeks.com
5. Equipment/software list
Sl.
Particulars Specification Quantity
No.
1 Computers 20
2 Python 3.6 20
1. Rationale
The Operating System knowledge and skill is an integral part in the study of computer science. It provides the
platform for all other application to run on the machine, thus knowledge of operating system and administration
becomes indispensable for understanding computing environment. It is essential to have knowledge of operating
system’s services and utilities to develop, deploy and maintain the software and hardware. The students will also be
skilled in operating system virtualization, to create and manage virtual computing environment.
2. Course Outcomes: At the end of the course, the student will be able to:
CO-02 Create a virtual environment and configure it to meet a specific application requirement.
Identify and use Linux commands to create and manage simple file processing operations,
CO-03
organize directory structures, and develop shell script to automate given simple task.
Demonstrate the role and responsibilities of a Linux system administrator and analyse problems
CO-04
using suitable diagnostic tools and resolve issues.
3. Course Content
Tutorial
Lecture Practice
(Activity
Week CO PO (Knowledge Criteria) (Performance Criteria)
Criteria)
Overview of Operating System, Need for
OS, Structure, OS Types, Examples of
1. Types of OS installation
OS (desktop and mobile)
2. Boot methods
Dual mode operation, Kernel and
1 1 1,7 3 . File System and
microkernel, Functions of OS User
Refer Table 1
formatting
interfaces; Corporate Vs
4. Post installation tasks
Personal needs; Types of OS
installation
1, Virtualization technology, working,
2 1, 7
2 types 1. Install and configure
virtual machine-
Virtual box/VMware,
Potentials and challenges of VMware player
Virtualization, Virtual Machines,
Containers. station.
Linux Boot process. 2. Download and install a
Linux command line - Interpreter, shell, terminal emulator and
CLI over GUI, Types of users- super and connect Linux VM via
normal, Linux user manual. TE(optional).
Significance of man
command.
3 1,3 1, 7 File system - Pathnames, File system File and Directory
structure and its description, commands:
navigating the file system. 1. Create and delete
File types, attributes, Access Control directories and files,
List (ACL), Adding text to file. File movement, copy
Pipes, File Comparison, Filters / commands, Pipes
Text Processing Commands. (named & unnamed)
2. Commands for viewing
File, File comparison,
File manipulation,
Altering file permission,
Refer Table 1
File compression and
decompression.
3. Text processing
commands.
1. Demonstration through
Memory management -
videos.
1,2,3 Process address space, static vs
6 1 2. Commands to view
4, 7 dynamic linking and loading.
memory consumption
Swapping, Memory allocation,
Fragmentation, Paging,
Segmentation; Virtual memory,
Demand paging, Page replacement
algorithm (concept only)
Shell Programming: 1. Write shell scripts to
2, 3
Basics of shell programming, types illustrate decision
4, 7
of shell in Linux, Basic Shell scripts- making and different
Shebang or Hashbang, Input & types of
7 1
Output, decision making and iterative iterations; Ex- to
scripts. perform string
operations; to perform
file operations;
Automation of system tasks: Writing 1. Illustrate automation of
2, 3
scripts to automate common tasks. basic tasks like
Refer Table 1
4, 7
monitoring memory
8 1 consumption, check
remote servers’
connectivity, etc., at
different frequencies.
Network Management 1. Enable internet on
Network components- IP address, Linux VM.
2, 3,4 subnet mask, gateway. 2. Test and manage
Network Interface management;
network using
Communication.
Data transfer facilitation. following commands
Diagnosis and troubleshooting; ifconfig, iwconfig,
Resource analysis. ethtool, arpwatch, bmon
9 1
,telnet, ssh, sendmail,
mailstats, w
cURL, wget, ftp, rcp, scp,
Refer Table 1
10
Authentication, what is LDAP and gpasswd, groupdel;
2,4,7
Active Directory? LDAP structure, system-config.
working. 2. OpenLDAP Installation
3. LDAP server and client
configuration.
System monitoring, Log monitoring 1. System monitoring
2, 3
System maintenance, System commands top, df,
4, 7
information. dmesg, iostat 1, free,
System architecture, Linux Boot cat /proc/cpuinfo,
4 process and System run levels, cat/proc/meminfo;
11 System updates and repositories. 2. Work on log directory
-
/var/log;
3. System maintenance
commands-
shutdown, reboot,
halt, init.
4. System update &
repositories- yum &
rpm.
2, 3, Server setup: DNS- Introduction, Install and configure:
4, 7 Configuration, creating DNS zone, 1. DNS server with a
2,4
using DNS tools; FTP- Installation domain name of your
process, configuration and choice.
securing; setting up an Apache 2. FTP server on
12
Refer Table 1
Web Server(http) LINUX and transfer
files to demonstrate
it’s working.
3. Apache web server and
create virtual hosts.
Storage management: 1. Basic commands for
2,4 2, 3 Disk partition, formatting, storage partitions.
4, 7 mounting; Logical Volume 2. Install and configure
Management (LVM)- Use of LVM, LVM.
creating Volume groups, logical 3. Add Disk and
volume and disk mirroring, Extend CreateStandard
13
Disk using LVM, Adding Swap & LVM
Space Introduction to RAID – Partition.
Refer Table 1
Hardware & Software, RAID levels. 4. Add virtual disk and
create a new LVM
partition(pvcreate,
vgcreate, lvcreate)
5. Extend disk using LVM
Total in hours 39 13 52
*PO = Program outcome as listed and defined in year 1 curriculum
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all possible
activities for that course. Student and faculty are encouraged to choose activities that are relevant to the topic and
the availability of such resources at their institution)
1. Compare features of different OS(windows, Linux, RTOS- Vxworks/android)
1 2. Study the evolution of OS to recognize the importance of current OS
trends.
3. Explain the different flavors of LINUX.
2 1. Explain OS level virtualization and state its benefits.
2. Compare VMs and Containers
3. Identify the difference between hypervisors and Linux containers.
4. Comprehend the benefits of virtualization.
3 1. Compare ex2/ex3 filesystem attributes.
2. Discuss the file- mount and unmount system calls.
4 1. Compare Linux fork () and Windows createprocess () functions.
5 1. Study probable conditions for deadlock occurrence and how to overcome it.
2. Identify relationship between threads and processes.
3. Comprehend the differences between types of threads
6 1. Compare the features of swapping and paging.
7 1. Compare different Linux shells.
8 1. Write a cron job that runs all essential apps. on an hourly/ daily/weekly/monthly basis. (for ex.
Executing Antivirus)
9 1. Compare static and DHCP IP addresses and check whether these can be switched over.
2. Study different options offered by Linux for package management.
10 1. Identify few alternatives to openLDAP and make a comparison.
11 1. Explore other network commands required for a sysadmin and interpret their functions and
usage.
12 1. Study the difference between application server and web server.
2. Identify the role of virtual host.
3. Explain different types of Apache virtual hosts and how they are set up.
13 1. Compare the features between RAID and SSD.
4. Reference:
Sl.
No Description
.
1 Operating System internal and Design Principles, William Stallings
2 Operating System, Garry Nut
3 https://www.redhat.com/en/topics/virtualization
4 Virtual Machine - an overview | ScienceDirect Topics
5 DNS: https://www.youtube.com/watch?v=TiWs9n4fhys&list=RDCMUCQSpnDG3YsFNf5-qHocF-WQ &inde
x
5. Equipment/software list
Sl.
Particulars Specification Quantity
No.
1 Computers
2
VirtualBox, Ubuntu or any other Linux OS image.
Object Oriented Programming and Design with Java
Subject code – CSE403
1. Rationale
Object oriented programming paradigm with object-oriented design principles are vital in design and
development of today’s complex computing solutions. OOD principles provide valuable standards and
guidelines to create clean and modular design and avoid code smells. Java being the popular object-
oriented programming language that empowers the innovation in this digital world, students will have
sound knowledge of object-oriented programming concepts and design principles with java.
2. Course Outcomes: At the end of the course, the student will be able to:
Design a solution for a given problem using object-oriented programming concepts and apply
CO-01
all appropriate object-oriented design principles
CO-02 Write and test the code for a designed solution using java OOP concepts.
CO-03 Identify exceptions in the designed or given solution and explain how to resolve them.
CO-04 Demonstrate with an example a java application's connection with a database.
3. Course Content
Tutorial
Lecture Practice
PO (Activity
Week CO (Knowledge Criteria) (Performance Criteria)
* Criteria)
1. Install and Setup java
Introduction to Java environment
Brief history; features; java architecture; 2. Install java editor
components: JVM, JRE, JDK; (Eclipse for Enterprise
1, Applications;
Refer Table 1
Total in hours 39 13 52
*PO = Program outcome as listed and defined in year 1 curriculum
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all possible
activities for that course. Student and faculty are encouraged to choose activities that are relevant to the topic and
the availability of such resources at their institution)
Sl.
Activity
No
1 1. Identify various java IDEs and identify differences between them.
2. Compare and contrast Java with Python
1. Study and present
2 a. type casting in java
b. what are command line arguments in java?
c. java keywords and their usage
1. Compare and contrast
3 a. method and constructor;
b. constructor and destructor
4 1. Study and present how does bytecode work in java.
5 1. Present nesting of conditional and iterative statements considering a use case.
Identify advantages and disadvantages of
a. Encapsulation.
6 b. Inheritance
c. Abstraction
d. Polymorphism
Study and report
7 a. java Arrays class their methods
b. java String class their methods
Identify and document how these principles help to avoid code smells.
8 a. SRP
b. OCP
c. ISP
Compare and contrast
9 a. static and dynamic binding and identify usage of each
b. abstract class and interface, identify usage of each
10 1. Differentiate error and exception
2. Identify and document system exceptions
11 Study DRY principle, identify the benefits.
12 Identify how OOD principles violations impact the quality of code.
13 Identify java ORM frameworks and their features.
14 Study and find the inclusions in latest java versions.
4. Reference:
Sl. No. Description
1 https://docs.oracle.com/javase/tutorial/java/concepts/
2 www.edureka.co
3 Clean Code by Robert C Martin
4 https://www.javabrahman.com/programming-principles/
5 https://medium.com/
5. Equipment/software list
Sl.
Particulars Specification Quantity
No.
1 Computers
1. Rationale
Digital reality has become an integral part of human life with software tools being used to deal with
virtually every part of life. A process is key to develop a quality software successfully. Principles and practices of
software engineering blends engineering, computing, project management and software development. It’s essential
to understand the life cycle of software development and the process followed to develop a quality software. Design
thinking methodology encourages identifying alternative strategies and solutions to solve a problem in best possible
way.
2. Course Outcomes: At the end of the Course, the student will be able to:
Explain the typical software development life cycle (SDLC), list and differentiate the various
CO-01
SDLC models along with identifying where each model could be beneficial when applied.
Demonstrate the application of design thinking as a process, explain how it helps in
CO-02
requirement engineering and mitigate risks.
Study a given application requirement, create user stories, draw the appropriate UML diagram
CO-03
and validate to ensure user story/UML diagram meet with the given requirement.
Document standard test procedures and test cases for a given requirement to ensure the
CO-04
software gives the desired results for which it is built.
3. Course Content
Tutorial Practice
Lecture
(Activity (Performance
(Knowledge Criteria)
Week CO PO Criteria) Criteria)
Overview
Software engineering; Need of software
1. Discuss success
engineering; Software paradigms; Software
and failure stories
product types: generic, customized; 2. Presentation of
characteristics of good software; collected case
1 1 1
Challenges in software projects; Factors that studies
Refer Table 1
User stories
What are user stories? Why user story? 1. Create detailed user
Basic concepts; Characteristics; How to stories for the above
write/create user stories? Steps; 3C’s in identified problem
1,
user stories; Life cycle of user story. User 1.Organize and play
7 1,3 2,
story map. planning poker to
4
Estimation: decide on user
User story point: basics; components of points.
story point estimation; Steps involved in
estimation;
Design
Objectives; design Concepts; Levels of
design; 1.Create sitemap and
Architectural styles; Monolithic and wireframe for above
1, Microservices; created user stories.
8 1,2 2, UI and UX: Overview of UI and UX, UI (Tools such as
3 types, essential properties, elements of UI sketch, Adobe XD,
design; relationship between UI and UX; Figma, etc can be
Importance of good UI/UX. Wireframes: used)
overview, purpose, benefits;
Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all possible
activities for that course. Student and faculty are encouraged to choose activities that are relevant to the topic and the
availability of such resources at their institution)
Sl
Activity
No
1 Study the traffic signal and the importance of rules and process.
2 Visit various consulting company web portals and collect case studies.
3 Document the roles and responsibilities of different agile ceremonies
4 Identify cost of risk;
Identify commonly used risk management tools.
5 Identify a problem and explain how design thinking can be applied to solve it.
Design a shopping cart to achieve ease of use, applying design thinking.
Prepare RPM requirement traceability matrix for shopping cart List
6 the criteria to select the requirement management tools.
Identify different requirement management tools and list their features.
Identify frequently used UML diagrams and also identify tools used to draw them.
7 Explore agile estimation techniques and prepare a report.
8 Study boiler plate and present necessary characteristics of boiler plate for a large and small project
Identify different DevOps Tools and list their features
Study and report OWASP coding guidelines
9 Learn and report Twelve Factor App methodology
Identify different version control and configuration management tools and report their market share
Compare and contrast containerization and virtualization and identify importance of these in
10 software development
Identify container providers
11 Study and prepare report on testing tools.
Compare manual and automation testing
12 Study and prepare report on widely used software metrics.
13 Identify different quality tools and report their features and usage
4. Reference:
Sl. No. Description
1 Agile Software Development, principles, patterns and practices by Robert Martin
2 Art of agile development by James Shore & Shane Warden
3 Extreme programming explained: embrace change
4 Software-Engineering-9th-Edition-by-Ian-Sommerville
5 RPL-7th_ed_software_engineering_a_practitioners_approach_by_roger_s._pressman_
6 Becoming Agile..in an imperfect world by Greg Smith, Ahmed Sidky
7 scaledagileframework.com
8 Continuous Delivery Principles | Atlassian
9 www.agilealliance.org/
10 www.udemy.com
11 www. tutorialride.com
12 www.interaction-design.org/
13 www.digite.com
5. Equipment/software list
Sl.
Particulars Specification Quantity
No.
1. Computers