36
MCA III Semester Course Diary (2011-12) MVJCE 1 MASTER OF COMPUTER APPLICATIONS COURSE D DIARY (ACADEMIC YEAR 2011-12) III SEMESTER Name : _____________________________________________ USN : _____________________________________________ Semester & Section : _____________________________________________ The Mission “The mission of our institutions is to provide world class education in our chosen fields and prepare people of character, caliber and vision to build the future world”

MASTER O COMPUTER APPLICATIONS COURSE DD Programming with Java 04 -- 03 50 100 150 4. 10MCA34 Database Management Systems 04 -- 03 50 100 150 5. 10MCA35 Operating Systems 04 -- 03

  • Upload
    docong

  • View
    223

  • Download
    0

Embed Size (px)

Citation preview

MCA III Semester Course Diary (2011-12) MVJCE 1

MASTER OF COMPUTER APPLICATIONS

CCOOUURRSSEE DDII AARRYY

(ACADEMIC YEAR 2011-12)

II II II SSEEMM EESSTTEERR Name : _____________________________________________ USN : _____________________________________________ Semester & Section : _____________________________________________

The Mission

“The mission of our institutions is to provide

world class education in our chosen fields and

prepare people of character, caliber and vision

to build the future world”

MCA III Semester Course Diary (2011-12) MVJCE 2

SCHEME OF TEACHING AND EXAMINATION

MASTER OF COMPUTER APPLICATIONS

III SEMESTER

S.No Subject Code Title

Teaching Hrs/Week Examination

Theory Practical Duration Marks

IA Exam Total

1. 10MCA31 System Software 04 -- 03 50 100 150

2. 10MCA32 Computer Networks 04 -- 03 50 100 150

3. 10MCA33 Programming with Java 04 -- 03 50 100 150

4. 10MCA34 Database Management Systems 04 -- 03 50 100 150

5. 10MCA35 Operating Systems 04 -- 03 50 100 150

6. 10MCA36 System Programming Laboratory

-- 03 03 50 50 100

7. 10MCA37 Java Programming Laboratory -- 03 03 50 50 100

8. 10MCA38 DBMS Laboratory -- 03 03 50 50 100

Total 20 09 24 400 650 1050

MCA III Semester Course Diary (2011-12) MVJCE 3

SYSTEM SOFTWARE

Subject Code: 10MCA31 I.A. Marks : 50 Hours/Week : 04 Exam Hours: 03 Total Hours : 52 Exam Marks: 100 1. MACHINE ARCHITECTURE 6 Hrs

Introduction, System Software and Machine Architecture, Simplified Instructional Computer (SIC) – SIC Machine Architecture, SIC/XE Machine Architecture, SIC Programming Examples, Traditional (CISC) Machines, VAX Architecture, Pentium Pro Architecture, RISC Machines, Ultra SPARC Architecture, Cray T3E Architecture.

2. ASSEMBLERS –1 6 Hrs Basic Assembler Function, A Simple SIC Assembler, Assembler Algorithm and Data Structures, Machine Dependent Assembler Features, Instruction Formats & Addressing Modes, Program Relocation.

3. ASSEMBLERS –2 6 Hrs Machine Independent Assembler Features, Literals, Symbol-Definition Statements, Expression, Program Blocks, Control Sections and Program Linking, Assembler Design Operations – one pass Assembler, Multi-Pass Assembler, Implementation Examples – MASM Assembler, SPARC Assembler.

4. LOADERS AND LINKERS 8 Hrs Basic Loader Functions, Design of an Absolute Loader, A Simple Bootstrap Loader, Machine Dependent Loader Features, Relocation, Program Linking, Algorithm and Data Structures for a Linking Loader, Machine-Independent Loader Features, Automatic Library Search, Loader Options, Loader Design Options, Linking Editor, Dynamic Linkage, Bootstrap Loaders, Implementation Examples – MS-DOS Linker, Sun OS Linker, Cray MPP Linker.

5. EDITORS AND DEBUGGING SYSTEMS 6 Hrs Text Editors, Overview of Editing Process, User Interface, Editor Structure, Interactive Debugging Systems, Debugging Functions and Capabilities, Relationship With Other Parts of the System, User-Interface Criteria.

6. MACRO PROCESSOR 8 Hrs Basic Macro Processor Functions – Macro Definitions and Expansion, Macro Processor Algorithm and Data Structures, Machine-Independent Macro Processor Features, Concatenation of Macro Parameters, Generation of Unique Labels, Condition Macro Expansion, Keyword Macro Parameters, Macro Processor Design Options, Recursive Macro Expansion, General-Purpose Macro Processors, Macro Processing Within Language Translators, Implementation Examples – MASM Macro Processor, ANSI C Macro Processor.

7. LEX AN YACC 6 Hrs Lex and Yacc – The Simplest Lex Program, Recognizing Words With LEX, Symbol Tables, Grammars, Parser-Lexer communication, The Parts of Speech Lexer, A YACC Parser, The Rules Section, Running LEX and YACC, LEX & Hand – Written Lexers, Using LEX – Regular Expression, Examples of Regular Expressions, A Word Counting Program, Parsing a Command Line

MCA III Semester Course Diary (2011-12) MVJCE 4

8. LEX & YACC – 2 6 Hrs

Using YACC-Grammars, Recursive Rules, Shift/Reduce Parsing, What YACC cannot Parse, A YACC Parser – The definition Section, The Rules Section, Symbol Values and actions, The LEXER, Compiling and Running a simple parser, Arithmetic Expressions & Ambiguity, Variable and typed tokens. TEXT BOOKS: 1. Leland.L.Beck: System Software, 3rd Edition, Addison-Wesley, 1997.

(Chapters 1 (except 1.5.2), 2(except 2.5.3), 3, 4, 5(except 5.5), 7.2, 7.3)

2. John.R.Levine, Tony Mason Doug Brown: Lex & Yacc, O’Reilly, SPD, 1999. (Chapters 1, 2 (Page 27-42), 3 (Page 51-65)).

REFERENCE BOOKS:

1. D.M.Dhamdhere: System Programming and Operating Systems, 2nd Edition, Tata McGraw – Hill, 1999.

MCA III Semester Course Diary (2011-12) MVJCE 5

MVJ COLLEGE OF ENGINEERING, BANGALORE-67 DEPARTMENT OF MCA

LESSON PLAN

Subject Name: SYSTEMS SOFTWARE Subject Code: 10MCA31

Total No. of Classes : 62

Class. No Topics to be covered

1. MACHINE ARCHITECTURE

1. Introduction, System Software and Machine Architecture, Simplified Instructional Computer (SIC) – SIC Machine Architecture

2. SIC/XE Machine Architecture, SIC Programming Examples

3. Traditional (CISC) Machines

4. VAX Architecture

5. Pentium Pro Architecture, RISC Machines

6. Ultra SPARC Architecture

7. Cray T3E Architecture

2. ASSEMBLERS –II

8. Basic Assembler Function

9. A Simple SIC Assembler

10. Assembler Algorithm and Data Structures

11. Assembler Algorithm and Data Structures

12. Machine Dependent Assembler Features

13. Instruction Formats & Addressing Modes

14. Program Relocation

3. ASSEMBLERS –II

15. Machine Independent Assembler Features

