+ All Categories
Home > Documents > SETH JAI PARKASH MUKAND LAL INSTITUTE OF ENGINEERING ...

SETH JAI PARKASH MUKAND LAL INSTITUTE OF ENGINEERING ...

Date post: 18-Dec-2021
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
49
1 Fifth Semester SETH JAI PARKASH MUKAND LAL INSTITUTE OF ENGINEERING & TECHNOLOGY, RADAUR Student Hand Book Session: 2020-2021 Name………………………………………………. Roll No…..…………………………………… Department of Computer Science and Application (MCA Deptt.)
Transcript

1

Fifth Semester

SETH JAI PARKASH MUKAND LAL

INSTITUTE OF ENGINEERING &

TECHNOLOGY, RADAUR

Student Hand Book

Session: 2020-2021

Name……………………………………………….

Roll No…..……………………………………

Department of Computer Science and Application (MCA Deptt.)

2

EXAMINATION SCHEME FOR MASTER OF COMPUTER APPLICATIONS (MCA)

(SIX-SEMESTER PROGRAMME)

Semester – V

Paper

No.

Title of the Paper Duration

Of Exam

Maximum Marks Total

Theory Sessional*

MCA-14-51 Compiler Design 3 Hours 80 20 100

MCA-14-52 Advanced Web Technology 3 Hours 80 20 100

MCA-14-53 Linux And Shell Programming 3 Hours 80 20 100

MCA-14-54 Mobile Application

Development

3 Hours 80 20 100

MCA-14-55 Elective 3 Hours 80 20 100

MCA-14-56 S/W Lab–Ix Based On MCA-

14-52

3 Hours 100

MCA-14-57 S/W Lab–X Based On MCA-

14-53 And Mca-14-54

3 Hours 100

MCA-14-58 Seminar 20

Total 720

Elective Papers

(v) Cloud Computing

3

MCA-14-51 COMPILER DESIGN

Maximum marks: 100 (External: 80, Internal: 20) Time: 3 hours Note: Examiner will be required to set NINE questions in all. Question Number 1 will consist of objective

type/short-answer type questions covering the entire syllabus. In addition to question no. 1, the examiner is required

to set eight more questions selecting two from each unit. Student will be required to attempt FIVE questions in all.

Question Number 1 will be compulsory. In addition to compulsory question, student will have to attempt four more

questions selecting one question from each Unit. All questions will carry equal marks.

UNIT – I

Compilers and Translators, Need of Translators, Tools used for compilation, Structure and Phases of Compiler,

Single-Pass and Multi-Pass Compilers, Bootstrapping, Compiler Construction Tools. Bootstrap compilers, Phases of

Compilation process.

Lexical Analysis: Design, Finite Automata and Regular Expressions, LEX package on LINUX systems. Process of

Lexical Analysis, Recognition of Regular Expressions.

UNIT – II

Syntax-Directed Translation: Translation Schemes, Implementation, Postfix Notation, Parse Trees and Syntax Trees,

Three-address code and representations, Flow of Control. Building Symbol Tables, Data Structures for symbol table, representing scope information.

Run Time Storage Administration: Types of Storage Allocation Schemes, Implementation of Stack Allocation

Scheme and Implementation of Block Structured Languages.

Error Detection and Recovery: Errors, Lexical-Phase Errors, Syntactic Phase Errors, Semantic Errors.

UNIT – III

Parsing Techniques: Top down & Bottom-up parsing, Shift Reduce parsing, Operator Precedence parsing, Predictive

Parsers. Left Recursion and its removal, Recursive Descent parser, LR parsers, Canonical Collection of LR(0) and

LR(1) items, SLR parsing tables, Canonical LR parsing tables, LALR parsing tables, Parsing Ambiguous

Grammars, Implementation of LR parsing tables, LL(k) and LR(k) Parsers, YACC package on LINUX systems.

UNIT – IV

Intermediate Code Generation: Need, Issues in the design of a code generator, Intermediate languages, Quadruples,

Register Allocation and Assignment statement, peephole optimization.

Code Optimization: Principle sources of Optimization, optimization of basic blocks, Loop Optimizations, DAG

Representation of Basic Blocks, Loop Invariant Computation, Reducible Flow Graphs, Global Data Flow Analysis, code improving transformation.

Text Books

1. Alfred V Aho, “Principles of Compiler Design, Narosa Publishing House.

2. Jean Paul Tremblay and Sorenson, “The Theory and Practice of Compiler Writing”, McGraw Hill. Reference Books:

1. Dhamdhere D.M, System programming and operating system, McGraw Hill.

2. Beck L. Leland, System Software, Pearson Education.

3. Aho, Sethi, & Ullman, Compilers Principles, Techniques and Tools, Pearson Education.

1. 4. Fischer, “Crafting a compiler in C”, Pearson Education. Rogers, Procedural Elements of Computer Graphics, McGraw Hill.

2. Anirban Mukhopadhyay, Arup Chattopadhyay, Introduction to Computer Graphics and Multimedia, Vikas.

3. Zhigang Xiang, Roy Plastock, Computer Graphics, Tata McGraw Hill.

4

Lecture Plan

MCA-14-51

Lectures Topics

1. Overview of Compilers and Translators

2. Need of Translators, Analysis-synthesis model of translation

3. Tools used for compilation

4. Structure and Phases of Compiler 5. Single-Pass Compilers

6. Multi-Pass Compilers

7. Bootstrapping & Compiler Construction Tools

8. Bootstrap compilers, Phases of Compilation process. 9. Process of lexical analysis 10. FSA, DFA

11. NFA, Regular Expression

12. LEX, Formal Grammar

13. LEX package on LINUX systems 14. Recognition of Regular Expressions

15. Translation Schemes, Implementation

16. Postfix Notation

17. Parse Trees and Syntax Trees

18. Three-address code and representations

