Saturday 27 April 2019

CSS Computer Science Syllabus

CSS Computer Science Syllabus

COMPUTER SCIENCE
CSS Computer Science Syllabus
Total Marks: 100
Time Allowed: 3 hours
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 class, 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).

Find more