16. Literals, Symbol-Definition Statements, Expression

17. Program Blocks, Control Sections and Program Linking

18. Assembler Design Operations – one pass Assembler

19. Multi-Pass Assembler

20. Implementation Examples – MASM Assembler

21. SPARC Assembler

4. LOADERS AND LINKERS

22. Basic Loader Functions

23. Design of an Absolute Loader, A Simple Bootstrap Loader,

24. Machine Dependent Loader Features

25. Relocation, Program Linking

26. Algorithm and Data Structures for a Linking Loader

27. Machine-Independent Loader Features

28. Automatic Library Search, Loader Options, Loader Design Options

29. Linking Editor, Dynamic Linkage

30. Bootstrap Loaders

MCA III Semester Course Diary (2011-12) MVJCE 6

31. Implementation Examples – MS-DOS Linker, Sun OS Linker, Cray MPP Linker.

5. EDITORS AND DEBUGGING SYSTEMS

32. Text Editors, Overview of Editing Process, User Interface

33. Text Editors, Overview of Editing Process, User Interface

34. Editor Structure

35. Interactive Debugging Systems

36. Debugging Functions and Capabilities

37. Relationship With Other Parts of the System

38. User-Interface Criteria

6. MACRO PROCESSOR

39. Basic Macro Processor Functions – Macro Definitions and Expansion

40. Macro Processor Algorithm and Data Structures

41. Machine-Independent Macro Processor Features

42. Concatenation of Macro Parameters,

43. Generation of Unique Labels, Condition Macro Expansion

44. Keyword Macro Parameters, Macro Processor Design Options

45. Recursive Macro Expansion

46. General-Purpose Macro Processors

47. Macro Processing Within Language Translators

48. Implementation Examples – MASM Macro Processor, ANSI C Macro Processor

7. LEX AND YACC

49. Lex and Yacc – The Simplest Lex Program, Recognizing Words With LEX

50. Symbol Tables, Grammars

51. Parser-Lexer communication, The Parts of Speech Lexer

52. A YACC Parser, The Rules Section, Running LEX and YACC 53. LEX & Hand – Written Lexers

54. Using LEX – Regular Expression, Examples of Regular Expressions.

55. A Word Counting Program, Parsing a Command Line

8. LEX & YACC – 2

56. Using YACC-Grammars, Recursive Rules

57. Shift/Reduce Parsing, What YACC cannot Parse

58. A YACC Parser – The definition Section

59. The Rules Section, Symbol Values and actions

60. The LEXER, Compiling and Running a simple parser

61. Arithmetic Expressions & Ambiguity, Variable and typed tokens

62. The LEXER, Compiling and Running a simple parser

MCA III Semester Course Diary (2011-12) MVJCE 7

QUESTION BANK

SYSTEM SOFTWARE (10MCA31)

1. What is system software?

2. What is SIC?

3. Explain Cray T3E Architecture?

4. What is Assembler?

5. Explain about Addressing modes.

6. What is Program Relocation?

7. What is Multi-Pass Assembler?

8. What is Simple Bootstrap Loader?

9. Explain about Machine-Independent Loader Features.

10. What is Text Editor?

11. What is Debugger?

12. What is Macro processor?

13. Explain MASM Macro Processor.

14. Explain the Structure of Lex & Yacc.

15. What is Parser-Lexer communication?

MCA III Semester Course Diary (2011-12) MVJCE 8

COMPUTER NETWORKS

Subject Code: 10MCA32 I.A. Marks : 50 Hours/Week : 04 Exam Hours: 03 Total Hours : 52 Exam Marks: 100

1. FOUNDATION 8 Hrs Building a Network, Applications; Requirements; Network Architecture; Implementing Network Software; Performance.

2. DIRECT LINK NETWORKS 12 Hrs

Physically Connecting Hosts – Hardware Building Blocks, Encoding, Framing; Error Detection; Reliable Transmission; Ethernet (802.3), Ring (802.5, FDDI, 802.17), Wireless (802.15.1, 802.11,802.16, Cell Phone Technologies).

3. PACKET SWITCHING 7 Hrs

Switching and forwarding; Bridges and LAN Switches.

4. INTERNETWORKING 12 Hrs

Simple Internetworking (IP); Routing; Global Internet.

5. END-TO-END PROTOCOLS ALLOCATION ISSUES 7 Hrs

Simple Demultiplexer (UDP), Reliable Byte Stream (TCP); Issues in Resource Allocation.

6. APPLICATIONS 6 Hrs

Application-Layer overview; Domain name system, Remote login protocols, Electronic mail, File Transfer and FTP; World Wide Web; HTTP; Overview of VoIP telephony; VoIP Signaling Protocols

TEXT BOOKS:

1. Larry L. Peterson and Bruce S. David: Computer Networks – A System Approach, 4th Edition, Elsevier, 2007. (Chapters 1, 2, 3.1, 3.2, 4.1, 4.2, 4.3, 5.1, 5.2, 6.1)

2. Nader F. Mir: Computer and Communication Networks, Pearson Education, 2007.

(Chapters 9.1 to 9.6, 18.1, 18.2)

REFERENCES:

1. Behrouz. A. Forouzan: Data Communication and Networking, 4th Edition, Tata McGraw-Hill, 2006.

2. William Stallings: Data and Computer Communication, 8th Edition, Pearson Education, 2007.

3. Alberto Leon-Garcia and ladra Widjaja: Communication Networks – Fundamental Concepts and Key architectures, 2nd Edition Tata McGraw-Hill, 2004.

MCA III Semester Course Diary (2011-12) MVJCE 9

MVJ COLLEGE OF ENGINEERING, BANGALORE – 67

DEPARTMENT OF MCA

LESSON PLAN

Subject Name: COMPUTER NETWORKS Subject Code: 10MCA32

Total No. of Classes : 62

Class.

No Topics to be covered

Chapter-1-Foundation 1. Building a Network 2. Applications of Network

3. Requirements - Connectivity, Cost-Effective Resource Sharing, Support for Common Services

4. Network Architecture- Layering and Protocols 5. OSI Architecture 6. Internet Architecture 7. Implementing Network Software – Application Programming Interface (Sockets) 8. Example Application, Protocol Implementation issues 9. Performance – Bandwidth & Latency, Delay X Bandwidth product 10. High – Speed Networks, Application Performance Needs Chapter-2-Direct Link Networks 11. Physically Connecting Hosts – Hardware Building Blocks 12. Encoding 13. Framing-Byte oriented Protocols 14. Bit-oriented Protocols, Clock – Based Framing 15. Error Detection- Two-Dimensional Parity, Internet Check sum Algorithm 16. Cyclic Redundancy Check 17. Reliable Transmission-Stop-and-Wait 18. Sliding Window 19. Concurrent Logical Channels 20. Ethernet (802.3) 21. Token Rings (802.5,FDDI, 802.17) 22. Wireless (802.15.1, 802.11) 23. Wireless (802.16) 24. Wireless (Cell Phone Technologies)

Chapter-3-Packet Switching 25. Switching and forwarding

26. Datagrams

27. Virtual Circuit Switching

28. Source Routing

29. Bridges and LAN Switches-Learning Bridges

30. Spanning Tree Algorithm