19. Flow of Control, Symbol Tables 20. Data Structures for symbol table, scope information

21. Types of Storage Allocation

22. Implementation of Stack Allocation Scheme

23. Implementation of Block Structured Languages.

24. Error Detection and Recovery: Errors

25. Lexical-Phase Errors, Syntactic Phase Errors, Semantic Errors. 26. Parsing Techniques Top down & Bottom-up parsing,

27. Shift Reduce parsing,

28. Operator Precedence parsing,

29. Predictive Parsers. Left Recursion and its removal,

30. Recursive Descent parser, LR parsers,

31. Canonical Collection of LR(0) and LR(1) items, 32. SLR parsing tables, Canonical LR parsing tables,

33. LALR parsing tables,

34. Parsing Ambiguous Grammars,

35. Implementation of LR parsing tables, LL(k) and LR(k) Parsers,

36. YACC package on LINUX systems. 37. Need, Issues in the design of a code generator

38. Intermediate languages

39. Quadruples

40. Register Allocation and Assignment statement, Peephole optimization.

42. Principle sources of Optimization, Optimization of basic blocks,

43. Loop Optimizations, DAG Representation of Basic Blocks, 44. Loop Invariant Computation, Reducible Flow Graphs,

45. Global Data Flow Analysis, code improving transformation.

5

TUTORIAL SHEET – 1

1. What is the role of translators?

2. Describe analysis and synthesis model of translation with the help of diagram.

3. What tools are used for compilers? Explain.

4. a) Discuss the design of a one-pass Compiler. Give an account of differences between one

pass and two pass compilation schemes.

b) What is Program Relocatibility? Explain linking for program overlays.

5. Write short note on:

a) Bootstrap Compilers

b) DFA

6. What do you understand by formal grammars? Explain

TUTORIAL SHEET – 2

1. Write short notes on the following:

c) Lexical and System analysis phase.

d) YACC and CFG.

2. a) Explain the functioning of the compiler during Lexical and Syntax analysis phases.

b) What are the problems with single pass assembler? Explain.

3. a) What do you understand by Regular Grammar? How the regular expression can be

recognized?

b) Describe Context Free Grammar. How can a Parse Tree be drawn?

4. i) What are the problems encountered by interactive debugger while working on

optimized code?

ii) Explain LR Parser with example.

6. a) Explain Analysis and synthesis model of translation with diagram.

b) What is lexical analysis? Explain.

TUTORIAL SHEET – 3

1. Write short notes on the following:

6

i) Top-Down parsing technique

ii) Symbol table and Parsing table

2. a) What do you mean by Parsing? Distinguish between Shift Reduce parsing and Operator

Precedence parsing techniques.

b) Describe LR parser with an example.

3. Write notes on the following:

i) Constructing SLR Parsing tables.

ii) Automatic Parser generator

iii) Bottom up Parsing technique.

4. Give an overview of the compilation process for the compilers?

5. Explain regular Grammar, finite automation & context free grammar.

TUTORIAL SHEET – 4

1. Write notes on the following

i) Intermediate language

ii) Quadruples

a) What is Local Code Optimization? Why its need arises?

b) What are intermediate languages? How can one generate intermediate code for a declarative

statement?

3. a) Give an example of potential cases of code optimization.

b) List the issues in the design of a Code generator.

4. What do you understand by recursive macro expansion?

5. Differentiate between SLR, CLR and LALR?

6. Explain the following:

a) Peehole optimization

b) YACC package on LINUX systems

MCA/D-18

COMPILER DESiGN

MCA- 14-51

J’otal Pages : 03

10136

Time : Three Hours] [Maximum darks : 80

Note : Attempt Five questions in all, selecting one qtiesl,ioB

trom each Unit. Q. NO. 1 IS Dompulsof)’. All questik n-s

c ' eqns rrlarks,

1. (a) What do you mean by high level language ?

(b) Write a regular ex:pression for a language over

(0, 1) which starts or end .with either 00 or 11.

(e) What are syntax and semantic errors ?

(d) Why left recursion is not good for parsers ?

(e) What do you mean by invariant in code ’?

2. What do you mean by a compiler ? Explain the phases a

program undergoes dv i ny, compilation using suitable

example.

3. (a) What do yoti mean by Finite automation ? How are

they used in lexical analysis phase ?

(2-50f9) L-10136

8

(h) Draw a FA for the •'anguage L = (w : w e (a, b)*

&& n w) % 3 - 0 && nd,(w) % 2 0}

4. (a) What do you mean by 3-address code representation

of a code ? Explain.

(b) What is a symbol table * Why is it used in a

program † Explain which kind of information is

stored in it.

5. What is a storage allocation scheme for programs ?

Explain the types of allocation mechanism usign suitable

examples.

Unit IH

6. (a) What is a Top-Down parser ? When a grammar is

ready to be parsect by it ? Explain using suitalile

cxample.

(b) What is ambiguity in grammars ? Which parser is

able to handle amL*iguity an‹i how ?

7. Yt hat is Shift-Reduce parser ? Explain the LR parsing

algorithm on the below grammar as input :

li —+ c + r, s -+ i; T —. T•r. T + F. v —› (n). F -+ id

8. Exqlain the fo1l‹›iving

(a) Regic<tei allocation

(b) Intermediate languages.

9. (a) fi’liat do you mean by code optimization ? Explain

machine-dependent and independent optimization

techmc ues.

(b) What do you mean by DAG blocks ? Why are they

used in code optimization ?

11

MCA-14-52 ADVANCED WEB TECHNOLOGY

Maximum marks: 100 (External: 80, Internal: 20) Time: 3 hours

Note: Examiner will be required to set NINE questions in all. Question Number 1 will consist of objective

type/short-answer type questions covering the entire syllabus. In addition to question no. 1, the examiner is required

to set eight more questions selecting two from each unit. Student will be required to attempt FIVE questions in all. Question Number 1 will be compulsory. In addition to compulsory question, student will have to attempt four more

