Computer Science Syllabus [200 Marks]

 Home / Syllabus / Computer Science
FPSC Syllabus

Computer Science Syllabus [200 Marks]


Paper-I (100 Marks)

Section-A (50 Marks)

I. Introduction to Computing

Introduction to Information Technology and Computers, History of Computing, Computer HW and SW Details, Computer System Components and Communication System, Input & Output devices and their types, Storage Media and their types, Types of Computer Hardware, Software, and Programming languages, Information Representation & Number Systems, User interfaces, Major Software Issues, Creation, formatting, and maintenance of Computer documents, Usage of Word processors, Spread sheets, Power-Point, Email, Search Engines, Browsers, Messengers, and Internet , Computers & Society, Information Security/Privacy, Computer Crimes and Ethical Challenges, Viruses, Plagiarism, Intellectual Property Rights, Difference between computer science, software engineering, information technology, information systems, computer engineering and bioinformatics; IEEE / ACM computing disciplines guidelines.

II. Programming Fundamentals

Basic programming elements and concepts, Problem Solving & Program Design, Components of a programming language, Program development and execution, Program structure, Data types and variable declarations, Standard I/O streams, and statements, Control structures, Standard library functions, User defined functions and parameter passing, Arrays, pointers, and strings, Structures, unions, and bit manipulation operators.

III. Object Oriented Paradigm

Object Oriented Programming Concepts ( Object-oriented paradigm, data abstraction, encapsulation, inheritance, Polymorphism), Introduction to Classes and Objects ( classes, objects, data members, member functions), Classes Advanced ( friends, static, composition, this, const), Operator overloading (stream insertion, stream extraction, binary operator, unary operator), Inheritance (single inheritance, multiple inheritances, protected members, method over-riding), Polymorphism (virtual function, pure-virtual functions, abstract cl**** abstract super class), Standard Template Library (STL), Files & streams (sequential access files, random access files), File processing, Exception Handling

Section-B (50 Marks) IV. Algorithms & Data Structures

Fundamental concepts, Properties of algorithms, Criteria for an Algorithm, Parameters for selecting an algorithm, Algorithm Representations, Pseudo Code and Flow Charts, Designing Algorithms, Algorithm Analysis and Asymptotic Notations, Classification of Lists, Abstract Data Types, Implementation of Stacks and Queues using ADTs, Searching and Sorting Algorithms (Linear Search, Binary Search, Bubble Sort, Merge Sort, Quick Sort, Heap Sort), Stacks and Queues, Hash Tables (Linear Probing, Bucketing, Chaining), Recursion, Trees (Binary Trees, Binary Search trees, AVL Trees, Two-Three Trees), Graphs, Heuristic (Guided) Search, Genetic Algorithms, Encryption Algorithms (DES, RSA)

V. Software Engineering

Software Processes, Software Process Models, Agile Software Development, Analysis Modeling, Requirements Engineering, Design Concepts, Architectural Design, Design & Implementation, Software Testing, System Delivery and Maintenance, Software Evolution Formal Specification, Software Quality Assurance, Introduction to Proofs of Correctness (LNO), Distributed Software Engineering, Aspect-Oriented Software Engineering, Project Management, Process Improvement

VI. Compiler Construction