31. Broadcast and Multicast

32. Limitations of Bridges

MCA III Semester Course Diary (2011-12) MVJCE 10

Chapter-4-Internetworking

33. Simple internetworking (IP)-What is an Internetwork?

34. Service Model, Global Addresses

35. Datagram Forwarding in IP

36. Address Translation (ARP), Host Configuration (DHCP)

37. Error Reporting

38. Virtual Networks and Tunnels

39. Routing – Network as a Graph

40. Distance Vector (RIP)

41. Link State (OSPF)

42. Metrics, Routing for Mobile Hosts

43. Global Internet-Subnetting

44. Classless Routing

45. Interdomain Routing

46. Routing Areas

47. IP Version 6

Chapter-5-End-to-End Protocols; Resource Allocation Issues

48. Simple Demultiplexer (UDP)

49. Reliable Byte Stream (TCP)- End-to-End Issues, Segment Format

50. Connection Establishment and Termination

51. Sliding Window Revisited

52. Triggering Transmission

53. Adaptive Retransmission, Record Boundaries

54. Issues in Resource Allocation-Network Model

55. Taxonomy, Evaluation Criteria

Chapter-6-Applications

56. Application –Layer overview

57. Domain Name System

58. Remote Login Protocols

59. Electronic mail, File transfer and FTP

60. World Wide Web and HTTP

61. Overview of VoIP telephony

62. VoIP Signaling protocols

MCA III Semester Course Diary (2011-12) MVJCE 11

QUESTION BANK

COMPUTER NETWORKS (10MCA32)

1. What is Computer Network?

2. How can we implement network Software?

3. What is Encoding?

4. What is Error-Detection?

5. Explain about Bridges & Lane Switches?

6. What is Internetworking?

7. What is Global Internet?

8. What is D-multiplexer?

9. Explain about the issues in Resource allocation.

10. What is DNS?

11. What is Electronic Mail?

12. What is FTP?

13. What is WWW?

14. What is VOIP Signaling Protocol?

15. Explain about VOIP Telephony.

MCA III Semester Course Diary (2011-12) MVJCE 12

PROGRAMMING WITH JAVA

Subject Code: 10MCA33 I.A. Marks : 50 Hours/Week : 04 Exam Hours : 03 Total Hours : 52 Exam Marks: 100 An Overview of Java 4 Hours Object-Oriented Programming, A First Simple Program, A Second Short Program, Using Blocks of Code Lexical Issues, The Java Class Libraries. Data Types, Variables, and Arrays: Java Is a Strongly Typed Language, The Primitive Types, A Closer Look at Literals, Variables, Type Conversion and casting, Automatic Type promotion in Expression, Arrays, A few words about Strings. Operators: Arithmetic Operators, The Bitwise Operators, Relational Operators Boolean Logical Operators, The Assignment Operator, The ? Operator, Operator Precedence, Using Parentheses. Control Statements: Java’s Selection, Iteration Statements, Jump Statements. Introducing Classes: 7 Hours Class Fundamentals, Declaring Objects, Assigning Object Reference Variables Introducing Methods, Constructors, The this Keyword, Garbage, The finalize( ) Method A Stack Class. A Closer Look at Methods and Classes: Overloading Methods, Overloading Constructors, Using Objects as Parameters, A Closer Look at Argument Passing, Returning Objects, Recursion, Introducing Access Control, Understanding static, Introducing final, Arrays Revisited, Introducing Nested and Inner Classes, Exploring the String Class, Using Command-Line Arguments, Varargs Inheritance: 7 Hours Inheritance Basics, Using super, Using super Creating a Multilevel Hierarchy, When Constructors Are Called, Method Overriding, Dynamic Method Dispatch, Using Abstract Classes, Using final with Inheritance, The Object Class. Packages and Interfaces: Packages, Access Protection, An Access Example Importing Packages, Interfaces. Exception Handling: Exception-Handling Fundamentals, Exception Types, Uncaught Exceptions Using try and catch, Multiple catch Clauses, Nested try Statements, throw, throws, finally, Java’s Built-in Exceptions, Creating Your Own Exception Subclasses, Chained Exceptions, Using Exceptions. Multithreaded Programming: 6 Hours The Java Thread Model, The Main Thread, Creating a Thread, Creating Multiple Threads, Using isAlive( ) and join( ), Thread Priorities, Synchronization, Interthread Communication, Suspending, Resuming, and Stopping Threads, Using Multithreading. Input/Output: Exploring java.io: The Java I/O Classes and Interfaces, File, The Closable and Flushable Interfaces, The Stream Classes, The Byte Streams, The Character Streams, The Console Class, Using Stream I/O, Serialization, Stream Benefits. Enumeration, Autoboxing: 6 Hours Enumeration, Type Wrappers, Autoboxing. Generics: What are Generics?, A Simple Generics Example, A Generics Class with two Type Parameters, The General Form of a Generic Class. String Handling: The String Constructors, String Length, Special String Operations, Character Extraction, String Comparison, Searching Strings, Modifying a String, Data Conversion Using valueOf( ), Changing the Case of Characters Within a String, Additional String Methods, StringBuffer, String Builder. Exploring java.lang: 7 Hours Primitive Type Wrappers, System, Object, Class, Class Loader, Math, Thread, ThreadGroup, Runnable, Throwable. The Collections Framework: Collections Overview, The Collection Interfaces, The List Interface, The Queue Interface, The Collection Classes, The ArrayList Class, The LinkedList Class, The HashSet, The TreeSet Class.

MCA III Semester Course Diary (2011-12) MVJCE 13

Networking: 5 Hours Networking Basics, The Networking Classes and Interfaces InetAddress, TCP/IP Client Sockets, URL, URLConnection, HTTP URL Connection, TCP/IP Server Sockets, Cookies, Inet4Address and Inet6Address, The URI Class, RMI. The Applet Class: 7 Hours The Applet Class, Event Handling: Two Event Handling Mechanisms, The Delegation Event Model, Event Classes, Sources of Events, Event Listener Interfaces, Using the Delegation Event Model, Adapter Classes, Inner Classes. Swing: Introducing Swing, Exploring Swing. Text Books: 1. Herbert Schildt: The Complete Reference JAVA, 7th Edition, Tata McGrawHill, 2006. (Chapters: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 19, 20, 21, 22, 27, 29, 30) Reference Books: 1. Raghavan P, Suresh Kumar T V: Programming with Java, Sanguine-Pearson, 2010. 2. James P Cohoon, Jack W Davidson: Programming in JAVA 5.0, Tata McGraw Hill, 2007. 3. Cay S Horstmann, Gary Cornell: Core Java 2 - Volume 1, 7th Edition, Pearson Education, 2005. 4. Cay S Horstmann, Gary Cornell: Core Java 2 - Volume 2, 8th Edition, Pearson Education, 2008. 5. Y. Daniel Liang: Introduction to JAVA Programming, 7th Edition, Pearson Education, 2007.

MCA III Semester Course Diary (2011-12) MVJCE 14

MVJ COLLEGE OF ENGINEERING, BANGALORE – 67 DEPARTMENT OF MCA

LESSON PLAN

Subject Name: PROGRAMMING WITH JAVA Subject Code: 10MCA33

Total No. of Classes : 62

Class. No Topics to be covered