questions selecting one question from each Unit. All questions will carry equal marks.

UNIT – I

Introduction: DNS caching and prefetching, CSS Expressions and performance, Buffering, Weblog. Search Engines: Searching techniques used by search engines, keywords, advertisements, Search Engine

Optimization (SEO) for individual web pages: header entries, selection of URL, SEO for entire website: Hyperlinks

and link structure, page rank of Google, robots,

Pitfalls in Optimization: optimization and testing, keyword density, duplicate contents, broken links, poor

readability, navigation styles; tools for optimization: etracking, Google analytics.

UNIT – II

PHP: Introduction, Variables, Data Types, Operators and Expressions, Control Flow; Functions; Code Blocks and

Browser Output, Objects, String Manipulation and Regular Expressions, Authentication with PHP, Interaction with File System and Server, Form processing, Session Management, cookies, generating dynamic contents with

MySQL.

UNIT – III

Advanced Development: Object oriented JavaScript, callbacks, closures, modules, AJAX, JQuery: Introduction,

Traversing and Working with DOM, Listening to DOM events, Styling. Angular.js: Introduction, Directives, Forms,

Services, MVC development.

UNIT – IV

Optimization: Optimizing images, Load balancers, Tuning MYSQL, query caching, query execution and

optimization, traffic generation.

Security: Introduction, Handling user access and user input, Bypassing client-side controls, Authentication, Session

management and Session hijacking, Attacks on data stores: SQL query log, SQL injections; Attacks on Users: XSS

attacks; Cross-site Request Forgery (CXRF), Dos and DDos attacks, DNS hijacking.

Reference Books:

1. Peter Smith, “Professional Website performance”, Wiley India Pvt. Ltd. 2. Deitel H.M., Deitel P.J., “Internet & World Wide Web: How to program”, Pearson Education. 3.Kogent Learning, “Web Technologies: HTML, JavaScript, PHP, Java, JSP, XML, AJAX – Black Book”,

Wiley India Pvt. Ltd.

4. Boronczyk, Naramore, “Beginning PHP, Apache, MySQL Web Development”, Wiley India Pvt.

LtdStuttard D., Pinto M., “The Web Application Hackers Handbook”, Wiley India Pvt.

12

Lectures Topics

Lecture Plan

MCA-14-52

1. DNS caching and prefetching

2. CSS Expressions and performance

3. Buffering, Weblog

4. Search Engines 5. Searching techniques used by search engines

6. Keywords, advertisements

7. Search Engine Optimization (SEO) for individual web pages

8. Header entries, selection of URL

9. SEO for entire website: Hyperlinks and link structure, page rank of Google

10. Robots 11. Optimization and testing, keyword density

12. Duplicate contents, broken links, poor readability

13. Navigation styles

14. Tools for optimization: etracking, Google analytics.

15. PHP: Introduction, Variables

16. Data Types, Operators and Expressions 17. Control Flow; Functions

18. Code Blocks and Browser Output

19. Objects, String Manipulation

20. Regular Expressions

21. Authentication with PHP 22. Interaction with File System and Server

23. Form processing, Session Management

24. Cookies

25. Generating dynamic contents with MySQL.

26. Object oriented JavaScript 27. Callbacks, closures 28. Modules

29. AJAX

30. JQuery: Introduction

31. Traversing and Working with DOM

32. Listening to DOM events, Styling

33. Angular.js: Introduction, Directives 34. Forms, Services

35. MVC development.

36. Optimizing images, Load balancers

37. Tuning MYSQL 38. Query execution and optimization 39. Traffic generation.

40. Security: Introduction, Handling user access and user input

41. Bypassing client-side controls, Authentication

42. Session management and Session hijacking

43. Attacks on data stores: SQL query log

44. SQL injections; Attacks on Users: XSS attacks 45. Cross-site Request Forgery (CXRF), Dos and DDos attacks

46. DNS hijacking

13

TUTORIAL SHEET 1

1. What is search engine optimization? Explain.

2. What is Web Engneering? Explain its characteristics with example. 3. Differentiate Web Application and Conventional Software.

4. What is Web Server? Explain its features with example.

5.i) Explain all the attributes of List tag? Write a HTML code to create a list with

subparts.

ii) Explain the difference between HTML and SGML.

iii) What is cookie? How can we create cookies?

TUTORIAL SHEET 2

1. Create a web page using form, list and table.

2. What are Client Side Programming and Server Side Programing.Give examples?

3. Explain: (i) Regular expression

(ii)Navigation styles

4. i) What is Style Sheet? Create a web page using Style Sheet.

ii) Explain Servlet Life cycle.

5. What is Session management? Explain.

TUTORIAL SHEET 3

1. Explain the following: (i) Cookies

(ii)Session

(iii)WWW

(iv)AJAX

2. Create a web page using Frames.

3. Explain all style properties of style sheet. 4. What is Web Browser? Explain its functions. 5 i) Explain Server Architecture.

ii) What are Cascading style sheets? What is their importance in HTML? Write CSS code for altering

format of a regular text.

TUTORIAL SHEET 4

1. What is MVC structure? Explain.

2. Explain

(i) Debugger

(ii) SGML (iii) DNS hijacking (iv) XSS and DDOS attacks

3. How can we generate dynamic contents using MYSQL?

4. Explain:

i) Virtual host

ii) Secure Servers

iii) SQL query log

5. Explain Object oriented java script with the help of an example.

6

’4

4

!14

16

17

18

MCA-14-53 LINUX AND SHELL PROGRAMMING

Maximum marks: 100 (External: 80, Internal: 20) Time: 3 hours

Note: Examiner will be required to set NINE questions in all. Question Number 1 will consist of objective

type/short-answer type questions covering the entire syllabus. In addition to question no. 1, the examiner is required

