0% found this document useful (0 votes)
10 views17 pages

Syllabus

The document outlines a comprehensive curriculum covering 293 topics across various fields including Structured Programming, Software Engineering, Data Structures, Web Technology, Operating Systems, Database Management Systems, and Networking. Each section is organized into subtopics with a focus on key concepts, principles, and algorithms essential for understanding and application. The document also highlights high-yield topics and tips for effective study and preparation for multiple-choice questions.

Uploaded by

Saif Jamil
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views17 pages

Syllabus

The document outlines a comprehensive curriculum covering 293 topics across various fields including Structured Programming, Software Engineering, Data Structures, Web Technology, Operating Systems, Database Management Systems, and Networking. Each section is organized into subtopics with a focus on key concepts, principles, and algorithms essential for understanding and application. The document also highlights high-yield topics and tips for effective study and preparation for multiple-choice questions.

Uploaded by

Saif Jamil
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Absolutely!

I can organize your 293 topics into a clean subject → subtopic → serial
numbering format, so it’s easier to study or convert into MCQs. Here’s the structured version:

1️⃣ Structured Programming and OOP


1.1 Structured Programming in C

1. Introduction to C
2. Fundamentals of C Programming
3. Structure of a C Program

Control Statements
4. Program Control Statements
5. Conditional Statements (if, if-else, switch)
6. Looping Statements (for, while, do-while)
7. Break and Continue

Data Handling
8. Data Types
9. Variables and Constants
10. Expressions and Operators

Arrays and Strings


11. Arrays
12. Multidimensional Arrays
13. Strings

Pointers and Functions


14. Pointers
15. Functions
16. Parameter Passing
17. Recursion

Input and Output


18. Console Input / Output
19. File Input / Output

Advanced Structures
20. Structures
21. Unions

1.2 Object-Oriented Programming (OOP)


Core OOP Concepts
22. Classes
23. Objects
24. Methods

Encapsulation and Data Organization


25. Encapsulation
26. Interfaces
27. Packages

Relationships
28. Inheritance

Advanced Concept
29. Polymorphism

2️⃣ Software Engineering


2.1 Introduction

30. Introduction to Software Engineering


31. History of Software Engineering
32. Nature of Software
33. Relationship of Software Engineering with other disciplines
34. Programming Languages in Software Development

2.2 Software Nature and Quality

35. Product Qualities


36. Project Qualities
37. Correctness
38. Robustness
39. Usability
40. Maintainability
41. Portability
42. Quality Measurement

2.3 Software Development Life Cycle (SDLC)

43. Introduction to SDLC


44. Requirement Phase
45. Design Phase
46. Development / Implementation Phase
47. Testing Phase
48. Maintenance Phase

2.4 Software Development Models

49. Waterfall Model


50. Agile Model
51. Spiral Model
52. Rapid Application Development
53. V Model

2.5 Software Engineering Principles

54. Modularity
55. Abstraction
56. Generality
57. Object-Oriented Principle
58. Component-Oriented Principle
59. Structured Principle

2.6 Specification and Verification

60. Requirement Specification


61. Descriptive Specification
62. Testing
63. Analysis
64. Debugging

2.7 Modeling and Design

65. Basics of Modeling Diagrams


66. Software Design Concepts
67. User Interface (UI) Design

2.8 Software Project Management

68. Project Management Concepts


69. Project Metrics
70. Project Estimation
71. Risk Management
3️⃣ Data Structures, Algorithms &
Combinatorial Optimization
3.1 Introduction

72. Introduction to Algorithms


73. Data Structures and Complexity of Algorithms
74. Time–Space Tradeoff
75. Analyzing & Designing Algorithms
76. Correctness of Algorithms

3.2 Searching Techniques

77. Linear Search


78. Binary Search

3.3 Sorting Algorithms

79. Insertion Sort


80. Selection Sort
81. Bubble Sort
82. Quick Sort
83. Merge Sort
84. Radix Sort

3.4 Recursion Problems

85. Factorial using Recursion


86. Tower of Hanoi

3.5 Linked Lists

87. Abstract Data Types


88. List ADTs
89. Singly Linked List
90. Doubly Linked List
91. Circular Linked List

3.6 Stacks and Queues