1. An Overview of Java

1. Object-Oriented Programming, A First Simple Program, A Second Short Program

2. Using Blocks of Code Lexical Issues, The Java Class Libraries. Data Types,

3. Variables, and Arrays: Java Is a Strongly Typed Language, The Primitive Types,

4. A Closer Look at Literals, Variables,

5. Type Conversion and casting, Automatic Type promotion in Expression, Arrays

6. A few words about Strings. Operators: Arithmetic Operators,

7. The Bitwise Operators, Relational Operators Boolean Logical Operators

8. The Assignment Operator, The? Operator, Operator Precedence,

9. Using Parentheses. Control Statements:

10. Java’s Selection, Iteration Statements, Jump Statements

2. Introducing Classes:

11. Class Fundamentals, Declaring Objects, 12. Assigning Object Reference Variables

13. Introducing Methods, Constructors,

14. The this Keyword, Garbage, The finalize( ) Method A Stack Class

15. A Closer Look at Methods and Classes:

16. Overloading Methods, Overloading Constructors, Using Objects as Parameters,

17. A Closer Look at Argument Passing, Returning Objects

18. Recursion, Introducing Access Control, Understanding static, Introducing final

19. Arrays Revisited, Introducing Nested and Inner Classes,

20. Exploring the String Class, Using Command-Line Arguments, Varargs

3. Inheritance:

21. Inheritance Basics, Using super, Using super Creating a Multilevel Hierarchy

22. When Constructors Are Called, Method Overriding, Dynamic Method Dispatch, ,

23. Using Abstract Classes, Using final with Inheritance The Object Class. Packages and Interfaces:

24. Packages, Access Protection, An Access Example Importing Package Interfaces.

25. Exception Handling: Exception-,

26. Handling Fundamentals, Exception Types,

27. Uncaught Exceptions Using try and catch Multiple catch Clauses,

28. Nested try Statements, throw, throws, finally Java’s Built-in Exceptions, Creating Your Own Exception Subclasses, Chained Exceptions, Using Exceptions

MCA III Semester Course Diary (2011-12) MVJCE 15

4. Multithreaded Programming

29. The Java Thread Model, The Main Thread, Creating a Thread, Creating Multiple Threads, Using isAlive( ) and join( ),

30. Thread Priorities, Synchronization, Interthread Communicatio

31. Suspending, Resuming, and Stopping Threads, Using Multithreading. 32. Input/Output: Exploring java.io: The Java I/O Classes and Interfaces, File

33. The Closable and Flushable Interfaces, The Stream Classes, The Byte Streams,

34. The Byte Streams, The Character Streams,

35. The Console Class, Using Stream I/O, Serialization, Stream Benefits

5. Enumeration, Autoboxing

36. Enumeration, Type Wrappers,

37. Autoboxing. Generics: What are Generics?, A Simple Generics Example

38. A Generics Class with two Type Parameters, The General Form of a Generic Class.

39. String Handling: The String Constructors, String Length,

40. Special String Operations, Character Extraction,

41. String Comparison, Searching Strings, Modifying a String,

42. Data Conversion Using valueOf( ), Changing the Case of Characters Within a String

43. Additional String Methods, StringBuffer, String Builder.

6. Exploring java.lang

44. Primitive Type Wrappers, System

45. Class, Class Loader, Math, Thread, ThreadGroup, Runnable

46. Throwable. The Collections Framework:

47. Collections Overview, The Collection Interfaces

48. The List Interface, The Queue Interface

49. The Collection Classes, The ArrayList Class,

50. The LinkedList Class, The HashSet, The TreeSet Class.

7 Networking 51. Networking Basics, The Networking Classes and Interfaces

52. InetAddress, TCP/IP Client Sockets,

53. TCP/IP Client Sockets, URL, URLConnection, HTTP URL Connection

54. TCP/IP Server Sockets, Cookies

55. Inet4Address and Inet6Address, The URI Class, RMI.

8. The Applet Class

56. The Applet Class, Event Handling

57. Two Event Handling Mechanisms

58. The Delegation Event Model, Event Classes, Sources of Events,

59. Sources of Events, Event Listener Interfaces,

60. Using the Delegation Event Model

61. Adapter Classes, Inner Classes

62. Swing: Introducing Swing, Exploring Swing.

MCA III Semester Course Diary (2011-12) MVJCE 16

QUESTION BANK

PROGRAMMING WITH JAVA (10MCA33)

1. What is Object Oriented Programming?

2. Explain about the operators in Java.

3. What is Class & Objects?

4. What is Finalize Method?

5. What is Recursion?

6. What is Interface?

7. What is Exception?

8. Explain about throw, throws finally.

9. What is Thread?

10. Explain about Inter thread Communication.

11. What is IO Stream?

12. What is Auto boxing?

13. What is Class loader?

14. What is URL?

15. What is RMI?

16. What is Cookie?

17. What is Applet?

18. Explain about Event handling in Java?

19. What Inet4Address & Inet6Address?

20. Explain about the sources of event?

MCA III Semester Course Diary (2011-12) MVJCE 17

DATABASE MANAGEMENT SYSTEMS

Sub Code : 07MCA34 I.A. Marks : 50 Hrs/Week : 04 Exam Hours : 03 Total Hrs : 52 Exam Marks : 100

1. Introduction 7 Hrs Introduction; An example; Characteristics of Database approach; Actors on the screen; Workers behind the scene; Advantages of using DBMS approach; A brief history of database applications; when not to use a DBMS. Data models, schemas and instances; Three-scheme architecture and data independence, Database languages and interfaces; The database system environment; Centralized and client-server architectures; Classification of Database Management Systems.

2. Entity –Relationship Model 7 Hrs

Using High –Level Conceptual Data Models for database design; An Example Database Application; Entity Types, Entity sets, Attributes and Keys; Relationship Types, Relationship sets, Roles and Structural Constraints; Weak Entity Types; Refining the ER Design; ER Diagram, Naming Conventions and Design Issues; Relationship types of degree higher than two.

3. Relational Model and Relational Algebra 8 Hrs

Relational Model Concepts; Relational Model constraints and Relational Database Schemas; Update operations, Transactions and Dealing with constraint violations; Unary Relational Operations: SELECT and PROJECT; Relational Algebra Operations from Set theory; Binary Relational Operations: JOIN and DIVISION; Additional Relational Operations; Examples of Queries in Relational Algebra, Relational Database Design Using ER-to-Relational Mapping.

4. SQL 16 Hrs

SQL Data Definition and Data Types; Specifying basic Constraints in SQL; schema Change statements in SQL; Basic queries in SQL; More Complex SQL Queries;

Insert, Delete and Update Statements in SQL; Specifying constraints as Assertion and Trigger; Views ( Virtual Tables ) in SQL; Additional Features of SQL; Database programming issues and techniques; Embedded SQL, Dynamic SQL; Database stored procedures and SQL/PSM.

5. Database Design 8 Hrs Informal Design Guidelines for Relation Schemas; Functional Dependencies; Normal forms

based on Primary Keys; General Definitions of Second and Third Normal forms, Boyce-codd Normal Form.

6. Transaction Management 6 Hrs The ACID properties: Transaction and schedules; Concurrent Execution of Transactions; Lock-

