CSS Syllabus Computer Science – 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)
SUGGESTED READINGS
S. No. | Title | Author |
1. | C++ How to Program | Harvey M. Deitel and Paul J. Deitel. |
2. | Compilers: Principles, Techniques, and Tools | Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman |
3. | Operating System Concepts | Silberschatz, Galvin, and Gagne. John |
4. | Operating Systems | William Stallings |
5. | Computer Organization & Architecture | William Stallings |
6. | Computer System Architecture | M. Morris Mano |
7. | Computer Organization and Design: The Hardware/ Software Interface |
David A. Patterson and John L. Hennessy |
8. | Software Engineering | Ian Sommerville |
9. | Software Engineering A Practitioner’s Approach | Roger S. Pressman |
10. | Data Structures and Algorithm Analysis in C++ | Mark Allen Weiss |
11. | Computer Networking: A Top Down approach featuring the Internet | James F. Kurose and Keith W. Ross |
12. | Data and Computer Communications | William Stallings |
13. | Computer Networks | Andrew Tanenbaum |
14. | Fundamentals of Database Systems | Ramez Elmasri and S. B |
15. | Database Systems Concepts | Silberchatz, Abraham & Korth, Sudarshan |
16. | Web Services: Principles and Technology | Michael Papazoglu |
17. | Electronic Commerce: The Second Wave, Ninth Edition |
Gary P. Schneider |
18. | Electronic-Commerce –A Managerial Perspective |
Turban, Lee, King, Chung |
19. | Web Engineering | Kappel, G., Proll, B. Reich, S. & Retschitzegger |
20. | Styling Web Pages with CSS | Tom Negrino and Dori Smith |
21. | PHP: The Good Parts | Peter B. MacIntyre |
22. | Learn JavaScript | Chuck Easttom |
23. | ADTs, Data Structures, and Problem Solving with C++ | Larry R. Nayhoff |
24. | Digital Image Processing | Gonzalez and Woods |