to set eight more questions selecting two from each unit. Student will be required to attempt FIVE questions in all.

Question Number 1 will be compulsory. In addition to compulsory question, student will have to attempt four more

questions selecting one question from each Unit. All questions will carry equal marks.

UNIT – I

Introduction: Basic features, architecture, distributions, Installation requirements; Kernel, Shell.

File System: boot block, super block, inode table, data blocks, accessing files, storage of files, standard directories,

system calls for files, file and disk related commands, hard disk partitions; System startup and shut down processes,

init and run levels, rc and init files.

UNIT – II

C language compiler, layout of C program in memory, process environment, kernel support, process images,

managing zombie and orphan processes, use of makefiles, dependency calculations, dynamic loader, debugging with

gdb.

UNIT – III

User Management: Adding new users and groups, super users, creating and mounting file systems. User management commands.

Security and Connections: viewing and changing the permissions and ownerships of files and directories, creating

networks, Signal generation and handling, Environment variables, Commands: man, ping, ifconfig, raise, alarm,

pause, abort etc.

UNIT – IV

Shell: meaning, types; connecting processes with pipes, tee, redirect input and output, background processes,

managing multiple processes, changing priority, scheduling of processes, at, batch and cron commands, process

related commands, filters.

Shell Programming: Introduction, shell programming in various shells, file name substitution, read command, operators, conditional statements, looping and case statements, expr statement, command line arguments, parameter

passing and arguments, associative arrays, string and mathematical functions, arrays and functions, libraries, shell

variables, shell programs to automate system tasks, interrupt processing, shell scripts for administrators, debugging

shell scripts.

Text Books:

1. Matthew Neil, Stones Richard, “Beginning Linux Programming”, 4th Ed., Wiley India Pvt. Ltd.

2. John Goerzen, “Linux Programming Bible”, IDG Books, New Delhi.

Reference Books:

1. Negus Christopher, “Linux Bible”, 8th Ed., Wiley India Pvt. Ltd. 2. Petersen Richard, “Linux: The Complete Reference”, 6th Ed., Tata Mcgraw Hill.

3. Venkateshmurthy M.G., “Introduction to Unix & Shell Programming”, Pearson Education.

19

Lectures Topics

Lecture Plan

MCA-14-53

1. Basic features ,Architecture

2. Distributions, Installation requirements

3. Kernel, Shell

4. File System: boot block, super block, inode table, data blocks 5. Accessing files, storage of files

6. Standard directories, system calls for files,

7. File and disk related commands,

8. System startup and shut down processes,

9. init and run levels, rc and init files.

10. C language compiler 11. Layout of C program in memory

12. Process environment, kernel support, process images

13. Managing zombie and orphan processes

14. Use of makefiles

15. Dependency calculations, dynamic loader

16. Debugging with gdb. 17. Adding new users and groups

18. Super users, creating and mounting file systems

19. User management commands.

20. Security and Connections

21. Viewing and changing the permissions and ownerships of files and directories 22. Creating networks

23. Signal generation and handling

24. Environment variables, man, ping

25. ifconfig, raise, alarm, pause, abort commands

26. Shell: meaning, types 27. Connecting processes with pipes, tee 28. Redirect input and output, background processes,

29. Managing multiple processes, changing priority,

30. Scheduling of processes, at, batch and cron commands, process related commands

31. Filters

32. Shell Programming introduction

33. Shell programming in various shells 34. File name substitution, read command,

35. Operators, conditional statements

36. Looping and case statements, expr statement,

37. Command line arguments, parameter passing and arguments 38. Associative arrays, string and mathematical functions 39. Arrays and functions, libraries, shell variables

40. Shell programs to automate system tasks

41. Interrupt processing, shell scripts for administrators

42. Debugging shell scripts.

20

TUTORIAL SHEET 1

1. a) Difference between Linux and UNIX. b) Explain various regular expressions in brief. c) Explain structure of file system in brief. d) Explain booting process in Linux. f) How new user can be added and current user can be removed in Linux by system administrator? g) Explain various optimization levels with C under Linux. h) What is inode entry structure? Explain with the help of a diagram.

2 a) Explain following commands in Linux:

b)

i) ls ii) cat iii) wc iv) pwd v) man

vi) who vii) bc viii) du.

Describe grep and sed filters in Linus with examples and all the possible options.

3 a) Name various Linus distributions along with architecture of Linux operating system. b) Explain following regular expressions in detail: (i) + (ii)? (iii) IRE (iv) TRE(v) * (vi) [] (vii) ^

4. a) Explain C-compiler provided & how it is used?

b) How we manage the projets in Linux? c) What are makefiles and dependency calculations?

5. i) What is memory management? Explain the concept of dynamic and static memory.

ii) What is gdb and how it is used?

iii) Explain network file and interrupt processing.

TUTORIAL SHEET 2

1. a) Discuss main features of Unix.How it differs from Linux?

b) Explain Types of shells?

c) How shell acts as command interpreter?

d) Discuss UNIX system organization and explain functions of kernel.

e) What is logging in and logging out?

2. i) What are the methods to change the permissions of a file? Explain.

ii) Explain shell variables and creation of common substitution.

iii) What are loops and functions in shell?

3. a) What are rc and init files? Explain the purpose.

b) Explain ifconfig, raise, alarm, pause, abort commands

4. What is file system in Linux? Discuss the standard file system. Explain various file system types in Linux.

How files can be mounted and unmounted in Linux?

5. a) How jobs can be controlled in Linux?

b) What do you understand by signals in Linux? How signals can be handled in Linux?

21

TUTORIAL SHEET 3

1. a) Discuss various shell operators in Linux.

b) Explain loops in shell in Linux.

2 a) Write a shell script to copy multiple files without overwriting.

b) How super user status can be acquired? Also discuss various privileges given to administrator.

3. i) Explain authentication and password administration?

ii) What are privileges?