Based Concurrency Control; Performance of Locking: Transaction Support in SQL: Introduction to crash Recovery.

MCA III Semester Course Diary (2011-12) MVJCE 18

TEXT BOOKS: 2) Elmasri and Navathe: Fundamentals of Database Systems, 5th Edition. Addison Wesley, 2007.

(Chapters 1, 2, 3 except 3,8,5,6,1, to 6.5, 7.1, 8, 9.1, 9.2 except SQL 9.4, 10) 3) Raghu Ramakrishnan and Johannes Gehrke: Database Management System –. Third Edition.

McGraw-Hill, 2003 (Chapter 16, 17.1, 17.2, 18)

REFERENCE BOOKS:

1. Siberschatz, Korth and Sudarshan: Database System Concepts, 5th Edition, McGraw Hill.2006

2. C.J. Date, A. Kannaa, S.Swamynathan: A Introduction to Database Systems, 8th Edition, Pearson Education, 2006.

MCA III Semester Course Diary (2011-12) MVJCE 19

MVJ COLLEGE OF ENGINEERING, BANGALORE-67 DEPARTMENT OF MCA

LESSON PLAN

Subject Name: DATABASE MANAGEMENT SYSTEM Sub Code: 10MCA34

Total No. of Classes: 62

Class. No Topics to be covered

Introduction

1. Introduction; An example; Characteristics of Database approach

2. Actors on the screen; Workers behind the scene; Advantages of using DBMS approach

3. A brief history of database applications; when not to use a DBMS.

4. Data models, schemas and instances; Three-scheme architecture and data independence

5. Database languages and interfaces.

6. The database system environment.

7. Centralized and client-server architectures

8. Classification of Database Management Systems

Entity –Relationship Model

9. Using High –Level Conceptual Data Models for database design

10. An Example Database Application

11. Entity Types, Entity sets, Attributes and Keys; Relationship Types,

12. Relationship sets, Roles and Structural Constraints

13. Weak Entity Types; Refining the ER Design.

14. ER Diagram

15. Naming Conventions and Design Issues..

16. Relationship types of degree higher than two

Relational Model and Relational Algebra

17. Relational Model Concepts; Relational Model constraints and Relational Database Schemas

18. Update operations

19. Transactions and Dealing with constraint violations; Unary Relational Operations

20. SELECT and PROJECT

21. Relational Algebra Operations from Set theory.

22. Binary Relational Operations

23. JOIN and DIVISION.

24. Additional Relational Operations

25. Examples of Queries in Relational Algebra

26. Relational Database Design Using ER-to-Relational Mapping.

MCA III Semester Course Diary (2011-12) MVJCE 20

SQL

27. SQL Data Definition.

28. SQL Data Types

29. Specifying basic Constraints in SQL

30. Schema Change statements in SQL

31. Basic queries in SQL

32. More Complex SQL Queries

33. More Complex SQL Queries

34. Insert, Delete Statements in SQL

35. Update Statements in SQL

36. Specifying constraints as Assertion

37. Specifying constraints as Trigger

38. Views ( Virtual Tables ) in SQL

39. Additional Features of SQL

40. Additional Features of SQL

41. Database programming issues and techniques

42. Embedded SQL

43. Dynamic SQL.

44. Database stored procedures.

45. SQL/PSM.

Database Design

46. Informal Design Guidelines for Relation Schemas

47. Informal Design Guidelines for Relation Schemas

48. Functional Dependencies

49. Functional Dependencies

50. Normal forms based on Primary Keys.

51. General Definitions of Second Normal forms.

52. Examples of First & Second Normal forms

53. Third Normal forms

54. Boyce-codd Normal Form

55. Comparisons of Normal Forms.

Transaction Management

56. The ACID properties.

57. Transaction and Schedules.

58. Concurrent Execution of Transactions.

59. Lock-Based Concurrency Control.

60. Performance of Locking.

61. Transaction Support in SQL

62. Introduction to crash Recovery.

MCA III Semester Course Diary (2011-12) MVJCE 21

QUESTION BANK

DATABASE MANAGEMENT SYSTEMS (10MCA34)

1. What is DBMS?

2. What is Schema?

3. What is RDBMS?

4. What is Entity?

5. What is Data Model?

6. Explain SELECT and PROJECT statements.

7. What is Joint?

8. What is Relational Algebra?

9. What is SQL?

10. What is Dynamic SQL?

11. Explain the issues in Database programming.

12. What is Functional Dependency?

13. What is Normal form?

14. Explain about ACID properties?

15. What is Lock?

MCA III Semester Course Diary (2011-12) MVJCE 22

OPERATING SYSTEMS

Subject Code: 10MCA35 I.A. Marks : 50 Hours/Week : 04 Exam Hours : 03 Total Hours : 52 Exam Marks: 100 1. Introduction to Operating Systems, System structures 6 Hrs What operating systems do; Computer System organization; Computer System architecture; Operating System structure; Operating System operations; Process management; Memory management; Storage management; Protection and security; Distributed system; Special-purpose systems; Computing environments. Operating System Services; User - Operating System interface; System calls; Types of system calls; System programs; Operating System design and implementation; Operating System structure; Virtual machines; Operating System generation; System boot. 2. Process Management 7 Hrs Process concept; Process scheduling; Operations on processes; Inter-process communication. Multi-Threaded Programming: Overview; Multithreading models; Thread Libraries; Threading issues. Process Scheduling: Basic concepts; Scheduling criteria; Scheduling algorithms; Multiple-Processor scheduling; Thread scheduling. 3. Process Synchronization 7 Hrs Synchronization: The Critical section problem; Peterson’s solution; Synchronization hardware; Semaphores; Classical problems of synchronization; Monitors. 4. Deadlocks 6 Hrs Deadlocks: System model; Deadlock characterization; Methods for handling deadlocks; Deadlock prevention; Deadlock avoidance; Deadlock detection and recovery from deadlock. 5. Memory Management 7 Hrs Memory Management Strategies: Background; Swapping; Contiguous memory allocation; Paging; Structure of page table; Segmentation. Virtual Memory Management: Background; Demand paging; Copy-on-write; Page replacement; Allocation of frames; Thrashing. 6. File System, Implementation of File System 7 Hrs File System: File concept; Access methods; Directory structure; File system mounting; File sharing; Protection. Implementing File System: File system structure; File system implementation; Directory implementation; Allocation methods; Free space management. 7. Secondary Storage Structures, Protection 6 Hrs Mass storage structures; Disk structure; Disk attachment; Disk scheduling; Disk management; Swap space management. Protection: Goals of protection, Principles of protection, Domain of protection, Access matrix , Implementation of access matrix, Access control, Revocation of access rights, Capability-Based systems.

MCA III Semester Course Diary (2011-12) MVJCE 23