Difference among various type of Translators, Phases of Compilers, Classification of Compilers, Lexical Analysis (Input buffering, Specification & Recognition of tokens, Regular expressions, Finite automata, Syntax Analysis (Context-free grammars and their classification, LL(k) vs. LR(k) grammars, Top-down vs. Bottom-Up parsers, Parsing Techniques, FIRST and FOLLOW sets, Predictive Parsing using LL(1) grammars, Syntax error handling and recovery strategies), Syntax Directed Translation (Synthesized attributes, Inherited attributes, Construction of syntax trees, Top-down translation), Semantic analysis (Symbol tables, Type Expressions, Type Checking of statements), Intermediate Code Generation, Code Generation (Issues in the design of code generation, The target machine, Run-time storage management, Register allocation), Code optimization (Elimination of Redundant code, Folding of Constant, Loop optimization, Peephole optimization, Problems of optimization)

Paper-II (100 Marks)

Section-A (50 Marks)

I. Computer Organization & Architecture

Fundamental concepts, Overview of a Computer System, Evolution & Performance Languages, Architectural levels, Virtual machines, Processor types, Metrics, Machine instructions, Instruction execution cycle, CISC vs. RISC, Parallelism, Internal/External data representation, Computer Function and Interconnections, Cache Memory, Internal Memory, External Memory, Input /Output System, Computer Arithmetic Microprocessor and its Bus Structure, I/O Types, Types of Buses, Memory Organization and Structure, information flow and execution in Machine, Instruction Representation, Machine Instruction Characteristics, Instruction Processing, Processor Structure & Function, Control Unit Operation, Micro-programmed Control, Instruction-Level Parallelism And Superscalar Processors, Parallel Processing, Multi-Processor and Multi-core Systems

II. Computer Communications & Networks

Basic Concepts and Classification of Networks, Circuit switching, Packet switching, Multiplexing (TDM, FDM), Layering: OSI and TCP/IP, Application Layer (Network application architectures, HTTP, FTP, Email, DNS, P2P applications), Transport Layer (Multiplexing in UDP and TCP, Connectionless Transport: UDP, Reliable data transfer and TCP, Congestion avoidance and control), Network Layer (The Internet Protocol, IPv4 Datagram, Internet Address Classes, Special IP Addresses ARP, IPv6, ICMP, Network Address Translation (NAT), Internet Routing Protocols and Algorithms, X.25, Frame relay and ATM, MPLS), Physical & Link Layer Functionalities (Error Detection & Control, ARQ, Link layer addressing, LAN Technologies, Bridges and Hubs, Multiple Access), Special topics (Security, Overlay networks, naming, Content distribution networks, Peer to peer systems, DHTs, Network Attacks)

III. Operating Systems Concepts

Roles of an Operating System, Operating-System Evolution, Structures, and Operations, Classification of Operating Systems, Computing Environments, Design and Components of OS, Process Management, Process Synchronization, Deadlocks, Memory Management, Virtual Memory Management, File Systems (UNIX and Windows Systems), I/O Management

Section-B (50 Marks)

IV. Database Systems

Introduction to Database Systems, Relational Data Model & Relational Database Constraints, Relational Data Model, SQL, Relational Algebra & Calculus, ER Model, ER to Relational Mapping, PL/SQL Stored Procedures & Triggers, Functional Dependencies and Normalization, Storage & Indexing, Indexing Structure, XML documents & Web Services, Query Processing & Evaluation, Query Optimization, Transaction processing, Object- Oriented Databases, Distributed Databases, Database Security & Access Control

V. Digital Image Processing

The relation between Image Processing, Computer Graphics, Computer Vision and Artificial Intelligence; Image Sensing and Acquisition Techniques; Representing Digital Image; Image Sampling and Quantization; Image Storage and Operations; Image Transformations (Translation, Scaling, Rotation, Shear); Image Histogram; Image Enhancement (Contrast, Smoothing, Sharpening); Gray-scale and Color Images; Color Models (RGB, CMYK and HIS); Image Restoration; Noise Models; Morphological Operators (Erosion, Dilation, Opening, Closing, Skeletonization, Thinning); Image Segmentation; Point Detection, Line Detection, Edge Detection and Boundary Detection; Image Compression

VI. Web Engineering & Technologies

Modeling techniques for web applications, Introduction to web engineering, requirement engineering, requirement, types of requirements, functional requirements, non functional requirements, Requirement engineering process (Elicitation and negotiation, Documentation, Validation and verification, Management), HTML(hypertext markup language), Software Architecture, Styles, Patterns, and frameworks, Components of W eb Architecture, Classifications of web architecture , Web Application layered architecture ( client server, n- layered, JSP model, struts, OOHDM ), Integration Architecture, Data Aspect architectures, Cascading Style Sheet(CSS), CSS properties, JavaScript (Functionalities, Events, Variables, Operators), DOM(Document Object Model), XML, RSS, API, Client-side programming using (HTML, XHTML, XML, JavaScript, and CSS), Server- side programming using PHP, Web development process, Web Application Development Methodologies, Web site promotion and deployment, Web applications Issues (Accessibility, testing, performance, operation, maintenance, security)