iv) Explain shell programming and how it is different from other programming?

4. Write short note on

a) Initialization of process

b) Debugging with gdb

c) Scripts in shell programming

5. Write short note on

a) Scripts in shell programming

b) Debugging gdb

c) C-compiler options

TUTORIAL SHEET 4

1. What do you understand by make file? How projects can be handled using make file? Design a make file

with the help of dependency calculators. Explain with the help of examples.

2. a) How debugging can be done with gdb? Explain.

b) How static and dynamic libraries can be built and used?

3. i) What are regular expressions?

ii) What is grep, egrep, fgrep? Discuss with examples.

4. a) What are wildchars? What is pattern matching and syntax in regular expression?

b) What are character classes?

5. Explain the following in C-environment

a) C-compiler vs editor

b) Memory management

c) Managing projects

d) Using static and dynamic libraries

23

24

25

26

MCA-14-54 MOBILE APPLICATION DEVELOPMENT

Maximum marks: 100 (External: 80, Internal: 20) Time: 3 hours

Note: Examiner will be required to set NINE questions in all. Question Number 1 will consist of objective

type/short-answer type questions covering the entire syllabus. In addition to question no. 1, the examiner is required to set eight more questions selecting two from each unit. Student will be required to attempt FIVE questions in all.

Question Number 1 will be compulsory. In addition to compulsory question, student will have to attempt four more

questions selecting one question from each Unit. All questions will carry equal marks.

UNIT – I

Introduction: Mobile Applications, Characteristics and Benefits, Application Model, Infrastructure and Managing

Resources, Mobile Software Engineering, Frameworks and Tools, Mobile devices Profiles.

Application Design: Memory Management, Design patterns for limited memory, Work flow for Application

Development, Techniques for composing Applications, Dynamic Linking, Plug-ins and rules of thumb for using

DLLs, Concurrency and Resource Management.

Development: Intents and Services, Storing and Retrieving data, Communication via the Web, Notification and

Alarms, Graphics and Multimedia, Telephony, Location based services, Packaging and Deployment, Security and

Hacking

UNIT-II

Google Android: Introduction, JDK & ADK, Android Application Architecture, Traditional Programming Model and Android, Activities, Intents, Tasks, Services; Runtime Environment for Applications, Callbacks and Override in

application, Concurrency, Serialization, Application Signing, Publishing your application, API keys for Google

Maps.

Android Framework: GUI and MVC Architecture, Fragments and Multi-platform development, Creating Widgets:

Layouts, Canvas Drawing, Shadows, Gradients; Applications with multiple screens; Handling database in Android:

Android Database class, Using the Database API.

UNIT-III

Android Applications: Working with Eclipse and Android, Various life cycles for applications, Building a User

Interface: Blank UI, Folding and Unfolding a scalable UI, Making Activity, Fragment, Multiple layouts; Content

Provider, Location and Mapping: location based services, Mapping, Google Maps activity, Working with MapView

and MapActivity; Playing and Recording of Audio and Video in application; Sensors and Near Field

Communication; Native libraries and headers, Building client server applications.

UNIT-IV

Other Platforms: Apple iPhone Platform, Introduction to iPhone OS and iOS, UI tool kit interfaces, Event handling

and Graphics services, Layer Animation.

Cross-platform development: Introduction to QT, Platforms supported by QT, Modules and Tools of QT,

Introduction to Unity engine for game development.

Reference Books:

1. Zigurd Mednieks, Laird Dornin, G,Blake Meike and Masumi Nakamura “Programming Android”, O’Reilly

Publications.

2. Wei-Meng Lee, “Beginning iPhone SDK Progrmming with Objective-C”, Wiley India Ltd.

3. James C.S. “Android Application development”, CENGAGE Learning.

4. Gargenta M., Nakamura M., “Learning Android”, O’Reilly Publications.

27

Lecture Plan

MCA-14-54

Lectures Topics

1. Mobile Applications, Characteristics and Benefits 2. Application Model, Infrastructure and Managing Resources 3. Mobile Software Engineering

4. Frameworks and Tools

5. Mobile devices Profiles.

6. Application Design: Memory Management

7. Design patterns for limited memory

8. Work flow for Application Development 9. Techniques for composing Applications

10. Dynamic Linking, Plug-ins and rules of thumb for using DLLs

11. Concurrency and Resource Management.

12. Development: Intents and Services Storing and Retrieving data

13. Communication via the Web

14. Notification and Alarms, Graphics and Multimedia 15. Telephony, Location based services

16. Packaging and Deployment, Security and Hacking

17. Google Android: Introduction, JDK & ADK

18. Android Application Architecture

19. Traditional Programming Model and Android, Activities 20. Intents, Tasks, Services

21. Runtime Environment for Applications

22. Callbacks and Override in application, Concurrency

23. Serialization, Application Signing

24. Publishing your application, API keys for Google Maps.

25. Android Framework: GUI and MVC Architecture 26. Fragments and Multi-platform development

27. Creating Widgets: Layouts, Canvas Drawing

28. Shadows, Gradients; Applications with multiple screens

29. Handling database in Android: Android Database class, Using the Database API.

30. Android Applications: Working with Eclipse and Android

31. Various life cycles for applications 32. Building a User Interface: Blank UI, Folding and Unfolding a scalable UI

33. Making Activity, Fragment

34. Multiple layouts, Content Provider

35. Location based services, Mapping, Google Maps activity

36. Working with MapView and MapActivity

37. Playing and Recording of Audio and Video in application 38. Sensors and Near Field Communication

39. Native libraries and headers, Building client server applications.

40. Apple iPhone Platform

41. Introduction to iPhone OS and iOS 42. UI tool kit interfaces 43. Event handling and Graphics services, Layer Animation.

44. Introduction to QT, Platforms supported by QT

45. Modules and Tools of QT

46. Introduction to Unity engine for game development.

28