8. Case Study: The Linux Operating System 6 Hrs Linux history; Design principles; Kernel modules; Process management; Scheduling; Memory management; File systems, Input and output; Inter-process communication. Text Books: 1. Abraham Silberschatz, Peter Baer Galvin , Greg Gagne: Operating System Principles, 7th edition, Wiley-India, 2006. (Chapters: 1, 2, 3.1 to 3.4 , 4.1 to 4.4, 5.1 to 5.5, 6.1 to 6.7, 7, 8.1 to 8.6, 9.1 to 9.6, 10, 11.1 to 11.5, 12.1 to 12.6, 17.1 to 17.8, 21.1 to 21.9) Reference Books: 1. D.M Dhamdhere: Operating systems - A concept based Approach, 2nd Edition, Tata McGraw- Hill, 2002. 2. P.C.P. Bhatt: Operating Systems, 2nd Edition, PHI, 2006. 3. Harvey M Deital: Operating systems, 3rd Edition, Addison Wesley, 1990.

MCA III Semester Course Diary (2011-12) MVJCE 24

MVJ COLLEGE OF ENGINEERING, BANGALORE-67 DEPARTMENT OF MCA

LESSON PLAN

Subject Name: OPERATING SYSTEMS Sub Code:10MCA35

Total No. of Classes: 62

Class. No Topics to be covered

I. Introduction to Operating Systems, System structures

1. What operating systems do; Computer System organization;

2. Computer System architecture; Operating System structure; Operating System operations;

3. Process management; Memory management

4. Storage management; Protection and security

5. Distributed system Special-purpose systems;

6. Computing environments Operating System Services; User - Operating System interface

7. System calls; Types of system calls; System programs

8. Operating System design and implementation Operating System structure

9. Virtual machines; Operating System generation; System boot.

2. Process Management

10. Process concept; Process scheduling;

11. Operations on processes

12. Inter-process communication.

13. Multi-Threaded Programming: Overview;

14. Multithreading models; Thread Libraries;

15. Threading issues.

16. Process Scheduling: Basic concepts; Scheduling criteria;;

17. Scheduling algorithms

18. Multiple-Processor scheduling; Thread scheduling.

3. Process Synchronization

19. Synchronization

20. The Critical section problem;

21. Peterson’s solution

22. Synchronization hardware

23. Semaphores

24. Classical problems of synchronization

25. Monitors.

4. Deadlocks

26. Deadlocks System model

27. Deadlock characterization

MCA III Semester Course Diary (2011-12) MVJCE 25

28. Methods for handling deadlocks

29. Deadlock prevention

30. Deadlock avoidance

31. Deadlock detection and recovery from deadlock

5. Memory Management

32. Memory Management Strategies: Background;

33. Swapping

34. Contiguous memory Allocation

35. Paging; Structure of page table

36. Segmentation.

37. Virtual Memory Management: Background;

38. Demand paging; Copy-on-write;

39. Page replacement; Allocation of frames

40. Thrashing

6. File System, Implementation of File System

41. File System: File concept; Access methods

42. Directory structure

43. File system mounting;

44. File sharing; Protection

45. Implementing File System, File system structure

46. File system implementation

47. Directory implementation

48. Allocation methods; Free space management

7. Secondary Storage Structures, Protection

49. Mass storage structures; Disk structure; Disk attachment

50. Disk scheduling; Disk management

51. Swap space management.

52. Protection: Goals of protection, ,

53. Principles of protection, Domain of protection

54. Access matrix, Implementation of access matrix, Access control

55. Revocation of access rights, Capability-Based systems.

8. Case Study: The Linux Operating System

56. Linux history; Design principles

57. Kernel modules; Process management;

58. Scheduling

59. Memory management

60. File systems

61. Input and output

62. Inter-process communication

MCA III Semester Course Diary (2011-12) MVJCE 26

QUESTION BANK

OPERATING SYSTEMS (10MCA35)

1. What is Operating System?

2. What is System Call?

3. What is Process?

4. What is Scheduling?

5. What is Multiple Processor Scheduling?

6. What is Deadlock?

7. Explain about Memory Allocation?

8. What is File System?

9. What is Demand Paging?

10. Explain about Directory Structure?

11. What is Disk Scheduling?

12. What is Access Matrix?

13. What is Thrashing?

14. What is Swapping?

15. What is Paging?

MCA III Semester Course Diary (2011-12) MVJCE 27

SYSTEM PROGRAMMING LABORATORY

Sub Code : 10MCA36 I.A. Marks : 50 Hrs/Week : 03 Exam Hours : 03 Total Hrs : 42 Exam Marks : 50

PART- A

Execute of the following programs using LEX: 1. Program to count the number of vowels and consonants in a given string. 2. Program to count the number of characters, words, spaces and lines in a given input file. 3. Program to count number of

a. Positive and negative integers b. Positive and negative fractions

4. Program to count the numbers of comment lines in a given C program. Also eliminate them and copy that program into separate file. 5. Program to count the number of ‘scanf’ and ‘printf’ statements in a C program. Replace them with ‘readf’ and ‘writef’ statements respectively. 6. Program to recognize a valid arithmetic expression and identify the identifiers and operators present. Print them separately. 7. Program to recognize and count the number of identifiers in a given input file.

PART- B

Execute of the following programs using YACC: 1. Program to test the validity of a simple expression involving operators +, -, * and /. 2. Program to recognize nested IF control statements and display the number of levels of nesting. 3. Program to recognize a valid arithmetic expression that uses operators +, -, * and /. 4. Program to recognize a valid variable, which starts with a letter, followed by any number of letters or digits. 5. Program to evaluate an arithmetic expression involving operators +, -, * and /. 6. Program to recognize strings ‘aaab’, ‘abbb’, ‘ab’ and ‘a’ using the grammar: (an bn , n>=0) 7. Program to recognize the grammar (an b, n>=10). Instructions: In the examination, a combination of one LEX and one YACC problem has to be asked based on lots. Both will have equal weightages.

MCA III Semester Course Diary (2011-12) MVJCE 28

MVJ COLLEGE OF ENGINEERING, BANGALORE-67

DEPARTMENT OF MCA

LESSON PLAN

Subject Name: SYSTEM PROGRAMMING LABORATORY Sub Code: 10MCA36

Total No. of Hours: 42

Hour. No Topics to be covered

1. LEX to count the no. of vowels and consonants

2. LEX to count the no. of characters, words, blanks and lines

3. LEX to count the no. of +ve and –ve integers

4. Lex Program to count the No of comment lines .

5. LEX to count the no. of printf and scanf statements replace by writef and readf

6. LEX count the no. of operators present and print them separately

7. LEX to recognize and count the no. of identifiers in a file

8. YACC program to test for the validity of simple expression

9. YACC, which recognizes nested-if control statements

10. YACC to recognize a valid arithmetic expression

11. YACC to recognize a valid variable which starts with the letter

12. YACC to evaluate an expression (simple calculator program +,-,*/)

13. YACC to recognize the grammar { anbn n>=0 }.

14. YACC program to recognize the grammar: { anb \n>=0 }.

MCA III Semester Course Diary (2011-12) MVJCE 29

JAVA PROGRAMMING LABORATORY

Sub Code : 10MCA37 I.A. Marks : 50 Hrs/Week : 03 Exam Hours : 03 Total Hrs : 42 Exam Marks : 50 1. a. Write a JAVA Program to demonstrate Constructor Overloading and Method overloading. b. Write a JAVA Program to implement Inner class and demonstrate its Access Protections. 2. a. Write a JAVA Program to demonstrate Inheritance. b. Write a JAVA Program to demonstrate Exception Handling (Using Nested try catch and finally). 3. Write a JAVA program which has