92. Stack
93. Queue
94. Stack Implementation
95. Queue Implementation
96. Prefix Expression
97. Infix Expression
98. Postfix Expression
99. Expression Transformation and Evaluation

3.7 Hashing

100. Hash Functions


101. Hash Indices
102. Static Hashing
103. Dynamic Hashing
104. Hash Collisions
105. Collision Resolution Techniques

3.8 Trees

106. Tree Concepts


107. Binary Tree
108. Binary Search Tree (BST)
109. Heap
110. Heap Sort
111. Huffman Encoding
112. AVL Tree
113. B Tree
114. B+ Tree

3.9 Graphs

115. Graph Terminologies


116. Graph Representation
117. Breadth First Search (BFS)
118. Depth First Search (DFS)
119. Shortest Path Problems
120. Minimum Spanning Tree (MST)
121. MST Algorithms
122. Topological Sorting

3.10 Greedy Algorithms

123. Introduction to Greedy Algorithms


124. Greedy Choice Property
125. Greedy vs Dynamic Programming
126. Fractional Knapsack Problem
127. Activity Selection Problem
128. Huffman Encoding (Greedy)
129. Task Scheduling Problem
130. Coin Change Problem
131. Kruskal’s Algorithm
132. Prim’s Algorithm

3.11 Divide and Conquer

133. Divide and Conquer Design Technique


134. Quick Sort Analysis
135. Merge Sort Analysis
136. Proof of Correctness
137. Run Time Analysis

3.12 Dynamic Programming

138. Introduction to Dynamic Programming


139. Principle of Optimality
140. Optimal Substructure Property
141. Assembly Line Scheduling
142. Matrix Chain Multiplication
143. Longest Common Subsequence
144. Viterbi Algorithm
145. Bitonic Euclidean Traveling Salesperson Problem
146. Runtime Analysis

3.13 Graph Algorithms

147. Flow Networks


148. Single Source Shortest Path
149. All Pairs Shortest Path

4️⃣ Web Technology


4.1 Basics

150. HTML
151. JavaScript
152. CSS

4.2 Server-Side Programming

153. HTTP Server


154. Application Server
155. MVC Web Framework
156. Web Services

4.3 Database Access

157. Object Relational Mapping


158. Lambda Expression
159. Language Integrated Query
160. Data Reader and Writer

4.4 Web Security

161. Denial of Service (DoS)


162. Buffer Overflow
163. Cross Site Scripting (XSS)
164. Authentication and Access Control

5️⃣ Operating System


5.1 Introduction

165. Introduction to Operating System


166. Functions and Characteristics of OS

5.2 Hardware Concepts

167. CPU States


168. I/O Channels
169. Memory Hierarchy
170. Microprogramming

5.3 Process Management

171. Process Concept


172. Process States
173. Process Control Block (PCB)
174. Process Context
175. Concurrent Processes

5.4 UNIX Process Management

176. UNIX Process Control


177. Signals
178. Fork
179. Pipes

5.5 OS Structure

180. Interrupt Processing


181. OS Kernel
182. First Level Interrupt Handler (FLIH)
183. Dispatcher

5.6 Scheduling

184. Job Scheduling


185. Processor Scheduling
186. Scheduling Algorithms

5.7 Concurrency & Synchronization

187. Critical Section Problem


188. Mutual Exclusion
189. Process Synchronization
190. Producer Consumer Problem

5.8 Semaphores

191. Semaphore Concept


192. Init / Wait / Signal
193. Implementing Mutex with Semaphores

5.9 Advanced Synchronization

194. Critical Regions


195. Conditional Critical Regions
196. Monitors
197. Ada Tasks

5.10 Interprocess Communication

198. Message Passing


199. Direct Communication
200. Indirect Communication

5.11 Deadlocks

201. Deadlock Concept


202. Deadlock Prevention
203. Deadlock Detection
204. Deadlock Avoidance
205. Banker’s Algorithm

5.12 Memory Management

206. Memory Organization


207. Storage Allocation

5.13 Virtual Memory

208. Paging
209. Segmentation
210. Address Mapping

5.14 Virtual Storage

211. Page Replacement Strategies

5.15 File Systems

212. File Organization


213. Blocking and Buffering
214. File Descriptor
215. Directory Structure
216. Blocks and Fragments
217. Directory Tree
218. Inodes
219. UNIX File Structure