Tutorial Sheet-1

1. Distinguish between the following concept :

(a) JDK and ADK

(b) intents, tasks and services of Mobile app

2. What are Mobile applications? Explain their characteristics and benefits.

3. Explain the application model with the help of suitable diagram.

4. Explain framework and various tools of mobile app.

Tutorial Sheet -2

1. Explain Android Application Architecture.

2. How Traditional Programming Model is different from Android.

3. Explain Activity Life Cycle.

4. Define the process of Application Signing.

5. Explain the concept of concurrency and serialization.

Tutorial Sheet -3

1. What is a Google Maps API key?

2. Explain Android GUI architecture.

3. What are the fragments? Explain fragment life cycle. How they achieve multiplatform support.

4. Canvas Drawing

5. Explain SQL and Database centric data model for Android applications.

Tutorial Sheet -4

1. What is the function of Database API?

2. What are the various life cycles for applications?

3. What are the content providers? Explain the process of writing and integrating a content provider.

4. How sensors and near field communication takes place.

5. How can we make applications with multiple screens?

Tutorial Sheet -5

1. What is Media Store in Android?

2. How Audio and Video recording takes place in Android?

3. Explain the process of Audio and Video playback.

4. How mobile phones provide Location based Services.

5. Explain Map View and Map Activity.

Roll No. ....... ................. Total Pages : 03

MCA/D-18 10139

MOBILE APPLICATION DEVELOPMENT

MCA-14-54

Time : Three Hours] Maximum Marks .: 80

Note : Attempt five questions in all, selecting at least One

question from each Unit. Q. No. 1 is compulmry.

1. (a)

(b)

tc)

.(d)

(e)

(#

(g)

#)

What is the lmobile applications model 7

Name the various security threats in a mobile

application.

Name the different variants of android,

now can database be connected to android ?

What are the things that should be kept in mind

while designing a UI ?

What .is meant by near field communication 7

What is the basic difference between android and

apple iPhone platform ?

Comment on the purpose of Unity. 8>2=16

P.T.O.

2. (a)

(b)

3. (a)

Q)

4. (a)

(b)

y. (a)

G10139

Discuss, the various types frameworks for mobile

applications. 8

What is meant by plug-ins ? How .these can be

added and used in mobile application † 8

What is meant by concurrency † How are .resources

:managed in a concurrent environment ? 8

How can a mobile application use and interact with

Web based services 1† 8

Differentiate between traditional programming and

android programming using suitable examples. 8

What are the various activities and intents that can

be added to .google android applications 7 Explain.

8

How can you create widges in antlroid * Explain

using a suitable example. 8

What are tire various APIs for database ? How

these can :be used by android ? 8

2

Unit III

6. What are the various locations based sew ices in andic›id

How' can you perform geoglc map activities ID dr

application ? Explain in detail. 16

7. How’ can you build client server applications in andrr› id ' '

Explain using suitables, I ñ

Unit IV

8. (a) A'ritc show note on I OS.

(b) Llov' event handling is done in iPiit ries " s

9. What is QT '? Explain the vaTious platforms supprotecl !•

QT along with x’arious tool› o1‘ QT. l I›

29

MCA-14-55 CLOUD COMPUTING

Maximum marks: 100 (External: 80, Internal: 20) Time: 3 hours

Note: Examiner will be required to set NINE questions in all. Question Number 1 will consist of objective

type/short-answer type questions covering the entire syllabus. In addition to question no. 1, the examiner is required

to set eight more questions selecting two from each unit. Student will be required to attempt FIVE questions in all. Question Number 1 will be compulsory. In addition to compulsory question, student will have to attempt four more

questions selecting one question from each Unit. All questions will carry equal marks.

UNIT – I

Cloud Computing: Definition, Roots of Clouds, Characteristics, Cloud Architecture – Public, Private, Hybrid,

Community, Advantages & Disadvantages of Cloud Computing.

Virtualization: Benefits & Drawbacks of Virtualization, Virtualization Types – Operating System Virtualization,

Platform Virtualization, Storage Virtualization, Network Virtualization, Application Virtualization, Virtualization

Technologies.

UNIT – II

Cloud Services & Platforms: Compute services, Storage services Database services, Application Services, Queuing

services, E-mail services, Notification services, Media services, Content delivery services, Analytics services,

Deployment & management services, Identity & access management services. Case studies of these services.

Federated & Multimedia Cloud Computing: Architecture, Features of Federation Types, Federation Scenarios,

Layers Enhancement of Federation; Multimedia Cloud.

UNIT – III

Python: Introduction, Installation, Data types: Numbers, Lists, Tuples, Sets, Dictionaries, Files; Input/Output

Statements, Control Flow statements, Functions and Variables, Object-Oriented Programming: State, Class, Object,

Relationship.

UNIT – IV

Python in Cloud Computing: Iterators & Generators, Functional programming: Recursion, Higher Order Functions;

Python for Google Cloud Platform and Windows Azure Platform; Packages: JSON, SMTPLib, NumPy, PiCloud,

Django; Cloud Application Development in Python.

Text Books:

1. Arshdeep Bahga, Vijay Madisetti, “Cloud Computing – A Hands-on Approach”, University Press, 2014

2. Rajkumar Buyya, James Broberg, Andrzej Goscinski, “Cloud Computing – Principles and Paradigms”, Wiley

India Pvt. Ltd.

3. Mark Lutz, “Learning Python”, O’Reilly Publications.

Reference Books:

1. Barrie Sosinsky, “Cloud Computing Bible”, Wiley India Pvt. Ltd. Jean Paul Tremblay and Sorenson

The Theory and Practice of Compiler Writing, McGraw Hill.

2. Donovan J. John, System Programming, Tata McGraw Hill.

30

Lecture Plan

MCA-14-55

Lectures Topics

1. Cloud Computing: Definition, Roots of Clouds