i. A Class called Account that creates account with 500Rs minimum balance, a deposit() method to deposit amount, a withdraw() method to withdraw amount and also throws LessBalanceException if an account holder tries to withdraw money which makes the balance become less than 500Rs.

ii. A Class called LessBalanceException which returns the statement that says withdraw amount (___Rs) is not valid.

iii. A Class which creates 2 accounts, both account deposit money and one account tries to withdraw more money which generates a LessBalanceException take appropriate action for the same.

4. Write a JAVA program using Synchronized Threads, which demonstrates Producer Consumer

concept. 5. Write a JAVA program which has

i. A Interface class for Stack Operations ii. A Class that implements the Stack Interface and creates a fixed length Stack. iii. A Class that implements the Stack Interface and creates a Dynamic length Stack. iv. A Class that uses both the above Stacks through Interface reference and does the Stack operations that demonstrates the runtime binding.

6. Write a JAVA program which has

i. 2 classes which initializes a String in its constructor ii. A Generic class with 2 type Parameters iii. Create a Generic Class reference for t he above 2 Class and try to print the message inside the

constructor (Use to string method). 7. Write JAVA programs which demonstrates utilities of LinkedList Class 8. Write a JAVA Program which uses FileInputStream / FileOutPutStream Classes. 9. Write a JAVA Program which writes a object to a file (use transient variable also). 10. Write a JAVA program which uses Datagram Socket for Client Server Communication. 11. Write JAVA Applet programs which handles MouseEvent

MCA III Semester Course Diary (2011-12) MVJCE 30

12. Write JAVA Applet programs which handles KeyBoardEvent 13. Write a JAVA program which implements RMI. 14. Write a Swing Application which uses

i. JTabbed Pane ii. Each Tab should use JPanel, which includes any one component given below in each Panel iii. ComboBox / List / Tree / Radiobutton

Note: All the above Components should Listen to any one of their respective events and print appropriate message.

MCA III Semester Course Diary (2011-12) MVJCE 31

MVJ COLLEGE OF ENGINEERING, BANGALORE – 67 DEPARTMENT OF MCA

LESSON PLAN

Subject Name: JAVA PROGRAMMING LABORATORY Sub Code: 10MCA37

Total No. of Hours: 42

Hour. No

Topics to be covered

1. a. Write a JAVA Program to demonstrate Constructor Overloading and Method overloading. b. Write a JAVA Program to implement Inner class and demonstrate its Access Protections. 2. a. Write a JAVA Program to demonstrate Inheritance. b. Write a JAVA Program to demonstrate Exception Handling (Using Nested try catch and finally). 3. Write a JAVA program which has

i. A Class called Account that creates account with 500Rs minimum balance, a deposit() method to deposit amount, a withdraw() method to withdraw amount and also throws LessBalanceException if an account holder tries to withdraw money which makes the balance become less than 500Rs.

ii. A Class called LessBalanceException which returns the statement that says withdraw amount (___Rs) is not valid.

iii. A Class which creates 2 accounts, both account deposit money and one account tries to withdraw more money which generates a LessBalanceException take appropriate action for the same.

4. Write a JAVA program using Synchronized Threads, which demonstrates Producer Consumer

concept. 5. Write a JAVA program which has

i. A Interface class for Stack Operations ii. A Class that implements the Stack Interface and creates a fixed length Stack. iii. A Class that implements the Stack Interface and creates a Dynamic length Stack. iv. A Class that uses both the above Stacks through Interface reference and does the Stack operations that demonstrates the runtime binding.

6. Write a JAVA program which has

i. 2 classes which initializes a String in its constructor ii. A Generic class with 2 type Parameters iii. Create a Generic Class reference for t he above 2 Class and try to print the message inside the

constructor (Use to string method). 7. Write JAVA programs which demonstrates utilities of LinkedList Class 8. Write a JAVA Program which uses FileInputStream / FileOutPutStream Classes. 9. Write a JAVA Program which writes a object to a file (use transient variable also). 10. Write a JAVA program which uses Datagram Socket for Client Server Communication. 11. Write JAVA Applet programs which handles MouseEvent

MCA III Semester Course Diary (2011-12) MVJCE 32

12. Write JAVA Applet programs which handles KeyBoardEvent 13. Write a JAVA program which implements RMI. 14. Write a Swing Application which uses

i. JTabbed Pane ii. Each Tab should use JPanel, which includes any one component given below in each Panel iii. ComboBox / List / Tree / Radiobutton

MCA III Semester Course Diary (2011-12) MVJCE 33

DBMS LABORATORY

Sub Code : 10MCA38 I.A. Marks : 50 Hrs/Week : 03 Exam Hours : 03 Total Hrs : 42 Exam Marks : 50

1. Consider the following relations: Student (snum: integer, sname: string, major: string, level: string, age: integer) Class (name: string, meets at: string, room: string, d: integer) Enrolled (snum: integer, cname: string) Faculty (fid: integer, fname: string, deptid: integer) The meaning of these relations is straightforward; for example, Enrolled has one record per student-class pair such that the student is enrolled in the class. Level is a two character code with 4 different values (example: Junior: JR etc) Write the following queries in SQL. No duplicates should be printed in any of the answers. i. Find the names of all Juniors (level = JR) who are enrolled in a class taught by Prof. Harshith ii. Find the names of all classes that either meet in room R128 or have five or more Students enrolled. iii. Find the names of all students who are enrolled in two classes that meet at the same time. iv. Find the names of faculty members who teach in every room in which some class is taught. v. Find the names of faculty members for whom the combined enrollment of the courses that they teach is less than five.

2. The following relations keep track of airline flight information: Flights (no: integer, from: string, to: string, distance: integer, Departs: time, arrives: time, price: real) Aircraft (aid: integer, aname: string, cruisingrange: integer) Certified (eid: integer, aid: integer) Employees (eid: integer, ename: string, salary: integer) Note that the Employees relation describes pilots and other kinds of employees as well; Every pilot is certified for some aircraft, and only pilots are certified to fly. Write each of the following queries in SQL. i. Find the names of aircraft such that all pilots certified to operate them have salaries more than Rs.80, 000. ii. For each pilot who is certified for more than three aircrafts, find the eid and the maximum cruisingrange of the aircraft for which she or he is certified. iii. Find the names of pilots whose salary is less than the price of the cheapest route from Bengaluru to Frankfurt. iv. For all aircraft with cruisingrange over 1000 Kms, .find the name of the aircraft and the average salary of all pilots certified for this aircraft. v. Find the names of pilots certified for some Boeing aircraft. vi. Find the aids of all aircraft that can be used on routes from Bengaluru to New Delhi.