6️⃣ Database Management System


6.1 Introduction

220. Introduction to DBMS


221. Evolution of File Systems
222. Role of Databases in Organizations

6.2 Data Modeling

223. Entity Relationship (ER) Model


224. ER Diagram Symbols
6.3 Relational Model

225. Relational Model Concepts


226. Normalization
227. ER to Relational Mapping

6.4 Query Language

228. SQL

6.5 Object-Oriented Databases

229. Object-Oriented Data Model


230. Object Persistence

6.6 Indexing and Hashing

231. Ordered Indices


232. B+ Tree Index
233. B Tree Index
234. Static Hashing
235. Dynamic Hashing

6.7 Query Processing

236. Query Cost


237. Selection Operation
238. Sorting
239. Join Operation

6.8 Query Optimization

240. Relational Expression Transformation


241. Cost-Based Optimization

6.9 Transactions

242. Transaction Concept


243. Transaction State
244. Serializability

6.10 Concurrency Control

245. Lock-Based Protocol


246. Timestamp-Based Protocol
6.11 Recovery

247. Failure Classification


248. Log-Based Recovery
249. Recovery with Concurrent Transactions

6.12 Data Mining

250. Data Mining Concepts


251. Decision Tree
252. Bayes Theory
253. Randomized Tree

6.13 Database Architectures

254. Centralized Systems


255. Client Server Systems
256. Parallel Systems
257. Distributed Systems

6.14 Parallel Databases

258. I/O Parallelism


259. Interquery Parallelism
260. Intraquery Parallelism

6.15 Distributed Databases

261. Distributed Data Storage


262. Distributed Transactions
263. Commit Protocols

6.16 Advanced Topics

264. Database Design


265. Database Tuning
266. Security and Authorization
267. Multidimensional Query

7️⃣ Data Communication and Networking


7.1 Introduction
268. Introduction to Computer Networking
269. Internet Overview
270. Networking Protocols

7.2 Network Architecture

271. Network Edge


272. Network Core
273. Protocol Layers
274. Service Model

7.3 Application Layer

275. Web and HTTP


276. FTP
277. Email
278. DNS

7.4 Transport Layer

279. Transport Layer Services


280. Multiplexing and Demultiplexing
281. UDP
282. Reliable Data Transport
283. TCP
284. TCP Congestion Control

7.5 Network Layer

285. Datagram Networks


286. Router Architecture
287. Internet Protocol (IP)
288. IP Subnetting

7.6 Routing

289. Link State Algorithm


290. Distance Vector Algorithm

7.7 Internet Routing Protocols

291. RIP
292. OSPF
293. BGP
✅ Total Topics: 293

1️⃣ Structured Programming and OOP (C &


OOP) – 80% high-yield topics
Core C Programming

 Basics: Introduction to C, Structure of C Program


 Control Statements: if, if-else, switch, loops (for, while, do-while), break & continue
 Data Types & Variables: int, float, char, double, constants, operators
 Arrays & Strings (1D & 2D arrays)
 Pointers (basic pointer operations)
 Functions: Parameter passing, recursion
 Console I/O & File I/O (fopen, fclose, fprintf, fscanf)
 Structures & Unions

OOP Concepts

 Classes & Objects


 Methods / Functions in Class
 Encapsulation & Access Specifiers (public, private, protected)
 Inheritance (single & multiple)
 Polymorphism (compile-time & run-time)
 Interfaces & Packages (basic understanding)

⚡ Tip: Most MCQs ask definitions, output tracing, or “what is correct/incorrect” statements.

2️⃣ Software Engineering – high-yield topics


 Software Nature: product qualities (correctness, robustness, maintainability, portability),
project qualities
 SDLC Phases: Requirement, Design, Development, Testing, Maintenance
 Software Development Models: Waterfall, Agile, Spiral, RAD, V Model
 Software Engineering Principles: Modularity, Abstraction, Object-Oriented principle,
Structured principle
 Testing & Debugging (basic types of testing)
 Software Project Management: Project metrics, estimation, risk management

⚡ MCQs usually ask definitions, SDLC models, quality terms, and principles.
3️⃣ Data Structures & Algorithms – very
high-yield topics
Searching & Sorting

 Linear Search
 Binary Search
 Insertion, Selection, Bubble, Quick, Merge Sort (basic operation & complexity)

