University of Mumbai B.Sc.

(Computer Science)

Syllabus

S.Y.BSc. (W.E.F. 2004-05)

TERM I = 40. TERM II = 40 Examination Pattern for II nd Year of B Sc Computer Science Marks of Theory paper per Term = 50 converted to 30 Marks of Practical per paper per Year = 40 converted to 40 Total marks per paper per year will be 30 + 30 + 40 = 100 .B. COMPUTER SCIENCE Year II Discrete Mathematics Computer Graphics-I Paper I – Section I Paper I – Section II C++ and JAVA Data structures Paper II – Section I Paper II – Section II GUI and Visual Basic Data Base Management Paper III – Section I Paper III – Section II Total Lectures / Subject = 80 / Year.SC.

Marc Lipson. semi groups. Sc (Computer Science) SUBJECT: Discrete Mathematics Paper I : Section I Computer Graphics -I Paper I : Section II Periods per week Lecture ( 1 Period = 50 minutes ) Practical Year II 3 3 Hours 3 Marks 50 Evaluation System Theory Examination per Term per Section Practical per year -- 40 SECTION I 1.B Sc. Joe L. relations and digraphs. Finite state machines. Computer Science: YEAR II Paper I CLASS: B.Mott. Relations and Digraphs – Product sets and partitions. representation of special languages and grammars. machines and languages. Prentice-Hall of India pvt ltd Discrete Mathematics With Applications. Conditional Statements. Division in the integers. Semi groups and groups – Binary operations. Functions – Functions for computer science. Languages and finite state machines – Languages. mathematical induction. Reference : Discrete structures by B Kolman RC Busby. elements of probability. Epp. products and quotients of semi groups. 3. S Ross PHI Pvt. 8. Seymour Lipschutz. Products and quotients of groups. Semi groups . Thompson Learning Discrete Mathematics and its Applications Kenneth H. Books/Cole Publishing Company Discrete Mathematilcs. computer representation of relations and digraphs. manipulation of relations. Rosen TMG Discrete Mathematics for computer scientists and Mathematicians. TMG . Fundamentals – Sets and subsets. Groups and coding – Coding of binary information and error detection Decoding and error correction. Operations on sets. 7. 2. 4. Schaum’s Outlines Series. Susanna S. groups. Mathematical structures. paths in relations and digraphs. growth of functions 6. Sequences. 5. properties of relations. recurrence relations. permutation functions. machines and regular languages. Transitive closure and Warshalls algorithm. Baker. Counting – Permutations. Ltd. Discrete structures by Liu Digital Logic John M Yarbrough Brooks/cole. Logic – Propositions and Logical operations. The pigeonhole principle. Abraham Kandel Theodore P. Combinations. equivalence relations. Methods of proof.

McGraw-Hill Computer Graphics(Schaum’s Outline Series). Introduction to Computer Graphics. Scan-Line Polygon Fill Algorithm. J. The viewing pipeline. 5. The Display-File Interpreter. Cohen-Sutherland Line Clipping. Display-File Structure. Window-toviewport Coordinate Transformation. Introduction. Addision Wesley Computer Graphics by Rogers ******************* END OF PAPER I ******************** . Coordinate Translations. Hughes & R. Text Attributes. Line Width. Flood-Fill Algorithm. Polynomials and spline curves.Parallel Projection. Attributes of lines. Van Dam. J. Geometric Transformations: Matrices. Line Attributes.Fill Styles. Color and Grayscale levels. Random Scan Systems.Point Clipping.Line Type.Normalized Device Coordinates. Clipping Operations. B-Spline Curves and surfaces Reference: Computer Graphics. ThreeDimensional Object Representations.Filled Area Primitives. Polygons. Fundamental problems in Geometry. Primitive Operations. Circle and ellipse generating algorithms. A.Bezier Curves and surfaces. Pen and Brush Options. Attributes of Output Primitives. Plastock. Line Clipping. Soft Fill. Visible Line and surface Identification. Bresenham's Line Algorithm. Display Control. Graphics Software Coordinate Representations. Algorithms: Line drawing algorithms.F. Perspective Projection. Line Color. Viewing Coordinate Reference Frame.Color Tables. Donald Hearn & M.L.I 1. Boundary-Fill Algorithm. Steven Harrington. Frame Buffers.Raster Scan Systems. Input Devices. Robert F. Sutherland-Hodgeman Polygon Clipping. Newman. Foley. 2.Sin and Cos Rotation. Grayscale. Graphics Primitives. Tata McGraw-Hill Principles of Interactive Computer Graphics. Display-File Algorithms. AreaFill Attributes. filling. Feiner. Roy A. Sproull.DDA Algorithm. Polygon Clipping. Pauline Baker. Prientice Hall of India Computer Graphics. Midpoint Ellipse Algorithm. 7. 4. Scan-Line Fill of Curved Boundary Areas. Scaling Transformations. 2 D Viewing. 3.SECTION II Computer Graphics . Filling. Surface Rendering. Rotation about an arbitrary point. Inverse Transformations.D. Homogeneous Coordinates and Translation. characters etc. curves. Video Display Devices. 3 D Concepts: Three-Dimensional Display Methods. What is computer graphics? Elements of graphics workstation. McGraw-Hill. S. 6.K.Polygon Representation. Character Generation. Phillips. Pattern Fill. Character Attributes. Transformation Routines. Willaim M. Inside-Outside Tests.Midpoint Circle Algorithm. Two-Dimensional Viewing Functions.