2. Characteristics, Cloud Architecture – Public, Private, Hybrid

3. Community, Advantages & Disadvantages of Cloud Computing. 4. Virtualization: Benefits & Drawbacks of Virtualization

5. Virtualization Types – Operating System Virtualization

6. Platform Virtualization, Storage Virtualization

7. Network Virtualization, Application Virtualization

8. Virtualization Technologies. 9. Cloud Services & Platforms: Compute services 10. Storage services Database services

11. Application Services, Queuing services

12. E-mail services, Notification services

13. Media services, Content delivery services

14. Analytics services, Deployment & management services

15. Identity & access management services 16. Case studies of these services.

17. Federated & Multimedia Cloud Computing: Architecture

18. Features of Federation Types, Federation Scenarios

19. Layers Enhancement of Federation

20. Multimedia Cloud. 21. Python: Introduction

22. Installation

23. Data types: Numbers, Lists, Tuples

24. Sets, Dictionaries, Files

25. Input/Output Statements 26. Control Flow statements 27. Functions and Variables

28. Object-Oriented Programming: State, Class

29. Object, Relationship.

30. Python in Cloud Computing

31. Iterators & Generators

32. Functional programming: Recursion 33. Higher Order Functions

34. Python for Google Cloud Platform

35. Python for Windows Azure Platform

36. Packages: JSON

37. SMTPLib, NumPy

38. PiCloud, Django 39. Cloud Application Development in Python

40. -----------Do-------------

31

TUTORIAL SHEET 1

1. What are the roots of clouds and its characteristics.

2. Explain cloud architecture

3. Virtualization: Benefits & Drawbacks of Virtualization

4. Explain Platform Virtualization, Storage Virtualization, Network Virtualization.

TUTORIAL SHEET 2

1. What are Compute services, Storage services Database services, Application Services.

2. Explain Federated & Multimedia Cloud Computing Architecture?

3. What is Federation Scenarios? Explain Layers Enhancement of Federation.

4. Explain Multimedia Cloud.

TUTORIAL SHEET 3

1. Give Introduction and steps of Python Installation.

2. What is Function in Python?

3. Explain State, Class, Object, Relationship in terms of Object-Oriented Programming

TUTORIAL SHEET 4

1. How Python is implemented in cloud computing.

2. Explain Python for Google Cloud Platform

3. Explain Cloud Application Development in Python.

35

36

37

38

MCA-14-56

Software Laboratory X (Based on MCA-14-52)

Advanced Web Technology

Create a design for the 3 websites according to prescribed design.

Portal 1

39

Portal 2

40

Portal 3

Implement the following PHP + MySQL programs to develop the above applications.

1. Create a form for new user (signup form) registration and validate the form using J-Query and display error

messages.

41

2. Create a login form for administrator and other users (Like buyer, supplier, and customer) with proper

validation and forgot password provision.

3. Implement search option to search the website content.

4. Using SESSION management technique implement the HIT Counter.

5. To store current date-time in a COOKIE and display the “Last visited on date-time on the web page

upon reopening of the same page.

Implement the following for Portal 1 (I-Shop)

Create MySQL database to store all the products form different suppliers under different

categories (Like i-Phone, i-Pad, i-Pod, Mac-book, Mac Desktop computers and accessories etc.)

a) Develop admin panel to store the products under various categories.

b) Write code to view all the products form different suppliers.

Apply role based security using SESSION management techniques and manage the users

according to the following rule:

a) There is an admin of the site that can view all the users logged in. When a user remains idle up to

5 minutes after login, it will show him as an Offline user.

b) Assign the rights of opening web page according to role as following:

Customer: User can only view the products from different suppliers.

Buyer: Buyer can buy different products from different suppliers. (Implement shopping cart

application)

Supplier: Supplier can view/edit only his own products.

Administrator: Administrator can allow/edit different users and suppliers.

Implement the following for Portal II (The Place)

Create MySQL database to store all the hotel packages for different places from different

hotels/venders under different categories (Silver Package, Golden Package, Premium Package

etc.)

c) Develop admin panel to store the hotel packages under various categories.

d) Write code to view all the hotel packages from different venders.

Apply role based security using SESSION management techniques and manage the users

according to the following rule:

c) There is an admin of the site that can view all the users logged in. When a user remains idle up to

5 minutes after login, it will show him as an Offline user.

42

d) Assign the rights of opening web page according to role as following:

Customer: User can only view the hotel packages from different venders.

Buyer: Buyer can buy different packages from different venders. (Implement shopping cart

application)

Vender: Vender can view/edit only his own Packages/Places/Plans.

Administrator: Administrator can allow/edit different Buyers and venders.

Implement the following for Portal III (Job Listing)

Create MySQL database to store all the jobs form different employers under different categories

(Engineering, Teaching, Office, Manpower etc.)

e) Develop admin panel to store the jobs under various categories.

f) Write code to view all the current openings form different employers.

Apply role based security using SESSION management techniques and manage the users

according to the following rule:

e) There is an admin of the site that can view all the users logged in. When a user remains idle up to

5 minutes after login, it will show him as an Offline user.

f) Assign the rights of opening web page according to role as following:

User: User can only view the jobs posted by different employers. suppliers.

Jobseeker: Registered jobseeker can buy different membership plans from different consultants.

(Implement shopping cart application)

Employers: Employers can insert/edit/view his own information.

Administrator: Administrator can allow/edit different jobseeker and employers.

43

MCA-14-57

Software Laboratory X (Based on MCA-14-53)

Linux & Shell Programming

1. Write a simple shell program to print:

1. Current date, usemame and current directory

2. List all the files in the current directory beginning with a’

3. Print contains of file from given line number to next given number of lines

Write a shell program to display pay-slip of an employee with ssn for following if:

a) Bp>25000, bra 10%, da = 90%, ta = 8%

b) Bp>10000&<25000, bra = 8%, da = 80%, ta = 7%