3. Consider the following database of student enrollment in courses & books adopted for each course. STUDENT (regno: string, name: string, major: string, bdate:date) COURSE (course #:int, cname:string, dept:string) ENROLL ( regno:string, course#:int, sem:int, marks:int) BOOK _ ADOPTION (course# :int, sem:int, book-ISBN:int) TEXT (book-ISBN:int, book-title:string, publisher:string, author:string)

MCA III Semester Course Diary (2011-12) MVJCE 34

i. Create the above tables by properly specifying the primary keys and the foreign keys. ii. Enter at least five tuples for each relation. iii. Demonstrate how you add a new text book to the database and make this book be adopted by some department. iv. Produce a list of text books (include Course #, Book-ISBN, Book-title) in the alphabetical order for courses offered by the ‘CS’ department that use more than two books. v. List any department that has all its adopted books published by a specific publisher. vi. Generate suitable reports. vii. Create suitable front end for querying and displaying the results.

4. The following tables are maintained by a book dealer.

AUTHOR (author-id:int, name:string, city:string, country:string) PUBLISHER (publisher-id:int, name:string, city:string, country:string) CATALOG (book-id:int, title:string, author-id:int, publisher-id:int, category-id:int, year:int, price:int) CATEGORY (category-id:int, description:string) ORDER-DETAILS (order-no:int, book-id:int, quantity:int) i. Create the above tables by properly specifying the primary keys and the foreign keys. ii. Enter at least five tuples for each relation. iii. Give the details of the authors who have 2 or more books in the catalog and the price of the books is greater than the average price of the books in the catalog and the year of publication is after 2000. iv. Find the author of the book which has maximum sales. v. Demonstrate how you increase the price of books published by a specific publisher by 10%. vi. Generate suitable reports. vii. Create suitable front end for querying and displaying the results.

5. Consider the following database for a banking enterprise

BRANCH(branch-name:string, branch-city:string, assets:real) ACCOUNT(accno:int, branch-name:string, balance:real) DEPOSITOR(customer-name:string, accno:int) CUSTOMER(customer-name:string, customer-street:string, customer-city:string) LOAN(loan-number:int, branch-name:string, amount:real) BORROWER(customer-name:string, loan-number:int) i. Create the above tables by properly specifying the primary keys and the foreign keys ii. Enter at least five tuples for each relation iii. Find all the customers who have at least two accounts at the Main branch. iv. Find all the customers who have an account at all the branches located in a specific city. v. Demonstrate how you delete all account tuples at every branch located in a specific city. vi. Generate suitable reports. vii. Create suitable front end for querying and displaying the results. Instructions: 1. The exercises are to be solved in an RDBMS environment like Oracle or DB2. 2. Suitable tuples have to be entered so that queries are executed correctly. 3. Front end may be created using either VB or VAJ or any other similar tool. 4. The student need not create the front end in the examination. The results of the queries may be displayed directly. 5. Relevant queries other than the ones listed along with the exercises may also be asked in the examination. 6. Questions must be asked based on lots.

MCA III Semester Course Diary (2011-12) MVJCE 35

MVJ COLLEGE OF ENGINEERING, BANGALORE-67 DEPARTMENT OF MCA

LESSON PLAN

Subject Name: DBMS LABORATORY Subject Code: 10MCA38

Total No. of Hours: 42

Hour. No Topics to be covered

1-3. Consider the following relations: Student (snum: integer, sname: string, major: string, level: string, age: integer) Class (name: string, meets at: string, room: string, d: integer) Enrolled (snum: integer, cname: string) Faculty (fid: integer, fname: string, deptid: integer) The meaning of these relations is straightforward; for example, Enrolled has one record per student-class pair such that the student is enrolled in the class. Level is a two character code with 4 different values (example: Junior: JR etc) Write the following queries in SQL. No duplicates should be printed in any of the answers. i. Find the names of all Juniors (level = JR) who are enrolled in a class taught by Prof. Harshith ii. Find the names of all classes that either meet in room R128 or have five or more Students enrolled. iii. Find the names of all students who are enrolled in two classes that meet at the same time. iv. Find the names of faculty members who teach in every room in which some class is taught. v. Find the names of faculty members for whom the combined enrollment of the courses that they teach is less than five.

4-6. The following relations keep track of airline flight information:

Flights (no: integer, from: string, to: string, distance: integer, Departs: time, arrives: time, price: real) Aircraft (aid: integer, aname: string, cruisingrange: integer) Certified (eid: integer, aid: integer) Employees (eid: integer, ename: string, salary: integer) Note that the Employees relation describes pilots and other kinds of employees as well; Every pilot is certified for some aircraft, and only pilots are certified to fly. Write each of the following queries in SQL. i. Find the names of aircraft such that all pilots certified to operate them have salaries more than Rs.80, 000. ii. For each pilot who is certified for more than three aircrafts, find the eid and the maximum cruisingrange of the aircraft for which she or he is certified. iii. Find the names of pilots whose salary is less than the price of the cheapest route from Bengaluru to Frankfurt. iv. For all aircraft with cruisingrange over 1000 Kms, .find the name of the aircraft and the average salary of all pilots certified for this aircraft. v. Find the names of pilots certified for some Boeing aircraft. vi. Find the aids of all aircraft that can be used on routes from Bengaluru to New Delhi.

MCA III Semester Course Diary (2011-12) MVJCE 36

7-10. Consider the following database of student enrollment in courses & books adopted for each course.

STUDENT (regno: string, name: string, major: string, bdate:date) COURSE (course #:int, cname:string, dept:string) ENROLL ( regno:string, course#:int, sem:int, marks:int) BOOK _ ADOPTION (course# :int, sem:int, book-ISBN:int) TEXT (book-ISBN:int, book-title:string, publisher:string, author:string) i. Create the above tables by properly specifying the primary keys and the foreign keys. ii. Enter at least five tuples for each relation. iii. Demonstrate how you add a new text book to the database and make this book be adopted by some department. iv. Produce a list of text books (include Course #, Book-ISBN, Book-title) in the alphabetical order for courses offered by the ‘CS’ department that use more than two books. v. List any department that has all its adopted books published by a specific publisher. vi. Generate suitable reports. vii. Create suitable front end for querying and displaying the results.

11-12. The following tables are maintained by a book dealer.

AUTHOR (author-id:int, name:string, city:string, country:string) PUBLISHER (publisher-id:int, name:string, city:string, country:string) CATALOG (book-id:int, title:string, author-id:int, publisher-id:int, category-id:int, year:int, price:int) CATEGORY (category-id:int, description:string) ORDER-DETAILS (order-no:int, book-id:int, quantity:int) i. Create the above tables by properly specifying the primary keys and the foreign keys. ii. Enter at least five tuples for each relation. iii. Give the details of the authors who have 2 or more books in the catalog and the price of the books is greater than the average price of the books in the catalog and the year of publication is after 2000. iv. Find the author of the book which has maximum sales. v. Demonstrate how you increase the price of books published by a specific publisher by 10%. vi. Generate suitable reports. vii. Create suitable front end for querying and displaying the results.

13-14. Consider the following database for a banking enterprise

BRANCH(branch-name:string, branch-city:string, assets:real) ACCOUNT(accno:int, branch-name:string, balance:real) DEPOSITOR(customer-name:string, accno:int) CUSTOMER(customer-name:string, customer-street:string, customer-city:string) LOAN(loan-number:int, branch-name:string, amount:real) BORROWER(customer-name:string, loan-number:int) i. Create the above tables by properly specifying the primary keys and the foreign keys ii. Enter at least five tuples for each relation iii. Find all the customers who have at least two accounts at the Main branch. iv. Find all the customers who have an account at all the branches located in a specific city. v. Demonstrate how you delete all account tuples at every branch located in a specific city. vi. Generate suitable reports. vii. Create suitable front end for querying and displaying the results.