Proposed Syllabus for B. Sc. Semester program Subject: Computer Science Yea r 1 Semester Subjects Lab I II B.Sc. 101: Computer Fundamentals B. Sc. 102: Introduction to C Programming B.Sc. 201: Digital Electronics B. Sc. 202: Data Structure using C C DS 2 III IV B.Sc. 301: Computer System Architecture B. Sc. 302: Object Oriented Systems in C++ B.Sc. 401: DBMS B. Sc. 402: Discrete Mathematics C++ SQL 3 V VI B.Sc. 501: Data Communication & Networking B. Sc. 502: Java Programming B.Sc. 601: Software Engineering B. Sc. 602: Web Technology Java HTML Java Script
B.Sc. 101 Computer Fundamentals UNIT I: Evolution of Computers: Basic components of a Digital Computer- Control unit, ALU, Input/Output functions and memory, Generations, Computer Classification: Micro, Mini, Mainframe, Super Computer, PC, Server, Workstations. Computer system characteristics, Word length of a computer, processing speed of a computer, UNIT II: Input/Output Units: Keyboard, Mouse, Trackball, Joystick, Digitizing tablet, Scanners, Digital Camera, MICR, OCR, OMR, Bar-code Reader, Voice Recognition, Light pen, Touch Screen, Monitors and types of monitor-digital, Analog, Size, Resolution, Refresh Rate, Dot Pitch, Video Standard-VGA, SVGA, XGA etc, Printers & types-daisy wheel, Dot Matrix, Inkjet, Laser, Line Printer, Plotter, Sound Card and Speaker. UNIT III: Memory: RAM, ROM, EPROM, PROM and other types of memory, Storage fundamentals- Primary Vs Secondary Data Storage, Various Storage Devices- Magnetic Tape, Magnetic Disks, Cartridge Tape, Hard Disk Drives, Floppy Disks (Winchester Disk), Optical Disks, CD, VCD, CD-R, CD-RW, Zip Drive, flash drives Video Disk, Blue Ray Disc, SD/MMC Memory cards, Physical structure of floppy & hard disk, drive naming conventions in PC, DVD, DVD-RW, USB Pen drive. UNIT IV: Software and its Need, Types of Software-System software, Application software, System Software- Operating System, Utility Program, Assemblers, Compilers and Interpreter, DOS- Files and Directory, Study of all Internal & External commands, Types of files, Booting Procedure of DOS. Algorithms, Flow Charts, Programming languages. UNIT V: Data Representation within Computer: BIT, BYTE, WORD, ASCII, EBCDIC, BCD Code. Introduction to Number system: Binary, Octal, Decimal and Hexadecimal, Conversation from one number system to another number system, Binary arithmetic, Negative number representation. 1. FUNDAMENTALS OF COMPUTERS -by V. RAJARAMAN. 2. FUNDAMENTALS OF COMPUTERS -by P.K.SINHA 3. FUNDAMENTALS OF COMPUTER Systems. Low Price Edition.
B. Sc. 102 Introduction to C Programming Programming in C: History, Introduction to C Programming Languages, Structure of C programs, compilation and execution of C programs, Debugging Techniques, Data Types and Sizes, Declaration of variables, Modifiers, Identifiers and keywords, Symbolic constants. Operators: Unary operators, Arithmetic & logical operators, Bit wise operators, Assignment operators and expressions, Conditional expressions, Precedence and order of evaluation. Control statements: if-else, else-if clause, switch, goto statement. Loops: for, while, do-while, break, continue. Pointer: Pointer notation, value at (*) and address of (&) operator, pointer to pointer. Functions: built-in and user-defined, function declaration and prototype, parameter passing: call by value, call by reference, recursive functions. Dynamic Memory allocation (malloc, calloc, free function) Arrays: linear arrays, multidimensional arrays, passing arrays to functions, Strings-Declaration and initialization, Standard library functions, Strings and pointers, Array of strings, Storage classes in C, C preprocessor. Structure and Union: Structure and Union Declaration, Initialization, structure within structure, Array of structure, Enumerated data types, Union of structure, File Handling in C: opening and closing a data file, file operations, File I/O, Read, Write and Other file function. 1. C Programming Language : BW Kernighan and D.M.Ritchi 2. C Programming: Balagurusamy 3. Let Us C: Yaswant Kanetekar
B.Sc. 201 Digital Electronics Digital Systems and binary numbers, Number base conversions, Octal & Hexadecimal numbers, complements of numbers, Signed binary numbers, Binary Fixed- Point Representation, Arithmetic operation on binary numbers, Overflow & underflow. Binary codes Digital logic gates, Boolean Algebra-Axiomatic definition, truth tables, theorems and properties, Boolean functions, canonical and standard forms. Gate level minimization- K-Map method, 2, 3 and 4 variables map, POS and SOP simplification, Don t care conditions, NAND and NOR Implementations Combinational Logic: Combinational circuits, analysis and design procedure, binary adder-subtractor, binary multiplier, magnitude comparator, Decoders, Encoders, Multiplexres, Parity Generation and Checking Sequential Logic: Sequential circuits, Storage elements-latches and Flip-Flops (SK, D, JK, T), Analysis of clocked sequential circuits- state equations, state tables, state diagrams, Flip-Flop input equations, Design procedure, excitation tables. Registers, shift registers, Counters, ripple counters, synchronous counters, Memory- RAM, ROM, Programmable Logic Array (PLA) 1. "Modern Digital Electronics": -by R.P. Jain 2. Digital logic and Computer design By Morris Mano 3. Digital Electronics : John C. Morris 4. Digital Electronics Principals and Integrated circuits: Anil K. Maini
B. Sc. 202 Data Structure using C Introduction: Basic Terminology, Data type, Data object, Need of Data Structure, Types of Data Structure, Elementary Data Organization, Data Structure operations, Algorithm Complexity and Time-Space trade-off. Arrays, Single and Multidimensional Arrays, address calculation, application of arrays, Character String in C, Sparse Matrices, and Vectors, Searching- Sequential search, binary search. Sorting algorithms with efficiency- Bubble sort, Insertion sort, Merge sort, Quick Sort Stacks: Representation and Implementation of stack, Operations on Stacks: Push & Pop, Linked Representation of Stack, Operations Associated with Stacks. Applications of stack: Conversion of Infix to Prefix and Postfix Expressions, Evaluation of postfix expression using stack. Recursion: Recursive definition and processes, recursion in C, example of recursion, recursive algorithms, principles of recursion, removal of recursion. Queues: Array and linked representation and implementation of queues, Operations on Queue: Create, Add, Delete, Full and Empty. Circular queue, DeQue, and Priority Queue. Linked list: Representation and Implementation of Singly Linked Lists, Header List, Traversing and Searching of Linked List, Overflow and Underflow, Insertion and deletion to/from Linked Lists, Insertion and deletion Algorithms, Doubly linked list, Polynomial representation. Garbage Collection and Compaction. Trees: Basic terminology, Binary Trees, Binary tree representation, algebraic Expressions, Complete Binary Tree. Extended Binary Trees, BST, Traversing Binary trees, operations on binary trees- Create, Insert, Delete. References : 1. Data structures and Algorithm Analysis in C++, Mark Allen Weiss,3rd edition, Pearson Education. Ltd., 2. Data structures and Algorithms in C++, Michael T.Goodrich, R.Tamassia and D.Mount, Wiley student edition,seventh edition, John Wiley and Sons. 3. Data structures, Algorithms and Applications in C++,S.Sahani, Universities Press.
B.Sc. 301 Computer System Architecture Von Neumann Machine (IAS Computer), Instruction codes, computer registers, computer instructions, timing and control, Instruction cycle, Memory Reference Instructions (AND, ADD, LDA, STA, BUN, BSA, ISZ), Microinstruction format, Symbolic microinstruction, Microprogram sequencer, Hardwired control vs Micro programmed control. Central Processing Unit: General register organization, Control word, register stack, memory stack, Instruction format(zero address, one address, two address, three address instructions), Addressing modes, RISC vs. CISC. Unit III Input-Output Organization: Peripheral devices, I/O interface, Modes of Transfer, Priority Interrupt, Direct Memory Access, Input-Output Processor, and Serial Communication. I/O Controllers, Asynchronous data transfer, Strobe Control, Handshaking. Unit IV Memory Organization: Memory Hierarchy, Main memory (RAM/ROM chips), Auxiliary memory, Associative memory, Cache memory, Virtual Memory, Memory Management Hardware, hit/miss ratio, magnetic disk and its performance, magnetic Tape etc. Process Organization: Basic Concept of 8-bit micro Processor (8085) and 16-bit Micro Processor (8086), Assembly Instruction Set, Assembly language program of (8085): Addition of two numbers, Subtraction, Block Transfer, find greatest number. Pipelining: Parallel processing, Flynn s classification, space time diagram, speedup ration, Arithmetic pipeline, Instruction pipeline. 1.Computer Organization and Design, 2nd Ed., by David A. Patterson and John L. Hennessy, Morgan 1997, Kauffmann. 2.Computer Architecture and Organization, 3rd Edi, by John P. Hayes, 1998, TMH.
B. Sc. 302 Object Oriented Systems in C++ Object Modeling: Object & classes, Links and Associations, Generalization and Inheritance, Aggregation, Abstract classes, A sample object model, Multiple Inheritance, Meta data, candidate keys, constraints. Dynamic Modeling: Events and States, Operations and Methods, Nested state Diagrams, Concurrency, Relation of Object and Dynamic Models, a sample dynamic model. Functional Modeling: Functional Models, Data flow Diagrams, Specifying Operations, Constraints, a sample functional model. Object Oriented Programming: Procedural vs. Object oriented programming, C++ data types, operators, Loops and branching statements. Classes and objects in C++, Functions, Constructors, Destructors. Inheritance, Base classes, derived classes, implementing and using derived classes, virtual base class, types of inheritance. Polymorphism: Functions overloading, Operator Overloading, this pointer Templates-Introduction to templates, Class templates, function templates and overloading of function templates. Exception Handling in C++: try, catch and throw primitives Working with files: File operations, File pointer and their manipulation, File updation with random access 1. E.Balagurusamy: Object oriented programming with C++ 2. K.R.Venugopal: Mastering C++ 3. Bjarne Stroustrup: The C++ programming language.
B.Sc. 401 Database Management System Introduction: An overview of database management system, Database System Vs File System, Database system concepts and architecture, data models schema and instances, data independence and data base language and interfaces. Data Modeling using the Entity Relationship Model: ER model concepts, notation for ER diagram, mapping constraints, keys, Concepts of Super Key, candidate key, primary key, Generalization, aggregation, reduction of an ER diagrams to tables. Relational data Model and Language: Relational data model concepts, integrity constraints: entity integrity, referential integrity, Keys constraints, Domain constraints, relational algebra, relational calculus, tuple and domain calculus. Data Base Design & Normalization: Functional dependencies, normal forms, first, second, third normal forms, BCNF, inclusion dependencies, loss less join decompositions, normalization using FD, MVD, and JDs, alternative approaches to database design. Introduction to SQL: Characteristics of SQL, Advantages of SQL, SQL data types and literals, Types of SQL commands, SQL operators and their procedure, Tables, views and indexes, Queries and sub queries, Aggregate functions, Insert, update and delete operations, Joins, Unions, Intersection, Minus, Cursors in SQL. PL/SQL, Triggers and clusters. 1. C.J.Date, An Introduction to Datbase System, Narosa Pub 2. Bipin Desai, An Introduction to Database System, Galgotia Pub 3. Silberschatz & Korth,, Database system Concepts, TMH
B. Sc. 402 Discrete Mathematics Introduction: Introduction to discrete structure & its significance for computer science, Counting, Permutation, Combination, pigeonhole, Relation- Type and compositions of relations, Pictorial representation of relations, Closures of relations, Equivalence relations, Partial ordering relation. Function- Types, Composition of function, Recursively defined function Mathematical Induction: Peano s axioms, Mathematical Induction Discrete Numeric Functions and Generating functions Simple Recurrence relation with constant coefficients, Linear recurrence relation without constant coefficients. Algebraic Structures: Properties, Semi group, Monoid, Group, Abelian group, properties of group, Subgroup, Cyclic group. Propositional Logic: Preposition, First order logic, Basic logical operations, Tautologies, Contradictions, Algebra of Proposition, Logical implication, Logical equivalence, Normal forms, Inference Theory, Predicates and quantifiers, Posets, Hasse Diagram, Lattices: Introduction, Ordered set, Hasse diagram of partially ordered set Unit-IV Graph theory: Definition of Graph Theory, finite and infinite graphs, Incidence and degree, null graphs, subgraphs, walks, path and circuit in a graph, trees properties of trees, cut sets and cut vertices, planner graphs, incidence matrix, directed graphs, Adjacency Matrices, Traversal- Breadth First Search and Depth First Search. Minimum Cost Spanning Trees, Prim and Kruskal algorithms. 1.Trembly J.P and Manohar R, Discrete Mathematical Structures with Applications to Computer Science, Tata McGraw Hill Pub. Co. Ltd, 2. Ralph. P. Grimaldi, Discrete and Combinatorial Mathematics: An Applied Introduction, Fourth Edition,Pearson Education Asia,
B.Sc. 501 Data Communication & Networking Introduction: Computer Networks, goals and applications, Line configuration- point-to-point and mulitipoint, topologies star, bus, mesh, ring etc. Network Types LAN, MAN, WAN, Wireless Networks, Home Networks, Internetworks Network Models: OSI Reference Model, Functionality of each layer, TCP/IP Reference Model, TCP/IP Protocol Suite, Comparison of OSI and TCP/IP model, Introduction to IP, TCP, and UDP, Addressing Physical, Logical and Port addresses UNIT III: Modulation and Demodulation, Digital to Digital Conversion, Analog to digital conversion, Digital to analog Conversion, Analog to Analog conversion, Digital data transmission, DTE- DCE Interface, EIA449, EIA530, X.21 Standards, Modems, Cable Modem. UNIT IV: Transmission media - Introduction, Guided Media, Unguided Media, Transmission Impairment, Performance, Wavelength, Shannon capacity, Media Comparison, Multiplexing FDM, WDM, TDM, Switching, DSL and types of Digital subscriber lines. UNIT V: Error detection and correction, types of errors, detection, VRC, LRC, CRC, error correction, LAN Project 802, IEEE 802.x, LLC, MAC,PDU, Ethernet, Token Bus, Token Ring. FDDI, LAN Comparison. 1. Ames Chellis Charles Perkins, Matthew Strebe Networking Essentials:Study Guide MCSE, Second Edition, BPB Publications. 2. S.K.Basandra & S. Jaiswal, Local Area Networks, Galgotia Publications 3. MCSE Windows 2000 Network Infrastructure Design 4. Andrew & Tanenbaum, Computer Network 5. William Stallings, Data and Computer Communication 6. Prakash C Gupta, Data Communication
B. Sc. 502 Java Programming C++ Vs JAVA, JAVA and Internet and WWW, JAVA support systems, JAVA environment. JAVA program structure,tokens, Statements, JAVA virtual machine, Constant & Variables, Data Types, Declaration of Variables, Scope of Variables, Symbolic Constants, Type Casting. Operators : Arithmetic, Relational, Logical, Assignments, Increment and Decrement, Conditional, Bitwise, Special. If statement, if else statement, Nesting of if else statements, else if Ladder, Switch,? operators, Loops while, do, for. Defining a Class, Adding Variables and Methods, Creating Objects, Accessing Class Members, Constructors, Methods Overloading, Static Members, Nesting of Methods. Inheritance: Extending a Class, Overriding Methods, Final Variables and Methods, Final Classes, Finalize Methods, Interfaces and Packages, Abstract methods and Classes, Visibility Control. Arrays: One Dimensional & two Dimensional, strings, Vectors, wrapper Classes, Defining Interface Extending Interface, Implementing Interface, Accessing Interface Variable, System Packages, Using System Package, Adding a Class to a Package, Hiding Classes. Creating Threads, Extending the Threads Class, Stopping and Blocking a Thread, Life Cycle of a Thread, Using Thread Methods, Thread Exceptions, Thread Priority, Synchronization, Implementing the Runnable Interface. Local and Remote Applets Vs Applications, Writing Applets, Applets Life Cycle, Creating an Executable Applet, Designing a Web Page, Applet Tag, Adding Applet to HTML File, Running the Applet, Passing Parameters to Applets, Aligning the Display, HTML Tags & Applets, Getting Input from the User. 1. Java: The Complete Reference: Herbert Schildt 2. Introduction to Java Programming : Balagurusamy
B.Sc. 601 Software Engineering Introduction: Introduction to software engineering, Importance of software, The evolving role of software, Software Characteristics, Software Components, Software Applications, Software Crisis, Software engineering problems, Software Development Life Cycle, Software Process. Software Requirement Specification: Analysis Principles, Water Fall Model, The Incremental Model, Prototyping, Spiral Model, Role of management in software development, Role of matrices and Measurement, Problem Analysis, Requirement specification, Monitoring and Control. Software-Design: Design principles, problem partitioning, abstraction, top down and bottom updesign, Structured approach, functional versus object oriented approach, design specifications and verification, Monitoring and control, Cohesiveness, coupling. Coding: Top-Down and Bottom Up programming, structured programming, information hiding, programming style and internal documentation. Testing: Testing principles, Levels of testing, functional testing, structural testing, test plane, test case specification, reliability assessment, software testing strategies, Verification & validation, Unit testing, Integration Testing, Alpha & Beta testing, system testing and debugging. Software Project Management: Measures and measurements S/W complexity and science measure size measure data and logic structure measure information flow measure. Software cost estimation function point models COCOMO model. Taxonomy of CASE tools 1. Software Engineering Concepts 1997 Edition Author : RICHARD FAIRLEY Publishers : TATA Mc GRAW-Hill Edition. 2. Software Engineering VI Edition, Author : ROGER S. PRESSMAN Publishers TATA McGRAW - HILL International Edition. 3. Software Engineering Programs Documentation Operating procedures 4. Author : K.K. AGGARWAL & YOGESH SINGH Publishers : NEW AGE INTERNATIONAL PUBLISHERS
B. Sc. 602 Web Technology Introduction to Web Publishing: WWW, Web design process, Web Publishing. Web server and proxy server, Web browsers like Internet Explorer, Netscape Navigator, Internet Viruses, Internet security issues, firewall, Data encryption and Digital signatures and certificates. HTML Documents: Overview, rules & guidelines, structure of HTML documents, document types. The Markup Tags: HTML, HEAD, TITLE, BODY, Paragraphs, Lists, Formatted & Unformatted text, Extended quotations, Address, Horizontal rules, Hyper link, Font (Size, Color) Table, Table tags, General Table format, Cell Space / Cell padding, Row Span, Cols span, Image (Add, Alignments),, Linking: URL, Mailto, anchors. Frame: Overview of frame, Frame Set, Simple frame example, Frame targeting, Floating frame, Frame Problems,Options, Form. DHTML, ASP.NET, PHP. Java Script Basics: Introduction, Data Types & variables, Expressions & Operators, arrays, Functions, Control statements, if-then-else, Nested ifs, Select Case, Looping Statements for-next, Do-while, Do- Until. 1. The complete reference HTML 2. Javascript programmer s references: Alexei White 3. The complete reference PHP