c) 13p<l0000, bra = 6%, da 60%, ta = 5%

2. Shell Script Program to perform all Arithmetic operations on integers.

3. Shell Script program to findArea of Square, Rectangle, Circle

5. Write shell script to show various system configuration like

1) Currently logged user and his log name

2) Your current shell

3) Your current shell

4) Your operating system type 5) Your current path setting

6) Your current working directory

7) Show Currently logged number of users

8) About your os and version, release number, kernel version

9) Show all available shells

10) Show mouse settings

11) Show computer CPU information like processor type, sped etc

12) Show memory information

13) Show hard disk information like size of hard-disk, cache memory, model etc.

14) File system (Mounted)

6. Shell Script Program to fmd whether number is +ve, -ye or 0

7. Script to use a command from the given Menu:

1. Displays a long listing of files

2. Displays long listing of files including hidden files

3. Delete files from the directory

4. Copy contents of one file to another

5. Count number of files in a Directory

6. Merge one file to another and display the contents of file.

8. Shell Script Program to print natural numbers from ito 10using WHILE loop.

9. Shell Script Program to print multiplication table of any number using FOR loop.

10. Shell Script Program to print Employee Payroll

11. Shell script program to accept a character and check whether it is an

1. Lower case alphabet

2. Upper case alphabet

3. A digit

44

4. Special Symbol

5. Vowel

Using case control structure

12. Shell Script Program to count number of odd and digits within a given number

13. Using case esac structure

• Find the number of users logged into the system Print the

calendar for current year

• Print the date

14. Shell Script Program to perform all Arithmetic Operations using Command line

Arguments

15. Shell Script Program to check whether given file is a directory or not

16. Write a program inc to implement:

1. Selection sort

2. Bubble sort

3. Binary Search

I7 . Shell Script Program to search whether element is present is in the list or not

18. Shell script Program to implement read, write. execute permissions 19. Write an awk script :

a) Which takes name, age, class of the student as input

b) Print the record of student data file c) Search the record of the student

20. Shell Script Program for the following : a)FCFS Algorithm

b) SJF Algorithm c) Priority Scheduling

21. Shell script Program for the following :

a)To see currently running Process

b) To stop any process by PID i'e' to kill process

c) To stop processes by name i'e' to kill process

d) To get information about all running process e)To stop all process except your shell

f) To display the owner of the process along with the processes g) To see if a particular process is running or not' h) To see currently running processes and other information like memory and CPU usage we

realtime updates

i) To display a tree of Processes

22. Script to convert JPEG images to PNG images, where the image names are provided on the command

line possibly via wildcards instead of each being listed within the script.

23. Shell script to find out all the files under a directory and its subdirectories' This takes not

consideration only those files or directories which do not have spaces or New lines in their name'

45

24. Write a shell to search for a pattern from a file, in the pattern and file name should be supplied by a

user.

25. Implements ed commands.

26. Write script to demonstrate the use of Grep with Regular Expression and files 27 . Menu driven shell script to listing files, present working directory process running, display

current system date 28'Program to find which users log in and at what time using grep

29. Implement c files using make files : . create a file hellofunc.c that defines a function my PrintHelloMake Q which takes Prints

student record

. create a file hellomake.c which calls a function myPrintHelloMakeQ defined in hellofunc.c which takes as input student name, age, class and pass these as arguments'

. hellomake.h declare the function void myPrintHelloMake Q

46

MCA-14-57

Software Laboratory X (Based on MCA-14-54)

Mobile Application Development

1. Create an App to convert the temperature into Degree and Fahrenheit

Clicking on the button (Celsius or Fahrenheit) generate the temperature value in

corresponding unit while clearing the information in other output text view.

2. Develop a calculator App :

3. Create an app for maintaining phone contacts “MY CONTACTS”

Step1: design the layout as shown below

Step2: maintain a small database of contacts using “SQL-Lite”; to store and search the contacts.

To Search a contact, type name in a text box.

In update contact the already stored information will be visible to the user in the text boxes

“Enter your name” or “phone number” instead of default text.

47

4. Create an application for the “Life Insurance Corporation (LIC) of India” having following

menus:

HOME – Information about LIC

PRODUCTS- Insurance plans, Endowment Plans, Money Back Plans, Term

Assurance Plans, and Health Plans etc.

Group Schemes – information about various group schemes

Customer Services – SMS Enquiry, Tax benefit, Policy guidelines, Phone

Helpline, Policy Status etc.

Premium Payment – Payment at cash counter, Payment through alternate channels.

5. Create an application to check the “University Results”, the results are maintained on the server.

Step 1: Layout of the application shown below:

Step 2: Create the database with the fields as shown

below: Step 3: Populate the database and then fetch the

results.

48

6. Create a Messenger Application “MY CIRCLE” , for Chat, Call and E-mail facility:

When you press on the E-mail tab, the list of contacts will be displayed; select the

contact to send the e-mail. Similarly select for call and chat.

Add to my circle should add a new contact with name, phone number and e-mail-id.

7. Create a GPS Vehicle tracking app “My Way”

1) App should track the current location of the vehicle.

2) View your location history by going back to a specific day and time.

3) Set boundaries (Geo-Fences) which send an alert when crossed into or out of.

4) Find out the speed of the Vehicle.

5) Set a speed limit which sends an alert when broken.

49

8. Create an application for the “Online Shopping”

Step 1: Design the layout for the online shopping point

Step 2: Create a Database to store the products with their features like price,

category etc. Step 3: Apply filters to sort the items according to price, brand and

color etc.

50

9. Develop a Gaming Application: In this game the player collects the coins by jumping

and makes score. The app should have

High score page

Volume Control Page

51

TIME – TABLE

DAY I II III IV V VI VII

MONDAY

TUESDAY

WEDNESDAY

THURSDAY

FRIDAY

SATURDAY


Recommended