Recursion Problems

 Factorial, Tower of Hanoi (trace recursive calls)

Linked Lists

 Singly & Doubly Linked List (basic operations: insert, delete)

Stacks & Queues

 Stack & Queue operations (push, pop, enqueue, dequeue)


 Infix, Prefix, Postfix conversion & evaluation

Trees

 Binary Tree, BST, AVL Tree (basic properties & traversal)


 Heap & Heap Sort
 B & B+ Trees
 Huffman Encoding (concept + algorithm steps)

Graphs

 BFS & DFS (basic steps & traversal order)


 Shortest Path Problems: Dijkstra (concept)
 Minimum Spanning Tree: Kruskal & Prim

Algorithms

 Greedy Algorithms: Fractional Knapsack, Activity Selection, Huffman Encoding


 Divide & Conquer: Quick Sort & Merge Sort Analysis
 Dynamic Programming: LCS, Matrix Chain Multiplication

⚡ MCQs often ask time complexity, output tracing, definitions, or algorithm steps.
4️⃣ Web Technology – high-yield topics
 HTML, CSS, JavaScript basics (tags, attributes, basic syntax)
 HTTP Server, Application Server, MVC Web Framework (basic roles)
 ORM concepts, Lambda Expression, LINQ (short definitions)
 Web Security: DoS, Buffer Overflow, XSS, Authentication & Access Control

⚡ Most MCQs test basic definitions or purpose of components.

5️⃣ Operating System – high-yield topics


Core Concepts

 OS definition & functions, Process concept, PCB, Process states


 CPU states, Memory Hierarchy, I/O channels

Process Management

 Scheduling algorithms (FCFS, SJF, Round Robin)


 Critical section, Mutual Exclusion, Semaphores
 Deadlock: Prevention, Detection, Avoidance, Banker’s Algorithm

Memory & File Systems

 Paging, Segmentation
 File structure basics (UNIX file, blocks, inodes)

⚡ MCQs usually focus on definitions, algorithms, properties, or stepwise process.

6️⃣ Database Management System – high-


yield topics
Core Concepts

 DBMS definition, advantages over file systems


 ER Model, ER-to-Relational Mapping
 Relational Model, Normalization (1NF, 2NF, 3NF)
 SQL: basic DDL, DML, SELECT queries
 Indexing: B Tree, B+ Tree
 Transactions: ACID, Serializability
 Concurrency control: Locks, Timestamps
 Recovery: Log-based recovery, Failure classification

Optional / Less MCQ-prone

 Distributed DB, Parallel DB, Multidimensional query (MCQs rare)

⚡ Focus on definitions, SQL commands, indexing, normalization, transaction terms.

7️⃣ Data Communication & Networking –


high-yield topics
Basics

 Networking layers & protocol (TCP/IP stack)


 Network devices: Router, Switch
 Internet Protocol (IP), IP addressing & subnetting

Transport Layer

 TCP & UDP differences, basic congestion control

Routing

 Routing algorithms: Link State, Distance Vector


 Internet protocols: RIP, OSPF, BGP

Application Layer

 HTTP, FTP, DNS, Email (basic purpose)

⚡ MCQs mostly ask protocol purpose, port numbers, layer definitions, routing terms.
✅ High-Yield Focus Summary for 80%
MCQs
Subject Most Important Topics
Control statements, Loops, Arrays, Pointers, Functions, Recursion, OOP
C & OOP
concepts (Classes, Inheritance, Polymorphism)
Software SDLC phases, Models, Quality Attributes, Principles, Testing & Project
Engineering Management
Searching, Sorting, Stack/Queue, Linked List, Trees, Graphs, Greedy / DP /
DS & Algo
Divide & Conquer algorithms
Web Tech HTML/CSS/JS basics, HTTP, MVC, Web Security
Process states, Scheduling, Semaphores, Deadlock, Paging/Segmentation, File
OS
structure
ER model, SQL, Normalization, Indexing, Transactions, Concurrency,
DBMS
Recovery
Networking TCP/IP, UDP, Routing algorithms, IP addressing/subnetting, HTTP/FTP/DNS

You might also like