Balaguruswamy. Operators. Event Handling Reference: Object Oriented programmimg using C++. util. Inheritance: Derived and base class. Binary operator overloading. Classes and Objects: 2. Introduction to HTML Applets. Arrays. Abstract Classes. Constructors with default arguments. Packages and Interfaces. Parameterized constructors. Multithreaded Programming. Steve Oualline Shroff Publishers Teach Yourself C++ Herbert Schildt. E. Pointers and References: Array of Objects. Gary Bronson Practical C++ programming. Destructor. Early verses Late binding 5. functions with default arguments. Reference Parameters. Levels of inheritance and multiple inheritance 4. Object Initialization and Cleanup: Constructors. Independent References. Passing Reference to Objects. Pointer to Object. Operator returning value. Constructor overloading. Allocating Objects 6. Using Virtual Functions. variables.CLASS: B. Inline functions. Virtual Functions and Polymorphism: Virtual Functions. lang. Private. Arrays. Introducing Classes.Data Types. protected members. Pointer to Class Member. “this” pointer. Sc (Computer Science) SUBJECT: C++ and JAVA Data Structures using C / C++ Periods per week Lecture ( 1 Period = 50 minutes ) Practical Year II Paper II : Section I Paper II : Section II 3 3 Hours 3 Marks 50 Evaluation System Theory Examination per Term per Section Practical per year -- 40 SECTION I C++ 1. Java. String Handling. Unary operator overloading. Constructors with dynamic operations Function and Operator Overloading: Function overloading. Control Statements. Derived class constructors. Returning References. Overloading arithmetic. Overriding functions. I/O Applets. Ivor Horton A first book of C++. Revision of C++ fundamentals: Object oriented programming using C++. Inheritance. Networking. 3. Dynamic Allocation Operators. Initialized and Uninitialized Arrays. relational and assignment operators. protected and public inheritance. Exception Handling. TMH Complete reference to C++ by Herbert shield TMH Let us C++ by Yaswant Kanetkar BPB Starting out with C++ by Tony Gaddis PENRAM International Publishing(India) Practical C++ Programing O’Reilly Beginning C++. Java. Exploring java. I/O. Introduction to JAVA: Java . TMG . Pure Virtual Functions. Pointer to derived types.

Computer Science Press. Trees and their representations. hashing function. JAVA handbook.Object Oriented design in c++ using STL. Priority Queue Stacks and their representation. Operations and applications: Implementation. merging and reversing. Knuth ‘Fundamentals of Algorithms’ (Narosa Publication) Horowitz.10. Insertion. “Fundamentals of Data Structures. Thompson Learning Object oriented Programming in C++. threading. D. Prentice Hall Aho. 3.Leung. “Data Structures and Algorithms”. Sahni. (Ch. Prentice-Hall of India pvt ltd SECTION II Data Structures using C / C++: 1. Graphs: Definition and terminology. Nabajyoti Barkakati. ***************** END OF PAPER II ***************** . Data structure and analysis of Algorithms Classification of Data Structures Storage Structures: Sequential and Linked 2. Nicholas J De Lillo. Ullman. Brooks/Cole. Deque. Hashing: Hash table. Deletion. 4. Circular Queue. circular.Samantha. Joyce Farrell. sorting and searching techniques. Course Technology Thompson Learning Patric Naughton. TMH.15) Object oriented Programming with C++ and JAVA. Prentice-Hall of India pvt ltd Object Oriented Programming Using C++. Linear Data Structures: Arrays and their memory representations Queues. Linked Lists and their representation: singly. “Data structures and Program Design in C”. doubly. application to recursion.13. binary trees and their operations such as traversal. Definition of Data Structure. 2-6. References: Kruse.Hopcroft.Tondo. 5. and Concatenation. Addison-Wesley. Sparse matrix and its representation & implementation.7.9.

adding. color selection. Accessing Information with User-Defined Data Types. Comparing Strings. GUI standard. Designing the User Interface. Clear Method.CLASS: B. Working with multiple controls and their properties. Compound Conditions(And. User-Defined Data Types. Decision & Conditions If Statement. Option Buttons. Naming rules/conventions. Testing whether Input is valid or not. Initializing an Array using for Each. Two dimensional arrays. Identifying visual cues. and Calculations Variables. 6. 7. Filling the List using Property window / AddItem Method. Me Keyword. Removing an item from a list. Sub-Procedures and Sub-functions Defining / Creating and Modifying a Menu. Not). Hide. Variables Public. Constants. Using common dialog box. Multiple Forms Creating. Using Call Statement to call a procedure. Data Types. Features of G U I. Nested If Statements. tab controls. Show Method. Private. Constants. Creating a new subprocedure. Arrays Single-Dimension Arrays. Visual programming Software Component Mindset-role of programming code 2. Coding for controls. For/Next Loops.Using If statements with Option Buttons & Check Boxes. Event Driven). Or. Referring to Objects on a Different Forms. clear communication. How to use VB complier to compile / debug and run the programs. Printing to printer using Print Method. Arithmetic Operations. planning GUI Design Work. Setting a Border & Styles. List Box/ Combo Box. Menus. VB Controls Textboxes. . Check Boxes . Introduction to Visual Basic Introduction Graphical User Interface (GUI). Variables. Using MsgBox Function. G U I Murphy’s law of G U I Design. removing Forms in project. Do/Loops. Constants. Passing Variables to Procedures. Formatting Data. command buttons. Using String Function. List. Val Function. Frames. Icons and graphics. Passing Argument ByVal or ByRef. 3. 4. The line Control. Keyboard access. Load. Using List Boxes with Array. 5. The Shape Control. Case Structure . Sc (Computer Science) SUBJECT: GUI and Visual Basic Paper III: Section I Data Base Management Paper III: Section II Periods per week Lecture ( 1 Period = 50 minutes ) Practical Year II 3 3 Hours 3 -Marks 50 40 Evaluation System Theory Examination per Term per Section Practical per year SECTION I 1. List box Properties. Writing a Function Procedure. Declaring variables. 8. The Visual Basic Environment. Named & intrinsic. Programming Language (Procedural. Static. Default & Cancel property. Loops and Printing List Boxes & Combo Boxes. Scope of variables. Images. Unload Statement. Object Oriented. Displaying Message in Message Box. If –then-else Statement.

Advanced data handling Displaying data in grids ( grid control. Reduction of an E-R schema to Tables 3. findnext. Reading and writing a random file(Get. Recordset . findprevious. movepreviouse. Multiple Granularity.9. Relational Model: Structure of Relational Database. The Err Object. Locating a file). creating a new dynaset. Transaction. seek method. displaying the record no & record count.Purpose of Database Systems. SQL. checking for BOF & EOF. TMH SECTION II Data base concepts and Systems 1. Serializability. searching for a specific record ( findfirst. Modification of Database. navigating the database in code ( the recordset object using the movenext. TMH The Complete Reference Visual Basic 6 by Noel Jerke . Normalization Using Join Dependencies. Database Administrator. Sequential File Organization (Writing Data to a sequential Disk File. Concurrency in index structure. movefirst & movelast methods . Data Models. Domain-Key Normal Form and Alternative Approaches to Database Design . Decomposition. Viewing the data in a file. Views of data. DDL. Using the Data Control .) . Insert and Delete operations. The Free File Function. Data Files Opening and Closing Data Files. Database language. Books: i) ii) iii) Programming in VB 6 by Julia case Bradley . properties of grid ) . The Domain Relational Calculus. Trapping Program Errors. Reading the Data in a sequential file. Storage Management.Background. TMH Visual Basic 6. Concurrency Control. using listboxes & comboboxes as data bound controls. Deadlock Handing. Concurrent Executions. 10. Other SQL features 5. file open errors ) . and Normalization Using Multi valued Dependencies. Introduction. Implementations of Atomicity and durability. Nested Sub queries. Finding the end of a Data file.setting its property. Derived Relations. Millspaugh. Views 4. The Relational Algebra. updating a database file ( adding. E-R Diagram. Different types of Database Systems 2. Design Of an E-R Database Schema. Seek). Creating a sequential data file. trap errors with On Error. LOF. Timestamp based protocol. Query Optimization 6.Transaction Concepts. Multi version Schemes. Transaction Definition in SQL. Aggregate functions. E-R Model: Basic Concepts.Pitfalls in Relational-Database Design. Joined Relations. Mapping Constraints.0 Programming by Content Development Group. Transaction Management. Anita C. Relational Database Design. The tuple relational calculus. State. findlast. Validation based protocol. Normalization Using Functional Dependencies. Database Users. Random Data File Opening a random file. deleting records ) . Overall System Structure. Weak Entity set. working with database fields. validation & error trappings ( locking text boxes. Put. Accessing Database File Creating the database files for use by Visual Basic(Using MS-Access). opening the database. Design Issues. Basic Structure. Keys. Recoverability. Null Values. Extended E-R features. SET operations.Lock based protocol. Using Data Control with forms. 11. Views.

Patrick Dalton. Korth. ODBC & the SQL access group) . search conditions. the structure of the join ( table multiplication.ltd Visual Basic 6 : In Record Time/ Brown. R. B P B Publication Beginning S Q L Server 2000 for Visual Basic Developers Willis thearon Shroff publishers & distributers Fundamentals of Database Systems. built-in functions. qualified column names. 5. constants (numeric. Galgotia Publications Oracle Client Server Computing. outer joins Summary Queries : column functions. Kemper and Moerkotte. names ( table & column names). IDG books. SQL Server 2000 Black Book. string. Weinberg TMG 9. Elmasri and Navathe An Introduction to Database System.7. The complete reference SQL by James R. Ltd. symbolic constants). missing data (NULL values) Simple queries: The SELECT statement . BPB Publications Database Management Systems Majumdar/ A K Bhattacharyya. client/server architecture.S. correlated sub queries. Sudarshan. 6. Codd's 12 rules SQL Basics: statements.0 Bjeletich. S. nested sub queries . Steven Holzner. self joins) . Sliberschatz. SQL features & benefits. sub queries & joins. IDG Books India Pvt. rules for single table query processing Multi-table queries : Simple joins . Date Principles of Database System. GUI Design for dummies. Eric Smith. Tata Mc Graw Hill Object Oriented Database Management. Introduction to SQL: The SQL language. SQL considerations for multi table queries ( table aliases. 7. G. expressions . Omran A. data types . Groff & Paul N. sorting query results. Rob: Peasley. 4. Database Systems and Concepts. SQL & networking ( centralized architecture. Visual Basic6 Programming Blue Book by Peter G. Visual Basic 6 programing Bible. Non equi-joins. DBMS by Date 3. query results. all column selections . network databases). Books: 1. row selection. Ltd. simple queries. Aitken—Technology Press 8.: Pruchniak Prentice Hall India pvt. group search conditions Sub queries & query expressions : using sub queries. McGraw Hill 2. Bukhares & A. Techmedia References: Using visual basic 6 / Reselman. C. rules for multi-table query processing ) . other SQL standards. SQL Standards ( ANSI / ISO Standards.K Elmagarmid. IDG Books India Pvt. Ullman. multi-tier architecture) RDBMS: Data models (File management systems. Prientice Hall New Jersy Object Oriented MultiDatabase System. tables.J. sub queries in the HAVING clause. Microsoft SQL Server 7. Ltd. multi table query performance . IDG Books India Pvt. Henry F.: Mable.1996 **************** END OF PAPER III ****************** . date & time. Visual basic 6 Programing Black Book. role of SQL. sub query search conditions. grouped queries. relationships). relational data model ( Keys. Prentice Hall Inc. duplicate rows. file server architecture . SQL a complete reference by Alexis Leon & Mathews Leon TMG 10. hierarchical databases.

polymorphism etc. List of practicals/ tutorials/term work for Paper I Paper I: Section I Practical 1: Problem solving session on topic 1 Practical 2: Problem solving session on topic 2 Practical 3: Problem solving session on topic 3 Practical 4: Problem solving session on topic 4 Practical 5: Problem solving session on topic 5 Practical 6: Problem solving session on topic 6 Practical 7: Problem solving session on topic 7 Practical 8: Problem solving session on topic 8 Paper I: Section II Practical 9: Working in C Graphics. The practicals TAKEN should be recorded in a journal maintained for the purpose. 2. Practical 9: Demonstration of the concept of a Java package and its interfaces. The concerned teacher and the head of the department should certify the said journal. In order to take the practical a lab session similar to the given practical can be taken to initiate the thinking required for the practical. At least fourteen practicals (seven from each section) should be completed in a year. Practical 10: Java string handling. List of practicals/ tutorials/term work for Paper II Paper II: Section I C++ Practical 1: Simple programs to revise C++ fundamentals Practical 2: Constructor and constructor overloading. . Pointers and References: JAVA Practical 7: Introductory concepts and working on JAVA Practical 8: Concept of a Java class. Functions/Methods used in C Graphics. multiple inheritances Practical 5: Virtual Functions and Polymorphism: Practical 6: Arrays. which includes encapsulation. Practical 10: DDA Line drawing algorithm Practical 11: Bresenham’s line drawing algorithm Practical 12: Midpoint circle algorithm Practical 13: Midpoint-ellipse algorithm Practical 14: Polygon generation Practical 15: Polygon filling Practical 16: Animation using different line and pixel methods Practical 17: Clipping algorithms Practical 18: Creation of bezier / B-splines. string sorting.GENERAL INSTRUCTIONS FOR CONDUCT OF REGULAR PRACTICAL 1. inheritance. concatenation. function overloading Practical 3: Operators and operator overloading Practical 4: Inheritance. subtraction and comparison.

Linear Data Structures Arrays an their memory representation Practical 14: Practical 15: Practical 16: Queues. Circular Queue. Non-Equijoins with inequalities in the join condition. Queries using single row numeric. Creating tables with defaults.Generate a correlated subquery. application to recursion. More complex single table queries. character. Ordering queries and using sub-queries. Deletion.Paper II: Section II JAVA Practical 11: Java error conditions using exception handling. Priority Queue Practical 17: Stacks and their representation. merging and reversing. Multitable queries using the join operators. List box Properties. Deque. List Box/ Combo Box. Removing an item from a list. Practical 18: Practical 19: Linked Lists Operations and applications: Implementation. Equi-joins and outer joins. Insertion. Filling the List using Property window / AddItem Method. Queries with aggregate functions. Using String Function. integrity constraints. Practical 12: Use of Java input / output as a set of stream classes. data formatting and other complex formatting. Printing to printer using Print Method. Practical 8: Use and working of Data Files Practical 9: Accessing Database File Prcatical 10: Advanced data handling Practical 11: Practical 12: Practical 13: Practical 14: Practical 15: Paper III – Section II Write simple single table SQL queries using operators with select columns and restricting rows of output. Practical 4: Use of different message boxes and statements used in VB Practical 5: Menus. subtotals and selection on subtotal rows. Practical 21: Tree traversal Practical 22: Graphing algorithms List of practicals/ tutorials/term work for Paper III Paper III – Section I Practical 1: Practical 2: Practical 3: Use of different controls used in VB. Create views and update them. Sub-Procedures and Sub-functions Practical 6: Multiple Forms Practical 7: Use of List Boxes & Combo Boxes. Practical 20: Sparse matrix and its representation & implementation. referential integrity . and Concatenation. Clear Method. Practical 13: Java Applet on the Internet/ Intranet.

constraints and check constraints both at the column level and table level. Using top titles and bottom titles. . Inserting data in table structures and deleting tables. Practical 16: Updating tables. Printing the report. Executing command files and printing the reports. altering table structures and deleting tables. Practical 18: Storing SQL and formatting statements in command files. Practical 17: Simple reporting by formatting column headers and columns of output.