M. S. RAMAIAH INSTITUTE OF TECHNOLOGY BANGALORE (Autonomous Institute, Affiliated to VTU)

SYLLABUS Outcome Based Education Curricula (For the Academic year 2014 – 2016)

Computer Science Engineering Postgraduate Program in Computer Science and Engineering

Program Educational Objectives (M. Tech) An M.Tech (Computer Science & Engineering) graduate of M S Ramaiah Institute of Technology should, within three to five years of graduation

PEO.1 Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur PEO.2 Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing doctoral studies and engage in research and inquiry leading to new innovations and products PEO.3 Be able to work effectively in multidisciplinary and multicultural environments and Be responsible members and leaders of their communities PEO.4 Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large

These objectives can be demonstrated by performance, actions, or achievements.

PEO1. Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur  Gainful employment in a reputed organization or University  Promotions achieved during the employment period  Utilization of the technical skill-set in professional activities  Participating in client-based definition of scope and constructability  Producing lucid documents such as technical reports, white papers, proposals, etc.  Make presentations or reports to colleagues/clients  Using data-driven balanced decision making to analyze engineering and business trade-offs  Formulating and delivering a product/process

PEO2. Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing graduate studies and engage in research and inquiry leading to new innovations and products  Acceptance by, satisfactory progress in, or successful completion of a doctoral program in a reputed institute/university  Learning a new skill, tool, or system independently  Attending a technical conference/symposium/workshop/tutorial  Membership of professional bodies  Publishing refereed paper in conference/journal  Publishing/ Reviewing books, book chapters, conference or journal papers  Delivering guest lectures, seminars and tutorials in Conferences  Working with Industry on research and innovations.  Applying for a patent or making a useful invention  Accounting for larger societal, ethical, legal, business, and technical context while making decisions on a project  Utilize the existing knowledge in varied applications 2 PEO3. Be able to work effectively in multidisciplinary and multicultural environments and be responsible members and leaders of their communities  Working across teams consisting of people from diverse disciplines, cultures and nationalities  Use tools for collaboration such as teleconferencing, video conferencing, etc.  Communicate effectively with clients/team members  Make appropriate decisions regarding delegation of work, allocation of resources (time, man power, and hardware and software assets) and responsibilities.  Anticipate and resolve problems and coordinate the work within a team  Mentoring a new hire  Become a team leader for a project  Election or appointment to leadership position in a professional society  Organizing/ Chairing Conferences, symposiums, workshops at National/ International Levels PEO4. Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large  Identify the civic, environmental, homeland security, healthcare needs of the community and contribute by applying Computer Science & Engineering to create services, processes and products.  Participation and leadership in competitive activities like team sports, quiz, debates, etc.  Participation and leadership in community outreach activities as in cultural events, civic actions, health initiatives.

Program Outcomes (M.Tech.) An M.Tech. (Computer Science & Engineering) graduate must demonstrate PO (1) An ability to apply knowledge of mathematics, science, and engineering as it applies to Computer Science & Engineering PO (2) An ability to design and conduct experiments, as well as to analyze and interpret data PO (3) An ability to design a system, component, or process to meet the desired needs subject to feasibility and sustainability PO (4) An ability to function on multi-disciplinary teams PO (5) An ability to identify, formulate, and solve computer science & engineering problems PO (6) An understanding of professional and ethical responsibility PO (7) An ability to communicate effectively PO (8) An understanding of the impact of computer engineering on economic, social and environmental aspects PO (9) A recognition of the need for, and an ability to engage in life-long learning PO (10)A knowledge of contemporary issues PO (11)An ability to use the techniques, skills, and modern engineering tools necessary for computer engineering practice PO (12)An ability to apply design and development principles of software and/or hardware systems of varying complexity PO (13)An understanding of the need for information and network security

3 Mapping of POs with PEOs

Program Program Educational Objectives Outcomes PEO1 PEO2 PEO3 PEO4 PO (1) S S S M PO (2) S M S M PO (3) S M S M PO (4) S M M S PO (5) M S S M PO (6) S S S S PO (7) M S S S PO (8) S M S S PO (9) M S S S PO (10) S M S S PO (11) S S S M PO (12) S M S M PO (13) S S S S

Table 1: Relationships between Program Educational Objectives and Program Outcomes Key: S – Strong Relationship; M – Moderate Relationship

4 Mapping of Courses Contributing to PO Attainment

Programme Outcomes

Sl. Course Core Courses PO PO PO PO PO PO PO PO PO PO PO PO PO No. Codes

1 2 3 4 5 6 7 8 9 10 11 12 13

MCSE 121 Advances in X X X X X 1. Operating Systems

MCSE 122 Computer X X X X X X X X X X 2. Networks Engineering

MCSE 123 Random Variables, X X X X X X X X X X 3. Stochastic Processes and Queuing Theory

MCSE 124 Topics in X X X X X X X X X X X 4. Software Engineering

MCSE S01 Seminar  X X X X X X X X

MCSE 125 Software X X X X X X X X 5. Development for Portable Devices

MCSE 126 Network X X X X X X X X 6. Programming Lab

MCSE 221 Advances in X X X X X X X 7. Computer Architecture

MCSE 222 Embedded X X X X X X X X 8. System Design

MCSE 223 Formal Models in X X X X X X X X 9. Computer Science

MCSE S02 Seminar X X X X X X X X 10.

MCSE 224 Embedded X X X X X X X X X X 11. Systems Laboratory 5 MCSE 225 High performance X X X X 12. Computing Laboratory

MCSE 311 Industrial X X X X X X X X X X X X X 13. Training and Seminar*

MCSE 312 Project Phase I X X X X X X X X X X X X X 14.

MCSE 313 Big Data and X X X X X X X X X X 15. Data Science Laboratory

MCSE S03 Seminar x X X X X X X X X 16.

MCSE 401 Project Phase II X X X X X X X X X X X X X 17.

Computer Systems MCSE E11 X X X X X X X X X X X X X 18. Performance Analysis

Advances in X X X X X X X X X 19. MCSE E13 Artificial Intelligence

Fault Tolerant MCSE E14 20. Systems

Digital Image MCSE E15 21. Processing

Advances in MCSE E17 22. Compiler Design

Data Structures MCSE E18 23. & Algorithms

Stochastic MCSE E20 24. Process

Advanced MCSE E21 25. Algorithms

Web MCSE E26 X X X X X X X X X X X X 26. Technologies

Multimedia MCSE E28 27. Communications

6 Software MCSE E32 28. Architecture

X X X X X X X X 29. MCSE E30 Cloud Computing

VLSI Design and MCSE E37 30. Algorithms

Metrics and Models in MCSE E33 31. Software Quality Engineering

Information MCSE E34 X X X X X X X X X X X X X 32. Security

X X X X X 33. MCSE E35 Soft Computing

Analysis of 34. MCSE E38 Computer Networks

Wireless and 35. MCSE E41 Cellular Networks

GPU X X X X X X X X X 36. MCSE E43 Programming using CUDA

MCSE E Big Data and X X X X X X X X X X 37. Data Science

Advances in X X X X X 38. MCSE E42 Storage Area Networks

Information MCSE E44 X X X X X X X X X X X 39. Retrieval

Topics in MCSE E 45 40. Software Testing

7 M S Ramaiah Institute of Technology (Autonomous Institute, Affiliated to VTU) Department of Computer Science and Engineering Revised Scheme of Studies of Master of Technology in Computer Science and Engineering (2014-16)

Core Courses Electives Project Work Seminar Industrial Training Practical Total 28 21 33 04 07 07 100

I Semester M.Tech in Computer Science and Engineering Total Credits: 25 Code Subject L T P Credit CIE SEE MCSE 121 Advances in Operating Systems 3 0 1 4 50 50 MCSE 122 Computer Networks Engineering 3 0 1 4 50 50 MCSE 123 Random Variables, Stochastic Processes and 4 0 0 4 50 50 Queuing Theory MCSE 124 Topics in Software Engineering 3 0 1 4 50 50 MCSE S01 Seminar 0 0 1 1 50 - MCSE E Elective 1 3 0 0 3 50 MCSE E Elective 2 3 0 0 3 50 50 MCSE 125 Software Development for Portable Devices 0 0 1 1 50 50 MCSE 126 Network Programming Lab 0 0 1 1 50 50 Two Electives to be chosen from Group A

II Semester M.Tech in Computer Science and Engineering Total Credits: 25 Code Subject L T P Credit CIE SEE MCSE 221 Advances in Computer Architecture 3 0 1 4 50 50 MCSE 222 Embedded System Design 4 0 0 4 50 50 MCSE 223 Formal Models in Computer Science 3 0 1 4 50 50 MCSE S02 Seminar 0 0 1 1 50 - MCSE E Elective 3 3 0 0 3 50 50 MCSE E Elective 4 3 0 0 3 50 50 MCSE E Elective 5 3 0 0 3 50 50 MCSE 224 Embedded Systems Laboratory 0 0 1 1 50 50 MCSE 225 High performance Computing Laboratory 0 0 2 2 50 50 Two Electives to be chosen from Group A

III Semester M.Tech in Computer Science and Engineering Total Credits: 25 Code Subject L T P Credit CIE SEE MCSE 311 Industrial Training and Seminar* 0 0 7 7 50 - MCSE 312 Project Phase I 0 0 10 10 50 - MCSE E Elective 6 3 0 0 3 50 50 MCSE E Elective 7 3 0 0 3 50 50 MCSE 313 Big Data and Data Science Laboratory 0 0 2 2 50 50 Two Electives to be chosen from Group B

IV Semester M.Tech in Computer Science and Engineering Total Credits: 25 Code Subject L T P Credit CIE SEE MCSE S03 Seminar 0 0 2 2 50 - MCSE 401 Project Phase II 0 0 23 23 100 100

8 Group B Electives Group A Electives MCSE E11: Computer Systems Performance MCSE E30: Cloud Computing Analysis MCSE E33: Metrics and Models in Software MCSE E13: Advances in Artificial Intelligence Quality Engineering MCSE E14: Fault Tolerant Systems MCSE E34: Information Security MCSE E15: Digital Image Processing MCSE E35: Soft Computing MCSE E17: Advances in Compiler Design MCSE E37: VLSI Design and Algorithms MCSE E18: Data Structures & Algorithms MCSE E38: Social Network Analysis MCSE E20: Stochastic Process MCSE E41: Wireless and Cellular Networks MCSE E42: Advances in Storage Area MCSE E21: Advanced Algorithms Networks MCSE E26: Web Technologies MCSE E43: GPU Programming using CUDA MCSE E28: Multimedia Communications MCSE E44: Information Retrieval MCSE E32: Software Architecture MCSE E 45: Topics in Software Testing MCSE E12: Big Data and Data Sciences L - Lecture, T – Tutorial, P-Practical, CIE-Continuous Internal Evaluation, SEE-Semester End Evaluation.

NOTE: 1. The hours/week shown in the column Tutorial/Practical is the contact hours for students. The teachers should provide guidance. 2. Faculty handling M.Tech classes should give a lesson plan including the topics to be covered in Tutorial by first week of the class. 3. Industrial Training and Seminar: The students should devote minimum 8 weeks after availing 2 weeks of vacation at the end of 2nd Semester and before the Start of 3rd Semester. The Training can be in any of the advanced technology of Relevance to Industry. The training can be either a Certification / Summer Training inside the Institution / Technology Survey / Mini project on Industry Relevant Recent Technology. At the end of the Training, Student should give a seminar and demo of the Technology learnt. For Industrial Training each student will be assigned a Mentor. 4. Project Phase I: This is carried out in addition to regular courses in the 3rd Semester. During this phase, problem identification, literature survey, test plan, formation of detailed specifications (SRS document), higher level design should be completed. A report on this work must be submitted and a presentation on the same must be given at the end of 3rd Semester. This is to be evaluated for 10 credits by the Department Committee constituted for the purpose. 5. Project phase II: Project to be completed with detailed design, implementation, test case preparations, testing and demonstration. 6. During the final project viva, students have to submit all the reports. The project evaluation and viva-voce will be conducted by a committee constituted for this purpose. 7. The student should prepare a consolidated report in IEEE format and should submit it for possible publication in National/International Conferences/Journals before the submission of the Thesis. 8. The students should periodically meet their guide and maintain a log book with periodic milestones achieved. 9. Seminar in first, second and fourth semesters should be given on the topics taken from Research Articles from reputed Journals/Conferences. 9 I. Rubrics for Assessment of Student Performance in Seminar Seminars are used as course delivery modes to encourage students to gather current trends in technology, research literature, and self-learn topics of their interest. Seminars require students to research a technical topic, make presentations and write a detailed document on their findings. The student is expected to : 1. Identify seminar topics based on contemporary technical, societal and environmental issues. 2. Conduct literature survey on complex issues in the selected domain 3. Learn or explore advanced technologies 4. Make good oral and written technical presentations

Assessment Level C Level B Level A Criteria

% Marks to 50-75 75-90 90-100 be awarded

Literature Few sources, aware of Multiple sources of Multiple sources of survey quality of resources high quality, good high quality, well and relevance to judgment of the researched and problem at hand information,, analyzed, continuous identification of gaps efforts at acquiring in knowledge information

Report Writing Reasonably good Sound organization Excellent organization and lacks and structure, clear, organization, no clarity in few topics, very few errors, technical or grammar complete, few complete, reasonably errors, concise and omissions, good style precise, complete grammatically correct, documentation lacks style

10 Assessment Level C Level B Level A Criteria

% Marks to 50-75 75-90 90-100 be awarded

Presentation Reasonably good Good , professional Excellent professional and viva voce communication and communication, and technical presentation, able to good visual aids, communication, give technical answers able to give technical effective to some extent answers presentations, able to analyze technically and clarify views in viva-voce

Technical paper Accepted in any Accepted and Accepted in any presentation in National Level Presented in any International reputed Conferences/ Journals International Conferences/Journals Journals or Conferences/Journals held in outside India Conferences held in India. Standards as IEEE/ACM.

II. Rubrics for Assessment of Student Performance in Industrial Training

Industrial Training is used as course delivery mode to encourage students to gather current trends in Industry and the usage of newer technology in any of the reputed Industries. In this way the student is able to gather the knowledge of working environment at the Industry during his/her Course. At the end of the Industrial Training the Student is required to prepare a presentation on the training at the Industry and present the same in front of the committee constituted at the Department. He will be then accessed on the new technology Learnt, the documentation skills of the same, exposure and demonstration of any Tools and Techniques Learnt and his presentation Skills.

11 Assessment Level C Level B Level A Criteria

% Marks to be 50-75 75-90 90-100 awarded

Tools and new Few sources at the Multiple sources of Multiple sources of Technology Industry, aware of quality high quality, good high quality, well Learnt of resources and relevance judgment of the researched and to tools and Techniques at information,, analyzed, continuous hand identification of gaps efforts at acquiring in knowledge at the information. Industry and Identification of the Academics. application of the tools and Technology learnt to the present market.

Report Writing Reasonably good Sound organization Excellent organization and lacks and structure, clear, organization, no clarity in few topics, very few errors, technical or grammar complete, few omissions, complete, reasonably errors, concise and grammatically correct, good style precise, complete lacks style documentation

Demonstration of Moderately be able to Efficiently be able to Excellent the Tools Learnt demonstrate the tools demonstrate the demonstration of the learnt at the Industry skills learnt and be tools and techniques able to propose an learnt and be able to application for the apply it to any simple same. case study.

12 Assessment Level C Level B Level A Criteria

% Marks to be 50-75 75-90 90-100 awarded

Presentation and Reasonably good Good , professional Excellent professional viva voce communication and communication, and technical presentation, able to give good visual aids, communication, technical answers to some able to give technical effective extent answers presentations, able to analyze technically and clarify views in viva-voce

III. Rubrics for Assessment of Student Performance in Project Phase I

Assessment Level C Level B Level A Criteria

% Marks to 50-75 75-90 90-100 be awarded

Problem Moderately aware, clear Problem domain well Has investigated definition description, broad idea understood, clear and problem domain about relevance to current specific description of extensively, technical and social problem, relevance well context identified

Literature Few sources, aware of Multiple sources of high Multiple sources of survey quality of resources and quality, good judgment high quality, well relevance to problem at of the information,, researched and hand identification of gaps in analyzed, continuous knowledge. efforts at acquiring information

13 Assessment Level C Level B Level A Criteria

% Marks to 50-75 75-90 90-100 be awarded

Requirements Multiple, clear, specific, Many, varied, clear, Complete Specification functional requirements measurable requirements – requirements, include functional, non- some non-functional functional, requirements performance, security related considered, clear and measurable

High Level Mostly correct, minor Technically correct, Technically correct Design / errors in applying theory meets requirements with innovative System and techniques, meets application of theory Architecture requirements and techniques

Report Writing Reasonably good Sound organization and Excellent organization and lacks structure, clear, very organization, no clarity in few topics, few errors, complete, technical or grammar complete, few omissions, reasonably good style errors, concise and grammatically correct, precise, complete lacks style documentation

Presentation Reasonably good Good , professional Excellent professional and viva voce communication and communication, good and technical presentation, able to give visual aids, able to give communication, technical answers to some technical answers effective extent presentations, able to analyze technically and clarify views in viva-voce.

14 Assessment Level C Level B Level A Criteria

% Marks to 50-75 75-90 90-100 be awarded

Attitude and Acceptable posture and Appropriate posture and Professional team work appearance, team roles appearance, Well approach, team defined but members fulfill defined team roles, members work with ( Applicable if only minimally individualistic members synergy in their roles, working in who focus only on their help other team Industry ) roles, lacks synergy members also

IV. Rubrics for Assessment of Student Performance in Project Phase II

Assessment Level C Level B Level A Criteria

% Marks to be 50-75 75-90 90-100 awarded

Detailed Design Mostly correct, minor Technically correct, Technically correct with errors in applying meets requirements innovative application of theory and techniques, theory and techniques meets requirements

Implementation Few errors in Correct algorithmic Technically sound algorithms and approach and choice implementation with programming style, of tools, meets excellent programming correct choice of deadlines and style, s, finishes well hardware and software schedule within deadline tools, misses some deadlines

Testing and Poor planning and Able to identify test Clear test plans created in results specification of test plans for most advance, meets all cases, meets functional requirements, meets requirements, optimized requirements requirements solution

15 Assessment Level C Level B Level A Criteria

% Marks to be 50-75 75-90 90-100 awarded

Report Writing Reasonably good Sound organization Excellent organization, no organization and lacks and structure, clear, technical or grammar clarity in few topics, very few errors, errors, concise and complete, few complete, reasonably precise, complete omissions, good style documentation grammatically correct, lacks style

Presentation Reasonably good Good , professional Excellent professional and and viva voce communication and communication, technical communication, presentation, able to good visual aids, effective presentations, give technical answers able to give technical able to analyze technically to some extent answers and clarify views in viva- voce

Attitude and Acceptable posture and Appropriate posture Professional approach, team work appearance, team roles and appearance, team members work with defined but members Well defined team synergy in their roles, (Applicable if fulfill only minimally roles, individualistic help other team members working in members who focus also Industry ) only on their roles, lacks synergy

Technical paper Accepted in any Accepted and Accepted in any presentation in National Level Presented in any International reputed Journals Conferences/ Journals International Conferences/Journals held or Conferences Conferences/Journals in outside India Standards held in India. as IEEE/ACM.

16 V. Rubrics for Assessment of Student Performance in Lab Courses:

Trait Barely Basic Good Very Good Acceptable

Specifications The program is The program The program works and The program producing incorrect produces produces the correct works and meets results. correct results results and displays them all of the but does not correctly. It also meets specifications. display them most of the other correctly. specifications.

Readability The code is poorly The code is The code is fairly easy to The code is organized and very readable only read. exceptionally well difficult to read. by someone organized and who knows very easy to what it is follow. supposed to be doing.

Reusability The code is not Some parts of Most of the code could be The code could be organized for the code could reused in other reused as a whole reusability. be reused in programs. or each routine other could be reused. programs.

Documentation The documentation is The The documentation The simply comments documentation consists of embedded documentation is embedded in the is simply comment and some well written and code and does not comments simple header clearly explains help the reader embedded in documentation that is what the code is understand the code. the code with somewhat useful in accomplishing and some simple understanding the code. how. header comments separating routines.

Delivery The code was more The code was The program was The program was than 2 weeks within 2 weeks delivered within a week delivered on time. overdue. of the due of the due date. date.

Efficiency The code is huge and The code is The code is fairly efficient The code is appears to be brute force and without sacrificing extremely patched together. unnecessarily readability and efficient without long. understanding. sacrificing readability and understanding.

Deliverables Student Performance in Industrial Training:

Industrial Training Title: ______

17 Company Name : ______

Name of Student: ______

Name of Supervisor at Company: ______

Name of Supervisor at College: ______

Each supervisor on the project must fill a rubric for each student

Basic Good Very Good Total (0-4 Pts) (5-7 Pts) (10 Pts) Possible Earned Tools and new Few sources at Multiple sources Multiple sources 10 Technology the Industry, of high quality, of high quality, Learnt aware of quality good judgment of well researched of resources the information, and analyzed, and relevance identification of continuous to tools and gaps in efforts at Techniques at knowledge at the acquiring hand Industry and information. Academics. Identification of the application of the tools and Technology learnt to the present market.

Relevance of the Fairly Relevant Moderately Highly Relevant 10 topic chosen to Relevant the current market Report Writing Reasonably Sound Excellent 10 good organization and organization, no organization structure, clear, technical or and lacks clarity very few errors, grammar errors, in few topics, complete, concise and complete, few reasonably good precise, omissions, style complete grammatically documentation correct, lacks style

Demonstration Moderately be Efficiently be able Excellent 10 18 of the Tools able to to demonstrate demonstration of Learnt demonstrate the skills learnt the tools and the tools learnt and be able to techniques learnt at the Industry propose an and be able to application for the apply it to any same. simple case study. Presentation Reasonably Good , Excellent 10 and viva voce good professional professional and communication communication, technical and good visual aids, communication, presentation, able to give effective able to give technical answers presentations, technical able to analyze answers to technically and some extent clarify views in viva-voce

19 Deliverables before final project presentation:

You should submit the following documents to your supervisors

Interim Progress Assessment Rubric

Project: ______

Name of Student: ______

Name of Supervisor: ______

Each supervisor on the project must fill a rubric for each student

Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Problem  Bare formulation  Basic Clear Clear 5 formulation  Bare formulation formulation formulation understanding  Basic Good with well of the problem, understanding of understanding defined with scarce the problem, but of scope knowledge of lack appropriate the problem,  Very good relevant material study of with understandin relevant study of g of material relevant the problem material and  Good relevant system material analysis  Near production quality system analysis Self-  Slow progress,  Slow progress,  Good  Steady 5 motivation with barely with basic progress progress and project satisfactory result project  Need  Highly self- manageme  Unresponsive to outcome reminder motivated nt supervisor  Rely on sometimes Good supervisor’s  Minor project push problems managemen to work in project t manageme

20 Design Development and Solution Asset Rubric

Project: ______

Name of Student: ______

Name of Supervisor: ______

Each supervisor on the project must fill a rubric for each student

Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Analysis and  Obvious  Simple, Complete  Provide 5 solving skills solution, yet mostly solution with solution sketchy complete nontrivial to complex functionalities solution that functionalities problems; solves the that meet the Solution stated desired needs optimize problem desired needs Innovation  Basic  Superficial Self-study of  New 5 in concepts usage of new concepts the Design used correctly new concepts / used Solution and  Lack self- concepts technique, frequently self-study study,  Self-study with  Self-study but apply of new good of new previously technique, understanding technique and taught with basic  Minor solve technical technique on a understanding innovative difficulties; satisfactory level Work Innovative work with research value Self-  Slow Slow  Good  Good 5 motivation progress, progress, progress progress and project with barely with basic  Need  Need management satisfactory project reminder reminder result outcome sometimes sometimes  Unresponsive  Rely on  Minor  Minor to Supervisor supervisor’s problems problems push to in project in project work management management

21 Written Report Rubric:

Project: ______

Name of Student: ______

Name of Supervisor: ______

Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Content  Important  Covers  All major  Major 5 points important points points covered only points covered and strongly superficially  A few explained supported  No major inaccurate clearly and with errors or irrelevant correctly suitable and points detail misconception Writing  Frequent  Some  A few Well 5 errors errors in errors in proofread in spelling spelling and spelling and Clear and and grammar grammar easy to grammar  Readabl  Readable understand  Mostly e and Graphs and readable, but  Follow easy to diagrams a basic understand used few points are written report appropriately hard to structure understand

22 Final Presentation Rubric

Project: ______

Name of Student: ______

Name of Supervisor: ______

Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Content  Important  Covers  All major  Major points 5 points important points strongly covered only points covered and supported with superficially  A few explained suitable detail  No major inaccurate clearly and errors or correctly and irrelevant misconception points Presentation  Bare  Basic  Good  Excellent 5 Skills organizatio organization organization organization n and and and and preparation preparati preparation preparation  Confident on Confident and  Lack of in  Confident relaxed in the confidence only some in whole and parts of the most parts  presentation familiarity presentation of Engaging to in the audience some parts of presentat the ion presentation Attractive to audience Communication  Answer at  Answer  Answer  Handle 5 (Q/A) least most most difficult one questions questions questions questions with correctly correctly correctly ease and  Need  Need and confidence clarification clarification concisely  Illustrative sometimes explanation

23 STUDENT SEMINAR EVALUATION RUBRIC

Student Name ______Date ______

Title/Topic ______

Name of Supervisors: 1.______

2.______

Evaluate the student’s presentation employing the following range-scored criteria Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 pts) Speaking Mumbles Incorrectly Incorrectly Correct, 5 Skills & and/or pronounces pronounces precise Elocution - Incorrectly some terms few terms pronunciation of not pronounces Voice Voice is clear all ability to some terms fluctuates with few terms Voice is speak Voice is low; from low to fluctuations; clear and English difficult to hear clear; difficult audience steady; language to can hear well audience can hear at times most of the hear well at all time times Audience Completely lost Difficulty Held audience Held audience’s 5 interaction audience holding attention attention attention; audience most of the throughout, started attention, facts time; polite points made responding presented in in creative way; before with little or no answering listened questions imagination; questions, carefully to finished; lengthy but audience answers often answers, not as directly questions and unrelated sometimes responded to the question without directly to asked answering the question asked question asked Subject Does not have Superficial Adequate Demonstrates 5 knowledge grasp of knowledge of knowledge of in depth information; topic; only able most topics; knowledge; cannot to answer answers answers answer basic questions questions, but questions with questions fails to explanations about elaborate and subject. elaboration Organizatio Hard to follow; Most of Information Information 5 n of sequence information presented in presented as presentatio of information presented in logical interesting story n jumpy sequence sequence; in logical, easy to easy to follow follow sequence

24 Evaluate the student’s presentation employing the following range-scored criteria Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 pts) Background Material not Material Material Material 5 content clearly sufficient for sufficient for sufficient for related to topic clear clear clear OR understanding understanding understanding background but not clearly AND AND dominated presented effectively exceptionally seminar presented presented Methods Methods too brief Sufficient for Sufficient for Sufficient for 5 or understanding understanding understanding insufficient for but not AND AND adequate clearly effectively exceptionally understanding presented presented presented OR too detailed Results  Some figures  Majority  Most figures  All figures clear 5 (figures, hard to Read appropriately clear  All graphs,  Some in Formatted  Most appropriately tables, inappropriate  Reasonably appropriately formatted etc.) Format explained Formatted  Exceptionally  Some  Significance  Well explained explanations mentioned explained lacking Graphics Uses graphics Uses graphics Uses graphics Uses graphics 5 (use that rarely that that that explain of support text and relate to text explain text and reinforce Powerpoint presentation and and text and ) presentation presentation presentation Eye contact  Reads most Refers to  Refers to  Refers to slides 5 and Length slides; no or slides to make slides to to make and Pace just occasional points; make points; points; eye contact occasional eye eye contact engaged with  Short; less contact majority of Audience than 30 min  Short 40 min time  Appropriate  Rushed OR OR long  Adequate (45-50 min) dragging >50 40-45 min  Well-paced throughout  Rushed OR  Most of the throughout dragging in seminar well parts pace Conclusions conclusions not conclusions conclusions insightful 5 supported could be supported by conclusions by evidence; no supported by evidence; supported by discussion of stronger some evidence; implications evidence; discussion of discusses and future work minimal implications implications discussion of and future and application; implications direction recommends and future work future directions for research

25 STUDENT EVALUATION RUBRIC for Lab Courses

Student Name ______Date ______

Question:

______

______

______

______

______

Name of Supervisors: 1.______

2.______

Sl Marks Marks sub sub Total No. Alloted Total Components Sub - Components Scored Marks Marks Scored

1 Program Write up 6

20 10 Lab Test 1 Program Execution

4 Viva

3 25 30 Project Implementation Mini Project 5 Project report

50

Total Marks

26 Semester: I Year: 2014- 2016 Course Title: Advances in Operating Systems Course Code: MCSE 121 Credits (L:T:P) : 3:0:1 Core/ Elective: Core Type of Course: Lecture, Practical Total Contact Hours: 56

Prerequisites: Operating Systems

Course Objectives: The objective of this course is to make the students to  Identify the basic resource management responsibilities of an operating system  Understand the concept of a process, list the various process state transitions and distinguish between a process from a thread  Design and implement a concurrent programming application using semaphores & monitors for process control  Analyze the necessary conditions for deadlock, implement deadlock avoidance, prevention & recovery, Understand virtual memory concepts, paging and segmentation  Implement process and disk scheduling algorithms, provide protection using access controls.

Course Contents: Unit I Process Synchronization: Overview, Synchronizations mechanisms – Introduction, concept of a process, concurrent processes, critical section problem, other synchronization problems. Distributed Operating Systems: Architectures of Distributed Systems - System Architecture types, issues in distributed operating systems, communication networks - communication primitives Theoretical Foundations - inherent limitations of a distributed system lamp ports logical clocks - vector clocks - casual ordering of messages - global state -cuts of a distributed computation - termination detection.

Unit 2 Distributed Mutual Exclusion - introduction - the classification of mutual exclusion and associated algorithms - a comparative performance analysis Distributed Deadlock Detection -Introduction - deadlock handling strategies in distributed systems - issues in deadlock detection and resolution - control organizations for distributed deadlock detection - centralized and distributed deadlock detection algorithms hierarchical deadlock detection algorithms.

Unit 3 Agreement protocols - introduction-the system model, a classification of agreement problems, applications of agreement algorithms. Distributed resource management: Distributed File Systems- introduction-architecture - mechanism for building distributed file systems - design issues - log structured file systems. Distributed shared memory-Architecture- algorithms for implementing DSM - memory coherence and protocols - design issues.

Unit 4 Distributed Scheduling - introduction - issues in load distributing components of a load distributing algorithm - stability load distributing algorithm - performance comparison selecting a suitable load sharing algorithm requirements for load distributing -task migration and associated issues. Failure Recovery: Introduction- basic concepts - 27 classification of failures - backward and forward error recovery, backward error recovery- recovery in concurrent systems - consistent set of check points - synchronous and asynchronous check pointing and recovery check pointing for distributed database systems- recovery in replicated distributed databases.

Unit 5 Protection and security Resource Security and Protection:-preliminaries, the access matrix model and its implementations safety in matrix model- advanced models of protection Multiprocessor operating systems: Multiprocessor System Architectures- basic multiprocessor system architectures - inter connection networks for multiprocessor systems - caching - hypercube architecture. Multiprocessor Operating System - structures of multiprocessor operating system, operating system design issues- threads Process synchronization issues related to instructions Process scheduling : issues, co- scheduling, Smart scheduling.

Laboratory Work: (The following programs can be executed on any available and suitable platform) 1. Design, develop and execute a program using any thread library to create the number of threads specified by the user; each thread independently generates a random integer as an upper limit, and then computes and prints the number of primes less than or equal to that upper limit along with that upper limit. 2. Rewrite above program such that the processes instead of threads are created and the number of child processes created is fixed as two. The program should make use of kernel timer to measure and print the real time, processor time, user space time and kernel space time for each process. 3. Design, develop and implement a process with a producer thread and a consumer thread which make use of a bounded buffer (size can be prefixed at a suitable value) for communication. Use any suitable synchronization construct. 4. Design, develop, and execute a program to solve a system of n linear equations using Successive Over-relaxation method and n processes which use Shared Memory API. 5. Design, develop, and execute a program to demonstrate the use of RPC.

Text Book : 1. Mukesh Singhal, Niranjan G.Shivaratri, "Advanced concepts in operating systems: Distributed, Database and multiprocessor operating systems", TMH, 2009

Reference Books: 1. Andrew S.Tanenbaum, "Modern operating system", PHI, 2003 2. Pradeep K.Sinha, "Distributed operating system-Concepts and design", PHI, 2003. 3. Andrew S.Tanenbaum, "Distributed operating system", Pearson education, 2003.

Course Delivery: The course will be delivered through lectures, class room interaction, Practicals, Self- Study, online courses, group discussion, and demonstrations.

28 Course Assessment and evaluation:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes Internal Thrice(Average of

Assessment the best two will 25 Blue Books 1,2, 3,4 & 5 t C n Tests be computed) s

e I t d

c Practical, Mini Code m o E Studen e s h

r Project and Once 25 Reposition, 2 & 4 s t i ts e e

D Certification Certificates s M s S End of Course A Standard E (Answering 100 Answer scripts 1,2, 3,4 & 5 Examination E 5 of 10 questions) 1,2, 3,4 & 5

t

Students n Effectiveness of t s e c d Feedback Delivery of e m o

r Studen - Questionnaire s i h End of the course instructions & s t

d ts e e n

s Assessment I M End of Course s

A Survey Methods

a. CIE Scheme Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

Course Outcomes: At the end of the course the students should be able to: 1. Understand and implement concurrent processes 2. Understand the basic concepts of Distributed Operating Systems and its architecture 3. Identify the Distributed resource management and design issues 4. Implementation of CPU scheduling, IPC memory management, recovery and concurrent algorithms 5. Understand the concepts of multiprocessor operating systems and to apply related algorithms

Mapping course outcomes with program outcomes:

Course Outcomes Program Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Understand and implement x x x x x concurrent processes.

Understand the basic concepts x x x x x of Distributed Operating Systems and its architecture.

Identify the Distributed x x x x x resource management and design issues. Implementation of CPU x x x x x x scheduling, IPC memory management, recovery and concurrent algorithms.

29 Understand the concepts of x x x x x multiprocessor operating systems and to apply related algorithms

30 Semester: I Year: 2014 - 2016 Course Title: Computer Networks Engineering Course Code: MCSE 122 Credits (L:T:P) : 3:0:1 Core/ Elective: Core Type of course: Lecture/ Laboratory/ /Project Total Contact Hours: 56

Prerequisites: Data Communications, Computer Networks

Course Objectives: The objective of this course is to make the students to  Understand the networks architecture and quantitative performance metrics that drive network design..  Discuss the basic model of switched networks and key elements of the Internet Protocol.  Examine the various concepts of Internet and principles of the TCP/IP protocol suite.  Analysis the how congestion control works and concepts of resource allocation.  Identify the significance of application layer and protocol they use.

Course Contents: Unit 1 Review of Basic Concepts: Building a Network; Applications; Requirements; Network Architecture; Implementing Network software; Performance; Physically connecting hosts; Hardware building blocks. Unit 2 Packet Switching: Switching and forwarding; Bridges and LAN Switches; Cell Switching; Implementation and Performance. Internetworking: Simple internetworking (IP); Routing; Global Internet; Multicast; MPLS.

Unit 3 End–to-End Protocols: Simple De-multiplexer (UDP); Reliable byte stream (TCP); RPC; RTP.

Unit 4 Congestion Control and Resource Allocation: Issues in resource allocation; Queuing discipline; TCP Congestion Control; Congestion-Avoidance mechanisms; Quality of Service.

Unit 5 Applications: Traditional applications; Web services; Multimedia applications; Overlay Networks.

Laboratory Work: Using any Protocol Analyzer like Ethereal, perform the following experiments: 1. Capture the packets that are transmitted after clicking on the URL of the web site of your college. Analyze the packets at the highest level and prepare a brief report of your analysis. 2. Analyze the data captured above at lower levels and demonstrate the layering of the protocols. 3. Capture the ARP packets and find the MAC addresses in the LAN in your laboratory.

31 Using either NS2/OPNET or any other suitable simulator, perform the following experiments: 1. Simulate a three nodes point – to – point network with duplex links between them. Set the queue size and vary the bandwidth and find the number of packets dropped. 2. Simulate the transmission of messages over a network topology consisting of 6 nodes and find the number of packets dropped due to congestion. 3. Simulate an Ethernet LAN using n nodes and set multiple traffic nodes and plot congestion window for different source / destination.

Text Book: 1. Larry L. Peterson and Bruce S. Davie: Computer Networks – A Systems Approach, 5th Edition, Elsevier, 2011.

Reference Books: 1. Behrouz A. Forouzan: Data Communications and Networking, 4th Edition, Tata McGraw Hill, 2012. 2. William Stallings: Data and Computer Communication, 8th Edition, Pearson Education, 2012. 3. Alberto Leon-Garcia and Indra Widjaja: Communication Networks -Fundamental Concepts and Key Architectures, 2nd Edition Tata McGraw-Hill, 2011.

Course Delivery: The course will be delivered through lectures, class room interaction, group discussion and lab exercises.

Course Assessment Methods:

When/ Where Contribution to To Max Evidence What (Frequency in Course Whom Marks Collected the course) Outcomes

t Internal Thrice(Average of n e CI Assessme the best two will 30 Blue Books 1,2 ,3,4 & 5 m s s E nt Tests be computed) s d e o s h Lab Tests Students Twice 20 Data sheet 1,2,3,4 &5 s t e A

t M S Standard End of Course c e

r E Examinati (Answering 5 of 10 100 Answer scripts 1,2,3,4&5 i

D E on questions) Students 1,2,3,4&5

t Feedback Effectiveness of

n t s e c d Delivery of e m o

r End of the course - Questionnaire s i h Students

s instructions & t d

e End of Course e n s

I Assessment M

s Survey

A Methods

a. CIE Scheme: Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

32 Course Outcomes: 1. Demonstrate knowledge of basic networking concepts and their performance metrics. 2. Understands the basic model of switched networks and key elements of the Internet Protocol. 3. Understands the various concepts of Internet and principles of the TCP/IP protocol suite. 4. Understanding the how congestion control works and concepts of resource allocation. 5. Understand the significance of application layer and protocol they use. . Mapping Course Outcomes with Program Outcomes:

Course Outcomes Program Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Demonstrate knowledge of X X X X X X X X X X basic networking concepts and their performance metrics. Understands the basic model of X X X X X X X X X switched networks and key elements of the Internet Protocol Understands the various X X X X X X X X X concepts of Internet and principles of the TCP/IP protocol suite Understanding the how X X X X X X X X X congestion control works and concepts of resource allocation Understand the significance of X X X X X X X X X application layer and protocol they use

33 Semester: I Year: 2014 - 2016 Course Title: Random Variables, Stochastic Course Code: MCSE 123 Processes and Queuing Theory Credits (L:T:P) : 4:0:0 Core/ Elective: Core Type of course: Lecture/ Laboratory/ /Project/ Total Contact Hours: 4Hrs assignment per week

Prerequisites: NIL

Course Objectives: The students will  Learn the concept of discrete and continuous random variable  Understand the Probability mass and density function and probability distributions  Learn the theory of Random process and special classes of random variable  Learn the concept of continuous time Markov Chains, pure birth , pure death, birth and death  process  Learn the concept of different queuing models such as M/M/1, M/G/1.

Course Contents:

Unit I Discrete Random Variables: Introduction, Random variables and their event spaces, probability Mass function. Distribution functions, Special Distribution functions, Independent Variables.

Unit II Continuous Random Variables: Introduction, Exponential Distribution, Functions of a random variable, Jointly distributed random variables, Functions of normal random variables.

Unit III Random Processes: Introduction, Binomial Process, Poisson Process, Ergodic Process, Special Classes of Random Process.

Unit IV Markov Process: Markov chain and Transition Probabilities, Continuous Parameter Markov chain, Pure birth and pure Death Process, Birth and Death Process, Renewal Process. Unit-V Introduction to Queuing theory and applications: Single server with infinite system capacity, queuing Modes (M/M/1):(  /FIFO),(M/M/1):(k/FIFO),(M/M/s):(  /FIFO), (M/M/s):(k/FIFO),M/G/1 Queuing system characteristics, Case Studies.

Text Books 1. Sheldon M Ross – Introduction to Probability Models, 10th Edition, Elsevier, 2010. 2. T Veera Rajan – Probability, Statistics and Random Process, 3rd Edition, Tata Mc Graw Hill, 2008.

Reference Books 1. Kishore S Trivedi – Probability & Statistics with Reliability, Queuing and Computer Science Applications, 2nd edition, John Wiley & Sons, 2008. 2. Athanasios Papoulis. S, Unni Krishna Pillai – Probability, Random Variables and Stochastic Processes, 4th edition, Tata Mc. Graw Hill, 2002.

34 Course Delivery: The course will be delivered through lectures, class room interaction, group discussion and lab exercises.

Course Assessment Methods:

When/ Where Contribution to Max Evidence What To Whom (Frequency in Course Marks Collected the course) Outcomes Internal Thrice(Average of

C t Assessment the best two will be 30 Blue Books 1, 2, 3, 4 & 5 n

s I

e Tests computed) t d

c E m o e s

h Lab Tests Twice 20 Data sheet 1, 2, 3, 4 & 5 r Students s t i e e D s

M S End of Course s Standard Answer

A E (Answering 5 of 10 100 1, 2, 3, 4 & 5 Examination scripts E questions) Students 1, 2, 3, 4 & 5 n

s t e d Feedback Effectiveness of c o m e s h r Questionna Delivery of i t s Students End of the course - d e

e End of Course ire instructions & n s M I

s Survey Assessment t A Methods

a. CIE Scheme: Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

Course Outcomes: The students will be able to 1. Recognize the random variable governing the problem 2. Discuss the different features of the probability distribution which is used in statistical models. 3. Uses of knowledge random processes, evaluate various measures of the system effectiveness such as response time, reliability, etc, 4. Recognize the types of queues and discusses its queuing system characteristics.

Mapping Course Outcomes with Program Outcomes:

Course Outcomes Program Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Recognize the random X X X X X X X X X variable governing the problem Discuss the different X X X X X X X X features of the probability distribution which is used in statistical models Uses of knowledge X X X X X X X X X random processes, evaluate various measures of the system effectiveness such as response time, reliability, 35 etc Recognize the types of X X X X X X X X queues and discusses its queuing system characteristics

36 Semester: I Year: 2014 - 2016 Course Title: Topics in Software Engineering Course Code: MCSE 124 Credits (L:T:P) : 3:0:1 Core/ Elective: Core Type of course: Lecture/ Laboratory/ /Project/ Total Contact Hours: assignment

Prerequisites: Basic Concepts of Software Engineering

Course Objectives: The Objectives of this course are to:  Present the concept of different software development methodologies, Identify the importance of agile development, Analyze the components involved in web design.  Provide an understanding of Formal modeling and verification, the project management principles, and estimation of software projects.  Analyze the activities involved in project scheduling, risk management and to identify the role of maintenance and reverse engineering process in developing software systems.  Identify the different approaches to Software process Improvement, Software Configuration management and the metrics for process and product development.  Provide an understanding of how to conduct individual and detailed research into a topic covered by the course in the field of software engineering and be able to search appropriate literature including research publications, industrial newspapers and articles, and internet resources so as to summaries the findings in a clear and critical manner.

Course Content Unit 1 Agile development: What is agile? Agility and cost of change; What is an agile process? Extreme programming; Other agile process models. Web Application Design: Web application design quality; Design quality and design pyramid; Interface design; Aesthetic design; Content design; Architecture design; Navigation design; Component-level design; Object-oriented hypermedia design method. Unit 2 Formal Modeling and verification: The cleanroom strategy; Functional specification; Cleanroom design; Cleanroom testing; Formal methods: Concepts; Applying mathematical notation for formal specification; Formal specification languages. Software Project Management: The management spectrum; The management of people, product, process and project; The W5HH Principle; Critical practices. Estimation for Software Projects: Software project estimation; Decomposition techniques, Examples; Empirical estimation models; Estimation for Object-Oriented projects; Specialized estimation techniques; The make / buy decision.

Unit 3 Software Project Scheduling: Basic concepts and principles of project scheduling; Defining task set and task network; Scheduling; Earned value analysis. Risk Management: Reactive versus proactive strategies; Software risks; risk identification; Risk projection; Risk refinement; Risk mitigation, monitoring and management; The RMMM plan.

37 Unit 4 Maintenance and Reengineering: Software maintenance; Software supportability; Reengineering; Business process reengineering; Software reengineering; Reverse engineering; Restructuring; Forward engineering; The economics of reengineering. Software Process Improvement (SPI): Approaches to SPI; Maturity models; The SPI process; The CMMI; The People CMM; Other SPI frameworks: SPICE, Bootstrap, PSP and TSP, ISO; SPI return on investment. Unit 5 Software Configuration Management (SCM): Basic concepts; SCM repository; The SCM process; Configuration management for web applications; SCM standards. Product Metrics: A framework for product metrics; Metrics for requirements model, design model, source code, testing and maintenance; Design metrics for web applications. Process and Project Metrics: Basic concepts; Software measurement; Metrics for software quality; Integrating metrics within the software process; Metrics for small organizations; Establishing a software metrics program.

Laboratory: The Software Engineering Lab has been designed for students to be exposed to the following:  To Understand and realize the concept of Software Engineering and UML using any case studies.  The students would be exposed to experiment with the following concepts using any of the tools available:  Identifying the Requirements from Problem Statements  Modeling UML Use Case Diagrams  Identifying Domain Classes from the Problem Statements  State chart and Activity Modeling  Modeling UML Class Diagrams and Sequence diagrams  Estimation of Test Coverage Metrics and Structural Complexity  Designing Test Suites for the case study  The Students would also be required to Prepare a Work Breakdown Structure (WBS) and a mini project plan with PERT and Gantt charts

Text Book: 1. Roger S. Pressman: Software Engineering: A Practitioner’s Approach, Alternate edition, 7th Edition, McGraw Hill, 2010.

Reference Book: 2. Ian Sommerville: Software Engineering, 8th Edition, Pearson, 2012.

Course Delivery: The course will be delivered through lectures, class room interaction, group discussion, lab exercises and projects.

38 Course Assessment Methods: CIE Scheme: Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

When/ Where Max Contribution To Evidence What (Frequency in Mark to Course Whom Collected the course) s Outcomes Thrice (Average

Internal t of the best two

n Assessment 30 Blue Books 1-5

e will be Tests m CIE computed) s s s d Project and Summation of e o Soft copies s h lab Exercise Students lab and project 20 1-5 s t of the work e A evaluation demonstration

t M

c End of Course

e Semester r

i (Answering Answer SEE End 100 1-5 D 5 of 10 scripts Examination questions)

t Students 1, 2, 3, 4 & 5

n t s e Feedback Effectiveness c d e m o

r End of the Questionnai of Delivery of s i h Students - s t

d course re instructions & e e n

s End of Course I

M Assessment s Survey A Methods

Course Outcomes: At the end of the course the students will be able to: 1. Apply the concept of Agile development and be able to design any web application using the principles learnt. 2. Identify the concepts of Formal Modeling and verification methods and also the process of Project management and estimation. 3. Demonstrate an understanding of the activities involved in Software Scheduling, Risk management and reversing engineering and Maintenance task. 4. Identify the approaches to Software Process Improvement. 5. Understand the concepts of Software Configuration Management, Product and Process metrics

Mapping Course Outcomes with Program Outcomes:

Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Apply the concept of Agile development and be able to X X X X X X X X X design any web application using the principles learnt. Identify the concepts of X X X X X X X X Formal Modeling and verification methods and also the process of Project management and estimation Demonstrate an understanding of the X X X X X X X activities involved in 39 Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Software Scheduling, Risk management and reversing engineering and Maintenance task. Identify the approaches to Software Process X X X X X X Improvement Understand the concepts of Software Configuration X X X X X Management, Product and Process metrics

40 Semester: I Year: 2014 - 2016 Course Title: Software Development for Portable Devices Course Code: MCSE 125 Credits (L:T:P) : 0:0:1 Core/ Elective: Core Type of course: Practical Total Contact Hours: 14

Prerequisites: Basics of Java

Course Objectives: The objective of this course is to make the students to  Introduction to Mobile Computing and Emerging mobile application and Hardware Platforms.  Developing and accessing mobile applications.  Software Lifecycle for Mobile Application - Design and Architecture, Development – Tools, Techniques, Frameworks, Deployment.  Human factors and emerging HCI interfaces (tangible, immersive, attentive, gesture, zero-input).  Select Application domains such as Pervasive Health Care, m-Health. Mobile Web browsing, Gaming and Social Networking.

Course Contents:

Experiments that are to be conducted as a part of the course: 1. Developing simple android applications for mobile devices & introducing to android development tools. 2. Simple programs to investigate the android life cycle. 3. Programs on Android activities. 4. Programs to create user interfaces, layouts and views. 5. Program to create and use menus. 6. Programs on using intents, adapters and dialogs. 7. Programs on working with data storage. 8. Programs on saving and loading files. 9. Programs on introducing content providers. 10. Programs on location based services and Google maps. 11. Developing applications to work with threads. 12. Introducing Toasts and Notifications. 13. Developing applications to work with messaging. 14. Programs to work with hardware of mobile devices

The student will execute a mini project using Android, write a report and demonstrate to the examiner.

Prescribed Text Book T1 Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley Publishing. Reference Book (S) R1. Android Application Development, Programming with the Google SDK, by, Rick Rogers, John Lombardo, Zigurd Mednieks, Blake Meike, SPD, Oreilly, ISBN10: 81-8404-733-9, ISBN13:978-81-8404-733-2 R2. Hello Android, Introducing Google’s Mobile Development Platform, 3rd Edition, by Ed Burnette, Pragmatic Programmers, LLC.ISBN-10: 1-934356-56-5, ISBN-13: 978-1- 934356-56-2

41 Course Assessment Methods:

When/ Where Max Contribution Evidence What To Whom (Frequency in Mark to Course Collected the course) s Outcomes

e CI Mini Project s Once 50 1,2,3,4 &5 t d m

c E Project Documentation

s o t e s h r

n Students t e i S Standard s e D s

M E Examinati Project demo 50 Answer scripts 1,2,3,4&5 A E on Students 1,2,3,4&5

t Feedback

n Effectiveness t s e c d of Delivery of e m o

r End of the course - Questionnaire s i h Students instructions & s t d End of Course e e n

s Assessment I

M Survey s

A Methods

Course Outcomes: 1. Demonstrate knowledge of android platform and different android developer tools. 2. Understands the android application life cycle and creating UI and activities. 3. Demonstrating the concept of sending messages between application components and also data storage, retrieval, and sharing. 4. Demonstrate the knowledge of using location-based services, Threads, and Notifications in applications. 5. Understands the Android’s communication abilities using SMS and ability to work with mobile hardware like camera, accelerometers, and compass sensors.

Mapping Course Outcomes with Program Outcomes:

Course Outcomes Program Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Demonstrate knowledge of X X X X X X android platform and different android developer tools Understands the android X X X application life cycle and creating UI and activities Demonstrating the concept of X X X X X X sending messages between application components and also data storage, retrieval, and sharing Demonstrate the knowledge of X X X X X using location-based services, Threads, and Notifications in applications Understands the Android’s X X X X X X communication abilities using SMS and ability to work with mobile hardware like camera, accelerometers, and compass sensors

42 Rubrics for Assessment of Student Performance:

Trait Barely Acceptable Basic Good Very Good

Specifications The program is producing The program The program works The program incorrect results. produces correct and produces the works and results but does correct results and meets all of the not display them displays them specifications. correctly. correctly. It also meets most of the other specifications.

Readability The code is poorly The code is The code is fairly The code is organized and very readable only by easy to read. exceptionally difficult to read. someone who well organized knows what it is and very easy supposed to be to follow. doing.

Reusability The code is not organized Some parts of the Most of the code The code could for reusability. code could be could be reused in be reused as a reused in other other programs. whole or each programs. routine could be reused.

Documentation The documentation is The The documentation The simply comments documentation is consists of documentation embedded in the code simply comments embedded comment is well written and does not help the embedded in the and some simple and clearly reader understand the code with some header explains what code. simple header documentation that the code is comments is somewhat useful accomplishing separating in understanding the and how. routines. code.

Delivery The code was more than The code was The program was The program 2 weeks overdue. within 2 weeks of delivered within a was delivered the due date. week of the due on time. date.

Efficiency The code is huge and The code is brute The code is fairly The code is appears to be patched force and efficient without extremely together. unnecessarily sacrificing readability efficient long. and understanding. without sacrificing readability and understanding.

43 STUDENT EVALUATION RUBRIC

Student Name ______Date ______

Question:

______

______

______

______

______

Name of Supervisors: 1.______

2.______

Sl Marks Marks sub sub No. Alloted Total Total Components Sub - Components Scored Marks Marks

Scored

1 Program Write up 6

20 10 Lab Test 1 Program Execution

4 Viva

3 25 30 Project Implementation Mini Project 5 Project report

50

Total Marks

44 Semester: I Year: 2014-2016 Course Title: Network Programming Lab Course Code: MCSE E126 Credits (L:T:P) : 0:0:1 Core/ Elective: Core Type of course: Practical Total Contact Hours: 14

Prerequisites: Basic Concepts of Computer Networks

Course Objectives:  To learn the basics of socket programming using TCP Sockets.  To learn basics of UDP sockets.  To learn about raw sockets.  To implement few standard network protocols  To develop knowledge of threads for developing high performance scalable applications.

Course Content:

Write programs using C/C++ or java to implement the following 1. Echo Server using TCP and UDP socket programming. 2. HTTP Client and HTTP server using TCP socket programming. 3. DNS Client and DNS server using UDP socket programming. 4. Capture and to block the packets over the network using raw sockets. 5. Sliding Window protocols (stop and wait, Go back N, Selective Repeat) 6. TRACE ROUTE command. 7. Telnet Client. 8. File Transfer Protocol. 9. IPC - Pipes, FIFO and Message Queue. 10. Chat client and Chat server using Java socket programming. 11. Multicasting Program using Java socket programming. 12. Remote Procedure Call for sorting any given set of numbers. 13. RPC to perform String Conversion from Lower case to Upper Case and vice versa. 14. Generate SIGPIPE Error with Socket. 15. Restart server by capturing SIGHUP signal .

Text Books: 1. W. Richard Stevens:Unix Network Programming, PHI 2. W. Richard Stevens, Bill Fenner, Andrew M. Rudoff : Unix Network Programming The Sockets Networking API , Volume 1, Third Edition, PHI. 3. W. Richard Stevens:Unix Network Programming Interprocess Communications Volume 2, Second edition, PHI. 4. Elliotte Rusty Harold: Java Network Programming, 3rd Edition, Shroff Publishers.

Reference Books: 1. W. Richard Stevens: TCP/IP Illustrated, Volumes 1, 2, and 3, Pearson, 2000.

Course Delivery: The course will be delivered through lab exercises.

Course Assessment Methods: 45 When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes

Answer s C Lab Tests Twice 40 1,2 ,3,4 & 5 d Sheets o I h

t E

e Practical Data Once 10 1,2,3,4 &5 M

assignments sheets t n

e S Standard Student Answer

m E End of Course 100 1,2,3,4&5

s Examination s scripts

s E e s

s 1,2,3,4&5 A

Effectiveness of t

c End of Course Questionna Delivery of e End of the course - r

i Survey ire instructions &

D Assessment Methods

Course Outcomes 1. Write both connection-oriented and connectionless servers and clients using the Sockets API. 2. Understand the Unix process model, standard Unix input/output, and their system calls 3. Use signals and their associated system calls in Unix 4. Understand and implement the most widely used network application protocols such as ftp, telnet, ping, etc to develop distributed applications 5. Understand multithreading and implement it in Unix.

Mapping Course Outcomes with Program Outcomes:

Course Outcomes a b c d e f g h i j k l o Write either connection- X X X x oriented or connectionless X X servers and clients using the Sockets API Understand the Unix process X X X X X x model, standard Unix input/output, and their system calls Use signals and their X X X x associated system calls in Unix Understand and implement X X X X X X x x the most widely used network application protocols such as ftp, telnet, ping, etc to develop distributed applications Understand multithreading X X X x and implement it in Unix.

46 Rubrics for Assessment of Student Performance

Trait Barely Acceptable Basic Good Very Good

Specifications The program is The program The program The program producing incorrect produces correct works and works and results. results but does produces the meets all of correct results the not display them and displays specifications. correctly. them correctly. It also meets most of the other specifications.

Readability The code is poorly The code is The code is fairly The code is organized and very readable only by easy to read. exceptionally difficult to read. someone who well organized knows what it is and very easy supposed to be to follow. doing.

Reusability The code is not Some parts of the Most of the code The code could organized for code could be could be reused be reused as a reusability. reused in other in other whole or each programs. programs. routine could be reused.

Documentation The documentation The documentation The The is simply is simply comments documentation documentation comments embedded in the consists of is well written embedded in the code with some embedded and clearly code and does not simple header comment and explains what help the reader comments some simple the code is understand the separating routines. header accomplishing code. documentation and how. that is somewhat useful in understanding the code.

Delivery The code was more The code was within The program was The program than 2 weeks 2 weeks of the due delivered within was delivered overdue. date. a week of the on time. due date.

Efficiency The code is huge The code is brute The code is fairly The code is and appears to be force and efficient without extremely patched together. unnecessarily long. sacrificing efficient readability and without understanding. sacrificing readability and understanding.

47 STUDENT EVALUATION RUBRIC

Student Name ______Date ______

Question:

______

______

______

______

Name of Supervisors: 1.______

2.______

Sl Marks Marks sub sub No. Alloted Total Total Components Sub - Components Scored Marks Marks

Scored

1 Program Write up 6

20 10 Lab Test 1 Program Execution

4 Viva

2 6 20 Program Write up

10 Lab Test 2 Program Execution

4 Viva

3 7 10 Implementation Practical Assignment 3 Viva

50

Total Marks

48 Semester: II Year: 2014-2016 Course Title: Advances in Computer Architecture Course Code: MCSE 221 Credits (L:T:P) : 3:0:1 Core/ Elective: Core Type of course: Lecture Total Contact Hours: 56

Prerequisites: Computer Architecture

Course Objectives: This course will help students to achieve the following objectives:  Describe the principles of computer design and Classify instruction set architectures.  Describe the operation of performance enhancements such as pipelines, dynamic scheduling, branch prediction, caches, and vector processors.  Describe the operation of virtual memory, modern architectures such as RISC, Super Scalar, VLIW (very large instruction word), and multi-core and multi-CPU systems.  Compare the performance of different architectures  Improve application performance for different CPU architectures.

Course Contents: Unit 1 Introduction and Review of Fundamentals of Computer Design: Introduction; Classes computers; Defining computer architecture; Trends in Technology; Trends in power in Integrated Circuits; Trends in cost; Dependability, Measuring, reporting and summarizing Performance; Quantitative Principles of computer design; Performance and Price-Performance; Fallacies and pitfalls; Case studies. Unit 2 Some topics in Pipelining, Instruction –Level Parallelism, Its Exploitation and Limits on ILP: Introduction to pipelining, ILP; Crosscutting issues, fallacies, and pitfalls with respect to pipelining; Basic concepts and challenges of ILP; Case study of Pentium 4, Fallacies and pitfalls. Introduction to limits in ILP; Performance and efficiency in advanced multiple-issue processors. Unit 3 Memory Hierarchy Design, Storage Systems: Review of basic concepts; Crosscutting issues in the design of memory hierarchies; Case study of AMD Opteron memory hierarchy; Fallacies and pitfalls in the design of memory hierarchies. Introduction to Storage Systems; Advanced topics in disk storage; Definition and examples of real faults and failures; I/O performance, reliability measures, and benchmarks; Queuing theory; Crosscutting issues; Designing and evaluating an I/O system – The Internet archive cluster; Case study of NetAA FAS6000 filer; Fallacies and pitfalls. Unit 4 Hardware and Software for VLIW and EPIC Introduction: Exploiting Instruction-Level Parallelism Statically, Detecting and Enhancing Loop-Level Parallelism, Scheduling and Structuring Code for Parallelism, Hardware Support for Exposing Parallelism: Predicated Instructions, Hardware Support for Compiler Speculation, The Intel IA-64 Architecture and Itanium Processor, Concluding Remarks.

Unit 5 Large-Scale Multiprocessors and Scientific Applications Introduction, Interprocessor Communication: The Critical Performance Issue, Characteristics of Scientific Applications, Synchronization: Scaling Up, Performance of Scientific Applications on Shared-Memory Multiprocessors, Performance Measurement of Parallel Processors with Scientific Applications, Implementing Cache Coherence, The Custom Cluster Approach: Blue Gene/L, Concluding Remarks.

Laboratory Work: 49 Using OpenMP and MPI / Intel Multicore Library / Processors / Arm Processors  Matrix Multiplication and Finding Trace of a Matrix  Sorting Algorithms (Sequential on Atom and Arm Processors / Parallel Versions on Multicore)  Counting Algorithms  Image Processing Algorithms  Search Algorithms

Text Book: 1. Hennessey and Patterson: “Computer Architecture A Quantitative Approach”, 4th Edition, Elsevier, 2012.

Reference Book: 1. Kai Hwang, Naresh Jotwani: Advanced Computer Architecture - Parallelism, Scalability, Programmability, 2nd Edition, Tata McGraw Hill, 2011.

Course Delivery: The course will be delivered through lectures, class room interaction, group discussion and exercises and self-study cases.

Course Assessment and Evaluation Scheme:

When/ Where Contributio To Max Evidence What (Frequency in n to Course Whom Marks Collected the course) Outcomes Thrice(Average

Internal t of the best two n Assessment 30 Blue Books 1,2,3,4 &5 e C will be Tests m I computed) s s s d E Online Course e o Online Recollection s h Students Twice 20 Certificate/Quiz s t Course/Quiz Skills e A Answers

t M

c End of Course

e S

r Standard (Answering i E 100 Answer scripts 1,2,3,4 &5 D Examination 5 of 10 E questions) 4, 5 & Students Effectiveness

t Feedback

n of Delivery t s e c d End of the of e m o - Questionnaire r s i h Students course instructions s t d e e n

s &

I End of Course M s

A Survey Assessment Methods

Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

Course Outcomes: At the end of the course the students should be able to: 50 1. Understand the classes of computers, the change in technology and the quantitative principles of computer design 2. Comprehend operation of instruction level parallelism in pipelines and the challenges of ILP through case study 3. Identify the crosscutting issues in memory hierarchy design and in the storage devices 4. Design Scheduling and Structuring Code for Parallelism and study of issues related to VLIW and EPIC 5. Discuss the large scale multiprocessors and their relevance to the scientific applications

Mapping Course Outcomes with Program Outcomes:

Course Outcomes Program Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Understand the classes of x x x x x computers, the change in technology and the quantitative principles of computer design Comprehend operation of x x x x x instruction level parallelism in pipelines and the challenges of ILP through case study Identify the crosscutting issues in x x x x x memory hierarchy design and in the storage devices Design Scheduling and Structuring x x x x x x Code for Parallelism and study of issues related to VLIW and EPIC Discuss the large scale x x x x x x multiprocessors and their relevance to the scientific applications

Semester: II Year: 2014-2016

51 Course Title: Embedded System Design Course Code: MCSE 222

Credits (L:T:P): 4:0:0 Core/ Elective: Core

Type of Course: Lecture Total Contact Hours: 56Hrs

Prerequisites: The student should have undergone the course on Microprocessors and Computer organization.

Course Objectives: This course will help students to achieve the following objectives:  Understand the basic components of embedded systems and steps in designing them.  List the salient features of the Cortex M0 and its programming.  Knowledge of the assembly instructions and C programming using CMSIS.  Learning the interfacing of various I/O devices with Cortex M0.  Understanding of the RTOS and its important concepts.

Course Contents:

Unit I Embedded Computing: Introduction, Complex Systems and Microprocessors Embedded Systems Design Process, design metrics, flow and optimization,. Specifications and modeling, Cortex-M0 Technical Overview, Implementation Features System Features , Debug Features, Advantages Unit II Programming model , Operation Modes and States , Architecture, Registers and Special Registers Behaviors of the Application Program Status Register (APSR), Memory System Overview, Stack Memory , Operations Introduction to Cortex-M0 Programming, Instruction Set

Unit III Instruction Usage Examples, implementation of various structures like loop, switch, function, subroutine, Memory System, Exceptions and Interrupts, Interrupt Control and System Control,

Unit IV Simple Application Programming, Simple Input /Output, Simple Interrupt Programming, Sensors, Thermistors, LDRs, LEDs 7 segment, LCD, Stepper motor , relays, Actuator, and ADCs

Unit V Embedded/ Real time tasks, real time systems, types of real time systems Quality of good real time systems. Real Time Operating System Concepts: Architecture of the kernel. Task, task scheduler. ISR. Semaphores. Mutex. Mail boxes. Message queues. Message queues Pipes. Signal. Memory management. Priority inversion problem.

Text Books: 52 1. Wayne Wolf “Computers as Components Principles of Embedded Computer System Design”, Second Edition, Elsevier, 2008. 2. Joseph Yiu, “ The Definitive Guide to the ARM Cortex-M0 “, 1st edition, Newnes - an imprint of Elsevier, 2011 3. Lyla B. Das, “Embedded Systems an integrated approach “ , 1st edition, Pearson, 2013. 4. KVVK Prasad, “Embedded/Real Time Systems: Concepts, Design and Programming “, 1st edition, Dreamtech, 2011 . 5. Rob Toulson ans Tim Wilmshurst “ Fast and Effective Embedded systems Design applying the ARM mbed” First edition 2012, Newnes - an imprint of Elsevier

Reference Books: 1. Frank Wahid/Tony Givargis “Embedded System Design A Unified Hardware/Software Introduction “ 1st Edition, John Wiley & Sons, 2002. 2. Raj Kamal , “Embedded Systems: Architecture ,Programming and Design”, Tata McGrawhill, New Delhi,2003. 3. Tammy Noergaard, “Embedded Systems Architecture- Comprehensive Guide for Engineer and Programmers – Elsevier Publication, 2005 4. Barnett, Cox & O’cull,”Embedded C programming”,Thomson ,2005.

Course Assessment and evaluation:

When/ Where Max Contribution To Evidence What (Frequency to Course Whom Collected in the Marks Outcomes course)

Internal Thrice(Average of the best two 30 Blue Books 1,2,4 & 5 s Assessment will be d

o Tests computed) h t CIE e

M Once

t

n Surprise (Summation of

e 20 Quiz ONLINE 1,2 & 3,4 Quiz Students the two will be m s

s computed) e s s

A End of Course

t

c (Answering Standard Answer e

r SEE 100 1,2, 3,4 & 5 i Examination scripts

D 5 of 10 questions)

Students 1, 2 & 3,

t

n Feedback Effectiveness of t s e c d End of the Delivery of e m o

r Students - Questionnaire s i h course instructions & s t d End of Course e e n

s Assessment I M s

A Survey Methods

Course Outcomes: At the end of the course students should be able to: 53 1. Identify the difference between a general purpose computing system and embedded system 2. List the advantages of using Cortex M0 for designing embedded systems over other microcontrollers 3. Programming cortex M0 in assembly and C language using CMSIS features . 4. Able to easily interface cortex m0 to the various I/O. devices and interfaces. 5. Appreciate the kernel of RTOS and its various deployment for embedded systems.

Mapping Course Outcomes with Programme Outcomes:

Course Outcomes Program Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Identify the difference between a general purpose computing system X X X X X and embedded system.

List the advantages of using Cortex M0 for designing embedded X X X X X X systems over other microcontrollers.

Programming cortex M0 in assembly and C language using X X X X X X X CMSIS features.

Able to easily interface cortex m0 to the various I/O. devices and X X X interfaces.

Appreciate the kernel of RTOS and its various deployment for X X X X X X embedded systems.

Semester: II Year: 2014 - 2016 54 Course Title: Formal Models in Computer Science Course Code: MCSE 223 Credits (L:T:P) : 3:0:1 Core/ Elective: Core Type of course: Lecture/ Laboratory/ /Project/ Total Contact Hours: 56 assignment

Prerequisites: Discrete Mathematics, Software Engineering

Course Objectives: The Objectives of this course are to:  Discuss the role of formal verification techniques in the context of software validation and testing, and compare the benefits with those of model checking.  Explain the potential benefits and drawbacks of using formal specification languages.  Using a common formal specification language, formulate the specification of a simple software system and demonstrate the benefits from a quality perspective.

Course Contents: Unit 1 Propositional Logic: Declarative sentences, Natural deduction, Propositional logic as a formal language, Semantics of propositional logic, Normal forms. Unit 2 Predicate Logic: The need for a richer language, Predicate logic as a formal language, Proof theory of predicate logic, Semantics of predicate logic, Undecidability of predicate logic, Micromodels of software. Unit 3 Verification by Model Checking: Motivation for verification, Linear-time temporal logic, Model checking, Branching-time logic, CTL* and the expressive powers of LTL and CTL. Unit 4 Program Verification: Need for specifying and verifying code, A framework for software verification, Proof calculus for partial correctness and total correctness, Programming by contract. Unit 5 Introduction to Z: Basic concepts; Z notation in Propositional logic and Predicate logic.

Laboratory Work: 1. Design, develop and run a program in ALLOY (or in any equivalent system) to model a Software Package Dependency System. Make suitable assumptions regarding the system. The model should allow checking to see if prerequisites in the form of libraries or other packages are present for all components in the system 2. Design, develop and run a program in NuSMV (or in any equivalent system) to model and solve the Mutual Exclusion problem. 3. Design, develop and run a program in NuSMV (or in any equivalent system) to model and simulate the Alterate Bit Protocol. 4. Design, develop and run a program in NuSMV (or in any equivalent system) to model and solve the planning problem of Ferry Man. 5. Design, develop and run a program in NuSMV (or in any equivalent system) to model and solve the Dining Philosophers Problem.

Text Books: 1. Michael Huth and Mark Ryan: Logic in Computer Science, 2nd Edition, Cambridge University Press, 2011.

55 2. Jim Woodcock , Jim Davies: Using Z Specification, Refinement and Proof, Prentice Hall, 1996. (Online Edition: http://www.usingz.com/text/online/)

Reference Books: 1. J M Spivey, “The Z notation: A reference Manual”, 2nd edition, PHI, 1992. 2. J Bowen “ Information about the Z formal specification notation”. (http:// www.cis.ohio-state.edu/hypertext/faq/usenet/z-fq/faq.html.)

Course Delivery: The course will be delivered through lectures, class room interaction, group discussion, lab exercises and projects.

Course Assessment Methods: CIE Scheme: Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes Thrice (Average Internal

of the best two t Assessment 30 Blue Books 1-5 n will be

e Tests computed) m CIE s s Term paper s d Summation of e o and lab Soft copies s h Students lab and Paper 20 1-5 s t Exercise of the work e A presentation

t

M evaluation c

e End of Course

r Semester i (Answering Answer D SEE End 100 1-5 5 of 10 scripts Examination questions)

t Students

n t s e Feedback 3-5, c d End of the Questionnai e m o Relevance of r - s i h Students course re s t d the course e e n

s End of Course I M s Survey A

Course Outcomes: At the end of the course the students will be able to: 1. Apply the concept of propositional language as a formal language. 2. Understand the Concepts of Predicate Logic and micromodels of Software. 3. Demonstrate an understanding of Verification of Software Systems by Model Checking and expressive power of LTL and CTL. 4. Identify the need for specifying and Verifying the Code and a framework for software verification. 5. Understand the concepts of Z notation in Propositional logic and Predicate logic

56 Mapping Course Outcomes with Program Outcomes:

Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Apply the concept of propositional language as X X X X X X a formal language Understand the Concepts X X X X X X of Predicate Logic and micromodels of Software Demonstrate an understanding of Verification of Software X X X X X X Systems by Model Checking and expressive power of LTL and CTL Identify the need for specifying and Verifying the Code and a X X X X X X framework for software verification Understand the concepts of Z notation in X X X Propositional logic and Predicate logic

57 Semester: II Year: 2014-2016 Course Title: Embedded Systems Laboratory Course Code: MCSE 224 Credits (L:T:P) : 0:0:1 Core/ Elective: Core Type of course: Practical Total Contact Hours: 14

Prerequisites: The student must have knowledge in computer organization and microprocessors.

Course Objectives: This course will help students to achieve the following objectives:  Study the architecture of ARM Cortex M0 processor and its instructions set.  Learn assembly and c programming in ARM CortexM0.  Interfacing of ARM Cortex M0 processor with LCD, 7 segment display, keyboard, and AD convertor.  Using UART for transmitting and receiving data. Interrupt and timers.  Design embedded system projects ARM CortexM0 processor with Nuvoton board.

Course Contents: Experiments that are to be conducted as a part of the course

1. Introduction to the nuvoton 140 board, introduction to all the ports peripherals Introduction to Kiel software 4.0 simulator and writing simple assembly programs 2. Program for 64 bit addition, subtraction, multiplication, copy 10 locations , swap 10 memory locations, factorial, use of fuctions, use of bit extraction, use of bit clear , sign extention 3. Write program to use a counter, using branch instruction square root, evaluating a equation 4. programs in c introduction to cmsis files. Using gpio use rgb leds 5. program to use the leds to toggle using gpio 6. GPIO to scan 3x3 keypad (Smpl_7seg_Keypad) 7. Exercise : GPIO controlled by 3x3 keypad (Smple_GPIO_Keypad) 8. Exercise : GPIO to read Body IR Sensor (Smpl_GPIO_BodyInfrared) 9. Exercise : GPIO interfacing with LCM (Smpl_GPIO_LCM16x2) 10. Smpl_GPIO_Buzzer 11. seg_display routine 12. Smpl_GPIO_Interrupt 13. using ADC to read variable resistor (Smpl_ADC_VR1) 14. Exercise using ADC using variable resistor and display on LCD using built in function

Text Book: 1. Wayne Wolf “Computers as Components Principles of Embedded Computer System Design”, Second Edition, Elsevier, 2008. 2. Joseph Yiu, “ The Definitive Guide to the ARM Cortex-M0 “, 1st edition, Newnes - an imprint of Elsevier, 2011 3. Lyla B. Das, “Embedded Systems an integrated approach “ , 1st edition, Pearson, 2013. 4. Rob Toulson ans Tim Wilmshurst “ Fast and Effective Embedded systems Design applying the ARM mbed” First edition 2012, Newnes - an imprint of Elsevier

58 Course Outcomes (CO) At the end of the course the students should be able to: 1. Know Architecture of ARM Cortex M0 processor and its instructions set. 2. Able to write Assembly and c programming in ARM CortexM0 using CMSIS files 3. Interfacing of ARM Cortex M0 processor with LCD, 7 segment display, keyboard , AD convertor 4. Able to program UART, Interrupt and timers 5. Embedded system projects ARM CortexM0 processor with Nuvoton board

Course Assessment and Evaluation:

When/ Where Contribution to To Max Evidence What (Frequency Course Whom Marks Collected in the Outcomes course) One internal

Internal Observation t test be 30 1,2 3,4,5

n Assessment Tests sheets s

e

t computed d CIE c m o e s h

r Students 20 Working s t i Class-room Surprise Quiz Project 1,2,3,4,5 e e

D model s M s

A Answer SEE Standard Examination Lab test 50 1,2,3,4 &5 scripts Students 1, 2 & 3,

t

n Feedback Effectiveness of t s e c d End of the Delivery of e m o - Questionnaire r s i h Students course instructions & s t d End of Course e e n

s Assessment I M

s Survey

A Methods

Mapping Course Outcomes with Programme Outcomes:

Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Know Architecture of ARM Cortex M0 processor X X X X X and its instructions set.

Able to write Assembly and c programming in ARM CortexM0 using X X X X X X CMSIS files

Interfacing of ARM Cortex M0 processor with LCD, X X X X X X X 7 segment display, keyboard , AD convertor Able to program UART, X X X Interrupt and timers. Embedded system projects ARM CortexM0 X X X X X X X X X processor with Nuvoton board

59 Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13

60 Semester: II Year: 2014-2016 Course Title: High Performance Computing Course Code: MCSE E225 Laboratory Credits (L:T:P) : 0:0:2 Core/ Elective: Core Type of course: Practical Total Contact Hours: 28

Prerequisites: The student must have knowledge in C and Operating System.

Course Objectives: This course will help students to achieve the following objectives:  Study the Concept of parallel architecture.  Learn C and C++ program of # pragma in openmp().  Understand the concept of combined parallel Work sharing Constructs.  Explore the concept of synchronization, data environment class of openmp and Message passing.  Challenges in Debugging parallel programs, Debugging MPI programs and Performance analysis of MPI programs.

Course Contents: Experiments that are to be conducted as a part of the course

1. Introduction to Openmp(),programs on #pragrma using C 2. Simples programs on omp Sections, omp for and omp single 3. Exercise on thread private directives. 4. Exercise on clauses on last private reduction, copy in and shared. 5. Programming Paradigms 6. Distributed Architecture 7. Introduction to MPI 8. Point to Point MPI calls 9. Message passing MPI calls 10. Sample MPI programs 11. Challenges in Debugging parallel programs 12. Debugging MPI programs 13. Performance analysis of MPI programs

Text Book: 1. Parallel Programming in OpenMP ,Rohit Chandra , Leo Dagum , Dror Maydan , David Kohr, Jeff McDonald , Ramesh Menon. 2. Multi-core programming,Increase performance through software multi-yhreading by Shameem Akhter and Jason Roberts.

Course Outcomes (CO) At the end of the course the students should be able to: 1. Understand the concept of multithreading and multi process. 2. Able to write the programs on openmp() 3. Able to write the programs on MPI 4. Explain and illustrate the concepts of directives and classes of open MP 5. Performance analysis of MPI programs

61 Course Assessment and Evaluation:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes

First internal t Internal Observation n test be 20 1,2 3 e Assessment Test1 sheets m computed s s s d CIE e o Second s h Internal Students 30 Observation s t internal test be 1,2,3,4,5 e A

Assessment Test2 sheets t M

c computed e r

i Standard Answer

D SEE Lab test 50 1,2,3,4 &5 Examination scripts 1, 2 & 3,

t

n t s Effectiveness of e c d e m o Students End of the Delivery of r s i h Students - Questionnaire s t d Feedback course instructions & e e n s I M s Assessment A Methods

Mapping Course Outcomes with Programme Outcomes:

Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Understand the concept of multithreading and X X X X multi process. Able to write the X X X X programs on openmp() Able to write the X X X X programs on MPI Performance analysis of X X X X openmp programs Performance analysis of X X x X MPI programs

62 Semester: III Year: 2014-2016 Course Title: Big Data and Data Science Course Code: MCSE313 Laboratory Credits (L:T:P) : 0:0:2 Core/ Elective: Core Type of Course: Practical Total Contact Hours: 28 Hrs

Prerequisites: Nil Course Objectives The objectives of this course are to  Understand how organizations these days use their data a decision supporting tool and to build data - intensive products and services.  Understand the collection of skills required by organizations to support these functions has been grouped under the term “Data Sciences”  Understand the basic concepts of big data, methodologies for analyzing structured and unstructured data  Understand the relationship between the Data Scientist and the business needs.

Course Contents: Experiments that are to be conducted as a part of the course:

1. Data Stores and Data kind 2. Data Subsets in Big Data 3. Providing Structure to Unstructured Data 4. Data Types 5. Classes of Analytic Techniques 6. Learning Models 7. Data Veracity & Application of Domain Knowledge 8. Data Clustering 9. Normalising and Adjusting Data 10. Text processing and information retrieval 11. Programming model 12. Hadoop Approach 13. HDFS 14. MapReduce in Hadoop

Reading Material: (In no particular order of precedence) 1. Principles of Big Data: Preparing, Sharing and Analyzing Complex Information, Jules J Berman, First Edition, MK Publishers, 2013. 2. The Field Guide to Data Science:http://www.boozallen.com/media/file/TheFieldGuidetoDataScience.pdf 3. Understanding Big Data: ftp://129.35.224.12/software/tw/Defining_Big_Data_through_3V_v.pdf 4. Ghemawat et.al Google, MapReduce: Simplied Data Processing on Large Clusters http://static.googleusercontent.com/media/research.google.com/en//archive/ma preduceosdi04.pdf 5. Hadoop Tutorial: http://developer.yahoo.com/hadoop/tutorial/

Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practice exercises and practical sessions.

63 Course Assessment and evaluation:

When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes

Answer C Lab Tests Twice 40 1,2 ,3,4 & 5 t Sheets n

s I

e t d

c E m o Practical Data e s

h Once 10 1,2,3,4 &5 r Students s t i assignments sheets e e D s M s S

A Standard Answer E End of Course 100 1,2,3,4&5 Examination scripts E Students 1,2,3,4&5 n

s t e d Feedback Effectiveness of c o m e s h r Questionna Delivery of i t

s Students End of the course - d e

e End of Course ire instructions & n s M I

s Survey Assessment t A Methods

Course Outcomes At the end of the course students should be able to: 1. Identify the differences between Big Data and Small Data 2. Design the programs to analyze big data 3. Demonstrate the analysis of big data 4. Analyze the Ontologies, Semantics, Introspection, Data Integration and Measurement techniques of big data 5. Illustrate the stepwise approach to big data analysis and understand the legalities and societal issues involved

Mapping Course Outcomes with Programme Outcomes:

Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Identify the differences between Big Data and X X X Small Data Design the programs to X X X X X analyze big data Demonstrate the analysis X X X X X of big data Analyze the Ontologies, Semantics, Introspection, Data Integration and X X X X Measurement techniques of big data Illustrate the stepwise approach to big data analysis and understand X X X X X X X X the legalities and societal issues involved

64 Semester I Year 2014-2016 Course Title: Computer Systems Performance Course Code: MCSE E11 Analysis Credits (L:T:P) : 3:0:0 Core/ Elective: Elective Type of Course: Lectures Total Contact Hours: 42 Hrs

Prerequisites: Students should have undergone a course on probability theory, matrices, software engineering aspects and queuing theory

Course Objectives: The objectives of this course are:  Learn techniques to approach performance problems.  Compare two systems and determine the optimal value of a parameter.  Identify performance bottlenecks and characterize the load on a system.  Select the number and size of system components and predict the performance of future workloads.  Understand the use of different analysis strategies like measurement, simulation, analytical modeling.  Learn mathematical techniques for performance analysis.

Course Contents: Unit 1 Introduction: The art of Performance Evaluation; Common Mistakes in Performance Evaluation, A Systematic Approach to Performance Evaluation, Selecting an Evaluation Technique, Selecting Performance Metrics, Commonly used Performance Metrics, Utility Classification of Performance Metrics, Setting Performance Requirements.

Unit 2 Workloads, Workload Selection and Characterization: Types of Work loads, addition instructions, Instruction mixes, Kernels; Synthetic programs, Application benchmarks, Popular benchmarks. Work load Selection: Services exercised, level of detail; Representativeness; Timeliness, Other considerations in workload selection. Work load characterization Techniques: Terminology; Averaging, Specifying dispersion, Single Parameter Histograms, Multi Parameter Histograms, Principle Component Analysis, Markov Models, Clustering.

Unit 3 Monitors, Program Execution Monitors and Accounting Logs: Monitors: Terminology and classification; Software and hardware monitors, Software versus hardware monitors, Firmware and hybrid monitors, Distributed System Monitors, Program Execution Monitors and Accounting Logs, Program Execution Monitors, Techniques for Improving Program Performance, Accounting Logs, Analysis and Interpretation of Accounting log data, Using accounting logs to answer commonly asked questions.

Unit 4 Capacity Planning and Benchmarking: Steps in capacity planning and management; Problems in Capacity Planning; Common Mistakes in Benchmarking; Benchmarking Games; Load Drivers; Remote-Terminal Emulation; Components of an RTE; Limitations of RTEs.

Experimental Design and and Analysis: Introduction: Terminology, Common mistakes in experiments, Types of experimental designs, 2k Factorial Designs, Concepts, 65 Computation of effects, Sign table method for computing effects; Allocation of variance; General 2k Factorial Designs, General full factorial designs with k factors: Model, Analysis of a General Design, Informal Methods.

Unit 5 Queuing Models: Introduction: Queuing Notation; Rules for all Queues; Little’s Law, Types of Stochastic Process. Analysis of Single Queue: Birth-Death Processes; M/M/1 Queue; M/M/m Queue; M/M/m/B Queue with finite buffers; Results for other M/M/1 Queuing Systems. Queuing Networks: Open and Closed Queuing Networks; Product form networks, queuing Network models of Computer Systems. Operational Laws: Utilization Law; Forced Flow Law; Little’s Law; General Response Time Law; Interactive Response Time Law; Bottleneck Analysis; Mean Value Analysis and Related Techniques; Analysis of Open Queuing Networks; Mean Value Analysis; Approximate MVA; Balanced Job Bounds; Convolution Algorithm, Distribution of Jobs in a System, Convolution Algorithm for Computing G(N), Computing Performance using G(N), Timesharing Systems, Hierarchical Decomposition of Large Queuing Networks: Load Dependent Service Centres, Hierarchichal Decomposition, Limitations of Queuing Theory.

Text Book: 1. Raj Jain: The Art of Computer Systems Performance Analysis, 1st edition, John Wiley and Sons, 2012.

Reference Books: 1. Paul J Fortier, howard E Michel: computer Systems Performance Evaluation and prediction, 1st edition, Elsevier, 2009. 2. Trivedi K S: Probability and Statistics with Reliability, Queuing and Computer Science Applications, 1st edition, PHI, 2011.

Course Delivery: The course will be delivered through lectures, presentations, classroom discussions, and case studies. Questions for CIE and SEE are designed in accordance with the Bloom’s taxonomy

What To When/Where Max Evidence Contributio Whom (Frequency in Mark Collected n to course the course) outcomes

Internal Thrice (Average 25 Blue Books 1,2,3,4 Assessme of the best two

s nt Tests will be d

o CIE computed) h t e t M

c Students

t Quiz and 2 quizzes and 2 25 Quiz and 1,2,3,4 e n r i

e Home home work Home Work D

m Work assignments Marks s s e s

s SEE Semester End of Course A End (Answering 5 of 100 Answer scripts 1,2,3,4 Examinati 10 questions) on

t t

s Students Questionnaire 1,2,3,4,Relev c n d e e

o Feedback End of the -

r ance of the i h m t d Students s course course e n

s End of I e M

s Course s

A Survey

66 Course Outcomes: 1. Develop an understanding of the issues of reliability and its evaluation in the design of computer systems, and to emphasize their importance. 2. Examine the concepts and techniques for redundant designs which can make a system fault tolerant, i.e. still functioning correctly in the presence of failures, in hardware, software and communications. 3. Discuss techniques for developing distributed reliable hardware and software systems. 4. Examine testing techniques and algorithms in hardware, software and communications.

Mapping Course Outcomes with program Outcomes:

Course Outcomes Program Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Develop an understanding of the issues of reliability and its evaluation in the X X X X X X X X design of computer systems, and to emphasize their importance Examine the concepts and techniques for redundant designs which can make a system fault tolerant, i.e. X X X X X X X X X X still functioning correctly in the presence of failures, in hardware, software and communications Discuss techniques for developing distributed X X X X X X X X X X X X reliable hardware and software systems. Examine testing techniques and algorithms X X X X X X in hardware, software and communications.

67 Semester: II Year: 2014-2016 Course Title: : Advances in Artificial Intelligence Course Code: MCSE E13 Credits (L:T:P) : 3:0:0 Core/ Elective: Elective Type of course: Lecture/ Laboratory/ /Project/ Total Contact Hours: 42 assignment

Prerequisites: Knowledge of any advance programming language

Course Objectives: The objectives of this course are to:  Present to the students an understanding of the basic concepts and the modern view of Artificial Intelligence and its applications and the agent approach to AI, agent types, environments and their applications  Identify the problem solving techniques that use different search methods and provide an understanding of different search methods as informed and uninformed search and their applications.  Provide an ability to assess the applicability, strengths, and weaknesses of the different knowledge representation and inference methods.  Present an understanding of Game Playing and statistical reasoning techniques and to Identify the importance of Genetic/ Biological inspired algorithms to solve computational problems.  Analyze the concepts of Natural Language Processing, different learning methods and planning techniques in solving computational problems and to develop an interest in the field of AI, sufficient to take more advanced and related subjects.

Course Contents: Unit 1 Introduction: AI problems, AI technique, Problem as state space search, problem characteristics, production systems, types of production systems, Design of Search programs. Heuristic search techniques: Generate and test, Hill climbing, Best first search, Problem reduction, Constraint satisfaction, Means-Ends Analysis.

Unit 2 Informed search, exploration, constraint satisfaction, adversial search, logical agents: Heuristic functions, on-line search agents and unknown environment, backtracking search for CSPs, adversial search, knowledge-based agents, propositional logic reasoning patterns in propositional logic, effective propositional inference, agents based on propositional logic.

Unit 3 Knowledge Representation: Theorem proving using Predicate logic, Resolution, Natural Deduction, Knowledge representation using Rules, Forward versus Backward Reasoning, Matching, Control Artificial Knowledge, Knowledge Structures: Semantic Networks, Frames, Conceptual Dependency diagrams, Scripts.

Unit 4 Game Playing: Minimax search procedure, adding alpha-beta cutoffs, additional refinements, Iterative deepening. Statistical Reasoning: Probability and Bayes theorem, Certainty factors and Rules based systems, Bayesian Networks, Dempster Shafer theorem.

68 Genetic Algorithms: Survival of the fittest principle in Biology, Genetic Algorithms, Significance of Genetic operators, termination parameters, Evolving Neural nets, Ant Algorithms.

Unit 5 Planning: Components of planning system, goal stack planning, nonlinear planning using constraint posting, Hierarchical planning, and Reactive systems. Natural Language Processing: Steps in NLP, Syntactic processing, Semantic analysis, Discourse and Pragmatic processing, Statistical NLP, Spell checking. Learning: Rote learning, learning by taking advice, learning in problem solving, Learning from examples, Explanation based learning, Discovery, Analogy, Formal learning theory, NN learning and Genetic learning.

Text Books: 1. E.Rich, Kevin Knight, shivashankar B Nair, Artificial Intelligence, 3rd edition, TMH Companies 2011. 2. Stuart Russel, Peter Norvig, Artificial Intelligence, A modern Approach, 2 edition, Pearson education, 2012. Reference Books: 1. Nils J. Nilsson: “Principles of Artificial Intelligence”, 1st edition, Elsevier, 2002. 2. George F Luger “Artificial Intelligence Structures & Strategies for Complex Problem Solving”, 5th edition, pearson education, 2011.

Course Delivery: The course will be delivered through lectures, class room interaction, group discussion, lab exercises and projects.

Course Assessment and Evaluation:

When/ Where Contribution To Max Evidence What (Frequency to Course Whom Marks Collected in the Outcomes course) Thrice Internal (Average of Assessment 30 Blue Books 1-5 the best Tests two)

s Incorporating

d Soft copies the AI o (working h CIE t Techniques model) the e

such as search, t M Review 1 any

c

t learning and 20 1,2,4,5

e Students Review 2 application n r

i inference e built using D

m methods in

s the AI

s building AI

e concepts.

s application s End of A Course Semester End Answer SEE (Answering 100 1-5 Examination scripts 5 of 10 questions) Students

e t s

c Feedback d

m End of the 1-5, Relevance e s

o - Questionnaire t r s

i Students h course of the course n t e d End of Course s e n s

I Survey M A

69 CIE Scheme: Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

Course Outcomes: At the end of the course students will be able to: 1. Understand the modern view of AI and its application based on agent philosophy and to analyze the heuristic search techniques. 2. Demonstrate an understanding of various search algorithms commonly used in AI and their applications, also to identify the importance of Constraint satisfaction problems and the use of logical agents for inferring knowledge. 3. Understand the various knowledge representation and inference techniques and implement the same in any form. 4. Demonstrate an understanding of game playing techniques, Statistical reasoning methods and the application of genetic algorithms in building AI systems. 5. Recognize the components of planning system, steps involved in NLP and the different learning methods in AI and to use them in building intelligent systems.

Mapping Course Outcomes with Program Outcomes: Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Understand the modern view of AI and its application based on agent X X X X X X philosophy and to analyze the heuristic search techniques. Demonstrate an understanding of various search algorithms commonly used in AI and their applications, also to identify the X X X X X X X X importance of Constraint satisfaction problems and the use of logical agents for inferring knowledge. Understand the various knowledge representation and inference X X X X X X X techniques and implement the same in any form. Demonstrate an understanding of game playing techniques, Statistical reasoning methods and the X X X X X X X X application of genetic algorithms in building AI systems. Recognize the components of planning system, steps involved in NLP and the different learning X X X X X X X X methods in AI and to use them in building intelligent systems

70 MCSE E14: Fault Tolerant Systems (3:0:0)

Course Objectives: Many computer applications exist where failure of the computer would be very expensive. Examples include real-time embedded computers which control aircraft, spacecraft, robots, or industrial plants, and computers used in stock markets. Such applications require extremely high levels of reliability, which can only be provided by fault-tolerant computers, i.e., machines which can continue to function despite the failure of a certain fraction of their components. In this course, we will study the design of such computers, and learn how to estimate their reliability. This course will help students to achieve the following objectives: (i) provide the basic skill for the design of fault tolerant systems. Concepts of reliability, availability, safety, maintainability, testability, dependability (ii)Understand Software testing and fault tolerant systems (iii) Information redundancy, using some types of error detecting/correcting codes (iv) Study of quantitative methods for reliability evaluation (v) Case studies of practical fault tolerant systems

Topics: Fault classification, Hardware Fault Tolerance, Information Redundancy, Fault-Tolerant Networks, Software Fault Tolerance, Checkpointing, Defect Tolerance in VLSI Circuits, Fault Detection in Cryptographic Systems, Case Studies

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: (i) develop an understanding of the issues of reliability and its evaluation in the design of computer systems, and to emphasize their importance.(ii) Examine the concepts and techniques for redundant designs which can make a system fault tolerant, i.e. still functioning correctly in the presence of failures, in hardware, software and communications. (iii) Discuss techniques for developing distributed reliable hardware and software systems. (iv) Examine testing techniques and algorithms in hardware, software and communications.

Detailed Syllabus: Unit 1 Introduction: Fault classification; Types of Redundancy; Basic measures of Fault Tolerance. Hardware Fault Tolerance: The rate of hardware failures; Failure rate, Reliability, and Mean Time To Failure; Canonical and Resilient Structures; Other Reliability Evaluation Techniques; Fault-Tolerance – Processor-Level techniques; Byzantine Failures.

Unit 2 Information Redundancy: Coding; Resilient Disk Systems; Data Replication; Algorithm-Based Fault Tolerance. Fault-Tolerant Networks: Measures of Resilience; Common Network Topologies and Their Resilience; Fault-Tolerant Routing.

Unit 3 Software Fault Tolerance: Acceptance Tests; Single-Version Fault Tolerance; N- Version Programming; Recovery Block Approach; Preconditions, Postconditions, and Assertions; Exception Handling; Software Reliability Models; Fault-Tolerant Remote Procedure Calls.

Unit 4 Checkpointing: What is Checkpointing? Checkpoint Level; Optimal Checkpointing – An Analytical Model; Cache-Aided Rollback Error Recovery; Checkpointing in Distributed

71 Systems; Checkpointing in Shared Memory Systems; Checkpointing in Real-Time Systems; Other uses of Checkpointing. Defect Tolerance in VLSI Circuits: Manufacturing Defects and Circuit Faults; Probability of Failure and Critical Areas; Basic Yield Models; Yield Enhancement through Redundancy.

Unit 5 Fault Detection in Cryptographic Systems: Overview of Ciphers; Security Attacks through Fault Injection; Countermeasures. Case Studies: Non-Stop Systems; Stratus Systems; Cassini Command and Data Sub- System; IBM G5; IBM Sysplex; Itanium.

Text Book: 1. Israel Koren, C. Mani Krishna: “Fault-Tolerant Systems”, 1st edition, Elsevier, 2009.

Reference Books: 1. D. K. Pradhan (Ed):”Fault Tolerant Computer Systems Design”, Prentice Hall, 1996. 2. K. S. Trivedi: “Probability, Statistics with Reliability, Queuing and Computer Science Applications”, 1st edition, John Wiley, 2011.

72 MCSE E15: Digital Image Processing (3:0:0)

Course Objectives: Visual information plays an important role in many aspects of our life. Much of this information is represented by digital images. Digital image processing is ubiquitous, with applications including television, tomography, photography, printing, robot perception, and remote sensing. This is an introductory course to the fundamentals of digital image processing. It emphasizes general principles of image processing, rather than specific applications. This course will help students to achieve the following objectives: (i) To study the image fundamentals and mathematical transforms necessary for image processing. (ii) To study the image enhancement techniques (iii) To study image restoration procedures (iv) To study the image compression procedures. (v) To study the image segmentation and representation techniques.

Topics: Origins of Digital Image Processing, Image Enhancement in the Spatial Domain, Image Enhancement in the Frequency Domain, Image Restoration, Color Fundamentals, Image Transformation, Image and Video Compression, Image Segmentation and Object Recognition

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: (i) understanding of digital image fundamentals, image digitization, image display hardware and software (ii) ability to understand and apply image enhancement and restoration techniques (iii) understanding of image encoding techniques, image segmentation approaches (iv)introduction to pattern recognition and feature detection approaches. (v) ability to apply image processing techniques in both the spatial and frequency (Fourier) domains

Detailed Syllabus: Unit 1 Introduction: Origins of Digital Image Processing, examples, Fundamental Steps in Digital Image Processing, Components of an Image Processing System, Digital Image Fundamentals: Elements of Visual Perception, A Simple Image Formation Model, Basic Concepts in Sampling and Quantization, Representing Digital Images, Zooming and Shrinking Digital Images, Some Basic Relationships between Pixels, Linear and Nonlinear Operations.

Unit 2 Image Enhancement in the Spatial Domain: Some Basic Gray Level Transformations, Histogram Processing, Enhancement Using Arithmetic/Logic Operations, Basics of Spatial Filtering, Smoothing Spatial Filters, Sharpening Spatial Filters, Combining Spatial Enhancement Methods. Image Enhancement in the Frequency Domain: Background, Image Enhancement in the Frequency Domain, Introduction to the Fourier Transform and the Frequency, Domain, Smoothing Frequency-Domain Filters, Sharpening Frequency Domain Filters, Homomorphic Filtering.

Unit 3 Image Restoration: A Model of the Image degradation/Restoration process, Noise Models, Restoration in the Presence of Noise Only–Spatial Filtering, Periodic Noise Reduction by Frequency Domain Filtering, Linear, Position-Invariant Degradations , Estimating the Degradation Function, Inverse Filtering ,Minimum Mean Square Error (Wiener) Filtering.

73 Color Fundamentals: Color Models, Pseudo color Image Processing, Basics of Full-Color Image Processing, Color Transformations, Smoothing and Sharpening, Color Segmentation, Noise in Color Images, Color Image Compression.

Unit 4 Image Transformation: Discrete Cosine Transforms, Walsh Hadmard Transforms, Wavelet Transforms and Multiprocessing, Background, Multiresolution Expansions, Wavelet Transforms in one Dimension, Wavelet Transforms in Two Dimensions, Wavelet Packets. Image and Video Compression: Fundamentals, Image Compression Models, Lossless compression Methods: Huffman coding, run length coding, LZ coding, Arithmetic coding, Lossy Compression: Gray level Run length coding, Block truncation coding, vector quantization, Differential predictive coding, Transform coding , Hybrid coding,

Unit 5 Image Segmentation and Object Recognition: Detection of Discontinuities, Edge Linking and Boundary Detection, Thresholding, Region-Based Segmentation, Patterns and Pattern Classes, Recognition Based on Decision-Theoretic Methods, Structural Methods.

Text Books: 1. Rafel C Gonzalez and Richard E. Woods: Digital Image Processing, PHI 3rd Edition 2012. 2. A. K. Jain: Fundamentals of Digital Image Processing, 1st edition, Pearson, 2011.

Reference Books: 1. Z. Li and M.S. Drew: Fundamentals of Multimedia, 1st edition, Pearson, 2011. 2. S.Jayaraman, S.Esakkirajan, T.Veerakumar: Digital Image Procesing, 1st edition, TataMcGraw Hill, 2011. 3. Scott.E.Umbaugh: Computer Vision and Image Processing, Prentice Hall, 1997. 4. Braunl, Parallel Image Processing, 1st edition,(Yes Dee Publishing Pvt Ltd), Springer, 2008.

74 MCSE E17: Advances in Compiler Design (3:0:0)

Course Objectives: The aim of this course is to provide students with an overview of the issues that arise in Compiler construction as well as to throw light upon the significant theoretical developments and tools that are deep rooted into computer science. This course will basically introduce the major phases of Compiler construction and also its theoretical aspects including regular expressions, context free grammars, Finite Automata etc. As a part of this course the students are required to design a compiler passing through the phases namely Lexical Analysis, Syntax Analysis, Semantic Analysis and Intermediate code generation for a small language This course will help students to achieve the following objectives: (i) To introduce the major concept areas of language translation and compiler design (ii) To develop an awareness of the function and complexity of modern compilers.(iii) To provide practical, hands on experience in compiler design. (iv) To understand the theory and practice of compiler implementation. (v) To learn compiler parsing techniques, construction of abstract syntax trees, symbol tables, intermediate machine representations and actual code generation.

Topics: Language processors, Topics in Code Generation, Machine-Independent Optimizations, Instruction-Level Parallelism, Optimizing for Parallelism and Locality.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: (i) Understand lexical analysis, syntactic analysis, semantic analysis. (ii) Understand typechecking, intermediate code generation, symbol tables, run-time organization. (iii)Analyze code generation, optimization, data-flow analysis, and their implementation. (iv) Understand and implement an example compiler for a high level language. (v) Understand and implement parallelization, vectorization, and VLIW in compilers.

Detailed Syllabus:

Unit 1 Introduction and Review: Language processors; The structure of a Compiler; The evolution of programming languages; The science of building a compiler; Applications of Compiler technology; Programming language basics.

Unit 2 Topics in Code Generation: Issues in the design of Code Generator; Peephole optimization; Register allocation and assignment; Instruction selection by tree rewriting; Optimal code generation for expressions; Dynamic programming code generation.

Unit 3 Machine-Independent Optimizations: The principle sources of optimization; Introduction to data flow analysis; Foundations of data flow analysis; Constant propagation; Partial-redundancy elimination; Loops in flow graphs; Region-based analysis; Symbolic analysis.

Unit 4 Instruction-Level Parallelism: Process architectures; Code-scheduling constraints; Basic-block scheduling; Global code scheduling; Software pipelining.

75 Unit 5 Optimizing for Parallelism and Locality: Basic concepts; An example of matrix multiplication; Iteration spaces; Affine array indexes; Data reuse; Array data – dependence analysis; Finding synchronization-free parallelism; Synchronization between parallel loops; Pipelining; Locality optimizations.

Text Book: 1. Alfred V Aho, Monica S. Lam, Ravi Sethi, Jeffrey D Ullman: Compilers - Principles, Techniques and Tools, 2nd Edition, Pearson, 2012.

Reference Books: 1. Charles N. Fischer, Richard J. leBlanc, Jr.: Crafting a Compiler with C, Pearson, 1991. 2. Andrew W Apple: Modern Compiler Implementation in C, Cambridge University Press, 1997. 3. Kenneth C Louden: Compiler Construction Principles & Practice, 1st edition, Cengage Learning, 2011.

76 MCSE E18: Data Structures and Algorithms (3:0:0)

Course Objectives: When developing software it is important to know how to solve problems in a computationally efficient way. Algorithms describe methods for solving problems under the constraints of the computers resources. Often the goal is to compute a solution as fast as possible, using as few resources as possible. To solve a problem efficiently it may be necessary to use data structures tailored for the particular problem(s) at hand. A data structure is a specific way of organizing data that supports efficient performance of the relevant operations on that data. For instance there are data structures for organizing large numbers of records where records already present can be quickly found and/or deleted, and new records can be inserted and found fast. This course will help students to achieve the following objectives: (i) Assess how the choice of data structures and algorithm design methods impacts the performance of programs. (ii) Choose the appropriate data structure and algorithm design method for a specified application. (iii) Write programs using object-oriented design principles. (iv) Solve problems using data structures such as linear lists, stacks, queues, hash tables, binary trees, heaps, tournament trees, binary search trees, and graphs and writing programs for these solutions (v) Solve problems using algorithm design methods such as the greedy method, divide and conquer, dynamic programming, backtracking, and branch and bound and writing programs for these solutions.

Topics: Algorithm Analysis, List, Stacks, and Queues, Trees, Hashing, Priority Queues (Heaps), Sorting, Graph Algorithms, Algorithm Design Techniques.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: (i) Understand the concept of arrays, structures pointers, recursion, stack, queue linked list (ii) Basic ability to analyze algorithms and to determine algorithm correctness and time efficiency class. (iii) Master a variety of advanced abstract data type (ADT) and data structures and their implementations. (iv) Master different algorithm design techniques (brute force, divide and conquer, greedy,etc.) (v) Ability to apply and implement learned algorithm design techniques and data structures to solve problems.

Detailed Syllabus: Unit 1 Algorithm Analysis: Mathematical Background, Model, What to Analyze, Running Time Calculations. List, Stacks, and Queues: Abstract Data Types (ADTs), The List ADT, Vector and List in the STL, Implementation of Vector, Implementation of List, The Stack ADT, The Queue ADT.

Unit 2 Trees: Preliminaries, Binary Trees, The Search Tree ADT – Binary Search Trees. Hashing: General Idea, Hash Function, Separate Chaining, Hash Tables Without Linked Lists, Rehashing, Hash Tables in the Standard Library.

Unit 3 Priority Queues (Heaps): Model, Simple Implementation, Binary Heap, Applications of Priority Queues, Priority Queues in the standard Library.

Unit 4 Sorting: Preliminaries, Insertion Sort, Merge sort, Quicksort.

77 Graph Algorithms: Definitions, Topological Sort, Shortest-Path Algorithms, Minimum Spanning Tree, Applications of Depth-First Search approaches.

Unit 5 Algorithm Design Techniques: Greedy Algorithms, Divide and Conquer, Dynamic Programming, Backtracking Algorithms.

Text Book: 1. Mark Allen Weiss: Data Structures and Algorithm Analysis in C++, 3rd Edition, Pearson Education, 2011.

Reference Books: 1. Yedidyah, Augenstein, Tannenbaum: Data Structures Using C and C++, 1st Edition, Pearson Education, 2012. 2. Sartaj Sahni: Data Structures, Algorithms and Applications in C++, 2nd Edition, Universities press, 2011.

78 MCSE E20: Stochastic Processes (3:0:0)

Course Objectives: This course will help students to achieve the following objectives (i) to understand discrete time, discrete-state Markov chains, renewal processes, and the Poisson process, (ii) to understand continuous-time, discrete-state Markov processes; queuing theory; Brownian motion; martingales; and possibly some other topics, and (iii) to develop that may cover topics such as convergence of sequences of stochastic processes, and stochastic calculus.

Topics: Discrete-time Markov Chains, Renewal Processes, and Poisson Process

Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: (i) to learn to develop an ability to model dynamical processes with noise as stochastic processes; (ii) to learn to develop an understanding of important qualitative characteristics of stochastic processes; (iii) to learn to develop an ability to analyze some basic stochastic processes

Detailed Syllabus:

Unit 1 Preliminaries: Probability, Random Variables, Expected Value, Moment Generating, Characteristic Functions, and Laplace Transforms, Conditional Expectation, The Exponential Distribution, Lack of Memory, and Hazard Rate Functions, Some Probability Inequalities, Limit Theorems, Stochastic Process. The Poisson Process: Interarrival and waiting Time Distributions, Conditional Distribution of Arrival Times, Nonhomogeneous Poisson Process, Compound Poisson Random Variables and processes, Conditional Poisson Processes.

Unit 2 Renewal Theory: Introduction and Preliminaries, Distribution of N(t), Some Limit Theorems, The Key Renewal Theorem and Applications, Delayed Renewal Processes, Renewal Reward Processes, Regenerative Processes, Stationary Point Processes.

Unit 3 Markov Chains: Introduction and Examples, Chapman-Kolmogorov Equations and Classification of States, Limit Theorems, Transitions among Classes, the Gambler’s Ruin Problem, and Mean Times in Transient States, Branching Processes, Applications of Markov Chains, Time Reversible Markov Chains, Semi Markov Processes.

Unit 4 Continuous-Time Markov Chains: Introduction, Continuous-Time Markov Chains, Birth and death Processes, The Kolmogorov Differential Equations, Limiting Probabilities, Time Reversibility, Applications of the Reversed Chain to queuing Theory, uniformization. Martingales: Introduction, Stopping Times, Azuma’s Inequality for Martingales, Sub martingales, Super martingales and the Martingale Convergence Theorem, A Generalized Azuma Inequality. Random Walks: Duality in Random Walks, Some Remarks concerning Exchangeable Random Variables, Using Martingales to Analyze Random Walks, Applications to G/G/1 Queues and Ruin Problems, Blackwell’s Theorem on the Line.

79 Unit 5 Brownian Motion and Other Markov Processes: Introduction and Preliminaries, Hitting Times, Maximum Variable, and Arc Sine Laws, Variations on Brownian Motion, Brownian Motion with Drift, Backward and Forward Diffusion Equations, Applications of the Kolmogorov Equations to Obtaining Limiting Distributions, A Markov Shot Noise Process, Stationary Process.

Text Books: 1. Sheldon M Ross: Stochastic Process, 4th Edition, Wiley, 2012. 2. Kishor S Trivedi: Probability and Statistics with Reliability Queuing and Computer Science Applications, 1st Edition, Wiley, 2011.

Reference Books: 1. R.W. Wolff: Stochastic Modeling and Queuing Theory, Prentice Hall, 1989. 2. B. R. Bhat: Stochastic Models Analysis and Applications, 1st edition, New Age International, 2010.

80 Course Title: Advanced Algorithms Course Code: MCNEE21 Cedits: 3:0:0 Core/Elective: Elective Type of course: Lectures Total Contact Hours: 42

Prerequisites: Design and Analysis of Algorithms (UG level)

Course Objectives

This course will help students to achieve the following objectives:

1. Identify different asymptotic notations and common functions. 2. Apply problem solving strategies for graphical problems. 3. Understand different number theoretic algorithms. 4. Apply string matching algorithms and solve problems. 5. Present the introduction to approximation algorithms and learn examples.

Course Contents: Unit 1 Analysis Techniques: Growth of Functions, Asymptotic notations, Standard notations and common functions, Recurrences and Solution of Recurrence equations – The Substitution method, The recurrence – tree method, The master method, Amortized Analysis: Aggregate, Accounting and Potential Methods.

Unit 2 Graph Algorithms: Bellman-Ford Algorithm, Single source shortest paths in a DAG, Johnson’s Algorithm for sparse graphs, Flow networks and Ford-Fulkerson Method, Maximum bipartite matching. Polynomials and the FFT: Representation of Polynomials, The DFT and FFT, Efficient implementation of FFT.

Unit 3 Number – Theoretic Algorithms: Elementary notations, GCD, Modular Arithmetic, Solving modular linear equations, The Chinese remainder theorem, Powers of an element, RSA cryptosystem, Primality testing, Integer factorization.

Unit 4 String Matching Algorithms: Naïve string matching, Rabin – Karp algorithm, String matching with finite automata, Knuth-Morris-Pratt algorithm, Boyer-Moore Algorithms.

Unit 5 Approximation Algorithms: The vertex-cover Problem, The traveling sales person problem, The set covering problem, The subset sum problem.

Text Book: 1. T H Cormen, C E Leiserson, R L Rivest and C Stein: Introduction to Algorithms, 3/e, PHI, 2011.

81 Reference Books: 1. Ellis Horowitz, Sartaj Sahni, S Rajasekharan: Fundamentals of Computer Algorithms, University Press, 2007. 2. Alfred V Aho, John E Hopcroft, J D Ullman: The Design and Analysis of Computer Algorithms, Pearson Education, 2011.

Course Outcomes At the end of the course, a student should be able to 1. Explain the basic concepts of time and space complexity and various design strategies. 2. Describe the algorithms of Bellman-Ford, Shortest path, Bipartite matching and representation of polynomials 3. Identify the methods for solving modular linear equations, Chinese remainder theorem and RSA cryptosystem.. 4. Apply and analyze the string matching algorithms, Boyer-Moore and Knuth-Morris- Pratt algorithms. 5. Demonstrate the approximation algorithms for traveling sales person problem, set covering and subset sum problem.

Mapping Course Outcomes with Program Outcomes:

Program Outcomes Course PO PO PO PO PO PO PO PO PO PO1 PO1 PO1 Outcomes 1 2 3 4 5 6 7 8 9 0 1 2 CO X X X X 1 CO X X X X X X 2 CO X X X X X 3 CO X X X X X 4 CO X X X X X 5 Course Assessment and Evaluation:

When/ Where Max To Evidence Contribution to What (Frequency in Mark Whom Collected Course Outcomes the course) s Thrice

Internal t (Average of the n

e Assessment 30 Blue Books 1,2,3,4 &5 best two will be m s s CIE Tests s d computed) e o s h s

t Online Students Softcopy of e

A Once 20 1,2,3,4 &5

t assignments assignments M c e r End of Course i SE Standard Answer D (Answering 100 1,2,3,4 &5 E Examination scripts 5 of 10 82 questions)

t End of the Feedback 1, 2 & 3, Delivery n Students Feedback - e course forms of the course m s s s 4, 5 d e s o s Effectiveness of h

t Students A e

t End of the Questionnai Delivery of c

M Course Exit Survey - e

r course re instructions & i d Assessment n I Methods

Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy).

83 Semester: II Year: 2014-2016 Course Title: Web Technologies Course Code: MCSE E26 Credits (L:T:P) :3:0:0 Core/ Elective: Elective Type of course: Lecture/ Laboratory/ Total Contact Hours: 42 Hrs /Project/ assignment

Prerequisites: NIL

Course Objectives : At the end of the course the students should be able to:  Implement Perl scripts to parse and manipulate structured data.  Design and build robust and maintainable web applications using a server-side scripting language and servlets and JSP.  Design simple database driven web applications using a server-side scripting language.  Design web applications using the powerful Rails framework.  Use AJAX to develop web applications for a dynamic user experience

Course Contents:

Unit 1 Perl, CGI Programming: Origins and uses of Perl; Scalars and their operations; Assignment statements and simple input and output; Control statements; Fundamentals of arrays; Hashes; References; Functions; Pattern matching; File input and output; Examples. The Common Gateway Interface; CGI linkage; Query string format; CGI.pm module; A survey example; Cookies.

Unit 2 Servlets and Java Server Pages: Overview of Servlets; Servlet details; A survey example; Storing information on Clients; Java Server Pages.

PHP: Origins and uses of PHP; Overview of PHP; General syntactic characteristics; Primitives, operations and expressions; Output; Control statements; Arrays; Functions; Pattern matching; Form handling; Files; Cookies; Session tracking.

Unit 3 Database Access through the Web: Relational Databases; An introduction to SQL; Architectures for Database access; The MySQL Database system; Database access with PERL and MySQL; Database access with PHP and MySQL; Database access with JDBC and MySQL.

Unit 4 Introduction to Ruby, Rails: Origins and uses of Ruby; Scalar types and their operations; Simple input and output; Control statements; Fundamentals of arrays; Hashes; Methods; Classes; Code blocks and iterators; Pattern matching. Overview of Rails; Document requests; Processing forms; Rails applications with Databases; Layouts.

Unit 5 Introduction to Ajax: Overview of Ajax; The basics of Ajax; Rails with Ajax.

Text Book: 1. Robert W. Sebesta: “Programming the ”, 4th Edition, Pearson Education, 2012.

84 Reference Books: 1. M. Deitel, P.J. Deitel, A. B. Goldberg: “Internet & World Wide Web How to program”, 3rd Edition, Pearson Education, 4th edition, PHI, 2011. 2. Chris Bates: “Web Programming Building Internet Applications”, 3rd Edition, Wiley India, 2011. 3. Joyce Farrell, Xue Bai, Michael Ekedahl: “The Web Warrior Guide to Web Programming”, 1st edition, Thomson, 2010.

Course Delivery: The course will be delivered through lectures, class room interaction, group discussion, lab exercises and projects.

Course Assessment Methods:

CIE Scheme: When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes

Internal Thrice (Average t

n Assessment of the best two 30 Blue Books 1-4 e Tests will be computed) m CIE s s s d Project and Summation of lab e o 20 Data Sheets 1-5 s h lab test Students and project s t e A

t M End of Course c Semester

e (Answering Answer r

i SEE End 100 1-5 5 of 10 scripts D Examination questions) Students

Feedback t

n t s

e 3-5, c d e m o Relevance of r End of the course - Questionnaire s i h Students s t d the course e e

n End of Course s I M s Survey A

Questions for CIE and SEE will be designed to evaluate the various educational components (Bloom’s taxonomy)

Course Outcomes : 1. Apply perl for text and file processing and write CGI applications. 2. Create dynamic HTML content with Servlets and JavaServer Pages and PHP. 3. Design dynamic data-driven Web sites using MySQL and PHP and perl 4. Apply MVC design pattern to write database-backed Web Applications using the Ruby on Rails Framework . 5. Understand the relationship between the different protocols that comprise AJAX.

85 Mapping Course Outcomes with Program Outcomes:

Program Outcomes* Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Apply perl for text and file X processing and write CGI X X X X X X X applications Create dynamic HTML X content with Servlets and X X X X X X JavaServer Pages and PHP Design dynamic data- X driven Web sites using X X X X X X MySQL and PHP and perl Apply MVC design pattern X to write database-backed Web Applications using X X X X X the Ruby on Rails Framework Understand the X relationship between the X X X X X different protocols that comprise AJAX

86 MCSE E28: Multimedia Communications (3:0:0)

Course Objectives: This course will help students to achieve the following objectives: understand the basics of analog and digital video: video representation and transmission, analyze analog and digital video signals and systems, know the fundamental video processing techniques, acquire the basic skill of designing video compression, familiarize himself/herself with video compression standards and know the basic techniques in designing video transmission systems: error control and rate control.

Topics: Introduction to Multimedia Communications, Framework for Multimedia Standardization, Application Layer, Middleware Layer, Network Layer.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: (i) Learn the basics of analog and digital video: color video formation and specification, analog TV system, video raster, digital video formats, (ii) Frequency domain analysis of video signals, spatial and temporal frequency response of the human visual system, (iii) Scene, camera, and motion modeling, 3D motion and projected 2D motion, models for typical camera/object motions and (iv) 2D motion estimation: optical flow equation, different motion estimation methods (pel-based, block-based, mesh-based, global motion estimation, multi-resolution approach).

Detailed Syllabus: Unit 1 Introduction to Multimedia Communications: Introduction, Human communication model, Evolution and convergence, Technology framework, Standardization framework.

Unit 2 Framework for Multimedia Standardization: Introduction, Standardization activities, Standards to build a new global information infrastructure, Standardization processes on multimedia communications, ITU-T mediacom2004 framework for multimedia, ISO/IEC MPEG-21 multimedia framework, IETF multimedia Internet standards.

Unit 3 Application Layer: Introduction, ITU applications, MPEG applications, Mobile servers and applications, Universal multimedia access. Unit 4 Middleware Layer: Introduction to middleware for multimedia, Media coding, Media Streaming, Infrastructure for multimedia content distribution. Unit 5 Network Layer: Introduction, QoS in Network Multimedia Systems.

Text Books: 1. K.R. Rao, Zoran S. Bojkovic, Dragorad A. Milovanovic: Introduction to Multimedia Communications – Applications, Middleware, Networking, 1st edition, Wiley India, 2011.

Reference Books: 1. Fred Halsall: Multimedia Communications – Applications, Networks, Protocols, and Standards, 1st edition, Pearson, 2012. 2. Nalin K Sharad: Multimedia information Networking, 1st edition, PHI, 2010. 3. Ralf Steinmetz, Klara Narstedt: Multimedia Fundamentals: Volume 1-Media Coding and Content Processing, 1st Edition, Pearson, 2010. 4. Prabhat K. Andleigh, Kiran Thakrar: Multimedia Systems Design, 1st edition, PHI, 2011. 87 MCSE E32: Software Architecture (3:0:0)

Course Objectives: This course will help students to achieve the following objectives: The objective of the course is to provide a sound technical exposure to the concepts, principles, methods, and best practices in software architecture and software design. Principal topics that will be covered include object oriented analysis and design, UML (Unified Modeling Language) modeling, architectural patterns, analysis of architectures, formal descriptions of software architectures, design patterns, extreme programming, refactoring, distributed objects, component technology, and object oriented frameworks. Case studies and programming assignments will be an integral part of the course.

Topics: The Architecture Business Cycle, Architectural Styles and Case Studies, Quality, Architectural Patterns, Some Design Patterns, Designing and Documenting Software Architecture.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: produce "software architects" with sound knowledge and superior competence in building robust, scalable, and reliable software intensive systems in an extremely effective way. They would have a clear appreciation of the role of abstraction, modeling, architecture, and design patterns in the development of a software product. They would be able to make optimal architectural choices and employ the most relevant methods, best practices, and technologies for architecting and implementing a software product, regardless of its complexity and scale.

Detailed Syllabus: Unit 1 Introduction: The Architecture Business Cycle: Where do architectures come from? Software processes and the architecture business cycle; What makes a “good” architecture? What software architecture is and what it is not; Other points of view; Architectural patterns, reference models and reference architectures; Importance of software architecture; Architectural structures and views.

Unit 2 Architectural Styles and Case Studies: Architectural styles; Pipes and filters; Data abstraction and object-oriented organization; Event-based, implicit invocation; Layered systems; Repositories; Interpreters; Process control; Other familiar architectures; Heterogeneous architectures. Case Studies: Keyword in Context; Instrumentation software; Mobile robotics; Cruise control; Three vignettes in mixed style.

Unit 3 Quality: Functionality and architecture; Architecture and quality attributes; System quality attributes; Quality attribute scenarios in practice; Other system quality attributes; Business qualities; Architecture qualities. Achieving Quality: Introducing tactics; Availability tactics; Modifiability tactics; Performance tactics; Security tactics; Testability tactics; Usability tactics; Relationship of tactics to architectural patterns; Architectural patterns and styles.

88 Unit 4 Architectural Patterns: Introduction; From mud to structure: Layers, Pipes and Filters, Blackboard. Distributed Systems: Broker; Interactive Systems: MVC, Presentation- Abstraction-Control. Adaptable Systems: Microkernel; Reflection.

Unit 5 Some Design Patterns: Structural decomposition: Whole – Part; Organization of work: Master – ave; Access Control: Proxy.

Designing and Documenting Software Architecture: Architecture in the life cycle; Designing the architecture; Forming the team structure; Creating a skeletal system. Uses of architectural documentation; Views; Choosing the relevant views; Documenting a view; Documentation across views.

Text Books: 1. Len Bass, Paul Clements, Rick Kazman: “Software Architecture in Practice, 2nd Edition”, Pearson Education, 2010. 2. Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal: “Pattern-Oriented Software Architecture, A System of Patterns, Volume 1”, John Wiley and Sons, 2007. 3. Mary Shaw and David Garlan: “Software Architecture-Perspectives on an Emerging Discipline”, 1st edition, Prentice-Hall of India, 2011.

Reference Books: 1. E. Gamma, R. Helm, R. Johnson, J. Vlissides: “Design Patterns-Elements of Reusable Object-Oriented Software”,1st edition, Addison-Wesley, 2006. 2. Web site for Patterns: http://www.hillside.net/patterns/

89 Semester: III Year: 2014-2016 Course Title: Cloud Computing Course Code: MCSE E30 Credits (L:T:P) : 3:0:0 Core/ Elective: Elective Type of Course: Lecture /Project/ assignment Total Contact Hours: 42

Prerequisites: NIL

Course Objectives The objectives of this course are to  Provide an understanding cloud computing delivery models.  Analyze the features cloud applications and Paradigms  Provide understanding of Virtualization  Identify policies and mechanisms for resource management  Analyze scheduling algorithms for cloud computing systems and cloud security

Course Contents:

UNIT I Introduction: Network centric computing and network centric content, Peer-to-peer systems, Cloud Computing: an old idea whose time has come, Cloud Computing delivery models & Services, Ethical issues, Cloud vulnerabilities, Challenges. Parallel and Distributed Systems: Parallel Computing, Parallel Computer Architecture, Distributed Systems, Communication Protocols and Process Co-ordination, Concurrency, Atomic Actions, Consensus protocols, Enforced Modularity: The client-Server Paradigm.

UNIT II Cloud Infrastructure: Amazon, Google, Azure & online services, open source private clouds. Storage diversity and vendor lock-in, intercloud, Energy use & ecological impact of data centers, service level and compliance level agreement, Responsibility sharing, user experience, Software licensing. Cloud Computing: Applications & Paradigms, Challenges, existing and new application opportunities, Architectural styles of cloud applications, Workflows coordination of multiple activities, Coordination based on a state machine model -the Zoo Keeper, The Map Reduce programming model, Apache Hadoop, A case study: the GrepTheWeb application, Clouds for science and engineering, High performance computing on a cloud, Social computing, digital content, and cloud computing, How to install Hadoop on eclipse on a Window system.

UNIT III Cloud Resource Virtualization: Layering and virtualization, Virtual machine monitors, Virtual machines Performance and security isolation, Full virtualization and paravirtualization, Hardware support for virtualization Case study: Xen -a VMM based on paravirtualization, Optimization of network virtualization in Xen 2.0, vBlades - paravirtualization targeting a x86-64 Itanium processor, A performance comparison of virtual machines, Virtual machine security, The darker side of virtualization, Software fault isolation.

UNIT IV Cloud Resource Management and Scheduling: Policies and mechanisms for resource management, Applications of control theory to task scheduling on a cloud, Stability of a two-level resource allocation architecture, Feedback control based on dynamic thresholds, Coordination of specialized autonomic performance managers, A utility-based model for cloud-based web services, Resource bundling, combinatorial auctions for cloud Scheduling algorithms for computing clouds, fair queuing, Start time fair queuing,

90 borrowed virtual time, Cloud scheduling subject to deadlines, Scheduling mapreduce applications subject to deadlines, Resource management and application scaling.

UNIT V Storage systems: Evolution, Storage models, file systems, databases, DFS, General parallel File system, GFS, Hadoop, Locks & Chubby, TPS, NOSQL, Bigdata, Mega store. Cloud security: Risks, privacy and privacy impacts assessments. Trust, Operating system Security, Virtual Machine Security, Security Risks posed by shared images, Security Risks posed by a Management OS, Xoar: Breaking the Monolithic Design of the TCB, A Trusted Virtual Machine Monitor.

Text Book: 1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers, 2013.

Reference Books: 1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers, 2013. 2. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things, Kai Hwang, Jack Dongarra, Geoffrey Fox. MK Publishers. 3. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert Elsenpeter, McGraw Fill, 2010.

Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practice exercises and practical sessions.

Course Assessment and evaluation:

When/ Where Contribution To Max Evidence What (Frequency to Course Whom Marks Collected in the Outcomes course) Thrice Internal (Average of Assessment the best two 30 Blue Books 1-5 s

d Tests will be o

h computed)

t CIE

e Mini Project/

t M

c Assignment Soft Copy of t Review 1 e n

r Submitted Students 20 the Work 1-5 i e Review 2

D as a Team Executed m

s Work s

e End of s

s Semester Course A SEE End (Answering 50 Answer scripts 1-5 Examination 5 of 10 questions)

t Students

n t s

e Feedback c d 1-5, e m o

r End of the s i h Students - Questionnaire Relevance of s t d course e e

n End of Course the course s I M s Survey A

91 Course Outcomes At the end of the course students should be able to: 1. Analyze the transformation let to the evolution of Cloud computing, it's impact on the enterprises and list the different services offered by service providers. 2. Design different workflows according to requirements applying map reduce model. 3. Make performance comparison of virtual machines, Virtual machine security. 4. Create combinatorial auctions for cloud scheduling algorithms for computing clouds. 5. Assess the Cloud security, the risks involved, its impact and cloud service providers.

Mapping Course Outcomes with Programme Outcomes:

Course Outcomes Program Outcomes P P P PO PO PO PO PO PO PO PO PO PO O O O 1 2 3 4 5 6 7 8 9 11 10 12 13 Analyze the transformation X X X X X X that led to the evolution of Cloud computing, it's impact on the enterprises and list the different services offered by service providers Design different workflows X X X X X X X according to requirements applying map reduce model. Make performance X X X X X X X comparison of virtual machines, Virtual machine security. Create combinatorial auctions X X X X X X X X for cloud scheduling algorithms for computing clouds. Assess the Cloud security, the X X X X X X X risks involved, its impact and cloud service providers.

92 MCSE E33: Metrics and models in Software Quality Engineering (3:0:0)

Course Objectives: This course will help students to achieve the following objectives: Understand the basics of software quality engineering, including its benefits, related models and standards, and quality team tools, Plan, implement and audit a Software Quality Management program for their organization, Assist in defining and tailoring software engineering life cycles and processes, Understand the basic software project management principles and techniques as they relate to software project planning, tracking, control and risk management, Select, define, and apply software measurement, metrics, and analytical techniques to their software products, processes and services, Participate in peer reviews, and assist in the planning, implementation and evaluation of software testing activities and Understand the fundamentals of the configuration management process to include configuration identification, configuration control, status accounting, and audits.

Topics: Introduction, QA in Context and Quality Engineering, Testing Concepts, Issues and Techniques, Test Activities, Management, and Automation, Coverage and Usage Testing Based on Checklists and Partitions, Input Domain Partitioning and Boundary Testing, Coverage and Usage Testing Based On Finite-State Machines and Markov Chains, Control Flow, Data Dependency, and Interaction Testing, Testing Techniques: Adaptation, Specialization and Integration, Defect Prevention and Process Improvement, Software Inspection, Formal Verification.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: discusses basic software project management principles and techniques as they relate to software project planning, monitoring and control, and risk management. Attendees will learn how to select, define and implement software metrics to understand, evaluate, control and predict their software process, product and services. This course covers the basics of software verification and validation planning with an emphasis on software peer reviews and software testing techniques. The course ends with an overview of software configuration management, including configuration identification, control, status accounting and auditing.

Detailed Syllabus:

Unit 1 Introduction: Meeting people’s quality expectations, Software Quality: Perspective and Expectations, Quality frameworks and ISO, Correctness and defects, Historical perspective of Quality, Classification: Quality Assurance as dealing with defects, Defect prevention, Defect reduction, Defect Containment. QA in Context and Quality Engineering: Handling discovered defects during QA activities, QA Activates in Software Processes, Verification and Validation Perspectives, Reconciling the Two Views. Quality Engineering: Activities and Process, Quality Planning: Goal Setting and Strategy Formation, Quality Assessment and Improvement, Quality Engineering in Software Processes.

Unit 2 Testing Concepts, Issues and Techniques: Purpose, Activities, Processes and Context, Questions about Testing, Functional vs Structural Testing, Coverage - based vs Usage - based Testing. Test Activities, Management, and Automation: Test Planning and Preparation, Test Execution, Result Checking, and Measurement, Analysis and Follow-up, Activates, People, and Management, Test Automation 93 Coverage and Usage Testing Based on Checklists and Partitions: Checklist-Based Testing and its Limitations, Testing for partition Coverage, Usage-Based Statistical Testing with Musa’s Operational Profiles, Constructing Operational Profiles, A case study.

Unit 3 Input Domain Partitioning and Boundary Testing: Input Domain Partitioning and Testing, ISimple domain analysis and the Extreme Point Combination Strategy, Testing strategies based on boundary analysis, Other Boundary Test Strategies and Applications. Coverage and Usage Testing Based On Finite-State Machines and Markov Chains: Finite-State machines and testing, FSM testing: State and transition coverage, A Case study, Markov chains and unified Markov models for testing, Using UMMs for Usage-Baseed statistical testing, Case study continued.

Unit 4 Control Flow, Data Dependency, and Interaction Testing: Basic Control Flow Testing, Loop Testing, CFT Usage, and Other Issues, Data Dependency and Data flow Testing, DFT: Coverage and Applications. Testing Techniques: Adaptation, Specialization and Integration: Testing Sub- Phases and Applicable Testing Techniques, Specialized Test Tasks and Techniques, Test Integration, Case Study: Hierarchical Web Testing.

Unit 5 Defect Prevention and Process Improvement: Basic concepts and Generic Approaches, Root cause Analysis for Defect Prevention, Education and training for defect prevention, Other Techniques for Defect Prevention, Focusing on Software Processes. Software Inspection: Basic concepts and Generic Process, Fagan inspection, Other Inspections and Related Activities, Defect Detection Techniques, Tool / Process Support, and Effectiveness. Formal Verification: Basic Concepts: Formal Verification and Formal Specification, Formal Verification: Axiomatic Approach, Other approaches, Applications, effectiveness and integration issues.

Text Book: 1. Stephan H. Kan: “Metrics and Models in Software Quality Engineering”, 2nd Edition, Pearson Education, 2012.

Reference Book: 1. Jeff Tian: “Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement”, 1st edition, John Wiley and Sons Inc., 2006.

94 Semester III Year: 2014-2016 Course Title: Information Security Course Code: MCSE E34 Credits (L:T:P): 3:0:0 Core/Elective: Elective Type of Course: Lectures Total Contact Hours: 42 Hours

Prerequisites: Students should have undergone a course on Data Communication

Course Objectives: The objectives of this course are:  Explain the purpose of Information Security Management Systems (ISMS)  To learn processes involved in establishing, operating, monitoring, reviewing and improving ISMS as defined in ISO/IEC 27001  To learn the significance of the above for ISMS auditors  Explain the purpose, content, and interrelationship of legislative framework relevant to ISMS  Explain and undertake the role of an auditor to plan, conduct, report and follow-up an ISMS audit.

Course Contents: Unit 1 Introduction to Information Security: Introduction; what is security? Critical characteristics of information; NSTISSC security model; Approaches to information security implementation; The Security System Development Life Cycle; Information Security Terminology. Planning for Security: Introduction; Information Security Policy, Standards, and Practices; The Information Security Blue Print.

Unit 2 Security Technology: Firewalls and VPNs: Introduction, Physical design, Firewalls, Protecting Remote Connections. Intrusion Detection, Access control and Other Security Tools: Introduction; Intrusion Detection Systems (IDS); Honey Pots, Honey Nets, and Padded cell systems; Scanning and Analysis Tools; Access Control Devices. Information Security maintenance: Introduction; Security Management Models; The Maintenance Model. Unit 3 Introduction to Network Security: Attacks, Services, and Mechanisms; Security Attacks; Security Services; A model for Internetwork Security; Internet Standards and RFCs. Cryptography: Conventional Encryption Principles and Algorithms; Cipher Block Modes of Operation; Location of encryption devices; Key distribution; Approaches to message authentication; Secure Hash functions and HMAC; Public Key Cryptography Principles and Algorithms; Digital Signatures; Key management.

Unit 4 Authentication Applications: Kerberos, X.509 Directory Authentication Service. Electronic Mail Security: Pretty Good Privacy (PGP), S/MIME. IP Security: IP Security Overview, IP Security Architecture, Authentication Header, Encapsulating Security Payload, Combining Security Associations, Key Management.

95 Unit 5 Web Security: Web security requirements, Secure Socket layer (SSL) and Transport layer Security (TLS), Secure Electronic Transaction (SET). Network Management Security: Basic concepts of SNMP, SNMPv1 community facility, SNMPv3.

Text Books: 1. Michael E. Whitman and Herbert J. Mattord: “Principles of Information Security”, 4th Edition, Thomson, 2012. 2. William Stallings: “Network Security Essentials Applications and Standards”, 4th edition, Person Education, 2012.

Reference Books: 1. Behrouz a Forouzan, Debdeep Mukhopadhyay: “Cryptography and Network Security”, 2nd edition, Tata McGraw-Hill, 2011. 2. Deven N. Shah: Mark Stapms Information Security Principles & Practice, 1st edition, Wiley India, 2010.

Course Delivery: The course will be delivered through lectures, presentations, classroom discussions, case studies and exercises. Questions for CIE and SEE are designed in accordance with the Bloom’s taxonomy

Course Assessment methods:

What To When/Where Max Evidence Contribution Whom (Frequency in Mark Collected to course the course) outcomes

Internal Thrice (Average 25 Blue Books 1,2,3,4,5 Assessmen of the best two

s t Tests will be d

o C computed) h t

e I Quiz (out t M

c E Students

t of reading) 2 Quizes + Two 25 Project 1,2,3,4,5 e n r i

e + Exercises Report D

m Exercises s s e s

s S Semester End of Course A E End (Answering 5 of 100 Answer 1,2,3,4,5 E Examinatio 10 questions) scripts n

t Students Questionnai 1,2,3,4,5

n t s

e Feedback End of the -

c re Relevance of d e m o

r Students

s course i h the course s

t End of d e e n

s Course I M s

A Survey

Course Outcomes: 1. Describe the five keys of network security 2. Identify and explain the concepts, policies, and technologies associated with a layered and diversified defense-in-depth strategy 3. Discuss the objectives of access control methods and describe how the available methods are implemented in the defense of a network 4. Identify the impact of a layered defense on the performance of the network 5. Define the concepts of auditing in a network, including the types of audits and the handling of data. 96 Mapping Course Outcomes with Programme Outcomes:

Course Outcomes Program Outcomes

PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Describe the five keys of X X X X X X network security Identify and explain the concepts, policies, and technologies associated with X X X X X X X X X X a layered and diversified defense-in-depth strategy Discuss the objectives of access control methods and describe how the available X X X X X X X X methods are implemented in the defense of a network Identify the impact of a layered defense on the X X X X X X X X X performance of the network Define the concepts of auditing in a network, X X X X X X X X X including the types of audits and the handling of data.

97 MCSE E35: Soft Computing (3:0:0)

Course Objectives: This course will help students to achieve the following objectives: To become able to apply Genetic Algorithms and Artificial Neural Networks as computational tools to solve a variety of problems in their area of interest ranging from Optimization problems to Pattern recognition and control tasks.

Topics: Neural Networks, Fuzzy Logic, Operations on Fuzzy Sets, Fuzzy Arithmetic, Fuzzy Logic, and Uncertainty based Information, Introduction of Neuro-Fuzzy Systems, and Introduction of Neuro-Fuzzy Systems

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: computational techniques like Genetic/ Evolutionary algorithms, Artificial Neural Networks, Fuzzy Systems, Machine learning and probabilistic reasoning etc. It also discusses Genetic Algorithms, Artificial Neural Networks (major topologies and learning algorithms) and Fuzzy Logic.

Detailed Syllabus: Unit 1 Neural Networks: History, overview of biological Neuro-system, Mathematical Models of Neurons, ANN architecture, Learning rules, Learning Paradigms-Supervised, Unsupervised and reinforcement Learning, ANN training Algorithm sperceptions, Training rules, Delta, Back Propagation Algorithm, Multilayer Perceptron Model, Hopfield Networks, Associative Memories, Applications of Artificial Neural Networks.

Unit 2 Fuzzy Logic: Introduction to Fuzzy Logic, Classical and Fuzzy Sets: Overview of Classical Sets, Membership Function, Fuzzy rule generation.

Unit 3 Operations on Fuzzy Sets, Fuzzy Arithmetic, Fuzzy Logic, Uncertainty based Information: Compliment, Intersections, Unions, Combinations of Operations, Aggregation Operations. Fuzzy Numbers, Linguistic Variables, Arithmetic Operations on Intervals & Numbers, Lattice of Fuzzy Numbers, Fuzzy Equations. Classical Logic, Multivalued Logics, Fuzzy Propositions, Fuzzy Qualifiers, Linguistic Hedges. Information & Uncertainty, Nonspecificity of Fuzzy & Crisp Sets, Fuzziness of Fuzzy Sets.

Unit 4 Introduction of Neuro-Fuzzy Systems: Architecture of Neuro Fuzzy Networks, Applications of Fuzzy Logic: Medicine, Economics etc.

Unit 5 Genetic Algorithms: An Overview, GA in problem solving, Implementation of GA.

Text Books: 1. Anderson J.A.: “An Introduction to Neural Networks”, 1st edition, PHI, 2012. 2. Hertz J. Krogh, R.G. Palmer: “Introduction to the Theory of Neural Computation”, Addison-Wesley, 1991. 3. G.J. Klir & B. Yuan: “Fuzzy Sets & Fuzzy Logic Theory & applications”, 1st edition,PHI, 2012. 4. Melanie Mitchell: “An Introduction to Genetic Algorithm”, 1st edition, PHI, 1998. 98 Reference Books: 1. Tettamanzi, Andrea, Tomassini, and Marco: “ Soft Computing: Integrating Evolutionary, Neural and GFuzzy Systems”, Springer, 2001. 2. Naresh K. Sinha and madan M gupta:” Soft Computing and Intelligent systems – Theory and Application”, Academic press, 2000.

.

99 MCSE E37: VLSI Design and Algorithms (3:0:0)

Course Objectives: This course will help students to achieve the following objectives: Study the fundamental structures of VLSI Systems at the lowest levels of system abstraction, namely those associated with the direct application of VLSI devices to particular problems of interest. VLSI design is concerned with the set of principles governing MOS (metal oxide semiconductor) devices and their behaviors. The CMOS transistors (n- channel and p-channel) and the ways in which we can use them to create the most basic structure—the digital switch and to build a range of VLSI structures from this switch, including NAND/NOR gates, Multiplexers, Latches and Registers.

Topics: Introduction to Digital systems and VLSI, Fabrication and Devices, Sequential Machines, Subsystem Design, Architecture Design, Simulations

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: Be able to use mathematical methods and circuit analysis models in analysis of CMOS digital electronics circuits, including logic components and their interconnect, Be able to create models of moderately sized CMOS circuits that realize specified digital functions, Be able to apply CMOS technology-specific layout rules in the placement and routing of transistors and interconnect, and to verify the functionality, timing, power, and parasitic effects, Have an understanding of the characteristics of CMOS circuit construction and the comparison between state-of-the-art CMOS 2.5 micron process and emerging nanometer-scale electronic circuit technologies and processes and Be able to complete a significant VLSI design project having a set of objective criteria and design constraints.

Detailed Syllabus:

Unit 1 Introduction to Digital systems and VLSI: Why Design Integrated Circuits? Integrated Circuits manufacturing, Integrated Circuit Design Techniques; IP-Based Design. Fabrication and Devices: Introduction; Fabrication processes; Fabrication theory and practice; Reliability.

Unit 2 Sequential Machines: Introduction; Latches and Flip-flops; Sequential systems and clocking disciplines; Performance analysis; Clock generators; Sequential systems design, Power optimization, Design validation, Sequential testing.

Unit 3 Subsystem Design: Introduction; Combinational shifters; Adders; ALUs; Multipliers; High-density memory; Image sensors; FPGAs; PLA; Buses and networks on chips; Data paths; Subsystems as IP.

Unit 4 Architecture Design: Introduction; Hardware description languages; Register Transfer design; Pipelining; High-level synthesis; Architecture for low power; GALS systems; Architecture testing; IP components; Design methodologies; Multiprocessor system-on- Chip design.

100 Unit 5 Simulations: General remarks; Gate-level modeling and simulations; Switch-level modeling and simulation.

Text Books: 1. Wayne Wolf: Modern VLSI design IP Based Design, 4th edition, Pearson Education, 2011. 2. Sabih H Gerez: Algorithms for VLSI Design Automation, 2nd edition, Wiley India, 2011.

Reference Books: 1. Naveed Shervani: Algorithms for VLSI Physical Design Automation, Kluwer Academic Publisher, 3rd Edition, 2010. 2. Christophher Meinel, Thorsten Theobold: Algorithm and Data Structures for VLSI Design, KAP, 2002.

101 Elective Year: 2014-2016

Course Title: Social Network Analysis Course Code: MCNE E38

Credits (L:T:P:SS) : 3:0:0 Core/ Elective: Elective

Type of course: Lecture/ Laboratory/ Total Contact Hours: 3 Hrs per week /Project/ assignment

Course Objectives :

1. Understand the fundamentals of social networks 2. Identify the relationship between groups of peers over social networks 3. Analyze various components of social networks 4. Understand the importance in measuring the components of social networks. 5. Use the social network components measured for social benefit

Unit 1

Fundamentals: Social Structure : Sociometry and Sociogram, Exploratory Social Network Analysis, Assembling a Social Network. Attributes and Relations: The World System, Partitions, Reduction of a Network, Vectors and Coordinates, Network Analysis and Statistics Unit 2

Cohesion:Cohesive Subgroups: Density and Degree, Components, Cores, Cores. Sentiments and Friendship: Balance Theory, Detecting Structural Balance and Clusterability, Development in Time. Affiliations: Two-Mode and One-Mode Networks, m-Slices, The Third Dimension Unit 3

Brokerage: Center and Periphery: Distance, Betweenness. Brokers and Bridges: Bridges and Bi-Components, Ego-Networks and Constraint, Affiliations and Brokerage Roles. Diffusion: Contagion,Exposure and Thresholds, Critical Mass. Unit 4

Ranking:Prestige: Popularity and Indegree, Correlation, Domains, Proximity Prestige. Ranking: Triadic Analysis, Acyclic Networks, Symmetric-Acyclic Decomposition, Genealogies and Citations: Genealogy of the Ragusan Nobility, Family Trees, Family Trees, Citations among Papers on Network Centrality, Citations

Unit 5

Roles :Blockmodels: Matrices and Permutation, Roles and Positions: Equivalence, Blockmodeling. Pajek: Creating Network Files for Pajek, Exporting Visualizations

102 Text Books:

1. Exploratory social Network Analysis with Pajek, WOUTER DE NOOY, ANDREJ MRVAR, VLADIMIR BATAGELJ, Cambridge University press, 2005

2. Introduction to social network methods, Hanneman, Robert A. and Mark Riddle. 2005. University of California, Riverside ( published in digital form at http://faculty.ucr.edu/~hanneman/ ) 3. Social Network Analysis for Startups, Maksim Tsvetovat and Alexander Kouznetsov, Oreilly,2011

Mapping Course Outcomes with Program Outcomes:

Program Outcomes Course Outcomes PO PO PO PO PO PO PO PO PO( PO PO PO PO (a) (b) (c) (d) (e) (f) (g) (h) i) (j) (k) (l) (m) CO1 × × × × × × ×

CO2 × × × × ×

CO3 × × × × × ×

CO4 × × × × × ×

CO5 × × × × × ×

Course Assessment and Evaluation:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes Internal Thrice (Average n e Assessment of the best two 30 Blue Books 1-5 m s s e s s Tests will be computed) s d A o t h

c CIE t e e r Project and Summation of lab i M D t Soft copies lab Exercise Students and project 20 1-5 of the work evaluation demonstration

Semester End End of Course Answer SEE (Answering 100 1-5 Examination scripts 5 of 10 questions) e m s s

e Students s s s d A t o c h e t

r Feedback e i d M t n

I n Questionnair 3-5, Relevance Students End of the course - e of the course End of Course Survey

103 Course Outcomes:

At the end of the course students should be able to:

1. Understand the fundamentals of social networks 2. Able to measure the relationship between groups of peers over networks 3. Demonstrate the measuring of social networks components 4. Recognize the importance of the components of social networks. Identify the social benefit by measuring the social network components.

104 MCSE E41: Wireless and Cellular Networks (3:0:0)

Course Objectives: This course will help students to achieve the following objectives: Will understand different network layer protocols, application layer, transport layer and network layer, Will understand Internet and principles of the TCP/IP protocol suite, Will understand Wireless and mobile networks, Will be able to program simple network applications using socket API. Also justify the philosophy on cellular and wireless networks.

Topics: Wireless communication systems, modern systems, cellular concepts, mobile radio propagation, modulation techniques for mobile radio, multiple access techniques and wireless networking.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: identify and design wireless communication systems, mobile radio propagation and wireless networking, simulation of the discussed topics are essentials for better understanding. Also understand the conceptual and implementation aspects of network application, Understanding the relationship between the transport and network layer, examine the critical function of transport layer. Understand the controlling of the transmission rate of transport layer or avoid congestion within network, Understand the various routing algorithms that determine paths that packets take through the network from source to destination, Understand how multimedia applications can be designed to make the best effort internet and understand the internet architecture to provide explicit support for service requirements of media applications.

Detailed Syllabus:

Unit 1 Introduction to Wireless Communication Systems: Evolution of Mobile Radio Communications, Mobile Radio Systems around the world examples of Wireless Communication Systems, Paging System, Cordless Telephone System. Cellular Telephone Systems, Comparison of Common Wireless Communications Systems. Modern Wireless Communications Systems: Second generation (2G), Cellular Networks, evolution of 2.5G, TDMA Standards, Third Generation (3G) Wireless Networks, Wireless Local Loop (WLL) and LMDS, Wireless Local Area Networks (WLANs), Bluetooth and Personal Area Networks (PANS)

Unit 2 The Cellular Concept: System Design Fundamentals, Introduction, Frequency reuse, channel assignment strategies, handoff strategies – prioritizing handoffs, Practical Handoff considerations. Interference and system capacity, co-channel interference and system capacity, channel planning for wireless systems, adjacent channel interference, power control for reducing interference.

Unit 3 Mobile Radio Propagation: Introduction to radio wave propagation, Free space propagation model, Relating power to electric field, Reflection, Diffraction, Scattering. Modulation Techniques for Mobile Radio: Frequency modulation Vs amplitude modulation, Amplitude modulation, Angle modulation, Digital Modulation, Linear Modulation techniques – Binary phases shift keying (BPSK), Differential Phase Shift Keying (DPSK), Quadrature Phase Shift Keying (QPSK), Constant envelope modulation – Binary Frequency Shift Keying, Minimum Shift Keying (MSK), Gaussian Minimum Shift Keying (GMSK). 105 Unit 4 Multiple Access Techniques for Wireless Communications: Introduction to Multiple access, Frequency Division Multiple Access (FDMA), Time Division Multiple Access (TDMA), Spread Spectrum Multiple Access, Space Division Multiple Access (SDMA), Packet Radio. Protocols, Reservation Protocols – Reservation ALOHA, Packet Reservation Multiple Access (PRMA), Capacity of cellular systems.

Unit 5 Wireless Networking: Introduction, Difference between Wireless and Fixed Telephone Networks, Development of Wireless Networks, First generation, second generation, third generation.

Text Book: 1. Theodore S Rappaport: Wireless Communications, Principles and Practice, 2nd Edition, Pearson Education Asia, 2011.

Reference Books: 1. William C Y Lee: Mobile Communications Engineering Theory and Applications, 2nd Edition, McGraw Hill, 2011. 2. William Stallings: Wireless Communications and Networks, 2nd edition, Pearson Education Asia, 2009.

106 MCSE E42: Advances in Storage Area Networks (3:0:0)

Course Objectives: This course will help students to achieve the following objectives: ability for aligning the appropriate technologies to specific business problems, ability to evaluate design alternatives according to standard practice, specifications, performance analysis, an ability for preparing a guidelines for aligning technical solutions with the business objectives of data availability and preservation, an ability to propose solutions for the support of business processes with the aid of storage networks, will be able to design data networks with built –in redundancy and high availability and will be able to design a storage model and storage networks.

Topics: Intelligent disk subsystems, I/O techniques, network attached storage, file system and NAS, storage virtualization, SAN architecture and hardware devices, software components of SAN and management.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: Understand computer systems, especially server Centric and storage centric IT architecture, the memory hierarchy and its impact on performance; access to stored information via file systems, and access to other computer systems via networks, Be able to compare large and small internal hard disks that is, active and passive I/O channels ,virtualization by RAID and All levels of RAIDs, Understand the details of data flow, internal working of fiber channel transmission, protocols, latency, communication between arbitrated loop and fabric, connection via SCSI and be able to develop a program to test the architecture provision intended operations, Be able to Design, implement, test, debug, and document storage network problems, Understand the techniques that might be useful in designing and implementing the different architectures and Understand the problems of consistent and reliable storage networks production and the goals of architecture.

Detailed Syllabus: Unit 1 Introduction: Server Centric IT Architecture and its Limitations; Storage – Centric IT Architecture and its advantages. Case study: Replacing a server with Storage Networks The Data Storage and Data Access problem; The Battle for size and access. Intelligent Disk Subsystems: Architecture of Intelligent Disk Subsystems; Hard disks and Internal I/O Channels; JBOD, Storage virtualization using RAID and different RAID levels; Caching: Acceleration of Hard Disk Access; Intelligent disk subsystems, Availability of disk subsystems.

Unit 2 I/O Techniques: The Physical I/O path from the CPU to the Storage System; SCSI; Fibre Channel Protocol Stack; Fibre Channel SAN; IP Storage.

Unit 3 Network Attached Storage: The NAS Architecture, The NAS hardware Architecture, The NAS Sotfware Architecture, Network connectivity, NAS as a storage system. File System and NAS: Local File Systems; Network file Systems and file servers; Shared Disk file systems; Comparison of fibre Channel and NAS.

Unit 4 Storage Virtualization: Definition of Storage virtualization ; Implementation Considerations; Storage virtualization on Block or file level; Storage virtualization on 107 various levels of the storage Network; Symmetric and Asymmetric storage virtualization in the Network. Unit 5 SAN Architecture and Hardware devices: Overview, Creating a Network for storage; SAN Hardware devices; The fibre channel switch; Host Bus Adaptors; Putting the storage in SAN; Fabric operation from a Hardware perspective. Software Components of SAN: The switch’s Operating system; Device Drivers; Supporting the switch’s components; Configuration options for SANs. Management: Planning Business Continuity; Managing availability; Managing Serviceability; Capacity planning; Security considerations.

Text Book: 1. Ulf Troppens, Rainer Erkens and Wolfgang Muller: Storage Networks Explained, 1st edition, Wiley India, 2012.

Reference Books: 1. Marc Farley: Storage Networking Fundamentals – An Introduction to Storage Devices, Subsystems, Applications, Management, and File Systems, Cisco Press, 2005. 2. Robert Spalding: “Storage Networks The Complete Reference”, 1st edition, Tata McGraw-Hill, 2011. 3. Richard Barker and Paul Massiglia: “Storage Area Network Essentials A CompleteGuide to understanding and Implementing SANs”, 1st edition, John Wiley India, 2011.

108 Semester: II/III Year: 2014-2016 Course Title: Big Data and Data Science Course Code: MCSE E 12 Credits (L:T:P) : 3:0:0 Core/ Elective: Elective Type of Course: Lecture, Practical Total Contact Hours: 42

Prerequisites: Nil Course Objectives The objectives of this course are to  Understand how organizations these days use their data a decision supporting tool and to build data - intensive products and services.  Understand the collection of skills required by organizations to support these functions has been grouped under the term “Data Sciences”  Understand the basic concepts of big data, methodologies for analyzing structured and unstructured data  Understand the relationship between the Data Scientist and the business needs

Course Contents:

Unit 1 Introduction to big Data, Big Data Overview with typical examples, What is Data Science, Introduction to Big Data Analytics, Data Analytics Life cycle, Domain-specific Life cycle.

Unit 2 Data, Data Range, Data Management, Data Mining, Data Munging, Wrangling and Cleaning, Databases and Relational Algebra, Parallel Data Bases, Parallel Query Processing, Mean and Standard Deviation, Estimation-Only Analyses, Use Case: Watching Data Trends with Google Ngrams, Use Case: Estimating Move Preferences.

Unit 3 Introduction to Analytics - introduction to machine learning, Supervised learning overview, simple nearest neighbor, decision trees/forests, regression, Unsupervised learning: k-means, multi-dimensional scaling Graph Analytics: PageRank, community detection, recursive queries, iterative processing, Text Analytics: latent semantic analysis, Visualization & visual data analytics.

Unit 4 Tools and Methods deployed in Data Science, Introduction to R language, R functions and programming, R Grphics, R and commonly used statistics, R Commander, analyzing and exploring data with R, R studio, Advantages and disadvantages of R, R vs SAS MapReduce/Hadoop, MapR Technologies and The Most Powerful, Elegant FREE Version of Hadoop Window and MADlib functions.

Unit 5 Case Studies and Illustrations: IBM BigInsights, BigSheets, and Netezza Customer Intelligence, RainStor Big Data Analytics on Hadoop - The Industry's First Enterprise-Class Database Running Natively on Hadoop, DataStax (Including Coverage of the Free "Community Edition" of DataStax's Cassandra Implementation, with OpsCenter), Microsoft's Big Data Solution,

Jigsaw: Visualization for Investigative Analysis and latest state of the art examples. 109 References: There is no single good book available covering all the above units. Copies of topics from different papers and books will be distributed to the students

Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practice exercises and practical sessions.

Course Assessment and evaluation:

When/ Where Contribution To Max Evidence What (Frequency to Course Whom Marks Collected in the Outcomes course) Thrice Internal (Average of

t Assessment the best two 25 Blue Books 1-5

n CIE s Tests will be e t d c m

o computed) e s h

r Students s t i Lab test Once 25 Data Sheets 1,2,4-5 e e D s M s End of Course

A Semester (Answering Answer SEE End 50 1-5 5 of 10 scripts Examination questions) t s Students m c d

s 1-5, e t

o Feedback s

r End of the n i h e Students - Questionnaire Relevance of t e d s course e s n End of Course the course I M A Survey

Course Outcomes At the end of the course students should be able to: 1. Identify the differences between Big Data and Small Data 2. Design the programs to analyze big data 3. Demonstrate the analysis of big data 4. Analyze the Ontologies, Semantics, Introspection, Data Integration and Measurement techniques of big data 5. Illustrate the stepwise approach to big data analysis and understand the legalities and societal issues involved

110 Mapping Course Outcomes with Programme Outcomes:

Program Outcomes Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Identify the differences between Big Data and X X X Small Data Design the programs to X X X X X analyze big data Demonstrate the X X X X X analysis of big data Analyze the Ontologies, Semantics, Introspection, Data X X X X Integration and Measurement techniques of big data Illustrate the stepwise approach to big data analysis and understand X X X X X X X X the legalities and societal issues involved

111 Semester: II/III Year: 2014-2016 Course Title: GPU Programming using CUDA Course Code: MCSE E43 Credits (L:T:P) : 3:0:0 Core/ Elective: Elective Type of Course: Lecture/Seminar Total Contact Hours: 42

Prerequisites: NIL

Course Objectives The objectives of this course are to  Provide an understanding Graphical Processing Units and their architecture.  Analyze the features GPUs and their functionalities  Provide understanding of using GPUs as accelerators  Design parallel applications using CUDA-C  Analyze parallel algorithms implemented on heterogeneous computing environments with sequential versions

Course Contents: Unit 1 Introduction: GPUs as Parallel Computers, Architecture of a Model GPU, Why More Speed or Parallelism? Parallel Programming Languages and Models, Overarching Goals. History of GPU Computing: Evolution of Graphics Pipelines, GPU Computing. Introduction to CUDA: Data Parallelism, CUDA Program Structure, A Matrix-Matrix Multiplication Example, Device Memories and Data Transfer, Kernel Functions and Threading.

Unit 2 CUDA Threads: CUDA Thread Organization, Using blockIdx and threadIdx, Synchronization and Transparent Scalability, Thread Assignment, Thread Scheduling and Latency Tolerance. CUDA Memories: Importance of Memory Access Efficiency, CUDA Device Memory Types, A Strategy for Reducing Global Memory Traffic, Memory as a limiting Factor to Parallelism. Performance Considerations: More on Thread Execution, Global Memory Bandwidth, Dynamic Partitioning of SM Resources, Data Perfecting, Instruction Mix, Thread Granularity, Measured Performance and Summary.

Unit 3 Floating Point Considerations: Floating Point Format, Representable Numbers, Special Bit Patterns and Precision, Arithmetic Accuracy and Rounding, Algorithm Considerations. Parallel Programming and Computational Thinking: Goals of Parallel Programming, Problem Decomposition, Algorithm Selection, Computational Thinking.

Unit 4 Introduction to OPENCL: Background, Data Parallelism Model, Device Architecture, Kernel Functions, Device Management and Kernel Launch, Electrostatic Potential Map in OpenCL. Goals of Programming GPUs, Memory Architecture Evolution, Kernel Execution Control Evolution, Core Performance, Programming Environment

Unit 5 Application Case Study - Advanced MRI Reconstruction: Application Background, Iterative Reconstruction, Computing FHd, Final Evaluation. Application Case Study – Molecular Visualization and Analysis: Application Background, A Simple Kernel Implementation, Instruction Execution Efficiency, Memory Coalescing, Additional Performance Comparisons, Using Multiple GPUs. 112 Text Book: 1. David B Kirk, Wen-mei W. Hwu, “Programming Massively Parallel Processors – A Hands-on Approach”, First Edition, Elsevier and nvidia Publishers, 2010. Reference Books: 1. Kai Hwang and Naresh Jotwani “Advanced Computer Architecture – Parallelism, Scalability, and Programmability, Second Edition, TMH, 2011. 2. Mattson, Sanders, Massingill: Patterns for Parallel Programming, Addison Wesley,2005, ISBN0-321-22811-1.

Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practice exercises and practical sessions. The course is basically learnt using Project based Learning Method.

Course Assessment and evaluation:

When/ Where Contribution To Max Evidence What (Frequency to Course Whom Marks Collected in the Outcomes course) Thrice Internal (Average of Assessment the best two 15 Blue Books 1-5

s Tests will be d

o computed) h

t Will be

e CIE

t carried out by M

c t a batch of Project Report, e n

r Students i e Mini Projects two students. 35 Code 1,2,4-5 D

m Evaluation is Repository s

s at the end of e

s the Semester s

A End of Course Semester (Answering SEE End 100 Answer scripts 1-5 5 of 10 Examination questions)

t Students

n t s

e Feedback c d End of the 1-5, Relevance e m o

r - Questionnaire s i h Students course of the course s t d e e

n End of Course s I M s Survey A

Course Outcomes At the end of the course students should be able to: 1. Identify the advantages and need of GPUs as an emerging technology 2. Design the programs using CUDA-C/OPENCL 3. Demonstrate Heterogeneous Computing on CPUs and GPUs 4. Analyze the speedup of programs on GPUs when compared to CPUs 5. Illustrate the usage of different programming abstractions using CUDA-C on GPUs

113 Mapping Course Outcomes with Program Outcomes:

Program Outcomes Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Identify the advantages and need X X of GPUs as an emerging technology Design the programs X X X X X X X using CUDA-C/OPENCL Demonstrate Heterogeneous X X X X X X X Computing on CPUs and GPUs Analyze the speedup of programs on GPUs X X X X X X X when compared to CPUs Illustrate the usage of different programming X X X X X X abstractions using CUDA-C on GPUs

114 Semester: III Year: 2014-2016 Course Title: Information Retrieval Course Code: MCSE E44 Credits (L:T:P) : 3:0:0 Core/ Elective: Elective Type of course: Lecture, Tutorial Total Contact Hours: 42

Prerequisites: There are no prerequisites to this course. Course Objectives: The objectives of this course are to  Present the differences between data and information retrieval systems and different classical IR models  Present methods to evaluate the performance of information retrieval systems and introduce different querying languages and protocols.  Provide the concepts of query operations and the use of metadata and markup languages.  Present the various text operations, indexing and search techniques, and the basics of parallel and distributed IR.  Discuss the concepts of user interfaces for IR applications and web search techniques.

Course Contents: Unit 1 Introduction: Motivation, Basic concepts, Past, present, and future, The retrieval process. Modeling: Introduction, A taxonomy of information retrieval models, Retrieval: Adhoc and filtering, A formal characterization of IR models, Classic information retrieval, Alternative set theoretic models, Alternative algebraic models, Alternative probabilistic models, Structured text retrieval models, Models for browsing.

Unit 2 Retrieval Evaluation: Introduction, Retrieval performance evaluation, Reference collections. Query Languages: Introduction, keyword-based querying, Pattern matching, Structural queries, Query protocols.

Unit 3 Query Operations: Introduction, User relevance feedback, Automatic local analysis, Automatic global analysis. Text and Multimedia Languages and Properties: Introduction, Metadata, Text, Markup languages, Multimedia.

Unit 4 Text Operations: Introduction, Document preprocessing, Document clustering, Text compression, Comparing text compression techniques. Indexing and Searching: Introduction; Inverted Files; Other indices for text; Boolean queries; Sequential searching; Pattern matching; Structural queries; Compression. Parallel and Distributed IR: Introduction, Parallel IR, Distributed IR.

Unit 5 User Interfaces and Visualization: Introduction, Human-Computer interaction, The information access process, Starting pints, Query specification, Context, Using relevance judgments, Interface support for the search process. Searching the Web: Introduction, Challenges, Characterizing the web, Search engines, Browsing, Metasearchers, Finding the needle in the haystack, Searching using hyperlinks.

115 Text Book: 1. Ricardo Baeza-Yates, Berthier Ribeiro-Neto: Modern Information Retrieval, 1st edition, Pearson, 2011.

Reference Books: 1. David A. Grossman, Ophir Frieder: Information Retrieval Algorithms and Heuristics, 2nd Edition, Springer, 2009. 2. William B. Frakes, Ricardo Baeza-Yates (Editors): Information Retrieval Data Structures and Algorithms, 1st edition, Prentice Hall PTR, 2009.

Course Delivery: The course will be delivered through lectures, presentations, classroom discussions, and practical implementations. Questions for CIE and SEE are designed in accordance with the Bloom’s taxonomy.

Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes Thrice(Average Internal of the best two 30 Blue Books 1,2,3,4 &5 t Assessment Tests will be n

e computed)

m CIE s s Recollection, s d Quiz Sheets/ e o Surprise Quiz/ analytical and s h Students Once each 20 report/ s t Assignment/Seminar communication e A

presentation t M Skills c e

r End of Course i

D Standard (Answering Answer SEE 100 1,2,3,4 &5 Examination 5 of 10 scripts questions) Students 4, 5 &

t Feedback Effectiveness

n t s e c d End of the of Delivery of e m o

r - Questionnaire s i h Students

s course instructions & t d e e

n End of Course s

I Assessment M s Survey A Methods

Course Outcomes : At the end of the course the students should be able to: 1. Distinguish between data and information retrieval systems and explain different classical IR models 2. Evaluate the performance of information retrieval systems and use different querying languages and protocols. 3. Perform query operations and recognize the use of metadata and markup languages. 4. Explain various text operations, indexing and search techniques, and the basics of parallel and distributed IR. 5. Discuss the concepts of user interfaces for IR applications and web search techniques.

116 Mapping Course Outcomes with Program Outcomes:

Program Outcomes Course Outcomes PO PO PO PO PO PO PO PO PO PO PO PO PO 1 2 3 4 5 6 7 8 9 10 11 12 13 Distinguish between data and information retrieval systems X X X X X X and explain different classical IR models Evaluate the performance of information retrieval systems X X X X X and use different querying languages and protocols Perform query operations and recognize the use of metadata X X X X and markup languages Explain various text operations, indexing and search X X X X X X X X techniques, and the basics of parallel and distributed IR Discuss the concepts of user interfaces for IR applications X X X X X X X X X X and web search techniques.

117 MCSE E45: Topics in Software Testing (3:0:0) Course Objectives: This course will help students to achieve the following objectives: Select, with justification, an appropriate set of tools to support the development of a range of software products, Analyze and evaluate a set of tools in a given area of software development, Demonstrate the capability to use a range of software tools in support of the development of a software product of medium size, Identify the principal issues associated with software evolution and explain their impact on the software life cycle, Discuss the challenges of maintaining legacy systems and the need for reverse engineering, Outline the process of regression testing and its role in release management, Estimate the impact of a change request to an existing product of medium size, Develop a plan for re-engineering a medium-sized product in response to a change request, Discuss the advantages and disadvantages of software reuse. Exploit opportunities for software reuse in a given context and Identify weaknesses in a given simple design, and highlight how they can be removed through refactoring.

Topics: Basics of software testing and examples, decision table-based testing, data flow testing, levels of testing, integration, system, interaction, OO, class, OO integration, GUI, OO system, exploratory, model-based testing and test-driven development.

Course Outcomes: This course uses assigned readings, lectures, and homework to enable the students to: design and identify the suitable capabilities to use a range of software tools in support of the development of a software product of medium size, identify the principal issues associated with software evolution and analyze it, explain the impact on the software life cycle by different testing tools, challenges of maintaining legacy systems and the need for reverse engineering and outline the process of regression testing and its role in release management.

Detailed Syllabus: Unit 1 Basics of Software Testing and Examples: Basic definitions, Test cases, Insights from a Venn diagram, Identifying test cases, Error and fault taxonomies, Levels of testing. Examples: Generalized pseudocode, The triangle problem, The NextDate function, The commission problem, The SATM (Simple Automatic Teller Machine) problem. Decision Table-Based Testing: Decision tables, Test cases for the triangle problem, Test cases for the NextDate function, Test cases for the commission problem, Guidelines and observations. Data Flow Testing: Definition-Use testing, Slice-based testing, Guidelines and observations.

Unit 2 Levels of Testing: Traditional view of testing levels, Alternative life-cycle models, The SATM system, Separating integration and system testing. Integration Testing: A closer look at the SATM system, Decomposition-based, call graph-based, Path-based integrations, Case study. System Testing: Threads, Basic concepts for requirements specification, Finding threads, Structural strategies and functional strategies for thread testing, SATM test threads, System testing guidelines, ASF (Atomic System Functions) testing example.

Unit 3 Interaction Testing: Context of interaction, A taxonomy of interactions, Interaction, composition, and determinism, Client/Server Testing. 118 Issues in Object-Oriented Testing: Units for object-oriented testing, Implications of composition and encapsulation, inheritance, and polymorphism, Levels of object-oriented testing, GUI testing, Dataflow testing for object-oriented software, Examples. Class Testing: Methods as units, Classes as units.

Unit 4 Object-Oriented Integration Testing: UML support for integration testing, MM-paths for object-oriented software, A framework for object-oriented dataflow integration testing. GUI Testing: The currency conversion program, Unit testing, Integration Testing and System testing for the currency conversion program. Object-Oriented System Testing: Currency converter UML description, UML-based system testing, Statechart-based system testing. Exploratory Testing: The context-driven school, Exploring exploratory testing, Exploring a familiar example, Exploratory and context-driven testing observations.

Unit 5 Model-Based Testing: Testing based on models, Appropriate models, Use case-based testing, Commercial tool support for model-based testing. Test-Driven Development: Test-then-code cycles, Automated test execution, Java and JUnit example, Remaining questions, Pros, cons, and open questions of TDD, Retrospective on MDD versus TDD. A Closer Look at All Pairs Testing: The all-pairs technique, A closer look at NIST study, Appropriate applications for all pairs testing, Recommendations for all pairs testing. Software Testing Excellence: Craftsmanship, Best practice of software testing, Top 10 best practices for software testing excellence, Mapping best practices to diverse projects.

Text Book: 1. Paul C. Jorgensen: Software Testing, A Craftsman’s Approach, 3rd Edition, Auerbach Publications, 2012.

Reference Books: 1. Aditya P Mathur: Foundations of Software Testing, Pearson, 2008. 2. Mauro Pezze, Michal Young: Software Testing and Analysis – Process, Principles and Techniques, 1st edition, John Wiley & Sons, 2011. 3. Srinivasan Desikan, Gopalaswamy Ramesh: Software testing Principles and Practices, 1st Edition, Pearson, 2012. 4. Brian Marrick: The Craft of Software Testing, 1st edition, Pearson, 2012.

119 M. S. Ramaiah Institute of Technology (Autonomous Institute, Affiliated to VTU) BANGALORE-560054

Department of Computer Science & Engineering

Guidelines for M.Tech (CSE) Project Phase I and II

Course Details Subject Code /Name: MCSE 312 / Project Phase 1 Credits: 10 Subject Code/ Name: MCSE 401/Project Phase-2 Credits: 23

Max CIE marks: 100 Max SEE marks: 100

 Project can be done in-house or externally in any reputed industry/institution.  Students are instructed to meet their Guides at the department every week.

Component Timeline Assessment

Project phase-I End of 3rd semester-12th Interim Progress week Assessment

Project phase-II Mid of 4th semester -8th week Design Development and Evaluation-1 Solution

Project phase-II End of 4th semester -13th Written Report Evaluation-2 week Final Presentation

Guidelines for External Projects  The company/organization has to give an acceptance letter permitting the students to carry out their project work in their premises prior to the conduction (Third Semester Project Phase I).  Students are free to carry out their project work in the Company premises, but should meet their guides at the department every week for updates.  Demonstration of the project is a must at the College during the final Viva Voce.  A project guide (external guide) shall be allotted by the company/organization for supervising the progress of the project work (Third Semester Project Phase I).  An internal guide will be allotted by the department for every external project also. In consultation with the external guide, the internal guide must be permitted to oversee the progress of the project work at the company premises at suitable times.

 Students carrying out external projects will have to submit synopsis / functional specification of the project work duly signed by the external guide before the deadline (Third Semester Project Phase I).

120  The project guides are responsible for approving the progress of their respective wards.

 In case the project guide requires a committee to approve their status of the work, he/she can convey the same to the project coordinator at regular intervals. An expert committee will be then formed to review the work on request from the project guide. The committee will finalize the work by end of the semester.

 Students are required to maintain a project diary wherein all the student-guide meetings must be recorded.

 The Project Phase II will be reviewed in two stages. a. Project Phase II- Evaluation-I: to be done after six (6) weeks from the start of the semester. The evaluation should be done by the guide and two co-examiners. The students are required to submit the work on the System Design, Detailed Design and further course of action of their work. b. Project Phase II- Evaluation-II: The same team that conducted the Evaluation-I must do the Evaluation- II after twelve (12) weeks from the start of the semester. Students must complete the implementation and testing by this time. They are required to demonstrate the implementation, testing & results. All projects must be demonstrated at the CSE Department.

c. The faculty should also visit the Industry (in case it is an external project) to interact with the mentors so as to monitor the progress of their respective students. d. A draft version of the complete project report must also be submitted at the end of twelve (12) weeks.

 The CIE marks will be cumulative sum of the two evaluations done (40:60) for a total of 100 marks.

 The student should prepare a consolidated report in IEEE Format and should submit it for possible publication in National/International Conferences/Journals before the submission of the Thesis

 A final project viva-voce will be conducted at the end of the semester (SEE) with an internal examiner and an external examiner.

Typical Project Activities and Timelines

The project activities include

1. Deciding the project subject area (Third Semester Project Phase I). 2. Establishing relevance and importance of the project (Third Semester Project Phase I). 3. Identifying requirements (Third Semester Project Phase I). 4. Feasibility study and freezing of project scope/objectives (Third Semester Project Phase I). 5. General design inputs: requirements analysis (Third Semester Project Phase I). 6. System and subsystem level design: design(Fourth Semester Project Phase II) 121 7. Convert all designs into programs: implementation(Fourth Semester Project Phase II) 8. Performance evaluation at system/subsystem level testing (Fourth Semester Project Phase II) 9. Documentation of all above activities into a project report (Third Semester Project Phase I & Fourth Semester Project Phase II)

Suggested Timelines for Activities and Deliverables

1. Start time + 6 weeks Write very clearly scope/objective set for the project. The objectives must reflect as to what exactly is proposed to implement. Freeze the title and scope/ objectives and this will not change under normal situation.

System design: Understand the overall system functioning, identify and draw a system level block schematic identifying all identified subsystems and their input/output need. Prepare a list of hardware systems, computing and network environment. Similarly identify the software – operating systems, application software, case tools, simulators, databases, etc. Highlight what is already available and what will be newly created or required for the project.

Deliverable: System design document

2. Start time + 8 weeks Detailed Design: Design from the conceptual level block schematic, a detailed architectural layout, indicate every subsystem and within that identify input/output and design for every small entity. Draw functional block schematics, data flow diagrams for every small entity and subsystem.

Formulate a test plan: list the test data at the inputs, type of tests to be performed during development and making of subsystems, and tests required during runtime or execution.

Deliverable: Detailed design document

3. Start time + 10 weeks Write the algorithms, the pseudo code for every function call, the subroutines and the recursions. Implement the design; execute the programs step by step for each module. Debug, evaluate the performance and validate the design. Integrate all modules/subsystems to realize the over system.

Perform all system level tests, evaluate the results and compare the project scope/objects and the requirements.

Deliverable: Implementation and testing document, demo of working code

4. Start time + 13 weeks Complete all documentation and make the project report ready for submission.

Deliverable: Complete project report

122 The Students need to also consolidate their work into a IEEE and publish the same in a reputed Journal or an International Conference.

At the end of the 13th week, The PG students can attend the Best Project Selection Process which will be conducted at the department of Computer Science and Engineering, MSRIT.

The Criteria for the same would be Quality of the Project, Its relevance to the present technology, Research contribution, relevant papers published, etc.

One Project will be selected from the Batch as the Best Project.

123 GUIDELINES FOR THE PREPARATION OF PG IV Semester (Project Phase- II) PROJECT REPORTS

1. Project reports should be typed neatly only on one side of the paper with 1.5 or double line spacing on a A4 size paper. The margins should be: Left - 1.25", Right - 1", Top and Bottom -0.75". 2. The total number of reports to be prepared is 5 (4+1)  Four (4) Copies to be submitted to the department  One (1) copy to the student. 3. Before taking the final printout, the approval of the concerned guide(s) is mandatory and suggested corrections, if any, must be incorporated. 4. The organization of the report should be as follows  Inner title page  Certificate from the guide and department  Declaration by candidate  Abstract or Synopsis  Acknowledgments  Table of Contents  List of table & figures (optional) All the above pages Starting from abstract must be numbered in roman ( i, ii, iii, iv, v, …)  Chapters ( page numbers in Arabic i.e. 1, 2, 3) o Main body of the report divided appropriately into chapters, sections and subsections.  References or bibliography 5. Numbering : The chapters, sections and subsections may be numbered in the decimal form for e.g. Chapter 2, sections as 2.1, 2.2 etc., and subsections as 2.2.3, 2.5.1 etc. 6. Fonts sizes: a. The chapter number must be left or right justified (font size 16). b. Followed by the title of chapter centered (font size 18), c. Section/subsection numbers along with their headings must be left justified with i. Section number and its heading in font size 16 ii. Subsection and its heading in font size 14. iii. The body or the text of the report should have font size 12.

124 7. The figures and tables must be numbered chapter wise for e.g.: Fig. 2.1 Block diagram of a serial binary adder, Table 3.1 Primitive flow table, etc. Figure captions must be placed below the figure and centred. Table captions must be above the table and centred. 8. Reference or Bibliography: The references should be numbered serially in the order of their occurrence in the text and their numbers should be indicated within square brackets for e.g. [3]. The section on references should list them in serial order in the following format. For textbooks – [1] A.V. Oppenheim and R.W. Schafer, Digital Signal Processing, Englewood, N.J., Prentice Hall, 3 Edition, 1975. For papers – [2] Devid, Insulation design to combat pollution problem, Proc of IEEE, PAS, Vol 71, Aug 1981, pp 1901-1907.

Bibliography need not be numbered and need not be cited. 9. Only SI units are to be used in the report. Important equations must be numbered in decimal form for e.g. V = IR ...... (3.2) All equation numbers should be right justified 10. The project report should be clearly written and include descriptions of work carried out by others only to the minimum extent necessary. Verbatim reproduction of material available elsewhere should be strictly avoided. If short excerpts from published work are desired to be included, they should be within quotation marks and appropriately referenced. 11. Proper attention is to be paid not only to the technical contents but also to the organization and clarity of the report. Due care should be taken to avoid spelling and typing errors. The student should note that report-write-up forms the important component in the overall evaluation of the project. 12.The colour of the cover page for Computer Science PG projects is CREAM.

125 M. S. RAMAIAH INSTITUTE OF TECHNOLOGY BANGALORE-54 (Autonomous Institute, Affiliated to VTU)

Outcome Based Education Curricula (For the Academic year 2015 – 2017)

I- IV SEMESTER

M.Tech-Computer Science & Engineering History of the Institute

M. S. Ramaiah Institute of Technology was started in 1962 by the late Dr. M.S. Ramaiah, our Founder Chairman who was a renowned visionary, philanthropist, and a pioneer in creating several landmark infrastructure projects in India. Noticing the shortage of talented engineering professionals required to build a modern India, Dr. M.S. Ramaiah envisioned MSRIT as an institute of excellence imparting quality and affordable education. Part of Gokula Education Foundation, MSRIT has grown over the years with significant contributions from various professionals in different capacities, ably led by Dr. M.S. Ramaiah himself, whose personal commitment has seen the institution through its formative years. Today, MSRIT stands tall as one of India’s finest names in Engineering Education and has produced around 35,000 engineering professionals who occupy responsible positions across the globe.

History of Department of Computer Science and Engineering

Year of Establishment 1984 Names of the Programmes 1.UG: B.E. in Computer science and Engineering offered 2.PG: M.Tech. in Computer Science and Engineering 3.PG: M.Tech. in Computer Networks and Engineering 4.Ph.D 5.M.Sc(Engg.) by research

2 Faculty

Name Sl. No. Qualification Designation 1. Dr. K G Srinivasa M.E, Ph.D HOD, Professor 2. Dr. R. Srinivasan D.Sc. Emeritus Professor 3. Dr .S Ramani Ph.D Emeritus Professor 4. Nagabhushan A.M M.Tech Emeritus Professor 5. Dr. Anita Kanavalli M.E., Ph.D Professor 6. Dr. Seema S M.S., Ph.D Associate Professor 7. Dr. Annapurna P. Patil M. Tech, Ph.D Professor 8. Dr. Jagadish S Kallimani M.Tech, Ph.D Associate Professor 9. Jayalakshmi D S M.Sc(Engg), (Ph.D) Associate Professor 10. Dr. Monica R Mundada M.Tech, Ph.D Associate Professor 11. Sanjeetha R M.Tech Assistant Professor 12. A Parkavi M.E. (Ph.D) Assistant Professor 13. Veena G S M.Tech (Ph.D) Assistant Professor 14. J Geetha M.Tech, (Ph.D) Assistant Professor 15. Dr. T N R Kumar M. Tech Ph.D Assistant Professor 16. Mamatha Jadav V M.Tech Assistant Professor 17. Chethan C T B.E. Assistant Professor 18. Sini Anna Alex M.E, (Ph.D) Assistant Professor 19. Vandana Sardar M.E. Assistant Professor 20. Meera Devi M.Tech Assistant Professor 21. Mallegowda M M.Tech (Ph.D) Assistant Professor 22. Divakar Harekal M.E. (Ph.D) Assistant Professor 23. Chandrika Prasad M.Tech Assistant Professor 24. S Rajarajeswari M.E, (Ph.D) Assistant Professor 25. Sowmyarani C N M.E. (Ph.D) Assistant Professor 26. Pramod S Sunagar M.Tech (Ph.D) Assistant Professor 27. Sowmya B J M.Tech Assistant Professor 28. Pradeep Kumar D M.Tech Assistant Professor 29. Ganeshayya I Shidaganti M.Tech (Ph.D) Assistant Professor 30. Chetan M.Tech Assistant Professor 31. Darshana A Naik M.Tech Assistant Professor 32. Srinidhi H M.Tech (Ph.D) Assistant Professor 33. Aparna R B.E, M.Tech Assistant Professor 34. Hanumantha Raju R B.E, M.Tech Assistant Professor Visiting Faculty Members from Industry AICTE-INAE 35. Dr. Ramamurthy Badrinath Ph.D distinguished Visiting Professor Application Engineer at 36. N. Pramod B.E. Thoughtworks Pvt. Ltd. M.S. in Machine Learning and Data Mining from 37. Jayasimha Rao Entrepreneur Aalto University School of Science 38. Sriram Kashyap MTech from IIT Madras Intel, Bangalore

3 Vision and Mission of the Institute

Vision To evolve into an autonomous institution of International standards for imparting quality Technical Education

Mission MSRIT shall deliver global quality technical education by nurturing a conducive learning environment for a better tomorrow through continuous improvement and customization.

Quality Policy “We at M. S. Ramaiah Institute of Technology, Bangalore strive to deliver comprehensive, continually enhanced, global quality technical and management education through an established Quality Management system complemented by the synergistic interaction of the stake holders concerned”.

Vision and Mission of the Department

Vision To build a strong learning and research environment in the field of Computer Science and Engineering that responds to the challenges of 21st century.

Mission  To produce computer science graduates who, trained in design and implementation of computational systems through competitive curriculum and research in collaboration with industry and other organizations.

 To educate students in technology competencies by providing professionally committed faculty and staff.

 To inculcate strong ethical values, leadership abilities and research capabilities in the minds of students so as to work towards the progress of the society.

4 Process for Defining the Vision and the Mission of the Department

Programme Educational Objectives (PEOs)

An M.Tech (Computer Science & Engineering) graduate of M S Ramaiah Institute of Technology should, within three to five years of graduation

PEO1 Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur PEO2 Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing doctoral studies and engage in research and inquiry leading to new innovations and products PEO3 Be able to work effectively in multidisciplinary and multicultural environments and Be responsible members and leaders of their communities PEO4 Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large

5 PEOs Derivation Process

These objectives can be demonstrated by performance, actions, or achievements.

PEO1. Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur  Gainful employment in a reputed organization or University  Promotions achieved during the employment period  Utilization of the technical skill-set in professional activities  Participating in client-based definition of scope and constructability  Producing lucid documents such as technical reports, white papers, proposals, etc.  Make presentations or reports to colleagues/clients  Using data-driven balanced decision making to analyze engineering and business trade-offs  Formulating and delivering a product/process

6 PEO2. Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing graduate studies and engage in research and inquiry leading to new innovations and products  Acceptance by, satisfactory progress in, or successful completion of a doctoral program in a reputed institute/university  Learning a new skill, tool, or system independently  Attending a technical conference/symposium/workshop/tutorial  Membership of professional bodies  Publishing refereed paper in conference/journal  Publishing/ Reviewing books, book chapters, conference or journal papers  Delivering guest lectures, seminars and tutorials in Conferences  Working with Industry on research and innovations.  Applying for a patent or making a useful invention  Accounting for larger societal, ethical, legal, business, and technical context while making decisions on a project  Utilize the existing knowledge in varied applications

PEO3. Be able to work effectively in multidisciplinary and multicultural environments and be responsible members and leaders of their communities  Working across teams consisting of people from diverse disciplines, cultures and nationalities  Use tools for collaboration such as teleconferencing, video conferencing, etc.  Communicate effectively with clients/team members  Make appropriate decisions regarding delegation of work, allocation of resources (time, man power, and hardware and software assets) and responsibilities.  Anticipate and resolve problems and coordinate the work within a team  Mentoring a new hire  Become a team leader for a project  Election or appointment to leadership position in a professional society  Organizing/ Chairing Conferences, symposiums, workshops at National/ International Levels

PEO4. Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large  Identify the civic, environmental, homeland security, healthcare needs of the community and contribute by applying Computer Science & Engineering to create services, processes and products.  Participation and leadership in competitive activities like team sports, quiz, debates, etc.  Participation and leadership in community outreach activities as in cultural events, civic actions, health initiatives.

7 Programme Outcomes (POs)

PO (1) An ability to identify and formulate Computer Science and Engineering problems, with appropriate skills to solve the problem, and formulate needed experiments to substantiate theoretical findings.

PO (2) Ability to plan and undertake projects and execute in a collaborative manner adopting standard processes and tools as being deployed in Industries.

PO (3) Ability to acquire significant expertise and knowledge to be able to participate in multidisciplinary projects/teams.

PO (4) Acquire methods of engaging in life-long learning not only to predict and plan the projects of the future but also to groom others in the group.

PO (5) Ability to grasp the methodology and implement intellectual property rights on the research findings in theory and practice.

PO (6) Acquire professional and intellectual integrity to stress upon the impact of Computer Engineering applications with respect to economic and environmental aspects

PO Derivation Process

8 Mapping of PEOs and POs

Programme Outcomes Programme Educational Objectives PO1 PO2 PO3 PO4 PO5 PO6 Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute x x to the profession as an excellent employee, or as an entrepreneur. Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by x x pursuing doctoral studies and engage in research and inquiry leading to new innovations and products Be able to work effectively in multidisciplinary and multicultural environments and Be x x responsible members and leaders of their communities. Understand the human, social and environmental context of their profession and x x contribute positively to the needs of individuals and society at large.

Curriculum Breakdown Distribution

Sl. No. Courses Weightage 1 Core Engineering Courses 36% 2 Electives 24% 4 Internship 8% 5 Major Project 30% 6 Seminar 2%

9 Board of Studies for the Term 2015-2016

1. Head of the Department concerned: Dr. K G Srinivasa Chairperson

2. At least five faculty members at different Dr. Anita Kanavalli Member levels covering different specializations Dr. Jagadish S Kallimani Member Prof. Jayalakshmi D S Member constituting nominated by the Academic Prof. H V Divakar Member Council Prof. Sanjeetha R Member Prof. Parkavi Member Prof. Chandrika Prasaad Member

3. Special invitees Dr. R. Srinivasan Member Dr. S. Ramani Member Prof. Nagabhushan A M Member

4. Two experts in the subject from outside Dr. Kavi Mahesh, Professor, PESIT Member the college Dr. G Varaprasad Associate Professor, BMSCE Member

5. One expert from outside the college, Dr. N.K. Srinath, Professor, RVCE Member nominated by the Vice Chancellor

6. One representative from Mr. Rajesh Vijayarajan, Hewlett-Packard Member industry/corporate sector allied area relating to placement nominated by the Academic Council

7. One postgraduate meritorious alumnus Sriram Kashyap, Intel Corporation Member to be nominated by the Principal

10 Department Advisory Board for the term 2015-2016

1. Head of the Department concerned Dr. K G Srinivasa Member

2. Experts from other organizations for Dr. Satish Vadhiyar, SERC, IISC Bangalore Member Member Department Advisory Board Dr. Srinivasaraghavan, IIIT Bangalore Dr. K Sangeeta Iyer, Amrita School Of Member Engineering, Bangalore.

Industry Advisory Board for the Term 2015-2016

1. Head of the Department concerned Dr. K G Srinivasa Member

2. Experts from industry constituting Dr. Badrinath Ramamurthy, HP Labs, India Member Member the Industry Advisory Board Dr. N.C. Narendra, CTS Dr. Yogesh Simhan, SERC, IISC Member Mr. Sreekanth Iyer, IBM Member Mr. Nishant Kulkarni, IBM Member Mr. Muthuraman Ranganath, SAP Technologies Member Mr. K Murali, Amazon Member

11 M S Ramaiah Institute of Technology (Autonomous Institute, Affiliated to VTU) Department of Computer Science and Engineering Revised Scheme of Studies of Master of Technology in Computer Science and Engineering (2015-17)

I Semester M.Tech in Computer Science and Engineering Total Credits: 25 Subject Code Name of the Subject L T P SS Credit CIE SEE 15MCSE11 Advanced Algorithms 3 0 0 1 4 50 50 15MCSE12 Software Engineering 2 0 2 0 4 50 50 15MCSE13 Computer System Performance Analysis 4 0 0 0 4 50 50 15MCSEE** Elective I * * * * 4 50 50 15MCSEE** Elective II * * * * 4 50 50 15MCSE14 Software Development for Portable Devices 0 0 2 0 2 50 50 Laboratory 15MCSE15 Network Programming Laboratory 0 0 2 0 2 50 50 15MCSES01 Seminar I 0 0 1 0 1 50 50

II Semester M.Tech in Computer Science and Engineering Total Credits: 25

Subject Code Name of the Subject L T P SS Credit CIE SEE 15MCSE21 Computer Security 3 1 0 0 4 50 50 15MCSE22 Embedded System Design 3 0 0 1 4 50 50 15MCSE23 Project Management and Professional Ethics 4 0 0 0 4 50 50 15MCSEE** Elective III * * * * 4 50 50 15MCSEE** Elective IV * * * * 4 50 50 15MCSE24 Internet of Things Laboratory 0 0 2 0 2 50 50 15MCSE25 Data Analytics Laboratory 0 0 2 0 2 50 50 15MCSES02 Seminar II 0 0 1 0 1 50 50

III Semester M.Tech in Computer Science and Engineering Total Credits: 26 Subject Code Name of the Subject L T P SS Credit CIE SEE 15MCSE31 Future Skills 2020 0 1 1 0 2 50 15MCSEE** Elective V * * * * 4 50 50 15MCSEE** Elective VI * * * * 4 50 50 15MCSE32 Internship * * 8 * 8 50 50 15MCSE33 Technical Writing and Content Development * * * 2 2 50 15MCSE34 Project Phase I * * 6 * 6 50 50

IV Semester M.Tech in Computer Science and Engineering Total Credits: 24 Subject Code Name of the Subject L T P SS Credit CIE SEE 15MCSE41 Project Phase II 0 0 24 0 24 50 50

Subject Code Elective List 15MCSEE 01 Advances in Operating Systems 15MCSEE 02 Cloud Computing Advances in Data Base Management 15MCSEE 03 Systems Multi Core Architecture and 15MCSEE 04 Programming 15MCSEE 05 Storage Area Networks 15MCSEE 06 Big Data and Data Science 15MCSEE 07 Information Retrieval 15MCSEE 08 Software Testing 15MCSEE 09 Service Oriented Architecture 15MCSEE 10 Social Network Analysis

L - Lecture, T – Tutorial, P-Practical, SS- Self Study, CIE-Continuous Internal Evaluation, SEE-Semester End Evaluation. NOTE: 1. The hours/week shown in the column Tutorial/Practical is the contact hours for students. The teachers should provide guidance. 2. Faculty handling M.Tech classes should give a lesson plan including the topics to be covered in Tutorial by first week of the class. 3. Internship: The students should devote 8 to12 weeks after availing vacation at the end of 2nd Semester. The training can be in any of the advanced technology of relevance to industry. The training can be either a certification / summer training inside the institution / technology survey / mini project on industry relevant to recent technology. At the end of the training, student should give a seminar and demo of the technology learnt. For internship each student will be assigned a mentor. 4. Project Phase I: This is carried out in addition to regular courses in the 3rd Semester. During this phase, problem identification, literature survey, test plan, formation of detailed specifications (SRS document), higher level design should be completed. A report on this work must be submitted and a presentation on the same must be given at the end of 3rd Semester. This is to be evaluated for 10 credits by the department committee constituted for the purpose. 5. Project phase II: Project to be completed with detailed design, implementation, test case preparations, testing and demonstration. 6. During the final project viva, students have to submit all the reports. The project evaluation and viva- voce will be conducted by a committee constituted for this purpose. 7. The student should prepare a consolidated report in IEEE format and should submit it for possible publication in National/International Conferences/Journals before the submission of the thesis. 8. The students should periodically meet their guide and maintain a log book with periodic milestones achieved. 9. Seminar in first and second semesters should be given on the topics taken from research articles from reputed Journals/Conferences.

13 Course Title: Advanced Algorithms Course Code: 15MCSE11 Credits (L:T:P:SS) : 3:0:0:1 Core/ Elective: Core Type of course: Lecture /Self Study Total Contact Hours: 56

Prerequisite: Knowledge of Analysis and Design of Algorithm.

Course Contents: Unit 1 Analysis Techniques: Growth of Functions, Asymptotic notations, Standard notations and common functions, Recurrences and Solution of Recurrence equations – The Substitution method, The recurrence – tree method, The master method, Amortized Analysis: Aggregate, Accounting and Potential Methods.

Unit 2 Graph Algorithms: Bellman-Ford Algorithm, Single source shortest paths in a DAG, Johnson’s Algorithm for sparse graphs, Maximum bipartite matching. Trees: B-trees, Red-Black trees Hashing: General Idea, Hash Function, Separate Chaining, Open addressing, Rehashing, Extendible hashing.

Unit 3 Number – Theoretic Algorithms: Elementary notations, GCD, Modular Arithmetic, Solving modular linear equations, The Chinese remainder theorem, Powers of an element, RSA cryptosystem. Heaps: Heaps, Priority Queues, Binomial Heaps, Fibonacci Heaps.

Unit 4 String Matching Algorithms: Naïve string matching, Rabin – Karp algorithm, String matching with finite automata, Knuth-Morris-Pratt algorithm, Boyer-Moore Algorithms.

Unit 5 Algorithmic Puzzles: Magic Square, n-queens problem, Glove Selection, Ferrying Soldiers, Jigsaw Puzzle Assembly, A Stack of Fake Coins, Maximum Sum Descent, Hats of Two Colors, Pluses and Minuses, Searching for a Pattern, Locker Doors, Palindrome Counting, Inverting a Coin Triangle, Sorting 5 in 7.

Text Book: 1. T H Cormen, C E Leiserson, R L Rivest and C Stein: Introduction to Algorithms, 3/e, PHI, 2011. 2. Mark Allen Weiss: Data Structures and Algorithm Analysis in C++, 3rd Edition, Pearson Education, 2011. 3. Anany Levitin and Maria Levitin: Algorithmic Puzzle, Oxford University Press, 2011

Reference Books: 1. Ellis Horowitz, Sartaj Sahni, S Rajasekharan: Fundamentals of Computer Algorithms, University Press, 2007. 2. Alfred V Aho, John E Hopcroft, J D Ullman: The Design and Analysis of Computer Algorithms, Pearson Education, 2011.

Course Delivery: The course will be delivered through lectures and presentations.

14 Course Assessment and Evaluation Scheme:

When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes Internal Thrice(Average of C Assessment the best two will be 30 Blue Books 1,2,3,4,5,6 & 7 I Tests computed) E Direct Assignment Students Once 20 Solutions 1,2,3,4 &5 & End of Course SE Standard Indirect (Answering 100 Answer scripts 1,2,3,4,5,6 & 7 E Examination Assess 5 of 10 questions) ment 1,2,3,4,5,6 & 7 Method Effectiveness of s Course Exit Delivery of Students End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes:

At the end of the course, a student should be able to 1. Devise recurrence relations and amortized cost of various operations. 2. Illustrate graph algorithms such as Bellman-Ford, Shortest path, and Bipartite matching. 3. Explain B-trees, Red-Black trees and hashing techniques. 4. Identify the methods for solving modular linear equations, Chinese remainder theorem and RSA cryptosystem. 5. Describe types of heaps such as Binomial and Fibonacci heaps. 6. Assess the string matching algorithms such as Boyer-Moore and Knuth-Morris-Pratt algorithm. 7. Compose mathematical models, objective functions and constraints to solve algorithmic puzzles.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Devise recurrence relations and amortized cost of X X X various operations. Illustrate graph algorithms such as Bellman-Ford, X X X Shortest path, and Bipartite matching. Explain B-trees, Red-Black trees and hashing X X X Techniques. Identify the methods for solving modular linear equations, Chinese remainder theorem and RSA X X X cryptosystem. Describe types of heaps such as Binomial and Fibonacci heaps. X X X Assess the string matching algorithms such as Boyer- X X X Moore and Knuth-Morris-Pratt algorithm. Compose mathematical models, objective functions and X X X X constraints to solve algorithmic puzzles.

15 Course Title: Software Engineering Course Code: 15MCSE12 Credits (L:T:P:SS): 2:0:2:0 Core/ Elective: Core Type of course: Lecture / Practical Total Contact Hours: 56

Prerequisites: Programming skills (Any Language – Java, C, C++)

Course contents:

Unit 1 Technical: Start: Sign up for web services, Get server up, node/nap, Basic JS, Dev Environment: Unix CLI, git,emacs, REPL, dotfiles, edit HTML. Theory: Introduction, A startup is a business built to grow rapidly, Your market::The most important choice in a startup.

Unit 2: Technical: Product/Design, Market research, Wire framing, Design, HTML/CSS, Deployment, DNS, Domains. Mobile: HTTP, User agents, RWD, Bootstrap. Theory: Some basic principles of market research, Design, Why do VCs love mobile/local/social? And what will they love next?

Unit 3: Technical: Intermediate JS, Backend JS: Async, Flow control, Node debugging. Theory: Regulation, Disruption and the technologies, How to disrupt everything, including the government?

Unit 4: Technical: Full Stack JSI: Set up REST JSON API, Client-side templating, Full Stack JS II: Consume APIs, widget as API client, Data pipeline. Theory: Founding, Conception, omposition, and capitalization, Dev scaling: engineers vs CPUs, DRY, Docs, Tests, Code review.

Unit 5: Technical:Marketing: Video Editing, Analytics, CAC/LTV/Funnel Final Project. Theory: Business scaling: sales, marketing, PR, The Funnel, Finance, Accounting, Summary and Recap.

References: 1. https://class.coursera.org/startup-001 2. The reading material for individual lectures will be shared with the students using TutorSpace.

16 Course Delivery: The course will be delivered through lectures, software tools in laboratory, class room interaction, group discussion, exercises and self study cases.

Course Assessment and Evaluation Scheme:

When/ Where Contribution Max Evidence What To Whom (Frequency in to Course Marks Collected the course) Outcomes

C Code print 1,2 ,3,4 & 5 I At the end of each out and URLs Lab Tests 50 E unit of the work completed 1,2,3,4 &5 Direct & S End of Course Indirect Standard Answer E (Answering 5 of 100 1,2,3,4&5 Assessm Examination Students scripts ent E 10 questions) Methods End of Course - Questionnaire 1,2,3, 4 & 5 Survey Effectiveness of Delivery of End of the course instructions & Assessment Methods

Course Outcomes:

At the end of the course student should be able to 1. Identify the strategies used to build the current internet based start-up companies. 2. Find the technology stack used in start-up companies. 3. Illustrate the usage of various technologies through hands-on session. 4. Describe the non-technical aspects of start-up companies. 5. Propose new skills by working in start-up/product/solution company or to become an entrepreneur.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the strategies used to build the current internet based start-up companies. x x x

Find the technology stack used in start-up companies. x x x x Illustrate the usage of various technologies through hands-on session. x x x x x

Describe the non-technical aspects of start-up companies. x x x x x Propose new skills by working in start-up/product/solution company or become an entrepreneur. x x x x x x

17 Course Title: Computer Systems Performance Analysis Course Code: 15MCSE13 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Core Type of course: Lecture Total Contact Hours: 56

Prerequisites: Students should have undergone a course on probability theory, matrices, software engineering aspects and queuing theory.

Course Contents: Unit 1 Introduction: The Art Of Performance Evaluation, Common Mistakes In Performance Evaluation, A Systematic Approach To Performance Evaluation, Selecting An Evaluation Technique, Selecting Performance Metrics, Commonly Used Performance Metrics, Utility Classification Of Performance Metrics, Setting Performance Requirements.

Unit 2 Workloads, Workload Selection and Characterization: Types of Work Loads, Addition Instructions, Instruction Mixes, Kernels; Synthetic Programs, Application Benchmarks, Popular Benchmarks. Work Load Selection: Services Exercised, Level Of Detail; Representativeness; Timeliness, Other Considerations In Workload Selection. Work Load Characterization Techniques: Terminology, Averaging, Specifying Dispersion, Single Parameter Histograms, Multi Parameter Histograms, Principle Component Analysis, Markov Models, Clustering.

Unit 3 Monitors, Program Execution Monitors and Accounting Logs: Monitors: Terminology and classification; Software and hardware monitors, Software versus hardware monitors, Firmware and hybrid monitors, Distributed System Monitors, Program Execution Monitors and Accounting Logs, Program Execution Monitors, Techniques for Improving Program Performance, Accounting Logs, Analysis and Interpretation of Accounting log data, Using accounting logs to answer commonly asked questions.

Unit 4 Capacity Planning and Benchmarking: Steps in capacity planning and management; Problems in Capacity Planning; Common Mistakes in Benchmarking; Benchmarking Games; Load Drivers; Remote-Terminal Emulation; Components of an RTE; Limitations of RTEs, Experimental Design and Analysis: Introduction: Terminology, Common mistakes in experiments, Types of experimental designs, 2k Factorial Designs, Concepts, Computation of effects, Sign table method for computing effects; Allocation of variance; General 2k Factorial Designs, General full factorial designs with k factors: Model, Analysis of a General Design, Informal Methods.

Unit 5 Queuing Models: Introduction: Queuing Notation; Rules for all Queues; Little’s Law, Types of Stochastic Process. Analysis of Single Queue: Birth-Death Processes; M/M/1 Queue; M/M/m Queue; M/M/m/B Queue with finite buffers; Results for other M/M/1 Queuing Systems. Queuing Networks: Open and Closed Queuing Networks; Product form networks, queuing Network models of Computer Systems. Operational Laws: Utilization Law; Forced Flow Law; Little’s Law; General Response Time Law; Interactive Response Time Law; Bottleneck Analysis; Mean Value Analysis and Related Techniques; Analysis of Open Queuing Networks; Mean Value Analysis; Text Book: 1. Raj Jain: The Art of Computer Systems Performance Analysis, 1st edition, John Wiley and Sons, 2012.

Reference Books: 1. Paul J Fortier, Howard E Michel: computer Systems Performance Evaluation and prediction, 1st edition, Elsevier, 2009.

2. Trivedi K S: Probability and Statistics with Reliability, Queuing and Computer Science Applications, 1st edition, PHI, 2011.

Course Delivery: The course will be delivered through lectures, presentations, discussions, and case studies.

18 Course Assessment and Evaluation Scheme:

What To whom When/ Where Max Evidence Contributing to (Frequency in the marks collected Course Outcomes course) Internal Thrice(Average of C assessment the best two will 30 Blue books 1, 2,3,4,5,6,7,8 & 9 I tests be computed) E Once Written 1, 2,3,4,5,6,7,8 & 9 Direct Assignments 20 Assignment & sheets Indire S End of course ct Standard E Students (Answering 5 of 100 Answer scripts 1, 2,3,4,5,6,7,8 & 9 Assess examination ment E 10 questions) Metho Questionnaire 1, 2,3,4,5,6 ,7,8 & 9 ds Effectiveness of End of course Delivery of End of course - survey instructions & Assessment Methods

Course Outcomes:

At the end of the course the student should be able to 1. Understand the techniques to approach performance problem. 2. Compare two systems and determine the optimal value of a parameter. 3. Identify performance bottlenecks and characterize the load on a system. 4. Select the number and size of system components and predict the performance of future workloads. 5. Understand the use of different analysis strategies like measurement, simulation, analytical modeling. 6. Implement different techniques in experimental design like factorial design techniques. 7. Understand how to use monitors and accounting logs of systems use to improve the performance of the system. 8. Apply mathematical techniques with stress on learning the types of Queuing models. 9. Apply queuing models to solve problems in computer Networks, Operating system, etc.

19 Mapping Course Outcomes with programme Outcomes:

Course Outcomes Programme Outcomes

PO1 PO2 PO3 PO4 PO5 PO6

Understand the techniques to X X X approach performance problems.

Compare two systems and determine X X X X X the optimal value of a parameter. Identify performance bottlenecks and X X X X characterize the load on a system. Select the number and size of system X X X X X components and predict the performance of future workloads. Understand the use of different X X X X X X analysis strategies like measurement, simulation, analytical modeling. Implement different techniques in X X X X experimental design like factorial design techniques. Understand how to use monitors and X X X X X X accounting logs of systems use to improve the performance. Apply mathematical techniques with X X X X stress on learning the types of Queuing models. Apply queuing models to solve X X X X problems in computer Networks, Operating system, etc.

20 Course Title: Software Development for Portable Devices Laboratory Course Code: 15MCSE14 Credits (L:T:P:SS): 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56

Prerequisites: Basic Knowledge of Java

Course Contents:

Experiments that are to be conducted as a part of the course: 1. Introducing different Android development tools and developing Hello World application. 2. Develop an android application to investigate the activity life cycle. 3. Develop an android application to investigate the fragments. 4. Develop an android application to create user interfaces with different layouts and views. 5. Develop an android application to create a Registration form using appropriate widgets. 6. Develop an android application to embed PickerViews in an activity. 7. Develop an android application on using implicit & explicit Intents. 8. Develop an android application to utilize Action bar. 9. Develop an android application to utilize Toasts and Notifications. 10. Develop an android application to work SQLite data storage and create a table. 11. Develop an android application to work SQLite data storage and perform various operations on the table. 12. Develop an android application to introduce content providers. 13. Developing applications to work with messaging and telephony services. 14. Develop an android application for creating location based service.

Reference Books: 1. Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley Publishing. 2. Android Application Development, Programming with the Google SDK, by, Rick Rogers, John Lombardo, ZigurdMednieks, Blake Meike, SPD, Oreilly, ISBN10: 81-8404-733-9, ISBN13:978-81- 8404-733-2 3. Hello Android, Introducing Google’s Mobile Development Platform, 3rd Edition, by Ed Burnette, Pragmatic Programmers, LLC.ISBN-10: 1-934356-56-5, ISBN-13: 978-1-934356-56-2 4. https://developer.android.com/training/index.html 5. http://www.codelearn.org/android-tutorial 6. http://www.tutorialspoint.com/android/

Course Delivery: The course will be delivered through lab exercises on various key concepts of mobile application development and by developing a simple application.

21 Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes

Twice(Average Lab Test 25 Data Sheets 1,2,3,4 & 5 of the Two) CIE Project Students Once 25 Project Report 1,2,3,4& 5 Demo Direct & Standard Indirect SEE Project Demo 50 Project Report 1,2,3,4 & 5 Assessment Examination Methods 1, 2, 3, 4 & 5 Effectiveness End of Course of Delivery of Students End of the - Questionnaire Survey instructions & course Assessment Methods

Course Outcomes:

At the end of the course student should be able to 1. Identify the various aspects of android platform and different android developer tools. 2. Recognize the activity life cycle and fragment life cycle. 3. Demonstrating the usage of different Views and ViewGroups. 4. Demonstrate the knowledge of location-based services and notifications in applications. 5. Develop the Android’s communication abilities using SMS and Telephony services.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the various aspects of android platform and different X X android developer tools. Recognize the activity life cycle and fragment life cycle. X X X Demonstrating the usage of different Views &ViewGroups. X X X X Demonstrate the knowledge of location-based services and X X X X Notifications in applications. Develop the Android’s communication abilities using SMS and X X X X Telephony services.

22 Rubrics for Assessment of Student Performance:

Trait Barely Acceptable Basic Good Very Good

Specifications The program is producing The program The program works and The program incorrect results. produces correct produces the correct works and meets results but does not results and displays all of the display them them correctly. It also specifications. correctly. meets most of the other specifications.

Readability The code is poorly organized The code is The code is fairly easy The code is and very difficult to read. readable only by to read. exceptionally someone who well organized knows what it is and very easy to supposed to be follow. doing.

Reusability The code is not organized for Some parts of the Most of the code could The code could reusability. code could be be reused in other be reused as a reused in other programs. whole or each programs. routine could be reused.

Documentation The documentation is simply The documentation The documentation The comments embedded in the is simply comments consists of embedded documentation is code and does not help the embedded in the comment and some well written and reader understand the code. code with some simple header clearly explains simple header documentation that is what the code is comments somewhat useful in accomplishing separating routines. understanding the code. and how.

Delivery The code was more than 2 The code was The program was The program was weeks overdue. within 2 weeks of delivered within a week delivered on the due date. of the due date. time.

Efficiency The code is huge and appears The code is brute The code is fairly The code is to be patched together. force and efficient without extremely unnecessarily long. sacrificing readability efficient without and understanding. sacrificing readability and understanding.

23 STUDENT EVALUATION RUBRIC

Student Name ______Date ______

Question:

______

______

______

______

Name of Supervisors: 1.______2.______

Sl Marks Marks sub sub No. Components Sub - Components Alloted Scored Total Total Marks Marks Scored 1 6 Program Write up 20 10 Lab Test 1 Program Execution

4 Viva

3 25 30 Project Implementation Mini Project 5 Project report

50 Total Marks

24 Course Title: Network Programming Laboratory Course Code: 15MCSE15 Credits (L:T:P:SS): 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56 Prerequisites: Basic Concepts of Computer Networks

Course Objectives:  To learn the basics of socket programming using TCP Sockets.  To learn basics of UDP sockets.  To learn about raw sockets.  To implement few standard network protocols  To develop knowledge of threads for developing high performance scalable applications.

Course Content:

Write programs using C/C++ or java to implement the following 1. Echo Server using TCP and UDP socket programming. 2. HTTP Client and HTTP server using TCP socket programming. 3. DNS Client and DNS server using UDP socket programming. 4. Capture and to block the packets over the network using raw sockets. 5. Sliding Window protocols (stop and wait, Go back N, Selective Repeat) 6. TRACE ROUTE command. 7. Telnet Client. 8. File Transfer Protocol. 9. IPC - Pipes, FIFO and Message Queue. 10. Chat client and Chat server using Java socket programming. 11. Multicasting Program using Java socket programming. 12. Remote Procedure Call for sorting any given set of numbers. 13. RPC to perform String Conversion from Lower case to Upper Case and vice versa. 14. Generate SIGPIPE Error with Socket. 15. Restart server by capturing SIGHUP signal .

Text Books: 1. W. Richard Stevens: Unix Network Programming, PHI 2. W. Richard Stevens, Bill Fenner, Andrew M. Rudolf: Unix Network Programming The Sockets Networking API, Volume 1, Third Edition, PHI. 3. W. Richard Stevens: Unix Network Programming Interprocess Communications Volume 2, Second edition, PHI. 4. Elliott Rusty Harold: Java Network Programming, 3rd Edition, Shroff Publishers.

Reference Books: 1. W. Richard Stevens: TCP/IP Illustrated, Volumes 1, 2, and 3, Pearson, 2000.

Course Delivery: The course will be delivered through lab exercises.

25 Course Assessment Methods:

When/ Where To Max Evidence Contribution to What (Frequency in the Whom Marks Collected Course Outcomes course) Answer C Lab Tests Twice 40 1,2 ,3,4 & 5 Sheets I E Practical Once 10 Data sheets 1,2,3,4 &5 assignments Direct & S Indirect Standard Answer E End of Course 50 1,2,3,4&5 Assessm Examination Students scripts ent E Methods 1,2,3,4&5 Effectiveness of End of Course Questionnair Delivery of End of the course - Survey e instructions & Assessment Methods

Course Outcomes 1. Implement both connection-oriented and connectionless servers and clients using the Sockets API. 2. Understand the Unix process model, standard Unix input/output, and their system calls 3. Use signals and their associated system calls in Unix 4. Implement the most widely used network application protocols such as ftp, telnet, ping, etc to develop distributed applications 5. Understand multithreading and implement it in Unix.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Implement both connection-oriented and connectionless servers and x x x clients using the Sockets API.

Understand the Unix process model, standard Unix input/output, and x x x their system calls.

Use signals and their associated system calls in Unix. x x x

Implement the most widely used network application protocols such x x x as ftp, telnet, ping, etc to develop distributed applications. Understand multithreading and implement it in Unix. x x x

26 Rubrics for Assessment of Student Performance

Trait Barely Acceptable Basic Good Very Good

Specifications The program is The program The program works The program producing incorrect produces correct and produces the works and meets results. results but does not correct results and all of the display them displays them specifications. correctly. correctly. It also meets most of the other specifications.

Readability The code is poorly The code is readable The code is fairly The code is organized and very only by someone who easy to read. exceptionally difficult to read. knows what it is well organized supposed to be doing. and very easy to follow.

Reusability The code is not Some parts of the code Most of the code The code could organized for could be reused in could be reused in be reused as a reusability. other programs. other programs. whole or each routine could be reused.

Documentation The documentation is The documentation is The documentation The simply comments simply comments consists of documentation embedded in the code embedded in the code embedded is well written and does not help the with some simple comment and some and clearly reader understand the header comments simple header explains what code. separating routines. documentation that the code is is somewhat useful accomplishing in understanding and how. the code.

Delivery The code was more The code was within 2 The program was The program than 2 weeks weeks of the due date. delivered within a was delivered overdue. week of the due on time. date.

Efficiency The code is huge and The code is brute force The code is fairly The code is appears to be patched and unnecessarily efficient without extremely together. long. sacrificing efficient without readability and sacrificing understanding. readability and understanding.

27 STUDENT EVALUATION RUBRIC

Student Name ______Date ______

Question:

______

______

______

______

Name of Supervisors: 1.______2.______

Sl Marks Marks sub sub No. Components Sub - Components Alloted Scored Total Total Marks Marks Scored 1 6 Program Write up 20 10 Lab Test 1 Program Execution

4 Viva

2 6 20 Program Write up

10 Lab Test 2 Program Execution

4 Viva

3 7 10 Implementation Practical Assignment 3 Viva

50 Total Marks

28 Course Title: Computer Security Course Code: 15MCSE21 Credits (L:T:P:SS): 3:1:0:0 Core/ Elective: Core Type of course: Lecture/Tutorial Total Contact Hours:56

Prerequisites: Knowledge of computer systems and networks

Course Contents: Unit 1 Introduction: Need for security, Organization security, Business security requirements, security goals, Threats, Attacks, System and network security development. Mathematics of Cryptography: Integer Arithmetic, Modular Arithmetic, Matrices, Linear Congruence, GF (2n) Fields.

Unit 2 Traditional Key Ciphers: Introduction, Substitution Ciphers, Transposition Ciphers, Stream and Block Ciphers. Data Encryption Standard: Introduction, DES structure, DES Analysis, Multiple DES, Security of DES. Advanced Encryption Standards: Introduction, Transformation, key expansion, Examples, Analysis of AES.

Unit 3 Public Key Cryptosystem: Concept of Public-key cryptography, RSA cryptosystem, Hashing: Properties of hashing, Digital signatures: Properties of digital signatures, Generic signature schemes, RSA signature, Digital Forensics: Methodology, Team, Evidentiary procedures

Unit 4 Identification: Basic identification techniques, user identification, passwords, Challenge-Response identification, Key management: Symmetric key distribution, Kerberos, Symmetric-key agreement, Public-key distribution, Virtual private networks, Intrusion Detection & Prevention System.

Unit 5 Security at the application layer: EMAIL, PGP, S/MIME, Internet Protocol Security (IPsec): Introduction, Authentication Header Protocol, Encapsulating security payload protocol, Internet key exchange, Secure Socket Layer: States of SSL, SSL record protocol, Handshake protocol, Change cipher spec & alert protocols, Transport layer security

Tutorial Session: 1. Implementing Elliptic curve cryptography based authentication and authorization in a network 2. Implement a program to measure the amount of randomness available in a system 3. Security of wireless networks and mobile devices 4. Proactive cryptographic applications in smart cards 5. Digital signature for physical mail 6. Intrusion detection system 7. Secure instant messages 8. Cookie authentication 9. Steganography in TCP timestamps 10. Variable size block encryption and generate the key of variable length 11. Security of network attached storage 12. Steganography in spam 13. A secure media distribution Framework

29 Text Books: 1. Josef Pieprzyk, Thomas Hardjono, Jennifer Serberry, “Fundamentals of Computer Security”, Springer 2. Behrouz A. Forouzan, Debdeep Mukhopadhyay, “Cryptography and Network Security”, 2nd Edition, Special Indian Edition, Tata McGraw – Hill, 2011

Reference Books: 1. Michael E. Whitman and Herbert J, Mattord: “Principles of Information Security”, 4th. Edition, Thomson, 2012 2. William Stallings: “Network Security Essentials Applications and Standards”, 4th. Edition, Person Education, 2012

Course Delivery: The course will be delivered through lectures, class room interactions, group discussions, seminar, assignments and self-study cases.

Course Assessment and Evaluation Scheme:

When/ Where Max Contribution to To Evidence What (Frequency in Mark Course Whom Collected the course) s Outcomes Thrice(Average C Internal of the best two 30 Blue Books 1,2,3,4,5 &6 I Assessment Tests will be E computed) Quiz Answer 2,3 & 4 Quiz/Assignment Once 20 sheets/Assign Direct & ment Indirect S End of Course Students Answer Assessme E Standard Examination (Answering 100 1,2,3,4,5&6 scripts nt E 5 of 10 questions) Methods 1,2,3.4,5&6 Effectiveness of End of Course Delivery of End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes:

At the end of the course the student should be able to 1. Identify the threats to computer security and its goals. 2. Describe the concept of Private Key Cryptosystems. 3. Formulate an encryption method depending on the needs of threats. 4. Demonstrate the implementation of different methods used in Digital signature. 5. Describe the fundamentals of key management techniques. 6. Summarize the goals achieved at application, transport and network layer.

30 Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the threats to computer security and its goals. x x x x Describe the concept of Private Key Cryptosystems. x x x

Formulate an encryption method depending on the needs of threats x x x x Demonstrate the implementation of different methods used in x x x x Digital signature Describe the fundamentals of key management techniques x x x x Summarize the goals achieved at application, transport and network layer x x x x x x

31 Course Title: Embedded System Design Course Code: 15MCSE22 Credits (L:T:P:SS) : 3:0:0:1 Core/ Elective: Core Type of course: Lecture Total Contact Hours: 56

Prerequisites: The student should have undergone the course on Microprocessors and Computer organization.

Course Contents: Unit 1 Embedded Computing: Introduction, Complex Systems And Microprocessors Embedded Systems, Design Process, Design Metrics, Flow And Optimization, Specifications And Modeling,Cortex-M0 Technical Overview, Implementation Features, System Features, Debug Features, Advantages.

Unit 2 Programming Model, Operation Modes And States, Architecture, Registers And Special Registers Behaviors Of The Application Program Status Register (APSR), Memory System Overview, Stack Memory, Operations Introduction To Cortex-M0 Programming, Instruction Set.

Unit 3 Instruction Usage Examples, Implementation Of Various Structures Like Loop, Switch, Function, Subroutine, Memory System, Exceptions And Interrupts, Interrupt Control And System Control.

Unit 4 Simple Application Programming, Simple Input /Output, Simple Interrupt Programming, Sensors, Thermistors, Ldrs, Leds 7 Segment, LCD, Stepper Motor, Relays, Actuator, and Adcs.

Unit 5 Embedded/ Real Time Tasks, Real Time Systems, Types Of Real Time Systems Quality Of Good Real Time Systems. Real Time Operating System Concepts: Architecture Of The Kernel, Task And Task Scheduler,ISR, Sémaphores, Mutex, Mailboxes, Message Queues, Message Queues Pipes, Signal, Memory Management, Priority Inversion problems.

Text Books:

1. Wayne Wolf “Computers as Components Principles of Embedded Computer System Design”, Second Edition, Elsevier, 2008. 2. Joseph Yiu, “ The Definitive Guide to the ARM Cortex-M0 “, 1st edition, Newnes - an imprint of Elsevier, 2011 3. Lyla B. Das, “Embedded Systems an integrated approach “ , 1st edition, Pearson, 2013. 4. KVVK Prasad, “Embedded/Real Time Systems : Concepts, Design and Programming “ , 1st edition, Dreamtech, 2011 . Reference Books: 1. Frank Wahid/Tony Givargis “Embedded System Design A Unified Hardware/Software Introduction “ 1st Edition, John Wiley & Sons, 2002. 2. Raj Kamal , “Embedded Systems: Architecture ,Programming and Design”, Tata McGrawhill, New Delhi,2003. 3. Tammy Noergaard, “Embedded Systems Architecture- Comprehensive Guide for Engineer and Programmers – Elsevier Publication, 2005 4. Barnett, Cox & O’cull, ”Embedded C programming ”,Thomson ,2005.

Course Delivery: The course is delivered through Lectures, Presentations and Videos.

32 Course Assessment and Evaluation Scheme:

When/ Where To Max Evidence Contribution to What (Frequency in the Whom Marks Collected Course Outcomes course) Thrice(Average Internal of the best two 30 Blue Books 1,2 3,4,5,6 & 7 Assessment Tests will be C computed) I Twice(Summatio E Class-room Direc n of the two will 20 Quiz papers 1,2 3,4,5,6 & 7 Surprise Quiz t & be computed) Indir ect S Students End of Course Standard Answer Asses E (Answering 100 1,2 3,4,5,6 & 7 Examination scripts sment E 5 of 10 questions) Meth 1, 2,3,4,5,6,& 7 ods Effectiveness of End of Course Questionnair Delivery of End of the course - Survey e instructions & Assessment Methods

Course Outcomes:

At the end of the course the students should be able to 1. Identify embedded system requirements and goals 2. Describe Cortex M0 advantages for designing embedded systems 3. Evaluate Cortex M0 in assembly instructions and write embedded C programs using CMSIS features. 4. Understand the memory mapping of Cortex M0 architecture 5. Use the interrupt capabilities, like enabling, disabling setting priority, nested looping 6. Compare the working of various sensors and actuators and their interface with microcontrollers 7. Appreciate the kernel of RTOS and its various deployments for embedded systems.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify embedded system requirements and goals. x x x x x x Describe Cortex M0advantages for designing embedded systems. x x x x Evaluate cortex M0 in assembly instructions and write embedded C programs using CMSIS features x x x x Understand the memory mapping of Cortex M0 architecture. x x x Use the interrupt capabilities, like enabling, disabling setting priority, x x x nested looping Compare the working of various sensors and actuators and their interface x x x with microcontrollers. Appreciate the kernel of RTOS and its various deployment. x x x x x

33 Course Title: Project Management and Professional Ethics Course Code: 15MCSE23 Credits (L:T:P:SS) : 4:0:0:0 Core/ Elective: Core Type of course: Lecture Total Contact Hours: 56

Prerequisites: Nil Unit 1 Introduction: Understanding Project Management, Defining the Project Manager’s Role, The Project Manager as the Planning Agent, The Downside of Project Management, Classification of Projects, Differing Views of Project Management, Concurrent Engineering: A Project Management Approach, Project Management Growth Concepts and definitions: Systems, Programs, and Projects: A Definition, Product versus Project Management: A Definition, The Many Faces of Success, The Many Faces of Failure, The Stage-Gate Process, Project Management Methodologies, Organizational Structures: Traditional (Classical) Organization, Matrix Organizational Form Modification of Matrix Structures, The Strong, Weak, Balanced Matrix

Unit 2 Organizing and staffing the project office and the team: The Staffing Environment, Selecting the Project Manager: An Executive Decision, Skill Requirements for Project and Program Managers, Next Generation Project Managers, Duties and Job Descriptions, Selecting the Project Management Implementation Team, Management Functions: Project Authority, Team Building as an Ongoing Process, Dysfunctions of a Team , Employee–Manager Problems, Management Pitfalls , Conflicts: The Conflict Environment, Conflict Resolution, The Management of Conflicts, Conflict Resolution Modes, the variables for success: Predicting Project Success, Project Management Effectiveness

Unit 3 Planning: General Planning, Life-Cycle Phases, Proposal Preparation, Kickoff Meetings, Understanding Participants’ Roles, Project Planning, The Statement of Work, Project Specifications, Milestone Schedules, Work Breakdown Structure, Detailed Schedules and Charts, Project Plan, Total Project Planning, Management Control, Configuration Management, Enterprise Project Management Methodologies, Project Audits, Network Scheduling Techniques: Network Fundamentals, Graphical Evaluation and Review Technique, Network Replanning, Estimating Activity Time, Estimating Total Project Time, Total PERT/CPM Planning, Project Graphics: Bar (Gantt) Chart, Other Conventional Presentation Techniques

Unit 4 Pricing and Estimating: Types of Estimates, Pricing Process, Organizational Input Requirements, Labor Distributions, Overhead Rates, Materials/Support Costs, Pricing Out the Work, Smoothing Out Department Man-Hours, The Pricing Review Procedure, Project Risks, Life-Cycle Costing (LCC), Cost Control: Understanding Control, The Operating Cycle, Cost Account Codes, Budgets,The Earned Value Measurement System (EVMS), Variance and Earned Value , Trade off analysis in project environment: Methodology for Trade-off Analysis

Unit 5 Risk Management: Definition of Risk, Tolerance for Risk, Definition of Risk Management, Certainty, Risk, and Uncertainty, Risk Identification, Risk Analysis, Qualitative Risk Analysis, Quantitative Risk Analysis, Probability Distributions and the Monte Carlo Process, Contract Management: Plan Procurement, Types of Contracts, Incentive Contracts, Contract Type versus Risk, Contract Administration Cycle, Quality Management: Definition of Quality, The Quality Movement, Quality Management Concepts, The Cost of Quality, The Seven Quality Control Tools, Implementing Six Sigma, Lean Six Sigma and DMAIC 914, Just-in-Time Manufacturing (JIT), Total Quality Management (TQM)

Textbook- Project Management: A Systems Approach to Planning, Scheduling, and Controlling, 10th ed. Author: Harold Kerzner, PhD

Course Delivery: The course is delivered through Lectures, Presentations and Videos.

34 Course Assessment and Evaluation Scheme:

When/ Where To Max Evidence Contribution to What (Frequency in the Whom Marks Collected Course Outcomes course) Thrice(Average Internal of the best two Assessment 30 Blue Books 1,2 3,4 & 5 will be Tests C computed) I Implementation E of different Direct Once 20 Quiz papers 1,2 3,4 & 5 & project Indire management ct strategies Students S End of Course Assess Standard Answer E (Answering 100 1,2 3,4 & 5 ment Examination scripts Metho E 5 of 10 questions) ds 1, 2,3,4 &5 Effectiveness of End of Course Questionnair Delivery of End of the course - Survey e instructions & Assessment Methods

Course Outcomes:

At the end of the course the student should be able to 1. Recognize issues in a realistic project scenario. 2. Employ work breakdown structures (WBS) in a project application. 3. Demonstrate the use of appropriate network scheduling techniques. 4. Produce a project proposal. 5. Discuss the implementation of a proposed plan.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Recognize issues in a realistic project scenario. x x x x Employ work breakdown structures (WBS) in a project application. x x x x Demonstrate the use of appropriate network scheduling techniques. x x x x Produce a project proposal. x x x x Discuss the implementation of a proposed plan. x x x x

35 Course Title: Internet of Things Laboratory Course Code: 15MCSE24 Credits (L:T:P:SS) : 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56

Prerequisites: Knowledge of Computer Networks, Web Technologies, Embedded Systems

Course Contents:

Internet of Things Laboratory provides one of the simplest ways to design and implement various IoT applications. IoT is a flexible platform for experimental research that uses connected devices in homes and beyond.

 Interconnection of devices and implementation of application scenarios.  Deployment and monitoring of field studies and analysis of data from experiments.  Sharing of data, code to evaluate ideas in a diverse set. Projects can be designed in various IoTs domain like

1. Home Automation- Smart Lighting, Smart Appliances, Intrusion Detection, Smoke/Gas Detectors. 2. Cities - Smart Parking, Smart Lighting, Smart Roads, Structural Health Monitoring, Surveillance Emergency Response. 3. Environment -Weather Monitoring, Air Pollution Monitoring, Noise Pollution Monitoring, Forest Fire Detection, River Floods Detection. 4. Energy -Smart Grids, Renewable Energy Systems. 5. Retail -Inventory Management, Smart Payments, Smart Vending Machines. 6. Logistics-Route Generation and scheduling, Fleet Tracking Shipment, Monitoring, Remote Vehicle Diagnostics. 7. Agriculture-Smart Irrigation, Green House Control. 8. Industry - Machine Diagnosis & Prognosis - Indoor Air Quality Monitoring. 9. Health & Lifestyle - Health & Fitness Monitoring, Wearable Electronics. As in the above mentioned projects can be developed using open source tools like Arduino Boards and Raspber Pi

Course Delivery: This course is delivered through presentations and mini project.

Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in the to Course Whom Marks Collected course) Outcomes C Project Mini I Once 50 Documentatio 1,2,3 & 4 Project Direct E n Students & S Standard Answer Indire E Examinati Project demo 50 1,2,3 & 4 scripts ct E on Assess 1,2,3 & 4 ment Effectiveness Metho End of Course of Delivery of Students End of the course - Questionnaire ds Survey instructions & Assessment Methods

36 Course Outcomes:

At the end of Course the student should be able to 1. Design applications that will communicate with IoT hardware and software. 2. Explore specific IoT domain like Network, communications, Management infrastructure, Services applications development and Human interaction. 3. Examine an IoT offering of the project in terms of IoT levels and Protocols. 4. Describe different kinds of Internet-connected product concepts.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Design applications that will communicate with IoT x x x hardware and software. Explore specific IoT domain like Network, communications, Management infrastructure, Services applications x x x development and Human interaction. Examine an IoT offering of the project in terms of IoT levels x x x and Protocols. Describe different kinds of Internet-connected product x x x concepts.

37 Course Title: Data Analytics Laboratory Course Code: 15MCSE25 Credits (L:T:P:SS): 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56

Prerequisites: Students taking this course should be familiar with the concepts from a graduate level introductory statistics course Familiarity with basic programming concepts would be helpful, but not required.

Course Contents:

1. Introduction to R a. R and Rstudio b. Basics of R c. Advanced Data Structures d. Reading Data into R e. Manipulating Strings and Date/Time f. Loops, Control Statements, Functions 2. Data Analysis and Graphics a. Reshaping Data b. dplyr and ggplot2 packages c. Summarized data distributions d. Sampling and Simulation e. Multivariate Analysis 3. Statistical Learning a. Classical Linear Methods (linear and logistic regression) b. Penalized Regression (e.g., ridge, lasso, elastic net) c. Pattern & Event Detection d. Trees and random forest e. Boosting f. Variable Selection (filter, wrapper, embedded) g. Clustering (K-means, hierarchical methods)

Reference Books: 1. R for Everyone: Advanced Analytics and Graphics by Jarad Lander. 2. R Graphics Cookbook by Winston Chang. 3. An Introduction to Statistical Learning: with Applications in R by James, Witten, Hastie and Tibshirani.

Course Delivery: The course will be delivered through lectures in the laboratory.

Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in the to Course Whom Marks Collected course) Outcomes C Test Twice 30 Project I Documentatio 1,2,3,4,5 & 6 E Project Once 20 n Direct Students S Standard & Answer E Examinati Project demo 50 1,2,3,4,5 & 6 Indire scripts ct E on Assess 1,2,3,4,5&6 ment Effectiveness of Metho End of Course Delivery of Students End of the course - Questionnaire ds Survey instructions & Assessment Methods

38 Course Outcomes:

Students completing this course should be able to: 1. Extract meaningful information from data 2. Construct informative plots using the extracted data 3. Apply statistical learning methods for predictive modeling 4. Properly select, tune, and assess models for effective data analysis 5. Perform common hypothesis tests, and run simple regression models in R 6. Present results from data analysis effectively

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Extract meaningful information from data X X Construct informative plots using the extracted data X X Apply statistical learning methods for predictive X X X X X modeling. Properly select, tune, and assess models for X X X effective data analysis. Perform common hypothesis tests, and run simple X X X regression models in R Present results from data analysis effectively X X X

39 Course Title: Seminar Course Code: 15MCSE01/02 Credits (L:T:P:SS): 0:0:1:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: --

Rubrics for Assessment of Student Performance in Seminar Seminars are used as course delivery modes to encourage students to gather current trends in technology, research literature, and self-learn topics of their interest. Seminars require students to research a technical topic, make presentations and write a detailed document on their findings. The student is expected to: 1. Identify seminar topics based on contemporary technical, societal and environmental issues. 2. Conduct literature survey on complex issues in the selected domain 3. Learn or explore advanced technologies 4. Make good oral and written technical presentations

Table 1 Rubrics for assessment of Seminar

Criteria Distinguished (5) Good (4) Basic (3) Unacceptable (1) Organization - Extremely well - Generally well - Somewhat - Poorly organized organized. organized. organized. -Does not clearly -Introduces the -Introduces the -Introduces the introduce the purpose of the purpose of the purpose of the purpose of the presentation clearly presentation clearly. presentation presentation and creatively. -Includes transitions -Includes some -Uses ineffective -Effectively to connect key points transitions to transitions that includes smooth, and better transitions connect key rarely connect clever transitions from idea to idea are points but there points; cannot which are succinct noted. is difficulty in understand but not broken up in - Most information following presentation order to connect key presented is in presentation. because there is no points logical sequence; A sequence of -Student presents few minor points - Student jumps information. information in may be confusing around topics. logical, interesting Several points - Presentation is sequence which -Ends with a are confusing. broken and audience can summary of main disjointed; no follow. points showing some -Ends with a apparent logical -Ends with an evaluation of the summary or order of accurate conclusion evidence presented. conclusion; little presentation-Ends showing evidence of without a summary thoughtful, strong evaluating or conclusion. evaluation of the content based on evidence presented. Evidence.

Content: Depth -Speaker provides -For the most part, -Explanations of -No reference is and Accuracy an accurate and explanations of concepts and/or made to literature or complete concepts and theories are theory. Presentation explanation of key theories are accurate inaccurate or is not clear; concepts and and complete. Some incomplete. information that theories, drawing helpful applications Little attempt is does not support upon relevant of theory are made to tie in presentation in any literature. included. theory. There is way is unnecessarily Applications of -Presents evidence of a great deal of included.

40 theory are included valid research on the information that -Presents little or no to illuminate issues. selected topic, with is not connected evidence of valid multiple sources. to the current research on the -Provides evidence presentation. selected topic. of extensive and -Combines existing -Presents valid research on ideas to form new evidence of -Shows little the selected topic, insights. research on the evidence of the with multiple and selected topic, combination of varied sources. -No significant with sources. ideas. errors are made; a -Combines and few inconsistencies -Combines -Information evaluates existing or errors in existing ideas. included is ideas to form new information. sufficiently insights. -Few errors are inaccurate that -Level of made to distract indicates absence of -Information presentation is a knowledgeable accurate completely generally listener, but information. accurate; all names appropriate. some -Presentation and facts were information is consistently is too precise and explicit accurate elementary or too -Level of -Portions of sophisticated for the presentation is presentation are audience. appropriate for the too elementary or audience. too sophisticated for audience. Creativity -Uses the -Some originality -Little or no - Bland and unexpected to full apparent; clever at variation; a few predictable. advantage; very times; good variety original touches Repetitive with little original, clever, and and blending of but for the most or no variety; little creative approach materials/media. part material creative energy that captures presented with used. audience's attention. little originality or interpretation.

Use of -Graphics designed -While graphics - occasional use --Student uses Communication reinforce relate and aid of graphics that superfluous Aids presentation and presentation, media rarely support graphics, no maximize audience are not as varied and presentation ; graphics, or understanding; use not as well visual aids were graphics that are so of media is varied connected to the not useful or poorly prepared that and appropriate presentation. clear, time they detract from with media not wasting use of the presentation. being added simply multimedia; for the sake of use.

41 Use of Language -Poised, clear -Clear articulation -Audience -Student is anxious articulation; proper but not as polished; occasionally has and cannot be heard volume; steady rate; slightly trouble hearing or monotone with enthusiasm; uncomfortable at the presentation; little or no confidence; speaker times Most can hear seems expression.- is clearly presentation.- uncomfortable.- Presentation has comfortable in front Presentation has no Presentation has four or more of the group. - more than two three spelling errors Presentation has no misspellings and/or misspellings and/or grammatical misspellings or grammatical errors and/or errors. grammatical errors. grammatical errors. Eye Contact -Maintains eye - Student maintains -Some eye -Student reads all or contact; seldom eye contact most of contact, but not most of slides with returning to notes; the time but Maintained and no eye contact. presentation is like frequently returns to at least half the a planned slides. time reads most conversation. of slides.

Viva Voce -Demonstrates -Demonstrates -Demonstrates -Demonstrates extensive knowledge of the some knowledge incomplete knowledge of the topic by responding of rudimentary knowledge of the topic by responding accurately and questions by topic by responding confidently, Appropriately responding inaccurately and precisely and addressing questions. accurately to Inappropriately to appropriately to all At ease with answers questions. questions. audience questions. to all questions but fails to elaborate.

Report Document is fully Document has high Document has Document has compliant with degree of low degree of minimal degree of required rules and compliance with compliance with compliance with structure. Document required rules and required rules required rules and uses highly structure. Document and structure structure Document appropriate uses appropriate Document uses contains language and style. language specific to mostly inappropriate the discipline appropriate language or many language and spelling / contains grammatical errors occasional spelling / grammatical errors

Regularity Reports to guide Reports to guide Does not report Has not met the regularly for often for seminar to guide for guide at all. seminar discussion discussion seminar discussion

Overall Excellent Good Average Poor Presentation

42 Course Title: Advances in Operating Systems Course Code: 15MCSEE01 Credits (L:T:P:SS) : 3:0:1:0 Core/ Elective: Elective Type of Course: Lecture, Practical Total Contact Hours: 70

Prerequisites: Operating Systems

Course Contents: Unit I Process Synchronization: Overview, Synchronizations Mechanisms – Introduction, Concept Of A Process, Concurrent Processes, Critical Section Problem, Other Synchronization Problems. Distributed Operating Systems: Architectures Of Distributed Systems - System Architecture Types, Issues In Distributed Operating Systems, Communication Networks - Communication Primitives Theoretical Foundations - Inherent Limitations Of A Distributed System Lamp Ports Logical Clocks - Vector Clocks - Casual Ordering Of Messages - Global State -Cuts Of A Distributed Computation - Termination Detection. Unit 2 Distributed Mutual Exclusion - Introduction - The Classification Of Mutual Exclusion And Associated Algorithms - A Comparative Performance Analysis Distributed Deadlock Detection -Introduction - Deadlock Handling Strategies In Distributed Systems - Issues In Deadlock Detection And Resolution - Control Organizations For Distributed Deadlock Detection - Centralized And Distributed Deadlock Detection Algorithms Hierarchical Deadlock Detection Algorithms. Unit 3 Agreement Protocols - Introduction-The System Model, A Classification Of Agreement Problems, Applications Of Agreement Algorithms. Distributed Resource Management: Distributed File Systems- Introduction-Architecture - Mechanism For Building Distributed File Systems - Design Issues - Log Structured File Systems. Distributed Shared Memory-Architecture- Algorithms For Implementing DSM - Memory Coherence And Protocols - Design Issues.

Unit 4 Distributed Scheduling - Introduction - Issues In Load Distributing Components Of A Load Distributing Algorithm - Stability Load Distributing Algorithm - Performance Comparison Selecting A Suitable Load Sharing Algorithm Requirements For Load Distributing -Task Migration And Associated Issues. Failure Recovery: Introduction- Basic Concepts - Classification Of Failures - Backward And Forward Error Recovery, Backward Error Recovery- Recovery In Concurrent Systems - Consistent Set Of Check Points - Synchronous And Asynchronous Check Pointing And Recovery Check Pointing For Distributed Database Systems- Recovery In Replicated Distributed Databases. Unit 5 Protection And Security Resource Security And Protection:-Preliminaries, The Access Matrix Model And Its Implementations Safety In Matrix Model- Advanced Models Of Protection Multiprocessor Operating Systems: Multiprocessor System Architectures- Basic Multiprocessor System Architectures - Inter Connection Networks For Multiprocessor Systems - Caching - Hypercube Architecture. Multiprocessor Operating System - Structures Of Multiprocessor Operating System, Operating System Design Issues- Threads Process Synchronization Issues Related To Instructions Process Scheduling: Issues, Co-Scheduling, Smart Scheduling.

Laboratory Work: (The following programs can be executed on any available and suitable platform) 1. Design, develop and execute a program using any thread library to create the number of threads specified by the user; each thread independently generates a random integer as an upper limit, and then computes and prints the number of primes less than or equal to that upper limit along with that upper limit. 2. Rewrite above program such that the processes instead of threads are created and the number of child processes created is fixed as two. The program should make use of kernel timer to measure and print the real time, processor time, user space time and kernel space time for each process. 3. Design, develop and implement a process with a producer thread and a consumer thread which make use of a bounded buffer (size can be prefixed at a suitable value) for communication. Use any suitable synchronization construct. 4. Design, develop, and execute a program to solve a system of n linear equations using Successive Over- relaxation method and n processes which use Shared Memory API. 5. Design, develop, and execute a program to demonstrate the use of RPC.

43 Text Book : 1. Mukesh Singhal, Niranjan G.Shivaratri, "Advanced concepts in operating systems: Distributed, Database and multiprocessor operating systems", TMH, 2009

Reference Books: 1. Andrew S.Tanenbaum, "Modern operating system", PHI, 2003 2. Pradeep K.Sinha, "Distributed operating system-Concepts and design", PHI, 2003. 3. Andrew S.Tanenbaum, "Distributed operating system", Pearson education, 2003.

Course Delivery: The course will be delivered through lectures, class room interaction, Practicals, Self-Study.

Course Assessment and evaluation:

When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes Internal Thrice(Average of Assessment the best two will be 25 Blue Books 1,2, 3,4 & 5 C Tests computed) I Practical, Mini Code Direct E Project and Once 25 Reposition, 2 & 4 & Certification Certificates Indir S End of Course ect Standard Student E (Answering 100 Answer scripts 1,2, 3,4 & 5 Asses Examination s E 5 of 10 questions) sment 1,2 3,4 & 5 meth Effectiveness of ods End of Course Delivery of End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes:

At the end of the course the students should be able to: 1. Implement a concurrent programming application using semaphores & monitors for process control. 2. Explain the basic concepts of Distributed Operating Systems and its architecture 3. Implement deadlock avoidance, prevention & recovery 4. Identify the Distributed resource management and design issues 5. Implement various CPU scheduling, IPC memory management, recovery and concurrent algorithms 6. Understand the architecture of multiprocessor operating systems including caching.

Mapping course outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Implement a concurrent programming application using semaphores & x monitors for process control. Explain the basic concepts of Distributed Operating Systems and its x architecture. Implement deadlock avoidance, prevention & recovery. x x Identify the Distributed resource management and design issues. x x Implement various CPU scheduling, IPC memory management, recovery x x and concurrent algorithms. Understand the architecture of multiprocessor operating systems including x x caching.

44 Course Title: Cloud Computing Course Code: 15MCSEE02 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of Course: Lecture Total Contact Hours: 56

Prerequisites: NIL

Course Contents:

Unit 1 Introduction: Network Centric Computing And Network Centric Content, Peer-To-Peer Systems, Cloud Computing: An Old Idea Whose Time Has Come, Cloud Computing Delivery Models & Services, Ethical Issues, Cloud Vulnerabilities, Challenges. Parallel And Distributed Systems: Parallel Computing, Parallel Computer Architecture, Distributed Systems, Communication Protocols And Process Co-Ordination, Concurrency, Atomic Actions, Consensus Protocols, Enforced Modularity: The Client-Server Paradigm.

Unit 2 Cloud Infrastructure: Amazon, Google, Azure & Online Services, Open Source Private Clouds. Storage Diversity And Vendor Lock-In, Intercloud, Energy Use & Ecological Impact Of Data Centers, Service Level And Compliance Level Agreement, Responsibility Sharing, User Experience, Software Licensing. Cloud Computing: Applications & Paradigms, Challenges, Existing And New Application Opportunities, Architectural Styles Of Cloud Applications, Workflows Coordination Of Multiple Activities, Coordination Based On A State Machine Model -The Zoo Keeper, The Map Reduce Programming Model, Apache Hadoop, A Case Study: The Greptheweb Application, Clouds For Science And Engineering, High Performance Computing On A Cloud, Social Computing, Digital Content, And Cloud Computing, How To Install Hadoop On Eclipse On A Window System. Unit 3 Cloud Resource Virtualization: Layering And Virtualization, Virtual Machine Monitors, Virtual Machines Performance And Security Isolation, Full Virtualization And Paravirtualization, Hardware Support For Virtualization Case Study: Xen -A VMM Based On Paravirtualization, Optimization Of Network Virtualization In Xen 2.0, Vblades -Paravirtualization Targeting A X86-64 Itanium Processor, A Performance Comparison Of Virtual Machines, Virtual Machine Security, The Darker Side Of Virtualization, Software Fault Isolation.

Unit 4 Cloud Resource Management And Scheduling: Policies And Mechanisms For Resource Management, Applications Of Control Theory To Task Scheduling On A Cloud, Stability Of A Two-Level Resource Allocation Architecture, Feedback Control Based On Dynamic Thresholds, Coordination Of Specialized Autonomic Performance Managers, A Utility-Based Model For Cloud-Based Web Services, Resource Bundling, Combinatorial Auctions For Cloud Scheduling Algorithms For Computing Clouds, Fair Queuing, Start Time Fair Queuing, Borrowed Virtual Time, Cloud Scheduling Subject To Deadlines, Scheduling Map Reduce Applications Subject To Deadlines, Resource Management And Application Scaling.

Unit 5 Storage Systems: Evolution, Storage Models, File Systems, Databases, DFS, General Parallel File System, GFS, Hadoop, Locks & Chubby, TPS, NOSQL, Big Data, Mega Store. Cloud Security: Risks, Privacy And Privacy Impacts Assessments. Trust, Operating System Security, Virtual Machine Security, Security Risks Posed By Shared Images, Security Risks Posed By A Management OS, Xoar: Breaking The Monolithic Design Of The TCB, A Trusted Virtual Machine Monitor.

Text Book: 1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers, 2013.

Reference Books: 1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers, 2013. 2. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things, Kai Hwang, Jack Dongarra, Geoffrey Fox. MK Publishers. 3. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert Elsenpeter, McGraw Fill, 2010.

45 Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practice exercises and practical sessions.

Course Assessment and evaluation:

When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes Internal Thrice(Average of Assessment the best two will be 25 Blue Books 1,2, 3,4 & 5 C Tests computed) I Practical, Mini Code Direct E Project and Once 25 Reposition, 2 & 4 & Certification Certificates Indir S End of Course ect Standard Student E (Answering 100 Answer scripts 1,2, 3,4 & 5 Asses Examination s E 5 of 10 questions) sment 1,2 3,4 & 5 meth Effectiveness of ods End of Course Delivery of End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes

At the end of the course students should be able to: 1. To analyze the transformation that led to the evolution of Cloud computing, it's vulnerabilities and its impact. 2. Design different workflows according to requirements and apply map reduce programming model. 3. Make performance comparison of virtual machines and optimization of virtualization. 4. Create combinatorial auctions for cloud resources and design scheduling algorithms for computing clouds. 5. Assess cloud Storage systems and Cloud security, the risks involved, its impact and develop cloud application.

46 Mapping Course Outcomes with Programme Outcomes:

Course Outcomes Programme Outcomes

PO1 PO2 PO PO4 PO5 PO6 3 To analyze the transformation that led to x x the evolution of Cloud computing, it's vulnerabilities and its impact. Design different workflows according to x x x requirements and apply map reduce programming model Make performance comparison of virtual x x machines and optimization of virtualization. Create combinatorial auctions for cloud x x x resources and design scheduling algorithms for computing clouds. Assess cloud Storage systems and Cloud x x x security, the risks involved, its impact and develop cloud application.

47 Course Title: Advances in Database Management Systems Course Code: 15MCSEE03 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of Course: Lecture Total Contact Hours: 56

Prerequisites: Database Management Systems.

Course Contents:

Unit 1 Review of Relational Data Model and Relational Database Constraints: Relational model concepts; Relational model constraints and relational database schemas; Update operations, transactions and dealing with constraint violations.

Unit 2 Object and Object-Relational Databases: Overview of Object-Oriented Concepts – Objects, En capsulation, Type and class hierarchies, complex objects; Object model of ODMG, Object definition Language ODL; Object Query Language OQL; Overview of C++ language binding; Conceptual design of Object database. Overview of object relational features of SQL; Object-relational features of Oracle; Implementation and related issues for extended type systems; The nested relational model.

Unit 3 Parallel and Distributed Databases: Architectures for parallel databases; Parallel query evaluation; Parallelizing individual operations; Parallel query optimizations; Introduction to distributed databases; Distributed DBMS architectures; Storing data in a Distributed DBMS; Distributed catalog management; Distributed Query processing; Updating distributed data; Distributed transactions; Distributed Concurrency control and Recovery. Unit 4 Data Warehousing, Decision Support and Data Mining: Introduction to decision support; OLAP, multidimensional model; Window queries in SQL; Finding answers quickly; Implementation techniques for OLAP; Data Warehousing; Views and Decision support, View materialization, Maintaining materialized views. Introduction to Data Mining; Counting co-occurrences; Mining for rules; Tree-structured rules; Clustering; Similarity search over sequences; Incremental mining and data streams; Additional data mining tasks.

Unit 5 Enhanced Data Models for Some Advanced Applications: Active database concepts and triggers; Temporal, Spatial, and Deductive Databases – Basic concepts. More Rece nt Applications: Mobile databases; Multimedia databases; Geographical Information Systems; Genome data management.

Text Books: 1. Elmasri and Navathe: Fundamentals of Database Systems, Pearson Education, 2013. 2. Raghu Ramakrishnan and J Gehrke: Database Management Systems, 3rd Edition, McGraw-Hill, 2013. Reference Books: 1. Abraham Silberschatz, Henry F. Korth, S. Sudarshan: Database System Concepts, 6th Edition, McGraw Hill, 2010. Course Outcomes:

At the end of the course the student should be able to 1. Choose the appropriate high performance database like parallel and distributed database. 2. Design models of the real world data using object oriented database. 3. Examine the rule set in the database to implement data warehousing of mining 4. Design database for recent applications for better interoperability. 5. To identify emerging and advanced data models.

48 Course Title: Multi Core Architecture and Programming Course Code: 15MCSEE04 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of Course: Lecture Total Contact Hours: 56

Prerequisites: Computer Architecture.

Unit 1 Introduction To Multi-Core Architecture: Motivation For Concurrency In Software, Parallel Computing Platforms, Parallel Computing In Microprocessors, Differentiating Multi-Core Architectures From Hyper- Threading Technology, Multi-Threading On Single-Core Versus Multi-Core Platforms Understanding Performance, Amdahl’s Law, Growing Returns: Gustafson’s Law. System Overview Of Threading: Defining Threads, System View Of Threads, Threading Above The Operating System, Threads Inside The OS, Threads Inside The Hardware, What Happens When A Thread Is Created, Application Programming Models And Threading, Virtual Environment: Vms And Platforms, Runtime Virtualization, System Virtualization.

Unit 2 Fundamental Concepts Of Parallel Programming: Designing For Threads, Task Decomposition, Data Decomposition, Data Flow Decomposition, Implications Of Different Decompositions, Challenges You’ll Face, Parallel Programming Patterns, A Motivating Problem: Error Diffusion, Analysis Of The Error Diffusion Algorithm, An Alternate Approach: Parallel Error Diffusion, Other Alternatives.

Unit 3 Threading And Parallel Programming Constructs: Synchronization, Critical Sections, Deadlock, Synchronization Primitives, Semaphores, Locks, Condition Variables, Messages, Flow Control- Based Concepts, Fence, Barrier, Implementation-Dependent Threading Features. Threading Apis : Threading Apls For Microsoft Windows, Win32/MFC Thread Apls, Threading Apls For Microsoft. NET Framework, Creating Threads, Managing Threads, Thread Pools, Thread Synchronization, POSIX Threads, Creating Threads, Managing Threads, Thread Synchronization, Signaling, Compilation And Linking.

Unit 4 Openmp: A Portable Solution For Threading: Challenges In Threading A Loop, Loop-Carried Dependence, Data-Race Conditions, Managing Shared And Private Data, Loop Scheduling And Portioning, Effective Use Of Reductions, Minimizing Threading Overhead, Work-Sharing Sections, Performance-Oriented Programming, Using Barrier And No Wait, Interleaving Single-Thread And Multi-Thread Execution, Data Copy-In And Copy- Out, Protecting Updates Of Shared Variables, Intel Task Queuing Extension To Openmp, Openmp Library Functions, Openmp Environment Variables, Compilation, Debugging, Performance.

Unit 5 Solutions To Common Parallel Programming Problems: Too Many Threads, Data Races, Deadlocks, And Live Locks, Deadlock, Heavily Contended Locks, Priority Inversion, Solutions For Heavily Contended Locks, Non-Blocking Algorithms, ABA Problem, Cache Line Ping-Ponging, Memory Reclamation Problem, Recommendations, Thread-Safe Functions And Libraries, Memory Issues, Bandwidth, Working In The Cache, Memory Contention, Cache-Related Issues, False Sharing, Memory Consistency, Current IA-32 Architecture, Itanium Architecture, High-Level Languages, Avoiding Pipeline Stalls On IA-32,Data Organization For High Performance.

Text Book 1. Multicore Programming , Increased Performance through Software Multi-threading by Shameem Akhter and Jason Roberts , Intel Press , 2006 2. Hennessey and Patterson: “Computer Architecture A Quantitative Approach”, 4th Edition, Elsevier, 2012.

49 Reference Book: 1. Kai Hwang, Naresh Jotwani: Advanced Computer Architecture - Parallelism, Scalability, Programmability, 2nd Edition, Tata McGraw Hill, 2011.

Course Outcomes:

At the end of the course the students should be able to: 1. Identify performance related parameters in the field of Computer Architecture. 2. Identify the limitations of ILP and the need for multi-core architectures. 3. Solve the issues related to multiprocessing and suggest solutions. 4. Point out the salient features of different multi-core architectures and how they exploit parallelism. 5. Understand the concept of multi threading and OPENMP.

50 Course Title: Storage Area Networks Course Code: 15MCSEE05 Credits (L:T:P:SS) : 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours:56

Prerequisites: Computer Networks, Computer Organization, Operating system

Course Contents:

Unit 1 Introduction: Server centric IT Architecture and its Limitations; Storage centric IT Architecture and its advantages. Case study: Replacing a server with Storage Networks, The Data Storage and Data Access problem, The battle for size and access.Intelligent Disk Subsystems: Architecture of Intelligent Disk Subsystems; Hard disks and Internal I/O Channels; JBOD, Storage virtualization using RAID and different RAID levels; Caching: Acceleration of Hard Disk Access; Intelligent disk subsystems, Availability of disk subsystems.

Unit 2 I/O Techniques: The Physical I/O path from the CPU to the Storage System; SCSI; Fibre Channel Protocol Stack; Fibre Channel SAN; IP Storage.

Unit 3 Network Attached Storage: The NAS Architecture, The NAS hardware Architecture, The NAS Software Architecture, Network connectivity, NAS as a storage system. File System and NAS: Local File Systems; Network file Systems and file servers; Shared Disk file systems; Comparison of fibre Channel and NAS.

Unit 4 Storage Virtualization: Definition of Storage virtualization, Implementation Considerations; Storage virtualization on Block or file level; Storage virtualization on various levels of the storage Network; Symmetric and Asymmetric storage virtualization in the Network.

Unit 5 SAN Architecture and Hardware devices: Overview, Creating a Network for storage; SAN Hardware devices; The fibre channel switch; Host Bus Adaptors; Putting the storage in SAN; Fabric operation from a Hardware perspective. Software Components of SAN: The switch’s operating system; Device Drivers; Supporting the switch’s components; Configuration options for SANs. Management: Planning Business Continuity; Managing availability; Managing Serviceability; Capacity planning; Security considerations.

Text Book: 1. Ulf Troppens, Rainer Erkens and Wolfgang Muller: Storage Networks Explained, 1st edition, Wiley India, 2012.

Reference Books: 1. Marc Farley: Storage Networking Fundamentals – An Introduction to Storage Devices, Subsystems, Applications, Management, and File Systems, Cisco Press, 2005. 2. Robert Spalding: “Storage Networks-The Complete Reference”, 1st edition, Tata McGraw-Hill, 2011. 3. Richard Barker and Paul Massiglia: “Storage Area Network Essentials: A Complete Guide to understanding and Implementing SANs”, 1st edition, John Wiley India, 2011.

Course Delivery: Lecture, presentations and videos Course Outcomes:

At the end of the course the students should be able to: 1. Understand storage centric architecture as a necessity for an enterprise data storage 2. Recognize Storage Area Networks and Local area Networks (Ethernet) 3. Appreciate the working of various layers of Fiber Channel protocol stack. 4. Identify the need for NAS and IP SAN at an Enterprise requirements 5. Evaluate virtualizations Block /File level in SAN networks 6. Identify SAN and NAS Hardware and Software components

51 Course Title: Big Data and Data Science Course Code: 15MCSEE06 Credits (L:T:P:SS) : 3:0:1:0 Core/ Elective: Elective Type of Course: Lecture/Practical Total Contact Hours: 70

Prerequisites: Nil

Course Contents: Unit 1 Introduction to big Data: Big Data Overview with typical examples, What is Data Science, Introduction to Big Data Analytics, Data Analytics Life cycle, Domain-specific Life cycle. Unit 2 Data, Data Range, Data Management, Data Mining, Data Munging, Wrangling and Cleaning, Databases and Relational Algebra, Parallel Data Bases, Parallel Query Processing, Mean and Standard Deviation, Estimation- Only Analyses, Use Case: Watching Data Trends with Google Ngrams, Use Case: Estimating Move Preferences. Unit 3 Introduction to Analytics - introduction to machine learning, Supervised learning overview, simple nearest neighbor, decision trees/forests, regression, Unsupervised learning: k-means, multi-dimensional scaling Graph Analytics: PageRank, community detection, recursive queries, iterative processing, Text Analytics: latent semantic analysis, Visualization & visual data analytics. Unit 4 Tools and Methods deployed in Data Science, Introduction to R language, R functions and programming, R Grphics, R and commonly used statistics, R Commander, analyzing and exploring data with R, R studio, Advantages and disadvantages of R, R vs SAS Map Reduce/Hadoop, MapR Technologies and The Most Powerful, Elegant FREE Version of Hadoop Window and MADlib functions. Unit 5 Case Studies and Illustrations:IBM BigInsights, BigSheets, and Netezza Customer Intelligence, RainStor Big Data Analytics on Hadoop - The Industry's First Enterprise-Class Database Running Natively on Hadoop, DataStax (Including Coverage of the Free "Community Edition" of DataStax's Cassandra Implementation, with OpsCenter), Microsoft's Big Data Solution,Jigsaw: Visualization for Investigative Analysis and latest state of the art examples.

Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practicals

Text Books 1. Chen, M., Mao, S., Zhang, Y., & Leung, V. C.“Big Data-Related Technologies, Challenges and Future Prospect”s , 2014, Springer (Chapters: 1-6) 2. Lin, J., & Dyer, C. “Data-intensive text processing with MapReduce”,2010, (Chapters: 2and 5) 3. Robert I. Kabacoff, “R in Action”, 2011,(Chapter 2 Pages:21-32) 4. Zumel, N., & Mount, J. “Practical data science with R”, 2014, (Chapters: 5, Pages 81-91 )

Reference Books 1. O. R. Team. Big Data Now: Current Perspectives from O’Reilly Radar. O’Reilly Media, 2011. 2. Adler, Joseph. R in a Nutshell, Second Edition. O’Reilly Media, 2012.

52 Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes Thrice (Average Internal of the best two Assessment 25 Blue Books 1-5 will be CIE Tests computed) Direct & Lab test Once 25 Data Sheets 1,2,4-5 Indirect Students End of Course Assessment Semester (Answering methods SEE End 100 Answer scripts 1-5 5 of 10 Examination questions) End of Course End of the 1-5, Relevance Questionnaire Survey course of the course

Course Outcomes:

At the end of the course students should be able to: 1. Identify the differences between Big Data and Small Data. 2. Design the programs to analyze big data. 3. Demonstrate the analysis of big data. 4. Analyze the Ontologies, Semantics, Introspection, Data Integration and Measurement techniques of big data. 5. Illustrate the stepwise approach to big data analysis and understand the legalities and societal issues involved.

Mapping course outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the differences between Big Data and Small Data X X X Design the programs to analyze big data. X Demonstrate the analysis of big data. X X Analyze the Ontologies, Semantics, Introspection, Data Integration and Measurement techniques of big data. X

Illustrate the stepwise approach to big data analysis and understand the legalities and societal issues involved. X X

53 Course Title: Information Retrieval Course Code: 15MCSEE07 Credits (L:T:P:SS) : 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours:56

Prerequisites: There are no prerequisites to this course. Course Contents: Unit 1 Introduction: Motivation, Basic concepts, Past, present, and future, the retrieval process. Modeling: Introduction, A taxonomy of information retrieval models, Retrieval: Adhoc and filtering, A formal characterization of IR models, Classic information retrieval, Alternative set theoretic models, Alternative algebraic models, Alternative probabilistic models, Structured text retrieval models, Models for browsing.

Unit 2 Retrieval Evaluation: Introduction, Retrieval performance evaluation, Reference collections. Query Languages: Introduction, keyword-based querying, Pattern matching, Structural queries, Query protocols.

Unit 3 Query Operations: Introduction, User relevance feedback, Automatic local analysis, Automatic global analysis. Text and Multimedia Languages and Properties: Introduction, Metadata, Text, Markup languages, Multimedia.

Unit 4 Text Operations: Introduction, Document preprocessing, Document clustering, Text compression, comparing text compression techniques. Indexing and Searching: Introduction; Inverted Files; Other indices for text; Boolean queries; Sequential searching; Pattern matching; Structural queries; Compression. Parallel and Distributed IR: Introduction, Parallel IR, Distributed IR.

Unit 5 User Interfaces and Visualization: Introduction, Human-Computer interaction, the information access process, Starting pints, Query specification, Context, Using relevance judgments, Interface support for the search process. Searching the Web: Introduction, Challenges, Characterizing the web, Search engines, Browsing, Meta searchers, finding the needle in the haystack, searching using hyperlinks.

Text Book: 1. Ricardo Baeza-Yates, Berthier Ribeiro-Neto: Modern Information Retrieval, 1st edition, Pearson, 2011.

Reference Books: 1. David A. Grossman, Ophir Frieder: Information Retrieval Algorithms and Heuristics, 2nd Edition, Springer, 2009. 2. William B. Frakes, Ricardo Baeza-Yates (Editors): Information Retrieval Data Structures and Algorithms, 1st edition, Prentice Hall PTR, 2009.

Course Delivery: The course will be delivered through lectures, presentations, classroom discussions, and practical implementations. Course Outcomes:

At the end of the course the students should be able to: 1. Distinguish between data and information retrieval systems and explain different classical IR models 2. Assess the performance of information retrieval systems and use different querying languages and protocols. 3. Perform query operations and recognize the use of metadata and markup languages. 4. Explain various text operations, indexing and search techniques, and the basics of parallel and distributed IR. 5. Discuss the concepts of user interfaces for IR applications and web search techniques.

54 Course Title: Software Testing Course Code: 15MCSEE08 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of course: Total Contact Hours: 56

Prerequisite: Knowledge of Software Engineering

Course Contents: Unit 1 Basics of Software Testing and Examples: Basic definitions, Test cases, Insights from a Venn diagram, Identifying test cases, Error and fault taxonomies, Levels of testing. Examples: Generalized pseudocode, The triangle problem, The NextDate function, The commission problem, The SATM (Simple Automatic Teller Machine) problem. Decision Table-Based Testing: Decision tables, Test cases for the triangle problem, Test cases for the NextDate function, Test cases for the commission problem, Guidelines and observations. Data Flow Testing: Definition-Use testing, Slice-based testing, Guidelines and observations.

Unit 2 Levels of Testing: Traditional view of testing levels, Alternative life-cycle models, The SATM system, Separating integration and system testing. Integration Testing: A closer look at the SATM system, Decomposition-based, call graph-based, Path-based integrations, Case study. System Testing: Threads, Basic concepts for requirements specification, Finding threads, Structural strategies and functional strategies for thread testing, SATM test threads, System testing guidelines, ASF (Atomic System Functions) testing example.

Unit 3 Interaction Testing: Context of interaction, A taxonomy of interactions, Interaction, composition, and determinism, Client/Server Testing. Issues in Object-Oriented Testing: Units for object-oriented testing, Implications of composition and encapsulation, inheritance, and polymorphism, Levels of object-oriented testing, GUI testing, Dataflow testing for object-oriented software, Examples. Class Testing: Methods as units, Classes as units.

Unit 4 Object-Oriented Integration Testing: UML support for integration testing, MM-paths for object-oriented software, A framework for object-oriented dataflow integration testing. GUI Testing: The currency conversion program, Unit testing, Integration Testing and System testing for the currency conversion program. Object-Oriented System Testing: Currency converter UML description, UML- based system testing, State chart-based system testing. Exploratory Testing: The context-driven school, Exploring exploratory testing, Exploring a familiar example, Exploratory and context-driven testing observations.

Unit 5 Model-Based Testing: Testing based on models, Appropriate models, Use case-based testing, Commercial tool support for model-based testing. Test-Driven Development: Test-then-code cycles, Automated test execution, Java and JUnit example, Remaining questions, Pros, cons, and open questions of TDD, Retrospective on MDD versus TDD. A Closer Look at All Pairs Testing: The all-pairs technique, A closer look at NIST study, Appropriate applications for all pairs testing, Recommendations for all pairs testing. Software Testing Excellence: Craftsmanship, Best practice of software testing, Top 10 best practices for software testing excellence, Mapping best practices to diverse projects. Text Book: 1. Paul C. Jorgensen: Software Testing, A Craftsman’s Approach, 3rd Edition, Auerbach Publications, 2012.

Reference Books: 1. Aditya P Mathur: Foundations of Software Testing, Pearson, 2008. 2. Mauro Pezze, Michal Young: Software Testing and Analysis – Process, Principles and Techniques, 1st edition, John Wiley & Sons, 2011. 3. Srinivasan Desikan, Gopalaswamy Ramesh: Software testing Principles and Practices, 1st Edition, Pearson, 2012. 4. Brian Marrick: The Craft of Software Testing, 1st edition, Pearson, 2012.

55 Course Delivery: The course is delivered through lectures, PPTs and assignment

Course Outcome:

At the end of the course the student should be able to: 1. Identify the suitable capabilities to use a range of software tools. 2. Identify the principal issues associated with software evolution 3. Explain the impact on the software life cycle by different testing tools 4. Implement the process of regression testing and its role in release management.

56 Course Title: Service Oriented Architecture Course Code: 15MCSEE09 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours: 56

Prerequisites: Internet Technology

Course Contents: Unit 1 Introduction to SOA, Evolution of SOA: Fundamental SOA; Common Characteristics of contemporary SOA; Common tangible benefits of SOA; An SOA timeline (from XML to Web services to SOA); The continuing evolution of SOA (Standards organizations and Contributing vendors); The roots of SOA (comparing SOA to Past architectures). Web Services and Primitive SOA: The Web services framework; services (as Web services); Service descriptions (with WSDL); Messaging (with SOAP).

Unit 2 Web Services and Contemporary SOA: Message exchange patterns; Service activity; Coordination; Atomic Transactions; Business activities; Orchestration; Choreography. Addressing; Reliable messaging; Correlation; Polices; Metadata exchange; Security; Notification and eventing.

Unit 3 Principles of Service – Orientation: Services-orientation and the enterprise; Anatomy of a service-oriented architecture; Common Principles of Service-orientation; How service orientation principles inter relate; Service- orientation and object-orientation; Native Web service support for service- orientation principles

Unit 4 Service Layers: Service-orientation and contemporary SOA; Service layer abstraction; Application service layer, Business service layer, Orchestration service layer; Agnostic services; Service layer configuration scenarios. Business Process Design: WS-BPEL language basics; WS-Coordination overview; Service-oriented business process design; WS-addressing language basics; WS-Reliable Messaging language basics

Unit 5 SOA Platforms: SOA platform basics; SOA support in J2EE; SOA support in .NET; Integration considerations

Text Book 1. Thomas Erl: Service-Oriented Architecture – Concepts, Technology, and Design, Pearson Education, 2005 Reference Book 2. Eric Newcomer, Greg Lomow: Understanding SOA with Web Services, Pearson education, 2005

Course Delivery: The course will be delivered through lectures, presentations and classroom discussions.

Course Outcomes: At the end of the course students should be able to:

1. Summarize Web Service and Service oriented Architecture. 2. Illustrate the principles of contemporary SOA and web service. 3. Appraise the principles the layers of Service Oriented Architecture. 4. Estimate the service oriented principles 5. Distinguish SOA support in J2EE and SOA support in .NET focusing on platform overview.

57 Course Title: Social Network Analysis Course Code: 15MCSEE10 Credits (L:T:P:SS): 3:0:1:0 Core/ Elective: Elective Type of course: Lecture/ Practical Total Contact Hours: 70

Prerequisites: Nil

Course Contents: Unit 1 Social Structure: Sociometry and Sociogram, Exploratory Social Network Analysis, Assembling a Social Network. Attributes and Relations: The World System, Partitions, Reduction of a Network, Vectors and Coordinates, Network Analysis and Statistics.

Unit 2 Cohesive Subgroups: Density and Degree, Components, Cores, Cores. Sentiments and Friendship: Balance Theory, Detecting Structural Balance and Clusterability, Development in Time. Affiliations: Two-Mode and One-Mode Networks, m-Slices, The Third Dimension.

Unit 3 Center and Periphery: Distance, Betweenness. Brokers and Bridges: Bridges and Bi-Components, Ego- Networks and Constraint, Affiliations and Brokerage Roles. Diffusion: Contagion, Exposure and Thresholds, Critical Mass.

Unit 4 Prestige: Popularity and Indegree, Correlation, Domains, Proximity Prestige. Ranking: Triadic Analysis, Acyclic Networks, Symmetric-Acyclic Decomposition, Genealogies and Citations: Genealogy of the Ragusan Nobility, Family Trees, Family Trees, Citations among Papers on Network Centrality, Citations.

Unit 5 Blockmodels: Matrices and Permutation, Roles and Positions: Equivalence, Blockmodeling. Pajek: Creating Network Files for Pajek, Exporting Visualizations.

Text Books:

1. Exploratory social Network Analysis with Pajek, Wouter De Nooy, Andrej Mrvar, Vladimir Batagelj, Cambridge University press, 2005 2. Introduction to social network methods, Hanneman, Robert A. and Mark Riddle. 2005. University of California, Riverside ( published in digital form at http://faculty.ucr.edu/~hanneman/ ) 3. Social Network Analysis for Startups, Maksim Tsvetovat and Alexander Kouznetsov, Oreilly,2011

Course Delivery: The course will be delivered through lectures, software tools in laboratory, class room interaction and exercises.

58 Course Assessment and Evaluation Scheme:

When/ Where Contribution to To Max Evidence What (Frequency in Course Whom Marks Collected the course) Outcomes Thrice(Average Internal of the best two Assessment 30 Blue Books 1 to 7 C will be Tests I computed) E Practical Students Once 20 Report 1 to 4 Assignment Direct & End of Course S Indirect Standard (Answering Answer E 100 1 to 7 Assessment Examination 5 of 10 scripts E methods questions) 1 to 4,Delivery Questionnaire of the course Course End End of the - , Feedback Students Survey Course entries into 1 to 7,Delivery database of the course

Course Outcomes: At the end of the course the student should be able to 1. Describe social structure and attributes of real world scenarios. 2. Analyze the statistical details of different social networks 3. Indicate the cohesive nature of different social networks 4. Estimate the affiliations of social network elements 5. Examine the brokerage properties in social networks 6. Assess ranking of real world social networks 7. Verify the roles of social network elements

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Describe social structure and attributes of real world scenarios. × × × × Analyze the statistical details of different social networks × × × ×

Indicate the cohesive nature of different social networks × ×

Estimate the affiliations of social network elements × ×

Examine the brokerage properties in social networks × × × × Assess ranking of real world social networks × × × × Verify the roles of social network elements × × × ×

59 Course Title: Future Skills 2020 Course Code: 15MCSE31 Credits (L:T:P:SS): 0:1:1:0 Core/ Elective: Core Type of course: Tutorial and Lab Total Contact Hours: 56

Prerequisites: Nil

Course Contents:

Unit 1 Introduction: Current industry overview, Future Skills 2020 research report from IFTF. Sensemaking: Introduction, VUCA ( Volatility, Uncertainty, Complexity and Ambiguity).What is Sense Making? How Sense Making Helps? Steps in sense making, How to do effective sense making? Hurdles in effective sense making. Assignment: A short 1 hour assignment where students will be posed with a situation to exercise their Sense Making ability. It will be assessed at the end of the session.

Unit 2 Virtual Collaboration(VC): Introduction, How VC helps? Characteristics of Virtual Collaboration, Types of Virtual Collaboration. Advantages, Disadvantages and Applications of VC. Assignment: The students will be given an assignment applying both the sensemaking skills and Virtual Collaboration skills using the cloud based tools to complete a specific task. This assignment will also cover working in a team using virtual collaboration tools. In order to focus on learning of the specified skills, the end task is kept small and achievable in short time frame.

Unit 3 Social Intelligence: Introduction, Hypothesis, Measuring Social Intelligence, Difference between intelligence and Social Intelligence, Derive some of the study done in Social networking theory. Assignment: The assignment will focus on students using their social network to accomplish a specific task.

Unit 4 Crosscultural competency: Introduction, Importance of cross cultural competence in workplace. Nuances of cross cultural differences, Examples to demonstrate the differences. Assignment: Students will have to work with a team member from another culture to complete a specific task.

Unit 5 Cognitive Load management: Introduction, Current situation of information overload, Tools and techniques to handle the cognitive load. Importance of these skills in work place. Assignment: Students will be given a specific topic and time to quickly arrive at a good summary of the topic. They will be given access to internet and books to refer. Importance is given to how quickly they can gather, curate and present the summary of the topic.

References:

1. The detailed report can be found at http://www.iftf.org/uploads/media/SR1382A_UPRI_future_work_skills_sm.pdf 2. The reading material for individual lectures will be shared with the students using TutorSpace.

Course Delivery: The course will be delivered through lectures, software tools in laboratory, class room interaction, group discussion, exercises and self study cases.

60 Course Assessment and Evaluation Scheme:

When/ Where Max Evidence Contribution to What To Whom (Frequency in the Marks Collected Course Outcomes course)

C I At the end of each Assignment Direct E Students 50 1,2 ,3,4 & 5 & unit scripts Indirec t Assess ment 1,2,3,4 & 5 method Effectiveness of End of Course Delivery of Students End of the course - Questionnaire s Survey instructions & Assessment Methods

Course Outcomes: At the end of the course the student is able to understand 1. Identify the Future Work skills needed for next 5 years. 2. Illustrate sense Making Skills through assignments. 3. Survey the different Virtual Collaboration skills to complete an assignment. 4. Describe the social intelligence skill and application of the same. 5. Compose an assignment using Cross-cultural competence and load management skills.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the Future Work skills needed for x x x x x x next 5 years. Illustrate sense Making Skills through x x x x assignments. Survey the different Virtual Collaboration x x x skills to complete an assignment. Describe the social intelligence skill and x x x x x x application of the same. Compose an assignment using Cross- cultural competence and load management x x x x skills.

61 Course Title: Internship Course Code: 15MCNE32 Credits (L:T:P:SS): 0:0:8:0 Core/ Elective: Core Type of course: Lab Total Contact Hours: 16Hrs/Week

Rubrics for Assessment of Student Performance in Industrial Training

Industrial Training is used as course delivery mode to encourage students to gather current trends in Industry and the usage of newer technology in any of the reputed Industries. In this way the student is able to gather the knowledge of working environment at the Industry during his/her Course. At the end of the Industrial Training the Student is required to prepare a presentation on the training at the Industry and present the same in front of the committee constituted at the Department. He will be then accessed on the new technology Learnt, the documentation skills of the same, exposure and demonstration of any Tools and Techniques Learnt and his presentation Skills. Table 2 Rubrics for assessment of Internship Deliverables for Student Performance in Internship:

Internship Title: ______

Company Name: ______

Name of Student: ______

Name of Supervisor at Company: ______

Name of Supervisor at College: ______

Each supervisor must fill a rubric for each student:

Basic Good Very Good Total

(0-4 Pts) (5-7 Pts) (10 Pts) Possible Earned

Tools and new Few sources at Multiple sources Multiple sources 10 Technology the Industry, of high quality, of high quality, Learnt aware of quality good judgment of well researched of resources the information, and analyzed, and relevance identification of continuous to tools and gaps in efforts at Techniques at knowledge at the acquiring hand Industry and Information. Academics. Identification of the application of the tools and Technology learnt to the

62 present market.

Relevance of the Fairly Relevant Moderately Highly Relevant 10 topic chosen to Relevant the current market

Report Writing Reasonably Sound Excellent 10 good organization and organization, no organization structure, clear, technical or and lacks clarity very few errors, grammar errors, in few topics, complete, concise and complete, few reasonably good precise, omissions, style complete

grammatically documentation correct, lacks style

Demonstration Moderately be Efficiently be able Excellent 10 of the Tools able to to demonstrate demonstration of Learnt demonstrate the skills learnt the tools and the tools learnt and be able to techniques learnt at the Industry propose an and be able to application for the apply it to any same. simple case study.

Presentation Reasonably Good , Excellent 10 and viva voce good professional professional and communication communication, technical and good visual aids, communication, presentation, able to give effective able to give technical answers presentations, technical able to analyze answers to technically and some extent clarify views in viva-voce

63 Course Title: Technical Writing and Content Development Course Code: 15MCSE33 Credits (L:T:P:SS): 0:0:0:2 Core/ Elective: Core Type of course: Self study Total Contact Hours: --

This course consists of writing assignments to be done by individual student, the student should 1. Find topic with relevance to the current trends in the field of computer science & engineering. 2. Get their topic approved by their internal guide assigned by the department. 3. Carry out literature survey by referring IEEE research papers and may refer white paper 4. Explore the features of Latex tool which will be used for documentation. 5. Do thorough plan to organize the topics according to standard template given by the department. 6. Aware of key ethical issues affecting computer science and their responsibilities as computer science professionals.

Rubric for Written Report:

Task Description: (Teacher may explain specific assignment in this space)

t Exemplary Accomplished Developing Beginning h

g 4 3 2 1 Criteria i e Yes Yes, but No, but No w

 Directly  Somewhat  Remotely  Totally Topic 10% relevant relevant related unrelated  Good  Organized;  Some  Poorly organization; points are organization; organized; no points are somewhat points jump logical logically jumpy; sense around; progression; Organization 10% ordered; sharp of beginning beginning and beginning sense of and ending ending are and ending beginning and unclear are vague end  Supporting  Some details  Details are  Unable to details are non- somewhat find specific Quality of 25% specific to supporting to sketchy. Do details Information subject the subject not support topic Grammar,  No errors  Only one or  More than two  Numerous Usage, two errors errors errors distract 25% Mechanics, from Spelling understanding  Vocabulary is  Vocabulary is  Vocabulary is  Basic varied; varied; unimaginative vocabulary; supporting supporting ; details lack needs Interest 10% details vivid details useful “color” descriptive Level words

 Typed; clean;  Legible  Legible  Illegible neatly bound writing, well- writing, some writing; loose in a report formed ill-formed pages cover; characters; letters, print Neatness 10% illustrations clean and too small or provided neatly bound too large; in a report papers stapled cover together

64  Report on  Report one  Report two  Report more Timeliness 10% time class period class periods than one late late week late

References: 1. http://www.writingassist.com/resources/links/ 2. http://ocw.mit.edu/courses/comparative-media-studies-writing 3. http://toefl.uobabylon.edu.iq/papers/itp_2015_41931767.pdf 4. http://www.docustar.co.il/Upload/links/Administrator%20Guide%20Samples.pdf

Course Assessment methods:

Evidenc When/ Where Contribution to Max e What To Whom (Frequency in the Course Marks Collecte course) Outcomes d

C Technical I Students Once 50 Reports 1,2 ,3 & 4 Report E

Direct & Indirect 1,2,3 & 4 Assessmen Effectiveness of t methods End of Course Question Delivery of Students End of the course - Survey naire instructions & Assessment Methods

Course Outcomes: At the end of the course, the student should be able to 1. Identify technical articles of good quality and relevance to a chosen topic. 2. Organize information collected from literature survey in logical order. 3. Produce document free from grammatical and typographical errors. 4. Write a technical article in IEEE format in chosen topic.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify technical articles of good quality and x x x x relevance to a chosen topic. Organize information collected from literature x x survey in logical order. Produce document free from grammatical and x typographical errors. Produce document free from grammatical and x typographical errors.

65 Course Title: Project Phase I Course Code: 15MCSE34 Credits (L:T:P:SS) : 0:0:6:0 Core/ Elective: Core Type of Course: Practical Total Contact Hours: 12Hrs/Week

Table 3

Rubrics for assessment of student performance in Project Phase I

Excellent (5) Good (4) Average (3) Acceptable (2) Unacceptable (1)

Identification Purpose and Purpose and Purpose and Purpose and Purpose and need of Problem need of the need of the need of the need of the of the Project is Domain and project is project is Project is Project is not at all Detailed very well explained moderately satisfactorily explained Analysis explained. well. explained explained

Study of the Existing Existing Existing Existing Existing systems Existing systems are systems are systems are systems are are not studied. Systems / very well well studied. moderately satisfactorily Literature studied. studied. studied. Documents of very Survey Documents poor standards, Documents of good Documents Documents of online resources of high standards of average satisfactory and books are standards like like standards, standards, studied. IEEE papers, international online online reputed journal/conf resources resources and online erence and books books are resources and papers, good are studied. studied books are online studied resources and books are studied.

Objectives of All objectives All Most of the Only few Objectives of the the Proposed of the objectives of objectives of objectives of proposed work are Work proposed the proposed the proposed the proposed either not defined work are very work are work are work are well properly. well defined. well defined. well defined. defined

66 Design Steps to be Steps to be Steps are Steps to be Steps to be Methodology followed to Followed to mentioned followed to followed to solve solve the solve the but are solve the the defined defined defined unclear; defined problem are not at problem are problem is without problem are all specified. clearly specified but justification not specified Design specified detailing is to objectives properly Methodology used not done Appropriate Design is not correct and Most suitable Suitable design Methodology is not justified design design Methodolog used is Methodology Methodolog y is used but ambiguous and is used and y is used and not justified not justified is properly properly properly justified justified

Tools used Clear Acceptable Good Average Not Acceptable for Design Understandin g

Planning of Time frame Time frame Time frame Time frame is Time frame itself Project Work properly properly properly vaguely is not properly specified and specified specified, specified, and specified being and being but not being is not followed followed followed followed accurately most of the time

Understandin Clear Acceptable Good Average Not Acceptable g of the understandin modules g

Demonstratio Objectives Objectives Objectives Objectives not No objectives n and achieved as Presentation per time achieved as achieved as achieved achieved frame per time per time Contents of frame as per time Contents of Presentation frame frame Presentations are is Contents of Presentation Contents of not Appropriate Contents of and well is appropriate Presentation appropriate arranged is presentation is but not well not and not well Proper eye appropriate contact with arranged appropriate delivered audience and but not well clear voice Satisfactory Eye contact Poor delivery with good arranged demonstratio with few of Spoken n, clear Presentation people and presentation language voice not unclear with good satisfactory voice spoken and average

language but demonstratio n eye contact

67 not proper

Regularity Student Student Student Student does Student does not reports does not reports to not report to meet guide at all report to guide regularly and the work is to the guide very the guide always incomplete regularly and is not guide but lacks consistent but is regularly consistent consistency in work

and is in the work

consistent

in work

Report of Project report Project Project Project Project report Project Phase report report I is repot Not aco is according is according is prepared rdi to the ng to specified not accordin to the fully g to the the for specified spe sp ma accor cifi eci t ding format ed fie wit d h to the Referenc for fe es speci mat for w fied and ma mi Ref t citations sta form ere ke Re at are not nce s fer s Insuf appropri and en ces ficien ate In- t cita suf an refer tion fic d ences s ien cit are t ati and on app ref citati s rop ere ons riat nc are e es ap an and d wel pr op l cit ria ati te me on ntio s ned but not

me nti on

68 ed

we ll

Course Title: Project Phase II Course Code: 15MCSE41 Credits (L:T:P:SS) : 0:0:24:0 Core/ Elective: Core Type of Course: Practical Total Contact Hours: 48Hrs/Week

Table 4

Rubrics for assessment of student performance in Project phase II

Level of achievement

Ex Go A Acc Unac S cel od v ept cepta c le (8) e abl ble o nt r e r (1 a (2) e 0) g (4) e

( 6 )

Inco Ch Ch A Fe Sugg rpor an an ll w estion ation ge ges m s cha of s a made are nge Sugg j ar ma s durin estio o e de g are

69 ns m as r ma Proje ad per de ct e c Phase mo h as I as dif a per pe ica n evalu r ti g mo ation e difi are m on s ca od s not ifi a tion cat su r s incor gg porat io e sug ns est m ed ed gest a e su dur d gg ing e d est Pr duri ed a ng oje s du ct p Proj rin Ph e ect g ase r Pha I Pr se I m eval oj ev o ect alu uati d o Ph ati i as on f n e I an i ev d c al is a ua jus t tio tifi i n ed o cor an n rec s d tly ne s w u in g no g va e tio s t

70 ns e ar d e ad d de u d r i n g

P r o j e c t P h a s e I

e v a l u a ti o n

Proj Al All M So Defin ect l o me ed def s of Dem de ine t object onstr fin d o the ives ation ed obj f defi are ob ect t ned not jec ive h tiv s e obj achie ecti ved es d

71 ar are e ve Modu e f les ac ac i s are hi hie n are ve not in ev e achi ed d d prope eve r wi Ea d th o ch b worki so Onl ng m M j y e od e few form m ule c which Mo or is ti dul furthe e v wo es r ad e rki leads dit ng s are io a to wor na sat r failur kin l isf e e of fe act g at a integr ori and ur c ated ly is es h an syste d i de Ea m is e mo ch v nstr pro M e per ated od d ly ul M Mo e de o dul is mo s es nst t w of ra or o f proj ki ted ng t ect All h we e are ll mo M not dul an o pro es d d perl is u of y l pro pr e inte

72 op jec s grat erl t y a ed are r de we e m ll w on o str int r a egr k ate i te d n d an g Al d a l sys n m te d od m i ul s es wo rki s of ng a pr ti oj is s f ect sat a isf ar c act e t ory we o ll r il int y eg d rat e ed m an o d n s sy t ste r m a w t or e ki d

73 ng I n is t ac e cu g rat r e a ti o

n o f a ll

m o d u l e s

n o t d o n e

a n d

s y s t e m

w o r

74 k i n g

i s n o t

v e r y

s a ti s f a c t o r y

Dem Co Co C Con Conte onsta nt nte o tent nts of r en nts n s of ts of t pres Prese tion of e enta ntatio and Pr Pre n tion ns are sen not Pres es t is en tati s not entat oni appro io tat o priate io s f app n n ap ropr and is pro P iate not pri r well A ate e Eye pp s con delive ro but e tact red pri not n we wit Poor

75 ate ll t h delive an a few ry d arr ti we an o peo of ll ge n ple d and prese i ntatio arr s an Sat unc n ge isf a lear act d p voi ory p Pr ce de r op o er mo nst p ey r e rati on, i co cle a nt ar t act voi e wi ce b th wit u au h t di go n en od o ce t an sp w d ok e en ll cle ar lan a vo gu r ice ag r e a wi but n th g ey go e e od d co sp nta P ok ct r en e not s la pro e ng per n

76 ua t ge a ti o n n o t

s a ti s f a c t o r y

a n d a v e r a g e

d e m o n s t r a ti o n

77 Proj Pr Pr P Proj Proje ect oj oje r ect ct ect ct o report Repo re rep j rep rt po ort e ort not rt c is prepa is t red is acc not r full accor ac ord e co ing y ding p to the rdi o acc ng to specif the r ordi ied to t ng th spe forma e cifi i to t sp ed s the eci a Refer spe fie for c ences cifi d ma c ed and t o for citati r for m Re ons d mat at fer i are en Ins Re n not ces uffi fer g cien appro en an t t priate ce d o refe s cit t renc an ati h es d on e s s and cit p ati are e cita on c ap tion s i pro s ar f pri e i ate e ap but d pr not op f ria me o

78 te nti r on m an ed a d t we we w ll ll it m h en f tio e ne w d m i s t a k e s

I n - s u f f i c i e n t

r e f e r e n c e

79 s a n d

c it a ti o n s

Conc Re Re R Res Resul lusi sul sul e ults ts are ts ts s not on ar are u pres ente prese and e lt pre s d nted pr sen Disc are prope ussi es ted p en in r not rly on te e clea Proje d go s od r ct in e work ve ma n Proj ry nn t ect is not er e wor summ ap d Pr k arized pr a op oje and r sum ria ct concl e mar te wo uded rk n y m o prope and an su t rly m m ne con ma u Futur r clus ry c e ion Pr an h is exten oj d vag sions ect s ue in the w co a ncl ti proje or Fut

80 k usi s ure ct is on f a exte are we not c nsio not at ll ver t ns all y o in specif su the ied m ap r y proj m pro ect ari pri ze ate P are d r not an Fut ure o clea d j co rly ext e spe nc ens c lu cifi ion t ed de s w d in o Fu the r tur pro k e jec t s ex u te are m nsi we m on ll a r s spe y in cifi a th ed e n pr d oj c ect o ar n e c ve l ry u s we i ll o sp n eci n fie o

81 d t

v e r y

a p p r o p r i a t e

F u t u r e

e x t e n s i o n s i n t h e p r o j

82 e c t

a r e s p e c i f i e d

Deliverables before final project presentation:

You should submit the following documents to your supervisors

Interim Progress Assessment Rubric

Project: ______Name of Student: ______Name of Supervisor: ______

Each supervisor on the project must fill a rubric for each student

Barely acceptable Basic Good Very Good Total ( 0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Problem  Bare formulation  Basic Clear  Clear 5 formulation  Bare formulation formulation formulation understanding  Basic Good with well of the problem, understanding of understanding defined with scarce the problem, but of scope knowledge of lack appropriate the problem,  Very good relevant material study of relevant with understanding material study of of relevant the problem material and  Good system relevant analysis material  Near production quality system analysis Self-  Slow progress,  Slow progress,  Good  Steady 5 motivation with barely with basic project progress progress and project satisfactory result outcome  Need  Highly self- management  Unresponsive to  Rely on reminder motivated

83 supervisor supervisor’s push sometimes Good project to work  Minor management problems in project manageme

Design Development and Solution Asset Rubric

Project: ______Name of Student: ______Name of Supervisor: ______

Each supervisor on the project must fill a rubric for each student

Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Analysis and  Obvious  Simple, yet  Compl  Provide 5 solving skills solution, mostly ete solution sketchy complete solution with to complex functionalities solution that nontrivial problems; solves the functionalities Solution stated that meet the optimize problem desired needs desired needs Innovation in  Basic   Self-  New concepts 5 the Design concepts Superficial study of new used frequently Solution and used correctly usage of concepts /  Self-study of self-study  Lack self-study, new technique, with new but apply concepts good technique and previously taught  Self-study of understanding solve technical technique on a new  Minor difficulties; satisfactory level technique, innovative  Innovat with basic Work ive work understanding with research value Self-motivation  Slow progress,  Slow  Good  Good 5 and project with barely progress, progress progress management satisfactory result with basic  Need  Need  Unresponsive project reminder reminder to Supervisor outcome sometimes sometimes  Rely on  Minor  Minor supervisor’s problems problems push to work in project in project management management

84 Written Report Rubric:

Project: ______Name of Student: ______Name of Supervisor: ______

Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Content  Important  Covers  All major  Major 5 points important points points covered only points covered and strongly superficially  A few explained supported  No major inaccurate clearly and with errors or irrelevant correctly suitable detail and points misconception Writing  Frequent  Some errors in  A few  Well 5 errors spelling and errors in proofread in spelling and grammar spelling and  Clear grammar  Readable grammar and easy to  Mostly  Follow  Readable understand readable, but a basic and  Graph few points are written report easy to s and hard to structure understand diagrams used understand appropriately

85 Final Presentation Rubric

Project: ______Name of Student: ______Name of Supervisor: ______

Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Content  Important  Covers  All major  Major points 5 points important points strongly covered only points covered and supported with superficially  A few explained suitable detail  No major inaccurate or clearly and errors irrelevant correctly and points misconception Presentation  Bare  Basic  Good  Excellent 5 Skills organization organization organization organization and preparation and and and preparation  Lack of preparation preparatio Confident and confidence  Confident n relaxed in the and familiarity in  Confident whole in only some in  presentation some parts of parts of the most parts of Engaging to the presentation the audience presentation presentatio n Attractive to audience Communication  Answer at  Answer  Answer  Handle 5 (Q/A) least most most difficult one questions questions questions questions with correctly correctly correctly and ease and  Need  Need concisely confidence clarification clarification  Illustrative sometimes explanation

86 M. S. Ramaiah Institute of Technology (Autonomous Institute, Affiliated to VTU) BANGALORE-560054

Department of Computer Science & Engineering

Guidelines for M.Tech (CSE) Project Phase I and II

Course Details Subject Code /Name: 15MCSE34/ Project Phase 1 Credits: 06 Subject Code/ Name: 15MCSE41/Project Phase-2 Credits: 24

Max CIE marks: 100 Max SEE marks: 100

 Project can be done in-house or externally in any reputed industry/institution.  Students are instructed to meet their Guides at the department every week.

Component Timeline Assessment Project phase-I After 8weeks of ---- Evaluation I commencement of 3rd semester Project phase-I End of III Interim Progress Evaluation II semester Assessment Project phase- Mid of 4th semester Design II -8th week Development and Evaluation-1 Solution Project phase- End of 4th semester Written Report II -13th week Final Presentation Evaluation-2 Guidelines for External Projects  The company/organization has to give an acceptance letter permitting the students to carry out their project work in their premises prior to the conduction (Third Semester, Project Phase I).  Students are free to carry out their project work in the Company premises, but should meet their guides at the department every week for updates.  Demonstration of the project is a must at the College during the final Viva Voce.  A project guide (external guide) shall be allotted by the company/organization for supervising the progress of the project work (Third Semester Project Phase I).  An internal guide will be allotted by the department for every external project also. In consultation with the external guide, the internal guide must be permitted to oversee the progress of the project work at the company premises at suitable times.

 Students carrying out external projects will have to submit synopsis / functional specification of the project work duly signed by the external guide before the deadline (Third Semester Project Phase I).  The project guides are responsible for approving the progress of their respective wards.  In case the project guide requires a committee to approve their status of the work, he/she can convey the same to the project coordinator at regular intervals. An expert committee will be then formed to review the work on request from the project guide. The committee will finalize the work by end of the semester.

 Students are required to maintain a project diary wherein all the student-guide meetings must be recorded.

 The Project Phase II will be reviewed in two stages. 87 a. Project Phase II- Evaluation-I: to be done after six (6) weeks from the start of the semester. The evaluation should be done by the guide and two co-examiners. The students are required to submit the work on the System Design, Detailed Design and further course of action of their work. b. Project Phase II- Evaluation-II: The same team that conducted the Evaluation-I must do the Evaluation- II after twelve (12) weeks from the start of the semester. Students must complete the implementation and testing by this time. They are required to demonstrate the implementation, testing & results. All projects must be demonstrated at the CSE Department. c. The faculty should also visit the Industry (in case it is an external project) to interact with the mentors so as to monitor the progress of their respective students. d. A draft version of the complete project report must also be submitted at the end of twelve (12) weeks.

 The CIE marks will be cumulative sum of the two evaluations done (40:60) for a total of 100 marks.

 The student should prepare a consolidated report in IEEE Format and should submit it for possible publication in National/International Conferences/Journals before the submission of the Thesis

 A final project viva-voce will be conducted at the end of the semester (SEE) with an internal examiner and an external examiner.

Typical Project Activities and Timelines:

The project activities includes 1. Deciding the project subject area (Third Semester Project Phase I). 2. Establishing relevance and importance of the project (Third Semester Project Phase I). 3. Identifying requirements (Third Semester Project Phase I). 4. Feasibility study and freezing of project scope/objectives (Third Semester Project Phase I). 5. General design inputs: requirements analysis (Third Semester Project Phase I). 6. System and subsystem level design: design(Fourth Semester Project Phase II) 7. Convert all designs into programs: implementation(Fourth Semester Project Phase II) 8. Performance evaluation at system/subsystem level testing (Fourth Semester Project Phase II) 9. Documentation of all above activities into a project report (Third Semester Project Phase I & Fourth Semester Project Phase II)

Suggested Timelines for Activities and Deliverables:

1. Start time + 6 weeks Write very clearly scope/objective set for the project. The objectives must reflect as to what exactly is proposed to implement. Freeze the title and scope/ objectives and this will not change under normal situation. System design: Understand the overall system functioning, identify and draw a system level block schematic identifying all identified subsystems and their input/output need. Prepare a list of hardware systems, computing and network environment. Similarly identify the software – operating systems, application software, case tools, simulators, databases, etc. Highlight what is already available and what will be newly created or required for the project. Deliverable: System design document

2. Start time + 8 weeks Detailed Design: Design from the conceptual level block schematic, a detailed architectural layout, indicate every subsystem and within that identify input/output and design for every small entity. Draw functional block schematics, data flow diagrams for every small entity and subsystem. Formulate a test plan: list the test data at the inputs, type of tests to be performed during development and making of subsystems, and tests required during runtime or execution. Deliverable: Detailed design document

88 3. Start time + 10 weeks Write the algorithms, the pseudo code for every function call, the subroutines and the recursions. Implement the design; execute the programs step by step for each module. Debug, evaluate the performance and validate the design. Integrate all modules/subsystems to realize the over system. Perform all system level tests, evaluate the results and compare the project scope/objects and the requirements. Deliverable: Implementation and testing document, demo of working code

4. Start time + 13 weeks Complete all documentation and make the project report ready for submission. Deliverable: Complete project report

The Students need to also consolidate their work into an IEEE and publish the same in a reputed Journal or an International Conference.

At the end of the 13th week, The PG students can attend the Best Project Selection Process which will be conducted at the department of Computer Science and Engineering, MSRIT.

The Criteria for the same would be Quality of the Project, Its relevance to the present technology, Research contribution, relevant papers published, etc.

One Project will be selected from the Batch as the Best Project.

GUIDELINES FOR THE PREPARATION OF PG IV Semester (Project Phase- II) PROJECT REPORTS:

1. Project reports should be typed neatly only on one side of the paper with 1.5 or double line spacing on a A4 size paper. The margins should be: Left - 1.25", Right - 1", Top and Bottom -0.75". 2. The total number of reports to be prepared is 5 (4+1)  Four (4) Copies to be submitted to the department  One (1) copy to the student. 3. Before taking the final printout, the approval of the concerned guide(s) is mandatory and suggested corrections, if any, must be incorporated. 4. The organization of the report should be as follows  Inner title page  Certificate from the guide and department  Declaration by candidate  Abstract or Synopsis  Acknowledgments  Table of Contents  List of table & figures (optional) All the above pages Starting from abstract must be numbered in roman ( i, ii, iii, iv, v, …)  Chapters ( page numbers in Arabic i.e. 1, 2, 3) o Main body of the report divided appropriately into chapters, sections and subsections.  References or bibliography 5. Numbering : The chapters, sections and subsections may be numbered in the decimal form for e.g. Chapter 2, sections as 2.1, 2.2 etc., and subsections as 2.2.3, 2.5.1 etc.

89 6. Fonts sizes: a. The chapter number must be left or right justified (font size 16). b. Followed by the title of chapter centered (font size 18), c. Section/subsection numbers along with their headings must be left justified with i. Section number and its heading in font size 16 ii. Subsection and its heading in font size 14. iii. The body or the text of the report should have font size 12. 7. The figures and tables must be numbered chapter wise for e.g.: Fig. 2.1 Block diagram of a serial binary adder, Table 3.1 Primitive flow table, etc. Figure captions must be placed below the figure and centred. Table captions must be above the table and centred. 8. Reference or Bibliography: The references should be numbered serially in the order of their occurrence in the text and their numbers should be indicated within square brackets for e.g. [3]. The section on references should list them in serial order in the following format. For textbooks – [1] A.V. Oppenheim and R.W. Schafer, Digital Signal Processing, Englewood, N.J., Prentice Hall, 3 Edition, 1975. For papers – [2] Devid, Insulation design to combat pollution problem, Proc of IEEE, PAS, Vol 71, Aug 1981, pp 1901- 1907.Bibliography need not be numbered and need not be cited. 9. Only SI units are to be used in the report. Important equations must be numbered in decimal form for e.g. V = IR ...... (3.2) All equation numbers should be right justified 10. The project report should be clearly written and include descriptions of work carried out by others only to the minimum extent necessary. Verbatim reproduction of material available elsewhere should be strictly avoided. If short excerpts from published work are desired to be included, they should be within quotation marks and appropriately referenced. 11. Proper attention is to be paid not only to the technical contents but also to the organization and clarity of the report. Due care should be taken to avoid spelling and typing errors. The student should note that report-write-up forms the important component in the overall evaluation of the project. 12. The color of the cover page for Computer Science PG projects is CREAM.

90 M. S. RAMAIAH INSTITUTE OF TECHNOLOGY BANGALORE-54 (Autonomous Institute, Affiliated to VTU)

Outcome Based Education Curricula (For the Academic year 2016 – 2018)

I- IV SEMESTER

M.Tech-Computer Science & Engineering History of the Institute

M. S. Ramaiah Institute of Technology was started in 1962 by the late Dr. M.S. Ramaiah, our Founder Chairman who was a renowned visionary, philanthropist, and a pioneer in creating several landmark infrastructure projects in India. Noticing the shortage of talented engineering professionals required to build a modern India, Dr. M.S. Ramaiah envisioned MSRIT as an institute of excellence imparting quality and affordable education. Part of Gokula Education Foundation, MSRIT has grown over the years with significant contributions from various professionals in different capacities, ably led by Dr. M.S. Ramaiah himself, whose personal commitment has seen the institution through its formative years. Today, MSRIT stands tall as one of India’s finest names in Engineering Education and has produced around 35,000 engineering professionals who occupy responsible positions across the globe.

History of Department of Computer Science and Engineering

Year of Establishment 1984 Names of the Programmes 1.UG: B.E. in Computer science and Engineering offered 2.PG: M.Tech. in Computer Science and Engineering 3.PG: M.Tech. in Computer Networks and Engineering 4.Ph.D 5.M.Sc(Engg.) by research

2 Faculty

Sl. Name Qualification Designation No. 1. Dr. Raghuram Krishnapuram Ph.D Professor and Research Head 2. Dr. K G Srinivasa M.E, Ph.D HOD, Professor 3. Dr. R. Srinivasan M.Sc, MS, D.Sc. Emeritus Professor 4. Dr .S Ramani M.Sc, Ph.D Emeritus Professor 5. Nagabhushan A.M M.Tech Associate Professor 6. Dr. Anita Kanavalli M.E., Ph.D Professor 7. Dr. Annapurna P. Patil M.S., Ph.D Professor 8. Dr. Seema S M. Tech, Ph.D Professor 9. Dr. Jagadish S Kallimani M.Tech, Ph.D Associate Professor 10. Jayalakshmi D S M.Sc(Engg), (Ph.D) Associate Professor 11. Dr. Monica R Mundada M.Tech, Ph.D Associate Professor 12. Sanjeetha R M.Tech., (Ph.D) Assistant Professor 13. A Parkavi M.E. (Ph.D) Assistant Professor 14. Veena G S M.Tech (Ph.D) Assistant Professor 15. J Geetha M.Tech, (Ph.D) Assistant Professor 16. Dr. T N R Kumar M. Tech., Ph.D Associate Professor 17. Mamatha Jadav V M.Tech Assistant Professor 18. Chethan C T B.E. Assistant Professor 19. Sini Anna Alex M.E, (Ph.D) Assistant Professor 20. Vandana Sardar M.E. Assistant Professor 21. Meera Devi M.Tech., (Ph.D) Assistant Professor 22. Mallegowda M M.Tech., (Ph.D) Assistant Professor 23. Dr. Divakar Harekal M.E., Ph.D Assistant Professor 24. Chandrika Prasad M.Tech Assistant Professor 25. S Rajarajeswari M.E, (Ph.D) Assistant Professor 26. Dr. Sowmyarani C N M.E. Ph.D Assistant Professor 27. Pramod S Sunagar M.Tech., (Ph.D) Assistant Professor 28. Sowmya B J M.Tech, (Ph.D) Assistant Professor 29. Pradeep Kumar D M.Tech., (Ph.D) Assistant Professor 30. Ganeshayya I Shidaganti M.Tech., (Ph.D) Assistant Professor 31. Chetan M.Tech., (Ph.D) Assistant Professor 32. Darshana A Naik M.Tech., (Ph.D) Assistant Professor 33. Srinidhi H M.Tech., (Ph.D) Assistant Professor 34. Aparna R B.E, M.Tech Assistant Professor 35. Hanumantha Raju R B.E, M.Tech Assistant Professor

Visiting Faculty Members from Industry Sl.No. Name Qualification Designation 1 Dr. Ramamurthy AICTE-INAE distinguished Ph.D Badrinath Visiting Professor 2 Application Engineering at N. Pramod B.E. Thoughtworks Pvt. Ltd. 3 M.S. in Machine Learning and Jayasimha Rao Data Mining from Aalto Entrepreneur University School of Science 4 Sriram Kashyap MTech from IIT Madras Intel, Bangalore

3 Vision and Mission of the Institute

Vision To evolve into an autonomous institution of International standards for imparting quality Technical Education

Mission MSRIT shall deliver global quality technical education by nurturing a conducive learning environment for a better tomorrow through continuous improvement and customization.

Quality Policy “We at M. S. Ramaiah Institute of Technology, Bangalore strive to deliver comprehensive, continually enhanced, global quality technical and management education through an established Quality Management system complemented by the synergistic interaction of the stake holders concerned”.

Vision and Mission of the Department

Vision To build a strong learning and research environment in the field of Computer Science and Engineering that responds to the challenges of 21st century.

Mission  To produce computer science graduates who, trained in design and implementation of computational systems through competitive curriculum and research in collaboration with industry and other organizations.

 To educate students in technology competencies by providing professionally committed faculty and staff.

 To inculcate strong ethical values, leadership abilities and research capabilities in the minds of students so as to work towards the progress of the society.

4 Process for Defining the Vision and the Mission of the Department

Programme Educational Objectives (PEOs)

An M.Tech (Computer Science & Engineering) graduate of M S Ramaiah Institute of Technology should, within three to five years of graduation

PEO1 Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur PEO2 Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing doctoral studies and engage in research and inquiry leading to new innovations and products PEO3 Be able to work effectively in multidisciplinary and multicultural environments and Be responsible members and leaders of their communities PEO4 Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large

5 PEOs Derivation Process

These objectives can be demonstrated by performance, actions, or achievements.

PEO1. Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur  Gainful employment in a reputed organization or University  Promotions achieved during the employment period  Utilization of the technical skill-set in professional activities  Participating in client-based definition of scope and constructability  Producing lucid documents such as technical reports, white papers, proposals, etc.  Make presentations or reports to colleagues/clients  Using data-driven balanced decision making to analyze engineering and business trade-offs  Formulating and delivering a product/process

6 PEO2. Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing graduate studies and engage in research and inquiry leading to new innovations and products  Acceptance by, satisfactory progress in, or successful completion of a doctoral program in a reputed institute/university  Learning a new skill, tool, or system independently  Attending a technical conference/symposium/workshop/tutorial  Membership of professional bodies  Publishing refereed paper in conference/journal  Publishing/ Reviewing books, book chapters, conference or journal papers  Delivering guest lectures, seminars and tutorials in Conferences  Working with Industry on research and innovations.  Applying for a patent or making a useful invention  Accounting for larger societal, ethical, legal, business, and technical context while making decisions on a project  Utilize the existing knowledge in varied applications

PEO3. Be able to work effectively in multidisciplinary and multicultural environments and be responsible members and leaders of their communities  Working across teams consisting of people from diverse disciplines, cultures and nationalities  Use tools for collaboration such as teleconferencing, video conferencing, etc.  Communicate effectively with clients/team members  Make appropriate decisions regarding delegation of work, allocation of resources (time, man power, and hardware and software assets) and responsibilities.  Anticipate and resolve problems and coordinate the work within a team  Mentoring a new hire  Become a team leader for a project  Election or appointment to leadership position in a professional society  Organizing/ Chairing Conferences, symposiums, workshops at National/ International Levels

PEO4. Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large  Identify the civic, environmental, homeland security, healthcare needs of the community and contribute by applying Computer Science & Engineering to create services, processes and products.  Participation and leadership in competitive activities like team sports, quiz, debates, etc.  Participation and leadership in community outreach activities as in cultural events, civic actions, health initiatives.

7 Programme Outcomes (POs)

PO (1) An ability to identify and formulate Computer Science and Engineering problems, with appropriate skills to solve the problem, and formulate needed experiments to substantiate theoretical findings.

PO (2) Ability to plan and undertake projects and execute in a collaborative manner adopting standard processes and tools as being deployed in Industries.

PO (3) Ability to acquire significant expertise and knowledge to be able to participate in multidisciplinary projects/teams.

PO (4) Acquire methods of engaging in life-long learning not only to predict and plan the projects of the future but also to groom others in the group.

PO (5) Ability to grasp the methodology and implement intellectual property rights on the research findings in theory and practice.

PO (6) Acquire professional and intellectual integrity to stress upon the impact of Computer Engineering applications with respect to economic and environmental aspects

PO Derivation Process

8 Board of Studies for the Term 2016-2017

1. Head of the Department concerned: Dr. K G Srinivasa Chairperson

2. At least five faculty members at different Dr. Anita Kanavalli Member levels covering different specializations Dr. Jagadish S Kallimani Member Prof. Jayalakshmi D S Member constituting nominated by the Academic Prof. H V Divakar Member Council Prof. Sanjeetha R Member Prof. Parkavi Member Prof. Chandrika Prasaad Member

3. Special invitees Dr. R. Srinivasan Member Dr. S. Ramani Member Prof. Nagabhushan A M Member

4. Two experts in the subject from outside Dr. Kavi Mahesh, Professor, PESIT Member the college Dr. G Varaprasad Associate Professor, BMSCE Member

5. One expert from outside the college, Dr. N.K. Srinath, Professor, RVCE Member nominated by the Vice Chancellor

6. One representative from Mr. Rajesh Vijayarajan, Hewlett-Packard Member industry/corporate sector allied area relating to placement nominated by the Academic Council

7. One postgraduate meritorious alumnus Mr.Sriram Kashyap, Intel Corporation Member to be nominated by the Principal

9 Department Advisory Board for the term 2016-2017

1. Head of the Department concerned Dr. K G Srinivasa Chairman

2. Experts from other organizations for Dr. Satish Vadhiyar, SERC, IISC Bangalore Member Member Department Advisory Board Dr. Srinivasaraghavan, IIIT Bangalore Dr. K Sangeeta Iyer, Amrita School Of Member Engineering, Bangalore.

Industry Advisory Board for the Term 2016-2017

1. Head of the Department concerned Dr. K G Srinivasa Chairman

2. Experts from industry constituting Mr. Sreekanth Iyer, IBM Member Member the Industry Advisory Board Mr. Nishant Kulkarni, IBM Mr. K Murali, Amazon Member Mr.Arup Guba Neogi,HPE Member Mr.Dinesh Tiwari,CISCO Member Mr.Ayyappadas Balagopal,CISCO Member Member

10 M S Ramaiah Institute of Technology (Autonomous Institute, Affiliated to VTU) Department of Computer Science and Engineering Revised Scheme of Studies of Master of Technology in Computer Science and Engineering (2016-18)

I Semester M.Tech in Computer Science and Engineering Total Credits: 26 Subject Code Name of the Subject L T P SS Credit CIE SEE 16MCSE11 Advanced Algorithms 3 0 0 1 4 50 50 16MCSE12 Software Engineering 3 0 1 0 4 50 50 16MCSE13 Computer System Performance Analysis 4 0 0 0 4 50 50 16MCSEE** Elective I * * * * 4 50 50 16MCSEE** Elective II * * * * 4 50 50 16MCSE14 Software Development for Portable Devices 0 0 2 0 2 50 50 Laboratory 16MCSE15 Network Programming Laboratory 0 0 2 0 2 50 50 16MCSE16 Startup Engineering 0 1 1 0 2 50 -

II Semester M.Tech in Computer Science and Engineering Total Credits: 25

Subject Code Name of the Subject L T P SS Credit CIE SEE 16MCSE21 Computer Security 3 1 0 0 4 50 50 16MCSE22 Embedded System Design 3 0 0 1 4 50 50 16MCSE23 Engineering Economics, Project 4 0 0 0 4 50 50 Management and Professional Ethics 16MCSEE** Elective III * * * * 4 50 50 16MCSEE** Elective IV * * * * 4 50 50 16MCSE24 Internet of Things Laboratory 0 0 2 0 2 50 50 16MCSE25 Data Analytics Laboratory 0 0 2 0 2 50 50 16MCSES01 Seminar I 0 0 1 0 1 50 -

III Semester M.Tech in Computer Science and Engineering Total Credits: 21 Subject Code Name of the Subject L T P SS Credit CIE SEE 16MCSE31 Future Skills 2020 0 1 1 0 2 50 - 16MCSEE** Elective V * * * * 4 50 50 16MCSE32 Internship 0 0 8 0 8 50 50 16MCSE33 Project Phase I 0 0 6 0 6 50 50 16MCSES02 Seminar II 0 0 1 0 1 50 -

IV Semester M.Tech in Computer Science and Engineering Total Credits: 28 Subject Code Name of the Subject L T P SS Credit CIE SEE 16MCSE41 Project Phase II 0 0 24 0 24 50 50 16MCSEE** Elective VI * * * * 4 50 50

Subject Code Elective List 16MCSEE 01 Advances in Operating Systems 16MCSEE 02 Cloud Computing Advances in Data Base Management 16MCSEE 03 Systems Multi Core Architecture and 16MCSEE 04 Programming 16MCSEE 05 Storage Area Networks 16MCSEE 06 Big Data and Data Science 16MCSEE 07 Information Retrieval 16MCSEE 08 Introduction to Analytics in Big Data 16MCSEE 09 Digital Forensics and Cyber Crime 16MCSEE 10 Social Network Analysis 16MCSEE 11 Software Testing 16MCSEE 12 Service Oriented Architecture 16MCSEE 13 Natural Language Processing 16MCSEE14 Soft Computing

L - Lecture, T – Tutorial, P-Practical, SS- Self Study, CIE-Continuous Internal Evaluation, SEE-Semester End Evaluation. NOTE: 1. The hours/week shown in the column Tutorial/Practical is the contact hours for students. The teachers should provide guidance. 2. Faculty handling M.Tech classes should give a lesson plan including the topics to be covered in Tutorial by first week of the class. 3. Internship: The students should devote 8 to12 weeks after availing vacation at the end of 2nd Semester. The training can be in any of the advanced technology of relevance to industry. The training can be either a certification / summer training inside the institution / technology survey / mini project on industry relevant to recent technology. At the end of the training, student should give a seminar and demo of the technology learnt. For internship each student will be assigned a mentor. 4. Project Phase I: This is carried out in addition to regular courses in the 3rd Semester. During this phase, problem identification, literature survey, test plan, formation of detailed specifications (SRS document), higher level design should be completed. A report on this work must be submitted and a presentation on the same must be given at the end of 3rd Semester. This is to be evaluated for 10 credits by the department committee constituted for the purpose. 5. Project phase II: Project to be completed with detailed design, implementation, test case preparations, testing and demonstration. 6. During the final project viva, students have to submit all the reports. The project evaluation and viva- voce will be conducted by a committee constituted for this purpose. 7. The student should prepare a consolidated report in IEEE format and should submit it for possible publication in National/International Conferences/Journals before the submission of the thesis. 8. The students should periodically meet their guide and maintain a log book with periodic milestones achieved. 9. Seminar in first and second semesters should be given on the topics taken from research articles from reputed Journals/Conferences.

12 Course Title: Advanced Algorithms Course Code: 16MCSE11 Credits (L:T:P:SS) : 3:0:0:1 Core/ Elective: Core Type of course: Lecture /Self Study Total Contact Hours: 56

Prerequisite: Knowledge of Analysis and Design of Algorithm.

Course Contents: Unit 1 Analysis Techniques: Growth of Functions, Asymptotic notations, Standard notations and common functions, Recurrences and Solution of Recurrence equations – The Substitution method, The recurrence – tree method, The master method, Amortized Analysis: Aggregate, Accounting and Potential Methods.

Unit 2 Graph Algorithms: Bellman-Ford Algorithm, Single source shortest paths in a DAG, Johnson’s Algorithm for sparse graphs, Maximum bipartite matching. Trees: B-trees, Red-Black trees Hashing: General Idea, Hash Function, Separate Chaining, Open addressing, Rehashing, Extendible hashing.

Unit 3 Number – Theoretic Algorithms: Elementary notations, GCD, Modular Arithmetic, Solving modular linear equations, The Chinese remainder theorem, Powers of an element, RSA cryptosystem. Heaps: Heaps, Priority Queues, Binomial Heaps, Fibonacci Heaps.

Unit 4 String Matching Algorithms: Naïve string matching, Rabin – Karp algorithm, String matching with finite automata, Knuth-Morris-Pratt algorithm, Boyer-Moore Algorithms.

Unit 5 Algorithmic Puzzles: Magic Square, n-queens problem, Glove Selection, Ferrying Soldiers, Jigsaw Puzzle Assembly, A Stack of Fake Coins, Maximum Sum Descent, Hats of Two Colors, Pluses and Minuses, Searching for a Pattern, Locker Doors, Palindrome Counting, Inverting a Coin Triangle, Sorting 5 in 7.

Text Book: 1. T H Cormen, C E Leiserson, R L Rivest and C Stein: Introduction to Algorithms, 3/e, PHI, 2011. 2. Mark Allen Weiss: Data Structures and Algorithm Analysis in C++, 3rd Edition, Pearson Education, 2011. 3. Anany Levitin and Maria Levitin: Algorithmic Puzzle, Oxford University Press, 2011

Reference Books: 1. Ellis Horowitz, Sartaj Sahni, S Rajasekharan: Fundamentals of Computer Algorithms, University Press, 2007. 2. Alfred V Aho, John E Hopcroft, J D Ullman: The Design and Analysis of Computer Algorithms, Pearson Education, 2011.

Course Delivery: The course will be delivered through lectures and presentations.

13 Course Assessment and Evaluation Scheme:

When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes Internal Thrice(Average of C Assessment the best two will be 30 Blue Books 1,2,3,4,5,6 & 7 I Tests computed) E Direct Assignment Students Once 20 Solutions 1,2,3,4 &5 & End of Course SE Standard Indirect (Answering 100 Answer scripts 1,2,3,4,5,6 & 7 E Examination Assess 5 of 10 questions) ment 1,2,3,4,5,6 & 7 Method Effectiveness of s Course Exit Delivery of Students End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes:

At the end of the course, a student should be able to 1. Devise recurrence relations and amortized cost of various operations. 2. Illustrate graph algorithms such as Bellman-Ford, Shortest path, and Bipartite matching. 3. Explain B-trees, Red-Black trees and hashing techniques. 4. Identify the methods for solving modular linear equations, Chinese remainder theorem and RSA cryptosystem. 5. Describe types of heaps such as Binomial and Fibonacci heaps. 6. Assess the string matching algorithms such as Boyer-Moore and Knuth-Morris-Pratt algorithm. 7. Compose mathematical models, objective functions and constraints to solve algorithmic puzzles.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Devise recurrence relations and amortized cost of X X X various operations. Illustrate graph algorithms such as Bellman-Ford, X X X Shortest path, and Bipartite matching. Explain B-trees, Red-Black trees and hashing X X X Techniques. Identify the methods for solving modular linear equations, Chinese remainder theorem and RSA X X X cryptosystem. Describe types of heaps such as Binomial and Fibonacci heaps. X X X Assess the string matching algorithms such as Boyer- X X X Moore and Knuth-Morris-Pratt algorithm. Compose mathematical models, objective functions and X X X X constraints to solve algorithmic puzzles.

14 Course Title: Software Engineering Course Code: 16MCSE12 Credits (L:T:P:SS) : 3:0:1:0 Core/ Elective: Core

Type of course: Lecture/Practical Total Contact Hours: 70 Prerequisites: Basic Concepts of Software Engineering Course Content Unit 1 Agile development: What is agile? Agility and cost of change; What is an agile process? Extreme programming; Other agile process models. Design Concepts: Design process, Design Concepts, Design Models. Web Application Design: Web application design quality; Design quality and design pyramid; Interface design; Aesthetic design; Content design; Architecture design; Navigation design; Component-level design; Object-oriented hypermedia design method. Unit 2 Formal Modeling and verification: The cleanroom strategy; Functional specification; Cleanroom design; Cleanroom testing; Formal methods: Concepts; Applying mathematical notation for formal specification; Formal specification languages. Software Project Management: The management spectrum; The management of people, product, process and project; The W5HH Principle; Critical practices. Estimation for Software Projects: Software project estimation; Decomposition techniques, Examples; Empirical estimation models; Estimation for Object-Oriented projects; specialized estimation techniques; the make / buy decision. Unit 3 Software Project Scheduling: Basic concepts and principles of project scheduling; Defining task set and task network; Scheduling; Earned value analysis. Risk Management: Reactive versus proactive strategies; Software risks; risk identification; Risk projection; Risk refinement; Risk mitigation, monitoring and management; The RMMM plan. Unit 4 Maintenance and Reengineering: Software maintenance; Software supportability; Reengineering; Business process reengineering; Software reengineering; Reverse engineering; Restructuring; Forward engineering; The economics of reengineering. Software Process Improvement (SPI): Approaches to SPI; Maturity models; The SPI process; The CMMI; The People CMM; Other SPI frameworks: SPICE, Bootstrap, PSP and TSP, ISO; SPI return on investment. Unit 5 Software Configuration Management (SCM): Basic concepts; SCM repository; The SCM process; Configuration management for web applications; SCM standards. Product Metrics: A framework for product metrics; Metrics for requirements model, design model, source code, testing and maintenance; Design metrics for web applications. Process and Project Metrics: Basic concepts; Software measurement; Metrics for software quality; Integrating metrics within the software process; Metrics for small organizations; Establishing a software metrics program. Laboratory: The Software Engineering Lab has been designed for students to be exposed to the following:  To Understand and realize the concept of Software Engineering and UML using any case studies.  The students would be exposed to experiment with the following concepts using any of the tools available:  Identifying the Requirements from Problem Statements  Modeling UML Use Case Diagrams  Identifying Domain Classes from the Problem Statements  State chart and Activity Modeling  Modeling UML Class Diagrams and Sequence diagrams  Estimation of Test Coverage Metrics and Structural Complexity  Designing Test Suites for the case study  The Students would also be required to Prepare a Work Breakdown Structure (WBS) and a mini project plan with PERT and Gantt charts Text Book: 1. Roger S. Pressman: Software Engineering: A Practitioner’s Approach, Alternate edition, 7th Edition, McGraw Hill, 2010. Reference Book: 1. Ian Sommerville: Software Engineering, 8th Edition, Pearson, 2012. 2. Bernd Bruegge & Allen H. Dutoit : Object-Oriented Software Engineering Using UML, Patterns, and Java™ Third Edition, Prentice Hall ,2012

15 Course Delivery: The course will be delivered through lectures, class room interaction, group discussion, lab exercises and projects. Course Assessment and Evaluation Scheme: When/ Where Max Contribution To Evidence What (Frequency in the Mark to Course Whom Collected course) s Outcomes Internal Thrice (Average

t Assessment of the best two 30 Blue Books 1-5 n

e Tests will be computed) m s s CIE Mini Project Summation of lab s d e o

s and lab S and Mini project Soft copies h s

t 20 1-7 e A Exercise tudents demonstration of the work

t M c evaluation ( Two Reviews) e r

i End of Course

D Semester End Answer SEE (Answering 100 1-5 Examination scripts 5 of 10 questions)

1, 2, 3, 4. 5,6,7 t

n s t Effectiveness e c d e o m

r Students Questionnair of Delivery of s h i t

s Students End of the course - d e e Feedback e instructions & n s I s M Assessment A Methods Course Outcomes: At the end of the course the students will be able to: 1. Apply the concept of agile development and design any web application using the principles learnt. 2. Identify the concepts of Formal Modeling and verification methods and also the process of Project management and estimation. 3. Demonstrate the activities involved in Software Scheduling, Risk management and reverse engineering and Maintenance task. 4. Identify the approaches to Software Process Improvement. 5. Understand the concepts of Software Configuration Management, Product and Process metrics. 6. Practice the application of principles of object-oriented software development through the course group project and develop teamwork and communication skills. 7. Conduct individual and detailed research into a topic covered by the course in the field of software engineering and be able to search appropriate literature including research publications, industrial newspapers, articles, and internet resources so as to summaries the findings in a clear and critical manner. Mapping Course Outcomes with Program Outcomes: Program Outcomes* Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6

Apply the concept of Agile development and be able to design X X X X any web application using the principles learnt. Identify the concepts of Formal Modeling and verification X X X X methods and also the process of Project management and estimation Demonstrate the activities involved in Software Scheduling, Risk management and reverse engineering and Maintenance X X X X task. Identify the approaches to Software Process Improvement X X X X Understand the concepts of Software Configuration X X X X Management, Product and Process metrics Practice the application of principles of object-oriented software development through the course group project and X X X X develop teamwork and communication skills. Conduct individual and detailed research into a topic covered by the course in the field of software engineering and be able to search appropriate literature including research publications, X X X X X industrial newspapers, articles, and internet resources so as to summaries the findings in a clear and critical manner.

16 Course Title: Computer Systems Performance Analysis Course Code: 16MCSE13 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Core Type of course: Lecture Total Contact Hours: 56

Prerequisites: Students should have undergone a course on probability theory, matrices, software engineering aspects and queuing theory.

Course Contents: Unit 1 Introduction: The Art Of Performance Evaluation, Common Mistakes In Performance Evaluation, A Systematic Approach To Performance Evaluation, Selecting An Evaluation Technique, Selecting Performance Metrics, Commonly Used Performance Metrics, Utility Classification Of Performance Metrics, Setting Performance Requirements.

Unit 2 Workloads, Workload Selection and Characterization: Types of Work Loads, Addition Instructions, Instruction Mixes, Kernels; Synthetic Programs, Application Benchmarks, Popular Benchmarks. Work Load Selection: Services Exercised, Level Of Detail; Representativeness; Timeliness, Other Considerations In Workload Selection. Work Load Characterization Techniques: Terminology, Averaging, Specifying Dispersion, Single Parameter Histograms, Multi Parameter Histograms, Principle Component Analysis, Markov Models, Clustering.

Unit 3 Monitors, Program Execution Monitors and Accounting Logs: Monitors: Terminology and classification; Software and hardware monitors, Software versus hardware monitors, Firmware and hybrid monitors, Distributed System Monitors, Program Execution Monitors and Accounting Logs, Program Execution Monitors, Techniques for Improving Program Performance, Accounting Logs, Analysis and Interpretation of Accounting log data, Using accounting logs to answer commonly asked questions.

Unit 4 Capacity Planning and Benchmarking: Steps in capacity planning and management; Problems in Capacity Planning; Common Mistakes in Benchmarking; Benchmarking Games; Load Drivers; Remote-Terminal Emulation; Components of an RTE; Limitations of RTEs, Experimental Design and Analysis: Introduction: Terminology, Common mistakes in experiments, Types of experimental designs, 2k Factorial Designs, Concepts, Computation of effects, Sign table method for computing effects; Allocation of variance; General 2k Factorial Designs, General full factorial designs with k factors: Model, Analysis of a General Design, Informal Methods.

Unit 5 Queuing Models: Introduction: Queuing Notation; Rules for all Queues; Little’s Law, Types of Stochastic Process. Analysis of Single Queue: Birth-Death Processes; M/M/1 Queue; M/M/m Queue; M/M/m/B Queue with finite buffers; Results for other M/M/1 Queuing Systems. Queuing Networks: Open and Closed Queuing Networks; Product form networks, queuing Network models of Computer Systems. Operational Laws: Utilization Law; Forced Flow Law; Little’s Law; General Response Time Law; Interactive Response Time Law; Bottleneck Analysis; Mean Value Analysis and Related Techniques; Analysis of Open Queuing Networks; Mean Value Analysis; Text Book: 1. Raj Jain: The Art of Computer Systems Performance Analysis, 1st edition, John Wiley and Sons, 2012.

Reference Books: 1. Paul J Fortier, Howard E Michel: computer Systems Performance Evaluation and prediction, 1st edition, Elsevier, 2009. 2. Trivedi K S: Probability and Statistics with Reliability, Queuing and Computer Science Applications, 1st edition, PHI, 2011.

Course Delivery: The course will be delivered through lectures, presentations, discussions, and case studies.

17 Course Assessment and Evaluation Scheme:

What To whom When/ Where Max Evidence Contributing to (Frequency in the marks collected Course Outcomes course) Internal Thrice(Average of C assessment the best two will 30 Blue books 1, 2,3,4,5,6,7,8 & 9 I tests be computed) E Once Written 1, 2,3,4,5,6,7,8 & 9 Direct Assignments 20 Assignment & sheets Indire S End of course ct Standard E Students (Answering 5 of 100 Answer scripts 1, 2,3,4,5,6,7,8 & 9 Assess examination ment E 10 questions) Metho Questionnaire 1, 2,3,4,5,6 ,7,8 & 9 ds Effectiveness of End of course Delivery of End of course - survey instructions & Assessment Methods

Course Outcomes: At the end of the course the student should be able to 1. Understand the techniques to approach performance problem. 2. Compare two systems and determine the optimal value of a parameter. 3. Identify performance bottlenecks and characterize the load on a system. 4. Select the number and size of system components and predict the performance of future workloads. 5. Understand the use of different analysis strategies like measurement, simulation, analytical modeling. 6. Implement different techniques in experimental design like factorial design techniques. 7. Understand how to use monitors and accounting logs of systems use to improve the performance of the system. 8. Apply mathematical techniques with stress on learning the types of Queuing models. 9. Apply queuing models to solve problems in computer Networks, Operating system, etc.

Mapping Course Outcomes with programme Outcomes: Course Outcomes Programme Outcomes

PO1 PO2 PO3 PO4 PO5 PO6

Understand the techniques to approach performance problems. X X X Compare two systems and determine the optimal value of a X X X X X parameter. Identify performance bottlenecks and characterize the load on a X X X X system. Select the number and size of system components and predict the X X X X X performance of future workloads. Understand the use of different analysis strategies like X X X X X X measurement, simulation, analytical modeling. Implement different techniques in experimental design like X X X X factorial design techniques. Understand how to use monitors and accounting logs of systems X X X X X X use to improve the performance. Apply mathematical techniques with stress on learning the types of X X X X Queuing models. Apply queuing models to solve problems in computer Networks, X X X X Operating system, etc.

18 Course Title: Software Development for Portable Devices Laboratory Course Code: 16MCSE14 Credits (L:T:P:SS): 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56

Prerequisites: Basic Knowledge of Java

Course Contents:

Experiments that are to be conducted as a part of the course: 1. Introducing different Android development tools and developing Hello World application. 2. Develop an android application to investigate the activity life cycle. 3. Develop an android application to investigate the fragments. 4. Develop an android application to create user interfaces with different layouts and views. 5. Develop an android application to create a Registration form using appropriate widgets. 6. Develop an android application to embed PickerViews in an activity. 7. Develop an android application on using implicit & explicit Intents. 8. Develop an android application to utilize Action bar. 9. Develop an android application to utilize Toasts and Notifications. 10. Develop an android application to work SQLite data storage and create a table. 11. Develop an android application to work SQLite data storage and perform various operations on the table. 12. Develop an android application to introduce content providers. 13. Developing applications to work with messaging and telephony services. 14. Develop an android application for creating location based service.

Reference Books: 1. Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley Publishing. 2. Android Application Development, Programming with the Google SDK, by, Rick Rogers, John Lombardo, ZigurdMednieks, Blake Meike, SPD, Oreilly, ISBN10: 81-8404-733-9, ISBN13:978-81- 8404-733-2 3. Hello Android, Introducing Google’s Mobile Development Platform, 3rd Edition, by Ed Burnette, Pragmatic Programmers, LLC.ISBN-10: 1-934356-56-5, ISBN-13: 978-1-934356-56-2 4. https://developer.android.com/training/index.html 5. http://www.codelearn.org/android-tutorial 6. http://www.tutorialspoint.com/android/

Course Delivery: The course will be delivered through lab exercises on various key concepts of mobile application development and by developing a simple application.

19 Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes

Twice(Average Lab Test 25 Data Sheets 1,2,3,4 & 5 of the Two) CIE Project Students Once 25 Project Report 1,2,3,4& 5 Demo Direct & Standard Indirect SEE Project Demo 50 Project Report 1,2,3,4 & 5 Assessment Examination Methods 1, 2, 3, 4 & 5 Effectiveness End of Course of Delivery of Students End of the - Questionnaire Survey instructions & course Assessment Methods

Course Outcomes:

At the end of the course student should be able to 1. Identify the various aspects of android platform and different android developer tools. 2. Recognize the activity life cycle and fragment life cycle. 3. Demonstrating the usage of different Views and ViewGroups. 4. Demonstrate the knowledge of location-based services and notifications in applications. 5. Develop the Android’s communication abilities using SMS and Telephony services.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the various aspects of android platform and different X X android developer tools. Recognize the activity life cycle and fragment life cycle. X X X Demonstrating the usage of different Views &ViewGroups. X X X X Demonstrate the knowledge of location-based services and X X X X Notifications in applications. Develop the Android’s communication abilities using SMS and X X X X Telephony services.

* Rubrics for Assessment of Student Performance in Laboratory in given in Table-1 of Annexure

20 Course Title: Startup Engineering Course Code: 16MCSE16 Credits (L:T:P:SS) : 0:1:1:0 Core/ Elective: Core Type of course: Tutorial, Practical Total Contact Hours: 56

Prerequisite:Nil

Course Contents: Unit 1 Introduction, Start up : past & present , NSF AUP Repeal: Internet for Business, The Key Features of Internet Startups, Technological Trends Toward Mobility and Decentralization, Start up engineering, Technologies, Design, Marketing, and Sales, Mobile HTML5 for the Final Project, Interactive Start, Webapp, Setup and Signup- AWS, Gravatar, Github, and Heroku, Connect to a Cloud Computer,Launch EC2 Instance, Mac: Connect to EC2 instance via Terminal.app, Windows: Connect to EC2 instance via Cygwin, Security Groups, Standard Operating System: Ubuntu 12.04.2 LTS on a t1.micro AWS instance, Deploy code to Test Heroku account .

Unit 2 Linux and Server-Side Javascript (SSJS), Overview, Features of Linux, Virtual Machines and the Cloud, Virtualization, Cloud and IAAS/PAAS/SAAS, Linux , Filesystem-Usage of env, PATH, HOME, which, issues, ssh, scp, bash, apt-get, Compiling from source: ./configure; make; make install, Example of installation conflicts , Server-Side JS (SSJS), Install node and npm, node.js REPL, Editing code with nano, node.js programming, Using the libraries, Market Research, Wireframing, and Design, Idea, Execution, and Market, Importance of product/idea- execution/team and market, Idea Maze, Execution Mindset, Kind of Business: Startups & Small Businesses, Startups: Exhibit Economies of Scale, Pursue Large Markets, Market Sizing Calculations Early and Often, Market Research: Tools , framework for determining product tiers, Wireframing, Copywriting, and Design, Wireframing, Copywriting, Design

Unit 3 Introduction to HTML/CSS/JS, webpage program, HTTP Request to Rendered Page, Anatomy of web page, HTML: Skeleton and Semantics, CSS, JS, Separation of concerns, Tools , Deployment, DNS, and Custom Domains, Deployment: Dev, Staging, Production, Sidebar: Comparing EC2 vs. local laptops for development, Preliminaries: SSH/HTTP/HTTPS-accessible EC2 dev instance, Creating and managing git branches, Worked Example: Dev, Staging, Production, DNS, Custom Domains, Finding a domain: domize.com, Registering a domain: dnsimple.com, Configuring DNS to work with Heroku, Setting up HTTPS and Google Apps, Social/Local/Mobile, Virality, Growth, Virality Equation, Local, Local Commerce, Graveyard of Startups

Unit 4 Regulation, Disruption, Technologies of 2013, Gaining Context, Transportation and Lodging, Payments and Finance, Biotech, Antitrust and Acquisitions, Aspects of Regulation, Anticipate the Argument, A/B/C/D Theory of Regulation, Technological Legalization, Amazon.com, anesthetizing C, Square, Tesla, Facebook/Goldman, Uber, Angel List, Disruption and the Technologies of 2013, Industrial Robotics, 3D Printing, Telepresence, Quantified Self, Bitcoin, Autonomous Drones, Coda, Linux Command Line, three streams, Navigation and Filesystem, Downloading and Syncing, Basic Text Processing, Help, Superuser, Intermediate Text Processing, Intermediate bash, Linux Development Environment: Development Environment, Distributed Version Control Systems (DVCS)

Unit 5

Linux Development Environment : Managing Setup and Configuration as Code, Mobile: Age of Internetification, Mobile Simply a Fad, Mobile Present & Future , Mobile technologies , Intermediate Javascript: rise of Javascript, Basics and Built-ins, Array, Date, RegExp, Math, String, JSON, Error, Built-in functions, Functional Programming (FP) and JS Functions, Object-Oriented Programming (OOP), Prototypal Inheritance, and JS Objects, Heuristics for OOP in JS, Node.js: Asynchrony, Flow Control, and Debugging: Motivation: reduce the impact of I/O latency with asynchronous calls, advantages and disadvantages of Node, Asynchronous Programming and Flow Control, Basic debugging with the Node Debugger

21 References:  Materials on Startup Engineering, Balaji S. Srinivasan, Stanford University  http://www.wsj.com/articles/SB10001424053111903480904576512250915629460#printMode  http://www.asymco.com/2012/01/17/the-rise-and-fall-of-personal-computing/  http://www.kpcb.com/blog/2012-internet-trends-update  http://www.nytimes.com/2011/05/08/technology/08class.html?pagewanted=all&_r=0  http://www.nytimes.com/2011/06/11/technology/11computing.html?pagewanted=all&_r=0  http://www.nytimes.com/projects/magazine/ideas/2009/#natural_science-7  http://www.paulgraham.com/growth.html  http://blakemasters.com/peter-thiels-cs183-startup  http://web.stanford.edu/class/cs106b/textbook/CS106BX-Reader.pdf

Course Delivery: The course will be delivered through Tutorials and practical sessions.

Course Assessment and Evaluation Scheme: When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes Internal C Assessment Twice 30 Blue Books 1,2,3,4,5 I Tests E Assignment Students Once 20 Solutions 1,2,3,4 &5 Direct S & Standard End of Course E 50 Answer scripts 1,2,3,4,5 Indirect Examination E Assessm 1,2,3,4,5 ent Effectiveness of Methods Course Exit Delivery of Students End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes: At the end of the course, a student should be able to 1. Describing startups and technology trends towards businesses 2. Identifying software usage for businesses and ethics 3. Figuring out the web usage for business launch 4. Assessing the latest technologies for stratups 5. Preparing softwares for startups

Mapping Course Outcomes with Programme Outcomes: Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Describing startups and technology trends towards businesses X X X X

Identifying software usage for businesses and ethics X X X X X X Figuring out the web usage for business launch X X X Assessing the latest technologies for stratups X X X Preparing softwares for startups X X X

22 Course Title: Network Programming Laboratory Course Code: 16MCSE15 Credits (L:T:P:SS): 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56 Prerequisites: Basic Concepts of Computer Networks

Course Objectives:  To learn the basics of socket programming using TCP Sockets.  To learn basics of UDP sockets.  To learn about raw sockets.  To implement few standard network protocols  To develop knowledge of threads for developing high performance scalable applications.

Course Content:

Write programs using C/C++ or java to implement the following 1. Echo Server using TCP and UDP socket programming. 2. HTTP Client and HTTP server using TCP socket programming. 3. DNS Client and DNS server using UDP socket programming. 4. Capture and to block the packets over the network using raw sockets. 5. Sliding Window protocols (stop and wait, Go back N, Selective Repeat) 6. TRACE ROUTE command. 7. Telnet Client. 8. File Transfer Protocol. 9. IPC - Pipes, FIFO and Message Queue. 10. Chat client and Chat server using Java socket programming. 11. Multicasting Program using Java socket programming. 12. Remote Procedure Call for sorting any given set of numbers. 13. RPC to perform String Conversion from Lower case to Upper Case and vice versa. 14. Generate SIGPIPE Error with Socket. 15. Restart server by capturing SIGHUP signal .

Text Books: 1. W. Richard Stevens: Unix Network Programming, PHI 2. W. Richard Stevens, Bill Fenner, Andrew M. Rudolf: Unix Network Programming The Sockets Networking API, Volume 1, Third Edition, PHI. 3. W. Richard Stevens: Unix Network Programming Interprocess Communications Volume 2, Second edition, PHI. 4. Elliott Rusty Harold: Java Network Programming, 3rd Edition, Shroff Publishers.

Reference Books: 1. W. Richard Stevens: TCP/IP Illustrated, Volumes 1, 2, and 3, Pearson, 2000.

Course Delivery: The course will be delivered through lab exercises.

23 Course Assessment Methods:

When/ Where To Max Evidence Contribution to What (Frequency in the Whom Marks Collected Course Outcomes course) Answer C Lab Tests Twice 40 1,2 ,3,4 & 5 Sheets I E Practical Once 10 Data sheets 1,2,3,4 &5 assignments Direct & S Indirect Standard Answer E End of Course 50 1,2,3,4&5 Assessm Examination Students scripts ent E Methods 1,2,3,4&5 Effectiveness of End of Course Questionnair Delivery of End of the course - Survey e instructions & Assessment Methods

Course Outcomes 1. Implement both connection-oriented and connectionless servers and clients using the Sockets API. 2. Understand the Unix process model, standard Unix input/output, and their system calls 3. Use signals and their associated system calls in Unix 4. Implement the most widely used network application protocols such as ftp, telnet, ping, etc to develop distributed applications 5. Understand multithreading and implement it in Unix.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Implement both connection-oriented and connectionless servers and x x x clients using the Sockets API.

Understand the Unix process model, standard Unix input/output, and x x x their system calls.

Use signals and their associated system calls in Unix. x x x

Implement the most widely used network application protocols such x x x as ftp, telnet, ping, etc to develop distributed applications. Understand multithreading and implement it in Unix. x x x

* Rubrics for Assessment of Student Performance in Laboratory in given in Table-1 of Annexure

24 Course Title: Computer Security Course Code: 16MCSE21 Credits (L:T:P:SS): 3:1:0:0 Core/ Elective: Core Type of course: Lecture/Tutorial Total Contact Hours:56

Prerequisites: Knowledge of computer systems and networks

Course Contents: Unit 1 Introduction: Need for security, Organization security, Business security requirements, security goals, Threats, Attacks, System and network security development. Mathematics of Cryptography: Integer Arithmetic, Modular Arithmetic, Matrices, Linear Congruence, GF (2n) Fields.

Unit 2 Traditional Key Ciphers: Introduction, Substitution Ciphers, Transposition Ciphers, Stream and Block Ciphers. Data Encryption Standard: Introduction, DES structure, DES Analysis, Multiple DES, Security of DES. Advanced Encryption Standards: Introduction, Transformation, key expansion, Examples, Analysis of AES.

Unit 3 Public Key Cryptosystem: Concept of Public-key cryptography, RSA cryptosystem, Hashing: Properties of hashing, Digital signatures: Properties of digital signatures, Generic signature schemes, RSA signature, Digital Forensics: Methodology, Team, Evidentiary procedures

Unit 4 Identification: Basic identification techniques, user identification, passwords, Challenge-Response identification, Key management: Symmetric key distribution, Kerberos, Symmetric-key agreement, Public-key distribution, Virtual private networks, Intrusion Detection & Prevention System.

Unit 5 Security at the application layer: EMAIL, PGP, S/MIME, Internet Protocol Security (IPsec): Introduction, Authentication Header Protocol, Encapsulating security payload protocol, Internet key exchange, Secure Socket Layer: States of SSL, SSL record protocol, Handshake protocol, Change cipher spec & alert protocols, Transport layer security

Tutorial Session: 1. Implementing Elliptic curve cryptography based authentication and authorization in a network 2. Implement a program to measure the amount of randomness available in a system 3. Security of wireless networks and mobile devices 4. Proactive cryptographic applications in smart cards 5. Digital signature for physical mail 6. Intrusion detection system 7. Secure instant messages 8. Cookie authentication 9. Steganography in TCP timestamps 10. Variable size block encryption and generate the key of variable length 11. Security of network attached storage 12. Steganography in spam 13. A secure media distribution Framework

25 Text Books: 1. Josef Pieprzyk, Thomas Hardjono, Jennifer Serberry, “Fundamentals of Computer Security”, Springer 2. Behrouz A. Forouzan, Debdeep Mukhopadhyay, “Cryptography and Network Security”, 2nd Edition, Special Indian Edition, Tata McGraw – Hill, 2011

Reference Books: 1. Michael E. Whitman and Herbert J, Mattord: “Principles of Information Security”, 4th. Edition, Thomson, 2012 2. William Stallings: “Network Security Essentials Applications and Standards”, 4th. Edition, Person Education, 2012

Course Delivery: The course will be delivered through lectures, class room interactions, group discussions, seminar, assignments and self-study cases.

Course Assessment and Evaluation Scheme:

When/ Where Max Contribution to To Evidence What (Frequency in Mark Course Whom Collected the course) s Outcomes Thrice(Average C Internal of the best two 30 Blue Books 1,2,3,4,5 &6 I Assessment Tests will be E computed) Quiz Answer 2,3 & 4 Quiz/Assignment Once 20 sheets/Assign Direct & ment Indirect S End of Course Students Answer Assessme E Standard Examination (Answering 100 1,2,3,4,5&6 scripts nt E 5 of 10 questions) Methods 1,2,3.4,5&6 Effectiveness of End of Course Delivery of End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes:

At the end of the course the student should be able to 1. Identify the threats to computer security and its goals. 2. Describe the concept of Private Key Cryptosystems. 3. Formulate an encryption method depending on the needs of threats. 4. Demonstrate the implementation of different methods used in Digital signature. 5. Describe the fundamentals of key management techniques. 6. Summarize the goals achieved at application, transport and network layer.

26 Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the threats to computer security and its goals. x x x x Describe the concept of Private Key Cryptosystems. x x x

Formulate an encryption method depending on the needs of threats x x x x Demonstrate the implementation of different methods used in x x x x Digital signature Describe the fundamentals of key management techniques x x x x Summarize the goals achieved at application, transport and network layer x x x x x x

27 Course Title: Embedded System Design Course Code: 16MCSE22 Credits (L:T:P:SS) : 3:0:0:1 Core/ Elective: Core Type of course: Lecture Total Contact Hours: 56

Prerequisites: The student should have undergone the course on Microprocessors and Computer organization.

Course Contents: Unit 1 Embedded Computing: Introduction, Complex Systems And Microprocessors Embedded Systems, Design Process, Design Metrics, Flow And Optimization, Specifications And Modeling,Cortex-M0 Technical Overview, Implementation Features, System Features, Debug Features, Advantages.

Unit 2 Programming Model, Operation Modes And States, Architecture, Registers And Special Registers Behaviors Of The Application Program Status Register (APSR), Memory System Overview, Stack Memory, Operations Introduction To Cortex-M0 Programming, Instruction Set.

Unit 3 Instruction Usage Examples, Implementation Of Various Structures Like Loop, Switch, Function, Subroutine, Memory System, Exceptions And Interrupts, Interrupt Control And System Control.

Unit 4 Simple Application Programming, Simple Input /Output, Simple Interrupt Programming, Sensors, Thermistors, Ldrs, Leds 7 Segment, LCD, Stepper Motor, Relays, Actuator, and Adcs.

Unit 5 Embedded/ Real Time Tasks, Real Time Systems, Types Of Real Time Systems Quality Of Good Real Time Systems. Real Time Operating System Concepts: Architecture Of The Kernel, Task And Task Scheduler,ISR, Sémaphores, Mutex, Mailboxes, Message Queues, Message Queues Pipes, Signal, Memory Management, Priority Inversion problems.

Text Books:

1. Wayne Wolf “Computers as Components Principles of Embedded Computer System Design”, Second Edition, Elsevier, 2008. 2. Joseph Yiu, “ The Definitive Guide to the ARM Cortex-M0 “, 1st edition, Newnes - an imprint of Elsevier, 2011 3. Lyla B. Das, “Embedded Systems an integrated approach “ , 1st edition, Pearson, 2013. 4. KVVK Prasad, “Embedded/Real Time Systems : Concepts, Design and Programming “ , 1st edition, Dreamtech, 2011 . Reference Books: 1. Frank Wahid/Tony Givargis “Embedded System Design A Unified Hardware/Software Introduction “ 1st Edition, John Wiley & Sons, 2002. 2. Raj Kamal , “Embedded Systems: Architecture ,Programming and Design”, Tata McGrawhill, New Delhi,2003. 3. Tammy Noergaard, “Embedded Systems Architecture- Comprehensive Guide for Engineer and Programmers – Elsevier Publication, 2005 4. Barnett, Cox & O’cull, ”Embedded C programming ”,Thomson ,2005.

Course Delivery: The course is delivered through Lectures, Presentations and Videos.

28 Course Assessment and Evaluation Scheme:

When/ Where To Max Evidence Contribution to What (Frequency in the Whom Marks Collected Course Outcomes course) Thrice(Average Internal of the best two 30 Blue Books 1,2 3,4,5,6 & 7 Assessment Tests will be C computed) I Twice(Summatio E Class-room Direc n of the two will 20 Quiz papers 1,2 3,4,5,6 & 7 Surprise Quiz t & be computed) Indir ect S Students End of Course Standard Answer Asses E (Answering 100 1,2 3,4,5,6 & 7 Examination scripts sment E 5 of 10 questions) Meth 1, 2,3,4,5,6,& 7 ods Effectiveness of End of Course Questionnair Delivery of End of the course - Survey e instructions & Assessment Methods

Course Outcomes:

At the end of the course the students should be able to 1. Identify embedded system requirements and goals 2. Describe Cortex M0 advantages for designing embedded systems 3. Evaluate Cortex M0 in assembly instructions and write embedded C programs using CMSIS features. 4. Understand the memory mapping of Cortex M0 architecture 5. Use the interrupt capabilities, like enabling, disabling setting priority, nested looping 6. Compare the working of various sensors and actuators and their interface with microcontrollers 7. Appreciate the kernel of RTOS and its various deployments for embedded systems.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify embedded system requirements and goals. x x x x x x Describe Cortex M0advantages for designing embedded systems. x x x x Evaluate cortex M0 in assembly instructions and write embedded C programs using CMSIS features x x x x Understand the memory mapping of Cortex M0 architecture. x x x Use the interrupt capabilities, like enabling, disabling setting priority, x x x x nested looping Compare the working of various sensors and actuators and their interface x x x with microcontrollers. Appreciate the kernel of RTOS and its various deployment. x x x x x

29 Course Title: Engineering Economics , Project Management and Course Code: 16MCSE23 Professional Ethics Credits (L:T:P:SS) : 4:0:0:0 Core/ Elective: Core Type of course: Lecture Total Contact Hours: 56

Prerequisites: Nil Unit 1 Introduction: Understanding Project Management, Defining the Project Manager’s Role, The Project Manager as the Planning Agent, The Downside of Project Management, Classification of Projects, Differing Views of Project Management, Concurrent Engineering: A Project Management Approach, Project Management Growth Concepts and definitions: Systems, Programs, and Projects: A Definition, Product versus Project Management: A Definition, The Many Faces of Success, The Many Faces of Failure, The Stage-Gate Process, Project Management Methodologies, Organizational Structures: Traditional (Classical) Organization, Matrix Organizational Form Modification of Matrix Structures, The Strong, Weak, Balanced Matrix

Unit 2 Organizing and staffing the project office and the team: The Staffing Environment, Selecting the Project Manager: An Executive Decision, Skill Requirements for Project and Program Managers, Next Generation Project Managers, Duties and Job Descriptions, Selecting the Project Management Implementation Team, Management Functions: Project Authority, Team Building as an Ongoing Process, Dysfunctions of a Team , Employee–Manager Problems, Management Pitfalls , Conflicts: The Conflict Environment, Conflict Resolution, The Management of Conflicts, Conflict Resolution Modes, the variables for success: Predicting Project Success, Project Management Effectiveness

Unit 3 Planning: General Planning, Life-Cycle Phases, Proposal Preparation, Kickoff Meetings, Understanding Participants’ Roles, Project Planning, The Statement of Work, Project Specifications, Milestone Schedules, Work Breakdown Structure, Detailed Schedules and Charts, Project Plan, Total Project Planning, Management Control, Configuration Management, Enterprise Project Management Methodologies, Project Audits, Network Scheduling Techniques: Network Fundamentals, Graphical Evaluation and Review Technique, Network Replanning, Estimating Activity Time, Estimating Total Project Time, Total PERT/CPM Planning, Project Graphics: Bar (Gantt) Chart, Other Conventional Presentation Techniques

Unit 4 Pricing and Estimating: Types of Estimates, Pricing Process, Organizational Input Requirements, Labor Distributions, Overhead Rates, Materials/Support Costs, Pricing Out the Work, Smoothing Out Department Man-Hours, The Pricing Review Procedure, Project Risks, Life-Cycle Costing (LCC), Cost Control: Understanding Control, The Operating Cycle, Cost Account Codes, Budgets,The Earned Value Measurement System (EVMS), Variance and Earned Value , Trade off analysis in project environment: Methodology for Trade-off Analysis

Unit 5 Risk Management: Definition of Risk, Tolerance for Risk, Definition of Risk Management, Certainty, Risk, and Uncertainty, Risk Identification, Risk Analysis, Qualitative Risk Analysis, Quantitative Risk Analysis, Probability Distributions and the Monte Carlo Process, Contract Management: Plan Procurement, Types of Contracts, Incentive Contracts, Contract Type versus Risk, Contract Administration Cycle, Quality Management: Definition of Quality, The Quality Movement, Quality Management Concepts, The Cost of Quality, The Seven Quality Control Tools, Implementing Six Sigma, Lean Six Sigma and DMAIC 914, Just-in-Time Manufacturing (JIT), Total Quality Management (TQM)

Textbook- Project Management: A Systems Approach to Planning, Scheduling, and Controlling, 10th ed. Author: Harold Kerzner, PhD

Course Delivery: The course is delivered through Lectures, Presentations and Videos.

30 Course Assessment and Evaluation Scheme:

When/ Where To Max Evidence Contribution to What (Frequency in the Whom Marks Collected Course Outcomes course) Thrice(Average Internal of the best two Assessment 30 Blue Books 1,2 3,4 & 5 will be Tests C computed) I Implementation E of different Direct Once 20 Quiz papers 1,2 3,4 & 5 & project Indire management ct strategies Students S End of Course Assess Standard Answer E (Answering 100 1,2 3,4 & 5 ment Examination scripts Metho E 5 of 10 questions) ds 1, 2,3,4 &5 Effectiveness of End of Course Questionnair Delivery of End of the course - Survey e instructions & Assessment Methods

Course Outcomes:

At the end of the course the student should be able to 1. Recognize issues in a realistic project scenario. 2. Employ work breakdown structures (WBS) in a project application. 3. Demonstrate the use of appropriate network scheduling techniques. 4. Produce a project proposal. 5. Discuss the implementation of a proposed plan.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Recognize issues in a realistic project scenario. x x x x Employ work breakdown structures (WBS) in a project application. x x x x Demonstrate the use of appropriate network scheduling techniques. x x x x Produce a project proposal. x x x x Discuss the implementation of a proposed plan. x x x x

31 Course Title: Internet of Things Laboratory Course Code: 16MCSE24 Credits (L:T:P:SS) : 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56

Prerequisites: Knowledge of Computer Networks, Web Technologies, Embedded Systems

Course Contents:

Internet of Things Laboratory provides one of the simplest ways to design and implement various IoT applications. IoT is a flexible platform for experimental research that uses connected devices in homes and beyond.

 Interconnection of devices and implementation of application scenarios.  Deployment and monitoring of field studies and analysis of data from experiments.  Sharing of data, code to evaluate ideas in a diverse set. Projects can be designed in various IoTs domain like

1. Home Automation- Smart Lighting, Smart Appliances, Intrusion Detection, Smoke/Gas Detectors. 2. Cities - Smart Parking, Smart Lighting, Smart Roads, Structural Health Monitoring, Surveillance Emergency Response. 3. Environment -Weather Monitoring, Air Pollution Monitoring, Noise Pollution Monitoring, Forest Fire Detection, River Floods Detection. 4. Energy -Smart Grids, Renewable Energy Systems. 5. Retail -Inventory Management, Smart Payments, Smart Vending Machines. 6. Logistics-Route Generation and scheduling, Fleet Tracking Shipment, Monitoring, Remote Vehicle Diagnostics. 7. Agriculture-Smart Irrigation, Green House Control. 8. Industry - Machine Diagnosis & Prognosis - Indoor Air Quality Monitoring. 9. Health & Lifestyle - Health & Fitness Monitoring, Wearable Electronics. As in the above mentioned projects can be developed using open source tools like Arduino Boards and Raspber Pi

Course Delivery: This course is delivered through presentations and mini project.

Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in the to Course Whom Marks Collected course) Outcomes C Project Mini I Once 50 Documentatio 1,2,3 & 4 Project Direct E n Students & S Standard Answer Indire E Examinati Project demo 50 1,2,3 & 4 scripts ct E on Assess 1,2,3 & 4 ment Effectiveness Metho End of Course of Delivery of Students End of the course - Questionnaire ds Survey instructions & Assessment Methods

32 Course Outcomes:

At the end of Course the student should be able to 1. Design applications that will communicate with IoT hardware and software. 2. Explore specific IoT domain like Network, communications, Management infrastructure, Services applications development and Human interaction. 3. Examine an IoT offering of the project in terms of IoT levels and Protocols. 4. Describe different kinds of Internet-connected product concepts.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Design applications that will communicate with IoT x x x hardware and software. Explore specific IoT domain like Network, communications, Management infrastructure, Services applications x x x development and Human interaction. Examine an IoT offering of the project in terms of IoT levels x x x and Protocols. Describe different kinds of Internet-connected product x x x concepts.

33 Course Title: Data Analytics Laboratory Course Code: 16MCSE25 Credits (L:T:P:SS): 0:0:2:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: 56

Prerequisites: Students taking this course should be familiar with the concepts from a graduate level introductory statistics course Familiarity with basic programming concepts would be helpful, but not required.

Course Contents:

1. Introduction to R a. R and Rstudio b. Basics of R c. Advanced Data Structures d. Reading Data into R e. Manipulating Strings and Date/Time f. Loops, Control Statements, Functions 2. Data Analysis and Graphics a. Reshaping Data b. dplyr and ggplot2 packages c. Summarized data distributions d. Sampling and Simulation e. Multivariate Analysis 3. Statistical Learning a. Classical Linear Methods (linear and logistic regression) b. Penalized Regression (e.g., ridge, lasso, elastic net) c. Pattern & Event Detection d. Trees and random forest e. Boosting f. Variable Selection (filter, wrapper, embedded) g. Clustering (K-means, hierarchical methods)

Reference Books: 1. R for Everyone: Advanced Analytics and Graphics by Jarad Lander. 2. R Graphics Cookbook by Winston Chang. 3. An Introduction to Statistical Learning: with Applications in R by James, Witten, Hastie and Tibshirani.

Course Delivery: The course will be delivered through lectures in the laboratory.

34 Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in the to Course Whom Marks Collected course) Outcomes C Test Twice 30 Project I Documentatio 1,2,3,4,5 & 6 E Project Once 20 n Direct Students S Standard & Answer E Examinati Project demo 50 1,2,3,4,5 & 6 Indire scripts ct E on Assess 1,2,3,4,5&6 ment Effectiveness of Metho End of Course Delivery of Students End of the course - Questionnaire ds Survey instructions & Assessment Methods

Course Outcomes:

Students completing this course should be able to: 1. Extract meaningful information from data 2. Construct informative plots using the extracted data 3. Apply statistical learning methods for predictive modeling 4. Properly select, tune, and assess models for effective data analysis 5. Perform common hypothesis tests, and run simple regression models in R 6. Present results from data analysis effectively

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Extract meaningful information from data X X Construct informative plots using the extracted data X X Apply statistical learning methods for predictive X X X X X modeling. Properly select, tune, and assess models for X X X effective data analysis. Perform common hypothesis tests, and run simple X X X regression models in R Present results from data analysis effectively X X X

35 Course Title: Seminar Course Code: 16MCSES01/02 Credits (L:T:P:SS): 0:0:1:0 Core/ Elective: Core Type of course: Practical Total Contact Hours: --

Seminars are used as course delivery modes to encourage students to gather current trends in technology, research literature, and self-learn topics of their interest. Seminars require students to research a technical topic, make presentations and write a detailed document on their findings.

The student is expected to:

1. Identify seminar topics based on contemporary technical, societal and environmental issues. 2. Conduct literature survey on complex issues in the selected domain 3. Learn or explore advanced technologies 4. Make good oral and written technical presentations

 Rubrics for assessment of Seminar 1 and 2 are given in Table 2 of Annexure

36 Course Title: Advances in Operating Systems Course Code: 16MCSEE01 Credits (L:T:P:SS) : 3:0:1:0 Core/ Elective: Elective Type of Course: Lecture, Practical Total Contact Hours: 70

Prerequisites: Operating Systems

Course Contents: Unit I Process Synchronization: Synchronizations Mechanisms – Concurrent Processes, Critical Section Problem, Synchronization Problems. Distributed Operating Systems : Architectures Of Distributed Systems ,Theoretical Foundations

Unit 2 Distributed Mutual Exclusion - Classification Of Mutual Exclusion And Associated Algorithms - A Comparative Performance Analysis, Distributed Deadlock Detection - Deadlock Handling Strategies, Issues - Control Organizations – Centralized, Distributed and Hierarchical Deadlock Detection Algorithms

Unit 3 Agreement Protocols - System Model, Classification Of Agreement Problems, Applications Of Agreement Algorithms. Distributed Resource Management: Distributed File Systems- Architecture - Mechanisms For Building Distributed File Systems - Design Issues - Log Structured File Systems. Distributed Shared Memory- Architecture- Algorithms For Implementing DSM - Memory Coherence And Protocols - Design Issues.

Unit 4 Distributed Scheduling - Issues In Load Distributing, Components Of Load Distributing Algorithm - Stability , Algorithms - Performance Comparison, Selecting A Suitable Load Sharing Algorithm, Requirements For Load Distributing -Task Migration and Issues. Failure Recovery: Classification , Backward And Forward Error Recovery, Recovery In Concurrent Systems - Consistent Set Of Check Points - Synchronous And Asynchronous Check Pointing And Recovery , Check Pointing For Distributed Database Systems- Recovery In Replicated Distributed Databases. Unit 5 Protection And Security- Resource Security And Protection- The Access Matrix Model And Its Implementations, Safety In Matrix Model- Advanced Models Of Protection, Multiprocessor Operating Systems: System Architectures, Inter Connection Networks, Caching , Hypercube Architecture. Multiprocessor Operating System - Structures , Design Issues, Threads , Process Synchronization and Issues, Processor Scheduling: Issues, Co-Scheduling, Smart Scheduling.

Laboratory Work: (The following programs can be executed on any available and suitable platform) 1. Design, develop and execute a program using any thread library to create the number of threads specified by the user; each thread independently generates a random integer as an upper limit, and then computes and prints the number of primes less than or equal to that upper limit along with that upper limit. 2. Rewrite above program such that the processes instead of threads are created and the number of child processes created is fixed as two. The program should make use of kernel timer to measure and print the real time, processor time, user space time and kernel space time for each process. 3. Design, develop and implement a process with a producer thread and a consumer thread which make use of a bounded buffer (size can be prefixed at a suitable value) for communication. Use any suitable synchronization construct. 4. Design, develop, and execute a program to solve a system of n linear equations using Successive Over- relaxation method and n processes which use Shared Memory API. 5. Design, develop, and execute a program to demonstrate the use of RPC. Text Book : 1. Mukesh Singhal, Niranjan G.Shivaratri, "Advanced concepts in operating systems: Distributed, Database and multiprocessor operating systems", TMH, 2009

37 Reference Books: 1. Andrew S.Tanenbaum, "Modern operating system", PHI, 2003 2. Pradeep K.Sinha, "Distributed operating system-Concepts and design", PHI, 2003. 3. Andrew S.Tanenbaum, "Distributed operating system", Pearson education, 2003.

Course Delivery: The course will be delivered through lectures, class room interaction, Practicals, Self-Study.

Course Assessment and evaluation:

When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes Internal Thrice(Average of Assessment the best two will be 25 Blue Books 1,2, 3,4 & 5 C Tests computed) I Practical, Mini Code Direct E Project and Once 25 Reposition, 2 & 4 & Certification Certificates Indir S End of Course ect Standard Student E (Answering 100 Answer scripts 1,2, 3,4 & 5 Asses Examination s E 5 of 10 questions) sment 1,2 3,4 & 5 meth Effectiveness of ods End of Course Delivery of End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes: At the end of the course the students should be able to: 1. Implement a concurrent programming application using semaphores & monitors for process control. 2. Explain the basic concepts of Distributed Operating Systems and its architecture 3. Implement deadlock avoidance, prevention & recovery 4. Identify the Distributed resource management and design issues 5. Implement various CPU scheduling, IPC memory management, recovery and concurrent algorithms 6. Understand the architecture of multiprocessor operating systems including caching.

Mapping course outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Implement a concurrent programming application using semaphores & x monitors for process control. Explain the basic concepts of Distributed Operating Systems and its x architecture. Implement deadlock avoidance, prevention & recovery. x x Identify the Distributed resource management and design issues. x x Implement various CPU scheduling, IPC memory management, recovery x x and concurrent algorithms. Understand the architecture of multiprocessor operating systems including x x caching.

38 Course Title: Cloud Computing Course Code: 16MCSEE02 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of Course: Lecture Total Contact Hours: 56

Prerequisites: NIL

Course Contents:

UNIT I Introduction: Network centric computing and network centric content, Peer-to-peer systems, Cloud Computing: an old idea whose time has come, Cloud Computing delivery models & Services, Ethical issues, Cloud vulnerabilities, Challenges, Cloud Infrastructure: Amazon, Google, Azure & online services, open source private clouds. Storage diversity and vendor lock-in, intercloud, Energy use & ecological impact of data centers, service level and compliance level agreement, Responsibility sharing, user experience, Software licensing.

UNIT II Cloud Computing: Applications & Paradigms, Challenges, existing and new application opportunities, Architectural styles of cloud applications: single , multi ,hybrid cloud site, redundant, non redundant , 3 tier, multi tier architectures, Workflows coordination of multiple activities, Coordination based on a state machine model -the Zoo Keeper, The Map Reduce programming model, Apache Hadoop, A case study: the GrepTheWeb application, Applications: Healthcare, Energy systems, transportation, manufacturing, Education, Government, mobile communication, application development.

UNIT III Cloud Resource Virtualization: Definition, merits and demerits, types & Techniques, Layering, Virtual machine monitors, Hardware support for virtualization Case study: Xen -a VMM based on paravirtualization, Optimization of network virtualization in Xen 2.0, vBlades -paravirtualization targeting a x86-64 Itanium processor, A performance comparison of virtual machines, The darker side of virtualization, Software fault isolation.

UNIT IV Cloud Resource Management and Scheduling: Policies and mechanisms for resource management, Applications of control theory to task scheduling on a cloud, Stability of a two- level resource allocation architecture, Feedback control based on dynamic thresholds, Coordination of specialized autonomic performance managers, A utility-based model for cloud-based web services, Resource bundling, combinatorial auctions, fair queuing, Start time fair queuing, borrowed virtual time, Cloud scheduling subject to deadlines, Scheduling mapreduce applications subject to deadlines, Resource management and application scaling.

UNIT V Storage systems: Evolution, Storage models, file systems, databases, DFS, General parallel File system, GFS, Hadoop, Locks & Chubby, TPS, NOSQL, BigTable, Mega store. Cloud security: Risks, Security, privacy, Trust. Security of OS,VM, VMM, shared image, management OS, Xoar.

39 Text Book 1. Cloud Computing Theory and Practice – DAN C. Marinescu – ELSEVIER 2. Cloud Computing : A hands on Approach Bagha Madisetti References 1. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things, Kai Hwang, Jack Dongarra, Geoffrey Fox. MK Publishers. 2. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert Elsenpeter, McGraw Fill, 2010

Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practice exercises and practical sessions.

Course Assessment and evaluation:

When/ Where Contribution to To Max Evidence What (Frequency in the Course Whom Marks Collected course) Outcomes Internal Thrice(Average of Assessment the best two will be 25 Blue Books 1,2, 3,4 & 5 C Tests computed) I Practical, Mini Code Direct E Project and Once 25 Reposition, 2 & 4 & Certification Certificates Indir S End of Course ect Standard Student E (Answering 100 Answer scripts 1,2, 3,4 & 5 Asses Examination s E 5 of 10 questions) sment 1,2 3,4 & 5 meth Effectiveness of ods End of Course Delivery of End of the course - Questionnaire Survey instructions & Assessment Methods

Course Outcomes At the end of the course students should be able to: 1. To analyze the transformation that led to the evolution of Cloud computing, it's vulnerabilities and its impact. 2. Design different workflows according to requirements and apply map reduce programming model and real time applications. 3. Make performance comparison of virtual machines and optimization of virtualization. 4. Develop policies and mechanisms for cloud resources and design algorithms for scheduling. 5. Assess cloud Storage systems and identify cloud security, privacy issues, threats, the risks involved, its impact and provide solution.

40 Mapping Course Outcomes with Programme Outcomes:

Course Outcomes Programme Outcomes

PO1 PO2 PO3 PO4 PO5 PO6 To analyze the transformation that led to x X the evolution of Cloud computing, it's vulnerabilities and its impact. Design different workflows according to x x x x x X requirements and apply map reduce programming model Make performance comparison of virtual x x x X machines and optimization of virtualization. Create combinatorial auctions for cloud x x x x X resources and design scheduling algorithms for computing clouds. Assess cloud Storage systems and Cloud x x x x x security, the risks involved, its impact and develop cloud application.

41 Course Title: Advances in Database Management Systems Course Code: 16MCSEE03 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of Course: Lecture Total Contact Hours: 56

Prerequisites: Database Management Systems.

Course Contents:

Unit 1 Review of Relational Data Model and Relational Database Constraints: Relational model concepts; Relational model constraints and relational database schemas; Update operations, transactions and dealing with constraint violations.

Unit 2 Object and Object-Relational Databases: Overview of Object-Oriented Concepts – Objects, En capsulation, Type and class hierarchies, complex objects; Object model of ODMG, Object definition Language ODL; Object Query Language OQL; Overview of C++ language binding; Conceptual design of Object database. Overview of object relational features of SQL; Object-relational features of Oracle; Implementation and related issues for extended type systems; The nested relational model.

Unit 3 Parallel and Distributed Databases: Architectures for parallel databases; Parallel query evaluation; Parallelizing individual operations; Parallel query optimizations; Introduction to distributed databases; Distributed DBMS architectures; Storing data in a Distributed DBMS; Distributed catalog management; Distributed Query processing; Updating distributed data; Distributed transactions; Distributed Concurrency control and Recovery. Unit 4 Data Warehousing, Decision Support and Data Mining: Introduction to decision support; OLAP, multidimensional model; Window queries in SQL; Finding answers quickly; Implementation techniques for OLAP; Data Warehousing; Views and Decision support, View materialization, Maintaining materialized views. Introduction to Data Mining; Counting co-occurrences; Mining for rules; Tree-structured rules; Clustering; Similarity search over sequences; Incremental mining and data streams; Additional data mining tasks.

Unit 5 Enhanced Data Models for Some Advanced Applications: Active database concepts and triggers; Temporal, Spatial, and Deductive Databases – Basic concepts. More Rece nt Applications: Mobile databases; Multimedia databases; Geographical Information Systems; Genome data management.

Text Books: 1. Elmasri and Navathe: Fundamentals of Database Systems, Pearson Education, 2013. 2. Raghu Ramakrishnan and J Gehrke: Database Management Systems, 3rd Edition, McGraw-Hill, 2013. Reference Books: 1. Abraham Silberschatz, Henry F. Korth, S. Sudarshan: Database System Concepts, 6th Edition, McGraw Hill, 2010. Course Outcomes: At the end of the course the student should be able to 1. Choose the appropriate high performance database like parallel and distributed database. 2. Design models of the real world data using object oriented database. 3. Examine the rule set in the database to implement data warehousing of mining 4. Design database for recent applications for better interoperability. 5. To identify emerging and advanced data models.

42 Course Title: Multi Core Architecture and Programming Course Code: 16MCSEE04 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of Course: Lecture Total Contact Hours: 56

Prerequisites: Computer Architecture.

Unit 1 Introduction To Multi-Core Architecture: Motivation For Concurrency In Software, Parallel Computing Platforms, Parallel Computing In Microprocessors, Differentiating Multi-Core Architectures From Hyper- Threading Technology, Multi-Threading On Single-Core Versus Multi-Core Platforms Understanding Performance, Amdahl’s Law, Growing Returns: Gustafson’s Law. System Overview Of Threading: Defining Threads, System View Of Threads, Threading Above The Operating System, Threads Inside The OS, Threads Inside The Hardware, What Happens When A Thread Is Created, Application Programming Models And Threading, Virtual Environment: Vms And Platforms, Runtime Virtualization, System Virtualization.

Unit 2 Fundamental Concepts Of Parallel Programming: Designing For Threads, Task Decomposition, Data Decomposition, Data Flow Decomposition, Implications Of Different Decompositions, Challenges You’ll Face, Parallel Programming Patterns, A Motivating Problem: Error Diffusion, Analysis Of The Error Diffusion Algorithm, An Alternate Approach: Parallel Error Diffusion, Other Alternatives.

Unit 3 Threading And Parallel Programming Constructs: Synchronization, Critical Sections, Deadlock, Synchronization Primitives, Semaphores, Locks, Condition Variables, Messages, Flow Control- Based Concepts, Fence, Barrier, Implementation-Dependent Threading Features. Threading Apis : Threading Apls For Microsoft Windows, Win32/MFC Thread Apls, Threading Apls For Microsoft. NET Framework, Creating Threads, Managing Threads, Thread Pools, Thread Synchronization, POSIX Threads, Creating Threads, Managing Threads, Thread Synchronization, Signaling, Compilation And Linking.

Unit 4 Openmp: A Portable Solution For Threading: Challenges In Threading A Loop, Loop-Carried Dependence, Data-Race Conditions, Managing Shared And Private Data, Loop Scheduling And Portioning, Effective Use Of Reductions, Minimizing Threading Overhead, Work-Sharing Sections, Performance-Oriented Programming, Using Barrier And No Wait, Interleaving Single-Thread And Multi-Thread Execution, Data Copy-In And Copy- Out, Protecting Updates Of Shared Variables, Intel Task Queuing Extension To Openmp, Openmp Library Functions, Openmp Environment Variables, Compilation, Debugging, Performance.

Unit 5 Solutions To Common Parallel Programming Problems: Too Many Threads, Data Races, Deadlocks, And Live Locks, Deadlock, Heavily Contended Locks, Priority Inversion, Solutions For Heavily Contended Locks, Non-Blocking Algorithms, ABA Problem, Cache Line Ping-Ponging, Memory Reclamation Problem, Recommendations, Thread-Safe Functions And Libraries, Memory Issues, Bandwidth, Working In The Cache, Memory Contention, Cache-Related Issues, False Sharing, Memory Consistency, Current IA-32 Architecture, Itanium Architecture, High-Level Languages, Avoiding Pipeline Stalls On IA-32,Data Organization For High Performance.

Text Book 1. Multicore Programming , Increased Performance through Software Multi-threading by Shameem Akhter and Jason Roberts , Intel Press , 2006 2. Hennessey and Patterson: “Computer Architecture A Quantitative Approach”, 4th Edition, Elsevier, 2012.

43 Reference Book: 1. Kai Hwang, Naresh Jotwani: Advanced Computer Architecture - Parallelism, Scalability, Programmability, 2nd Edition, Tata McGraw Hill, 2011.

Course Outcomes:

At the end of the course the students should be able to: 1. Identify performance related parameters in the field of Computer Architecture. 2. Identify the limitations of ILP and the need for multi-core architectures. 3. Solve the issues related to multiprocessing and suggest solutions. 4. Point out the salient features of different multi-core architectures and how they exploit parallelism. 5. Understand the concept of multi threading and OPENMP.

44 Course Title: Storage Area Networks Course Code: 16MCSEE05 Credits (L:T:P:SS) : 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours:56

Prerequisites: Computer Networks, Computer Organization, Operating system

Course Contents:

Unit 1 Introduction: Server centric IT Architecture and its Limitations; Storage centric IT Architecture and its advantages. Case study: Replacing a server with Storage Networks, The Data Storage and Data Access problem, The battle for size and access.Intelligent Disk Subsystems: Architecture of Intelligent Disk Subsystems; Hard disks and Internal I/O Channels; JBOD, Storage virtualization using RAID and different RAID levels; Caching: Acceleration of Hard Disk Access; Intelligent disk subsystems, Availability of disk subsystems.

Unit 2 I/O Techniques: The Physical I/O path from the CPU to the Storage System; SCSI; Fibre Channel Protocol Stack; Fibre Channel SAN; IP Storage.

Unit 3 Network Attached Storage: The NAS Architecture, The NAS hardware Architecture, The NAS Software Architecture, Network connectivity, NAS as a storage system. File System and NAS: Local File Systems; Network file Systems and file servers; Shared Disk file systems; Comparison of fibre Channel and NAS.

Unit 4 Storage Virtualization: Definition of Storage virtualization, Implementation Considerations; Storage virtualization on Block or file level; Storage virtualization on various levels of the storage Network; Symmetric and Asymmetric storage virtualization in the Network.

Unit 5 SAN Architecture and Hardware devices: Overview, Creating a Network for storage; SAN Hardware devices; The fibre channel switch; Host Bus Adaptors; Putting the storage in SAN; Fabric operation from a Hardware perspective. Software Components of SAN: The switch’s operating system; Device Drivers; Supporting the switch’s components; Configuration options for SANs. Management: Planning Business Continuity; Managing availability; Managing Serviceability; Capacity planning; Security considerations.

Text Book: 1. Ulf Troppens, Rainer Erkens and Wolfgang Muller: Storage Networks Explained, 1st edition, Wiley India, 2012.

Reference Books: 1. Marc Farley: Storage Networking Fundamentals – An Introduction to Storage Devices, Subsystems, Applications, Management, and File Systems, Cisco Press, 2005. 2. Robert Spalding: “Storage Networks-The Complete Reference”, 1st edition, Tata McGraw-Hill, 2011. 3. Richard Barker and Paul Massiglia: “Storage Area Network Essentials: A Complete Guide to understanding and Implementing SANs”, 1st edition, John Wiley India, 2011.

Course Delivery: Lecture, presentations and videos Course Outcomes:

At the end of the course the students should be able to: 1. Understand storage centric architecture as a necessity for an enterprise data storage 2. Recognize Storage Area Networks and Local area Networks (Ethernet) 3. Appreciate the working of various layers of Fiber Channel protocol stack. 4. Identify the need for NAS and IP SAN at an Enterprise requirements 5. Evaluate virtualizations Block /File level in SAN networks 6. Identify SAN and NAS Hardware and Software components

45 Course Title: Big Data and Data Science Course Code: 16MCSEE06 Credits (L:T:P:SS) : 3:0:1:0 Core/ Elective: Elective Type of Course: Lecture/Practical Total Contact Hours: 70

Prerequisites: Nil

Course Contents: Unit 1 Introduction to big Data: Big Data Overview with typical examples, What is Data Science, Introduction to Big Data Analytics, Data Analytics Life cycle, Domain-specific Life cycle. Unit 2 Data, Data Range, Data Management, Data Mining, Data Munging, Wrangling and Cleaning, Databases and Relational Algebra, Parallel Data Bases, Parallel Query Processing, Mean and Standard Deviation, Estimation- Only Analyses, Use Case: Watching Data Trends with Google Ngrams, Use Case: Estimating Move Preferences. Unit 3 Introduction to Analytics - introduction to machine learning, Supervised learning overview, simple nearest neighbor, decision trees/forests, regression, Unsupervised learning: k-means, multi-dimensional scaling Graph Analytics: PageRank, community detection, recursive queries, iterative processing, Text Analytics: latent semantic analysis, Visualization & visual data analytics. Unit 4 Tools and Methods deployed in Data Science, Introduction to R language, R functions and programming, R Grphics, R and commonly used statistics, R Commander, analyzing and exploring data with R, R studio, Advantages and disadvantages of R, R vs SAS Map Reduce/Hadoop, MapR Technologies and The Most Powerful, Elegant FREE Version of Hadoop Window and MADlib functions. Unit 5 Case Studies and Illustrations:IBM BigInsights, BigSheets, and Netezza Customer Intelligence, RainStor Big Data Analytics on Hadoop - The Industry's First Enterprise-Class Database Running Natively on Hadoop, DataStax (Including Coverage of the Free "Community Edition" of DataStax's Cassandra Implementation, with OpsCenter), Microsoft's Big Data Solution,Jigsaw: Visualization for Investigative Analysis and latest state of the art examples.

Course Delivery The course will be delivered through lectures, presentations, classroom discussions, practicals

Text Books 1. Chen, M., Mao, S., Zhang, Y., & Leung, V. C.“Big Data-Related Technologies, Challenges and Future Prospect”s , 2014, Springer (Chapters: 1-6) 2. Lin, J., & Dyer, C. “Data-intensive text processing with MapReduce”,2010, (Chapters: 2and 5) 3. Robert I. Kabacoff, “R in Action”, 2011,(Chapter 2 Pages:21-32) 4. Zumel, N., & Mount, J. “Practical data science with R”, 2014, (Chapters: 5, Pages 81-91 )

Reference Books 1. O. R. Team. Big Data Now: Current Perspectives from O’Reilly Radar. O’Reilly Media, 2011. 2. Adler, Joseph. R in a Nutshell, Second Edition. O’Reilly Media, 2012.

46 Course Assessment and Evaluation Scheme:

When/ Where Contribution To Max Evidence What (Frequency in to Course Whom Marks Collected the course) Outcomes Thrice (Average Internal of the best two Assessment 25 Blue Books 1-5 will be CIE Tests computed) Direct & Lab test Once 25 Data Sheets 1,2,4-5 Indirect Students End of Course Assessment Semester (Answering methods SEE End 100 Answer scripts 1-5 5 of 10 Examination questions) End of Course End of the 1-5, Relevance Questionnaire Survey course of the course

Course Outcomes:

At the end of the course students should be able to: 1. Identify the differences between Big Data and Small Data. 2. Design the programs to analyze big data. 3. Demonstrate the analysis of big data. 4. Analyze the Ontologies, Semantics, Introspection, Data Integration and Measurement techniques of big data. 5. Illustrate the stepwise approach to big data analysis and understand the legalities and societal issues involved.

Mapping course outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the differences between Big Data and Small Data X X X Design the programs to analyze big data. X Demonstrate the analysis of big data. X X Analyze the Ontologies, Semantics, Introspection, Data Integration and Measurement techniques of big data. X

Illustrate the stepwise approach to big data analysis and understand the legalities and societal issues involved. X X

47 Course Title: Information Retrieval Course Code: 16MCSEE07 Credits (L:T:P:SS) : 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours:56

Prerequisites: There are no prerequisites to this course. Course Contents: Unit 1 Introduction: Motivation, Basic concepts, Past, present, and future, the retrieval process. Modeling: Introduction, A taxonomy of information retrieval models, Retrieval: Adhoc and filtering, A formal characterization of IR models, Classic information retrieval, Alternative set theoretic models, Alternative algebraic models, Alternative probabilistic models, Structured text retrieval models, Models for browsing.

Unit 2 Retrieval Evaluation: Introduction, Retrieval performance evaluation, Reference collections. Query Languages: Introduction, keyword-based querying, Pattern matching, Structural queries, Query protocols.

Unit 3 Query Operations: Introduction, User relevance feedback, Automatic local analysis, Automatic global analysis. Text and Multimedia Languages and Properties: Introduction, Metadata, Text, Markup languages, Multimedia.

Unit 4 Text Operations: Introduction, Document preprocessing, Document clustering, Text compression, comparing text compression techniques. Indexing and Searching: Introduction; Inverted Files; Other indices for text; Boolean queries; Sequential searching; Pattern matching; Structural queries; Compression. Parallel and Distributed IR: Introduction, Parallel IR, Distributed IR.

Unit 5 User Interfaces and Visualization: Introduction, Human-Computer interaction, the information access process, Starting pints, Query specification, Context, Using relevance judgments, Interface support for the search process. Searching the Web: Introduction, Challenges, Characterizing the web, Search engines, Browsing, Meta searchers, finding the needle in the haystack, searching using hyperlinks.

Text Book: 1. Ricardo Baeza-Yates, Berthier Ribeiro-Neto: Modern Information Retrieval, 1st edition, Pearson, 2011.

Reference Books: 1. David A. Grossman, Ophir Frieder: Information Retrieval Algorithms and Heuristics, 2nd Edition, Springer, 2009. 2. William B. Frakes, Ricardo Baeza-Yates (Editors): Information Retrieval Data Structures and Algorithms, 1st edition, Prentice Hall PTR, 2009.

Course Delivery: The course will be delivered through lectures, presentations, classroom discussions, and practical implementations. Course Outcomes:

At the end of the course the students should be able to: 1. Distinguish between data and information retrieval systems and explain different classical IR models 2. Assess the performance of information retrieval systems and use different querying languages and protocols. 3. Perform query operations and recognize the use of metadata and markup languages. 4. Explain various text operations, indexing and search techniques, and the basics of parallel and distributed IR. 5. Discuss the concepts of user interfaces for IR applications and web search techniques.

48 Course Title: Introduction to Analytics in Big Data Course Code: 16MCSEE08 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours: 56

Prerequisites: Big Data and Data Science

Course contents: Unit 1 What is Big Data? Classification of Big Data, Introduction to Data Science, Big Data Analytics, Data Analytics Life cycle, Data Filtering and Data Munging, Wrangling and Cleaning, Data Scientist and roles of Data Scientist, Data Source Integration Unit 2 Typical areas of application of Analytics – Text analytics, Image Analytics, Graph Analytics, Business Analytics and Visualization &Visual Data analytics. Methodologies in Analytics in Big Data- Gartner’s Magic Quadrant, Descriptive Analytics, Diagnostic Analytics, Predictive Analytics, Prescriptive Analytics, Inquisitive Analytics and Birt Analytics, Explanation of each with examples Unit 3 Analytics in detail: Part - 1 Descriptive Analytics- Data Aggregation, Datamining, Querying, Reporting, Data visualization, Descriptive statistics-univariate and bivariate, Statistical graphics, Exploratory Data analysis, Reports, Dashboards, KPI- platform;Diagnostic Analytics –Diagnosis,,Attribute importance, Principle components analysis, Sensitivity analysis, and Conjoint analysis

Unit 4 Analytics in detail – Part 2: in-memory analytics: new analytic architecture, in-memory computing, benefits of in-memory analytics, case studies-SAS in-memory analytics, Berkeley Data Anlalytics stack;Predictive Analytics: Predictive analytics components, Basic predictive analytics techniques, Modeling techniques, Predictive analytics tools, challenges, visual analytics and predictive analytics, Case studies;Prescriptive Analytics: Final phase of Business Analytics, Gartner’s description, Scientific descriptions in prescriptive analytics, model optimization algorithms, What needed and what is not needed, Applications

Unit 5

Introduction to Mathematics in analytics: Statistics and business value, Regression, Principal Component Analysis, Time series analysis, Linear Algebra, Mathematical shape, Discrete Optimization, Single Value Decomposition

Reference Books:

1. Jure Leskovec, Anand Rajaraman, Jeffrey D. Ullman, “Mining of Massive Datasets”, Cambridge University Press, 2014. 2. Alberto Cordoba, “Understanding the Predictive Analytics Lifecycle”, Wiley, 2014 3. Eric Siegel, Thomas H. Davenport, “Predictive Analytics: The Power to Predict Who Will Click, Buy, Lie, or Die”, Wiley, 2013 4. James R Evans, “Business Analytics – Methods, Models and Decisions”, Pearson 2013. 5. R. N. Prasad, Seema Acharya, “Fundamentals of Business Analytics”, Wiley, 2015. 6. S M Ross, “Introduction to Probability and Statistics for Engineers and Scientists”, Academic Foundation, 2011.

Course Delivery: The course will be delivered through lectures and presentations.

49 Course Assessment and Evaluation Scheme:

What To whom When/ Where Max Evidence Contributing to (Frequency in the marks collected Course Outcomes course) Internal Thrice(Average of C assessment the best two will 30 Blue books 1, 2,3,4 & 5 I tests be computed) E Once Written Direct Assignments 20 Assignment 1, 2,3,4 & 5 & sheets Indire S End of course ct Standard E Students (Answering 5 of 100 Answer scripts 1, 2,3,4 & 5 Assess examination ment E 10 questions) Metho Questionnaire 1, 2,3,4 & 5 ds Effectiveness of End of course Delivery of End of course - survey instructions & Assessment Methods

Course Outcomes: At the end of the course, the students should be able: 1. To take typical Big Data, filter and wrangle the data 2. To recognize the domain for analysis 3. To identify the type of domain-specific analytics to be deployed 4. To carry out mathematical approach in analytics 5. To be ready as a Data Scientist leading towards suitable job in analytics in industry or to pursue research towards higher degree

Mapping Course Outcomes with programme Outcomes:

Course Outcomes Programme Outcomes

PO1 PO2 PO3 PO4 PO5 PO6

To take typical Big Data, filter and wrangle the data X X To recognize the domain for analysis X X X X To identify the type of domain-specific analytics to be X X X deployed To carry out mathematical approach in analytics X X X X To be ready as a Data Scientist leading towards suitable job X X X X X

50 Course Title: Digital Forensics and Cyber Crime Course Code: 16MCSEE 09 Credits (L:T:P) : 3:0:1 Core/ Elective: Elective Type of Course: Lecture & Practical Total Contact Hours: 70 Hrs

Prerequisites: NIL

Course Contents: Unit 1 Understanding Cyber Crime: Indian IT Act 2008 and amendments, Computer Forensic and Investigations as a Profession, Understanding Computer Forensics. Understanding Computer Investigations: Preparing a Computer Investigation, Taking a Systematic Approach, Procedures for Corporate High-Tech Investigations, Understanding Data Recovery Workstations and Software. UNIT II Working with Windows and DOS Systems: Understanding File Systems, Exploring Microsoft File Structures, Examining NTFS Disks, Understanding Whole Disk Encryption, Understanding the Windows Registry, Understanding Microsoft Startup Tasks, Understanding MS-DOS Startup Tasks, Understanding Virtual Machines. UNIT III Data Acquisition: Understanding Storage Formats for Digital Evidence, Determining the best Acquisition Method, Contingency Planning for Image Acquisitions, Using Acquisition Tools, Validating Data Acquisitions, Using Remote Network Acquisition Tools. Computer Forensics Analysis and Validation: Determining What Data to Collect and Analyze, Validating Forensic Data, Addressing Data-Hiding Techniques, Performing Remote Acquisitions.

UNIT IV Current Computer Forensics Tools: Evaluating Computer Forensic Tool Needs, Computer Forensics Software Tools, Computer Forensics Hardware Tools, Validating and Testing Forensics Software. Recovering Graphics Files: Recognizing a Graphics File, Understanding Data Compression, Locating and Recovering Graphics Files, Identifying Unknown File Formats, Understanding Copyright Issues with Graphics.

UNIT V Network Forensics: Network Forensic Overview, Performing Live Acquisitions, Developing Standard Procedures for Network Forensics, Using Network Tools. E-mail Investigations: Exploring the Role of E-mail in Investigations, Exploring the Roles of the Client and Server in E-mail, Investigating E-mail Crimes and Violations, Understanding E-mail Servers, Using Specialized E-mail Forensics Tools. Laboratory Lab exercises using forensic software and Case study data. Text Books: 1. Nelson, Phillips, Frank, Enfinger and Steuart: Computer Forensics and Investigations, Cengage Learning, 2008. Chapters: 1, 2, 4, 6, 7, 8, 9, 10, 11, 12 Reference Books: 1. Marjie T. Britz: Computer Forensics and Cyber Crime - An Introduction, 2ndEdition, Pearson Education, 2012. 2. Harish Chander: Cyber Laws and IT Protection, PHI, 2012. Course Delivery: The course will be delivered through lectures, presentations, classroom discussions, Laboratory Exercises and case studies. LAB EXERCISES

The following exercises have to be performed using various open source software tools/utilities mentioned.

Software Tools:  CyberCheck 4.0 - Academic Version  CyberCheckSuite  MobileCheck  Network Session Analyser

51  Win-LiFT  TrueImager  TrueTraveller  PhotoExaminer Ver 1.1  CDRAnalyzer

Forensics Exercises:

I) Disk Forensics: 1. Identify digital evidences 2. Acquire the evidence 3. Authenticate the evidence 4. Preserve the evidence 5. Analyze the evidence 6. Report the findings

II) Network Forensics: 1. Intrusion detection 2. Logging (the best way to track down a hacker is to keep vast records of activity on a network with the help of an intrusion detection system) 3. Correlating intrusion detection and logging

References: http://www.cyberforensics.in/default.aspx

Course Assessment & Evaluation:

When/ Where Max Contributio To Evidence What (Frequency in Mar n to Course Whom Collected the course) ks Outcomes Thrice (Average

s Internal

d of the best two

o Assessment 30 Blue Books 1-5

h will be t Tests e CIE computed) t M

c t

e Practical n r Practical Students i e Twice 20 record/ Poster 1-5 D

m Assignment s Presentation s e

s Semester End of Course s

A SEE End (Answering 100 Answer scripts 1-5 Examination 5 of 10 questions)

t Middle of the Feedback 1-3, Delivery

s n

t Mid-Term Survey - e d c course forms of the course o e m r h s i t

s Students d e

e 1-5, n s End of Course I s M End of the course - Questionnaire Relevance of

A Survey the course

Course outcomes: At the end of the course the students should be able to: 1. Recall the Indian IT Act 2008 and its amendments. 2. Classify various types of computer crime. 3. Apply computer forensic techniques to identify the digital fingerprints associated with criminal activities. 4. Analyze hidden information from pictures and other files. 5. Apply Network Forensic tools for network forensic and live data forensic analysis.

52 Mapping Course Outcomes with Programme Outcomes:

Course Outcomes Programme Outcomes 1 2 3 4 5 6 Recall the Indian IT Act 2008 and its amendments. X X

Classify various types of computer crime. X Apply computer forensic techniques to identify the digital X X X X fingerprints associated with criminal activities. Analyze hidden information from pictures and other files. X Apply Network Forensic tools for network forensic and live X X X data forensic analysis.

53 Course Title: Social Network Analysis Course Code: 16MCSEE10 Credits (L:T:P:SS): 3:0:1:0 Core/ Elective: Elective Type of course: Lecture/ Practical Total Contact Hours: 70

Prerequisites: Nil

Course Contents: Unit 1 Social Structure: Sociometry and Sociogram, Exploratory Social Network Analysis, Assembling a Social Network. Attributes and Relations: The World System, Partitions, Reduction of a Network, Vectors and Coordinates, Network Analysis and Statistics.

Unit 2 Cohesive Subgroups: Density and Degree, Components, Cores, Cores. Sentiments and Friendship: Balance Theory, Detecting Structural Balance and Clusterability, Development in Time. Affiliations: Two-Mode and One-Mode Networks, m-Slices, The Third Dimension.

Unit 3 Center and Periphery: Distance, Betweenness. Brokers and Bridges: Bridges and Bi-Components, Ego- Networks and Constraint, Affiliations and Brokerage Roles. Diffusion: Contagion, Exposure and Thresholds, Critical Mass.

Unit 4 Prestige: Popularity and Indegree, Correlation, Domains, Proximity Prestige. Ranking: Triadic Analysis, Acyclic Networks, Symmetric-Acyclic Decomposition, Genealogies and Citations: Genealogy of the Ragusan Nobility, Family Trees, Family Trees, Citations among Papers on Network Centrality, Citations.

Unit 5 Blockmodels: Matrices and Permutation, Roles and Positions: Equivalence, Blockmodeling. Pajek: Creating Network Files for Pajek, Exporting Visualizations.

Text Books:

1. Exploratory social Network Analysis with Pajek, Wouter De Nooy, Andrej Mrvar, Vladimir Batagelj, Cambridge University press, 2005 2. Introduction to social network methods, Hanneman, Robert A. and Mark Riddle. 2005. University of California, Riverside ( published in digital form at http://faculty.ucr.edu/~hanneman/ ) 3. Social Network Analysis for Startups, Maksim Tsvetovat and Alexander Kouznetsov, Oreilly,2011

Course Delivery: The course will be delivered through lectures, software tools in laboratory, class room interaction and exercises.

54 Course Assessment and Evaluation Scheme:

When/ Where Contribution to To Max Evidence What (Frequency in Course Whom Marks Collected the course) Outcomes Thrice(Average Internal of the best two Assessment 30 Blue Books 1 to 7 C will be Tests I computed) E Practical Students Once 20 Report 1 to 4 Assignment Direct & End of Course S Indirect Standard (Answering Answer E 100 1 to 7 Assessment Examination 5 of 10 scripts E methods questions) 1 to 4,Delivery Questionnaire of the course Course End End of the - , Feedback Students Survey Course entries into 1 to 7,Delivery database of the course

Course Outcomes: At the end of the course the student should be able to 1. Describe social structure and attributes of real world scenarios. 2. Analyze the statistical details of different social networks 3. Indicate the cohesive nature of different social networks 4. Estimate the affiliations of social network elements 5. Examine the brokerage properties in social networks 6. Assess ranking of real world social networks 7. Verify the roles of social network elements

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Describe social structure and attributes of real world scenarios. × × × × Analyze the statistical details of different social networks × × × ×

Indicate the cohesive nature of different social networks × ×

Estimate the affiliations of social network elements × ×

Examine the brokerage properties in social networks × × × × Assess ranking of real world social networks × × × × Verify the roles of social network elements × × × ×

55 Course Title: Software Testing Course Code: 16MCSEE11 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of course: Total Contact Hours: 56

Prerequisite: Knowledge of Software Engineering

Course Contents: Unit 1 Basics of Software Testing and Examples: Basic definitions, Test cases, Insights from a Venn diagram, Identifying test cases, Error and fault taxonomies, Levels of testing. Examples: Generalized pseudocode, The triangle problem, The NextDate function, The commission problem, The SATM (Simple Automatic Teller Machine) problem. Decision Table-Based Testing: Decision tables, Test cases for the triangle problem, Test cases for the NextDate function, Test cases for the commission problem, Guidelines and observations. Data Flow Testing: Definition-Use testing, Slice-based testing, Guidelines and observations.

Unit 2 Levels of Testing: Traditional view of testing levels, Alternative life-cycle models, The SATM system, Separating integration and system testing. Integration Testing: A closer look at the SATM system, Decomposition-based, call graph-based, Path-based integrations, Case study. System Testing: Threads, Basic concepts for requirements specification, Finding threads, Structural strategies and functional strategies for thread testing, SATM test threads, System testing guidelines, ASF (Atomic System Functions) testing example.

Unit 3 Interaction Testing: Context of interaction, A taxonomy of interactions, Interaction, composition, and determinism, Client/Server Testing. Issues in Object-Oriented Testing: Units for object-oriented testing, Implications of composition and encapsulation, inheritance, and polymorphism, Levels of object-oriented testing, GUI testing, Dataflow testing for object-oriented software, Examples. Class Testing: Methods as units, Classes as units.

Unit 4 Object-Oriented Integration Testing: UML support for integration testing, MM-paths for object-oriented software, A framework for object-oriented dataflow integration testing. GUI Testing: The currency conversion program, Unit testing, Integration Testing and System testing for the currency conversion program. Object-Oriented System Testing: Currency converter UML description, UML- based system testing, State chart-based system testing. Exploratory Testing: The context-driven school, Exploring exploratory testing, Exploring a familiar example, Exploratory and context-driven testing observations.

Unit 5 Model-Based Testing: Testing based on models, Appropriate models, Use case-based testing, Commercial tool support for model-based testing. Test-Driven Development: Test-then-code cycles, Automated test execution, Java and JUnit example, Remaining questions, Pros, cons, and open questions of TDD, Retrospective on MDD versus TDD. A Closer Look at All Pairs Testing: The all-pairs technique, A closer look at NIST study, Appropriate applications for all pairs testing, Recommendations for all pairs testing. Software Testing Excellence: Craftsmanship, Best practice of software testing, Top 10 best practices for software testing excellence, Mapping best practices to diverse projects. Text Book: 1. Paul C. Jorgensen: Software Testing, A Craftsman’s Approach, 3rd Edition, Auerbach Publications, 2012.

Reference Books: 1. Aditya P Mathur: Foundations of Software Testing, Pearson, 2008. 2. Mauro Pezze, Michal Young: Software Testing and Analysis – Process, Principles and Techniques, 1st edition, John Wiley & Sons, 2011. 3. Srinivasan Desikan, Gopalaswamy Ramesh: Software testing Principles and Practices, 1st Edition, Pearson, 2012. 4. Brian Marrick: The Craft of Software Testing, 1st edition, Pearson, 2012.

56 Course Delivery: The course is delivered through lectures, PPTs and assignment

Course Outcome:

At the end of the course the student should be able to: 1. Identify the suitable capabilities to use a range of software tools. 2. Identify the principal issues associated with software evolution 3. Explain the impact on the software life cycle by different testing tools 4. Implement the process of regression testing and its role in release management.

57 Course Title: Service Oriented Architecture Course Code: 16MCSEE12 Credits (L:T:P:SS): 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours: 56

Prerequisites: Internet Technology

Course Contents: Unit 1 Introduction to SOA, Evolution of SOA: Fundamental SOA; Common Characteristics of contemporary SOA; Common tangible benefits of SOA; An SOA timeline (from XML to Web services to SOA); The continuing evolution of SOA (Standards organizations and Contributing vendors); The roots of SOA (comparing SOA to Past architectures). Web Services and Primitive SOA: The Web services framework; services (as Web services); Service descriptions (with WSDL); Messaging (with SOAP).

Unit 2 Web Services and Contemporary SOA: Message exchange patterns; Service activity; Coordination; Atomic Transactions; Business activities; Orchestration; Choreography. Addressing; Reliable messaging; Correlation; Polices; Metadata exchange; Security; Notification and eventing.

Unit 3 Principles of Service – Orientation: Services-orientation and the enterprise; Anatomy of a service-oriented architecture; Common Principles of Service-orientation; How service orientation principles inter relate; Service- orientation and object-orientation; Native Web service support for service- orientation principles

Unit 4 Service Layers: Service-orientation and contemporary SOA; Service layer abstraction; Application service layer, Business service layer, Orchestration service layer; Agnostic services; Service layer configuration scenarios. Business Process Design: WS-BPEL language basics; WS-Coordination overview; Service-oriented business process design; WS-addressing language basics; WS-Reliable Messaging language basics

Unit 5 SOA Platforms: SOA platform basics; SOA support in J2EE; SOA support in .NET; Integration considerations

Text Book 1. Thomas Erl: Service-Oriented Architecture – Concepts, Technology, and Design, Pearson Education, 2005 Reference Book 2. Eric Newcomer, Greg Lomow: Understanding SOA with Web Services, Pearson education, 2005

Course Delivery: The course will be delivered through lectures, presentations and classroom discussions.

Course Outcomes: At the end of the course students should be able to:

1. Summarize Web Service and Service oriented Architecture. 2. Illustrate the principles of contemporary SOA and web service. 3. Appraise the principles the layers of Service Oriented Architecture. 4. Estimate the service oriented principles 5. Distinguish SOA support in J2EE and SOA support in .NET focusing on platform overview.

58 Course Title: Natural Language Processing Course Code: 16MCSEE 13 Credits (L:T:P) : 4:0:0 Core/ Elective: Elective Type of Course: Lecture Total Contact Hours: 56 Hrs

Prerequisites: NIL

Course Contents: Unit-I Introduction: Knowledge in Speech and Language Processing, Ambiguity, Models and Algorithms; Language, Thought, and Understanding; The State of the Art and The Near-Term Future; Regular Expressions and Automata; Morphology and Finite-State Transducers: Lexicon-free FSTs: The Porter Stemmer, Human Morphological Processing. Unit-II N-grams: Counting Words in Corpora, Smoothing, N-grams for Spelling and Pronunciation, Entropy; Word Classes and Part-of-Speech Tagging: Part-of-Speech Tagging , Rule-based Part-of-speech Tagging, Stochastic Part-of-speech Tagging, Transformation-Based Tagging; Context-Free Grammars for English: Constituency, Context-Free Rules and Trees, Sentence-Level Constructions, The Noun Phrase. Unit-III Parsing with Context-Free Grammars: The Earley Algorithm; Features and Unification: Feature Structures, Unification of Feature Structures, Features Structures in the Grammar, Implementing Unification, Parsing with Unification Constraints; Lexicalized and Probabilistic Parsing: Probabilistic Context-Free Grammars, Problems with PCFGs. Unit-IV Representing Meaning: First Order Predicate Calculus, Some Linguistically Relevant Concepts, Related Representational Approaches, Alternative Approaches to Meaning; Semantic Analysis : Syntax-Driven Semantic Analysis, Attachments for a Fragment of English; Lexical Semantics : Relations Among Lexemes and Their Senses, WordNet: A Database of Lexical Relations, The Internal Structure of Words. Unit-V Discourse: Reference Resolution, Text Coherence, Discourse Structure; Generation: Introduction to Language Generation, An Architecture for Generation; Machine Translation: Language Similarities and Differences, The Transfer Metaphor.

TEXT BOOK 1. Daniel Jurafsky and James H Martin, ”Speech and Language Processing: An introduction to Natural Language Processing, Computational Linguistics and Speech Recognition”, Prentice Hall, 2nd Edition, 2008.

REFERENCE 1. Tanveer Siddiqui, U.S. Tiwary, “Natural Language Processing and Information Retrieval”, Oxford University Press, 2008.

Course Delivery: The course will be delivered through lectures and presentations.

59 Course Assessment and Evaluation Scheme:

What To whom When/ Where Max Evidence Contributing to (Frequency in the marks collected Course Outcomes course) Internal Thrice(Average of C assessment the best two will 30 Blue books 1, 2,3,4 & 5 I tests be computed) E Once Written Direct Assignments 20 Assignment 1, 2,3,4 & 5 & sheets Indire S End of course ct Standard E Students (Answering 5 of 100 Answer scripts 1, 2,3,4 & 5 Assess examination ment E 10 questions) Metho Questionnaire 1, 2,3,4 & 5 ds Effectiveness of End of course Delivery of End of course - survey instructions & Assessment Methods

Course Outcomes

At the end of the course, the students should be able to: 1. Interpret how speech and language technology relies on formal models to capture knowledge, and language processing deals with subparts of words (morphology). 2. Illustrate the way N-gram tool is used for spelling and pronunciation processing, and part-of-speech tagging mechanism using various categories. 3. Describe feature structures and unification operation which is used to combine them, and probabilistic parsing to capture more syntactic information. 4. Outline representations used to bridge the gap from language to commonsense Knowledge (semantic processing), and meanings associated with lexical items. 5. Emphasize problems that NLP systems face, natural language outputs construction from non-linguistic inputs and machine translation framework approaches.

Mapping Course Outcomes with Programme Outcomes:

Course Outcomes Programme Outcomes 1 2 3 4 5 6 Interpret how speech and language technology relies on X X formal models to capture knowledge Illustrate the way N-gram tool is used for spelling and X X X pronunciation processing Describe feature structures and unification operation which X X X is used to combine them Outline representations used to bridge the gap from X X language to commonsense Knowledge (semantic processing)

Emphasize problems that NLP systems face X X X X X

60 Course Title: Soft Computing Course Code: 16MCSEE14 Credits (L:T:P:SS) : 4:0:0:0 Core/ Elective: Elective Type of course: Lecture Total Contact Hours: 56

Prerequisite: Nil

Course Contents: Unit 1 Introduction: Neural networks, Fuzzy logic, Genetic algorithms, Hybrid systems, Artificial Neural Networks: Fundamental concept, Evolution, Basic model of ANN, Important terminologies of ANN, MP neuron, Hebb Network. Unit 2 Supervised Learning Network: Perceptron Networks, Adaptive linear neuron, multiple adaptive linear neurons, Back propagation Network. Unit 3 Introduction to Fuzzy logic, classical sets and fuzzy sets: Classical sets, Fuzzy sets. Classical relations and fuzzy relations: Cartesian product of relation, Classical relation, Fuzzy relations, Tolerance and equivalence relations. Membership functions: Features, Fuzzification, methods of membership value assignments.

Unit 4 Defuzzification: Lambda-cuts for fuzzy sets, Lambda-cuts for fuzzy relations, Defuzzification methods. Fuzzy decision making: Individual, multiperson, multiobjective, multiattibute, and fuzzy Bayesian decision making. Unit 5 Genetic algorithms: Introduction, Basic operations, Traditional algorithms, Simple GA, General genetic algorithms, The schema theorem, Genetic programming, applications.

Text book: 1. Principles of Soft computing, S N Sivanandam, Deepa S. N, Wiley, India, (Chapters 1, 2, 3(Up to 3.5), 7, 8, 9, 10, 13, 15 ( up to 15.6 & 15.9,15,10). Reference Book: 1. Neuro-fuzzy and soft computing, J.S.R. JANG, C.T. SUN, E. MIZUTANI, PHI (EEE edition) ISBN: 978-81-203-2243-1

Course Outcomes:

At the end of the course the student should be able to 1. Identify and describe soft computing techniques and their roles in building intelligent machines 2. Identify the components and building block hypothesis of Genetic algorithm 3. Examine the features of neural network and its applications. 4. Design Genetic algorithm to solve optimization problem. 5. Describe Neuro Fuzzy system for clustering and classification. 6. Recognize the feasibility of applying a soft computing methodology for a particular problem

61 Course Title: Future Skills 2020 Course Code: 16MCSE31 Credits (L:T:P:SS): 0:1:1:0 Core/ Elective: Core Type of course: Tutorial and Lab Total Contact Hours: 56

Prerequisites: Nil

Course Contents:

Unit 1 Introduction: Current industry overview, Future Skills 2020 research report from IFTF. Sensemaking: Introduction, VUCA ( Volatility, Uncertainty, Complexity and Ambiguity).What is Sense Making? How Sense Making Helps? Steps in sense making, How to do effective sense making? Hurdles in effective sense making. Assignment: A short 1 hour assignment where students will be posed with a situation to exercise their Sense Making ability. It will be assessed at the end of the session.

Unit 2 Virtual Collaboration(VC): Introduction, How VC helps? Characteristics of Virtual Collaboration, Types of Virtual Collaboration. Advantages, Disadvantages and Applications of VC. Assignment: The students will be given an assignment applying both the sensemaking skills and Virtual Collaboration skills using the cloud based tools to complete a specific task. This assignment will also cover working in a team using virtual collaboration tools. In order to focus on learning of the specified skills, the end task is kept small and achievable in short time frame.

Unit 3 Social Intelligence: Introduction, Hypothesis, Measuring Social Intelligence, Difference between intelligence and Social Intelligence, Derive some of the study done in Social networking theory. Assignment: The assignment will focus on students using their social network to accomplish a specific task.

Unit 4 Crosscultural competency: Introduction, Importance of cross cultural competence in workplace. Nuances of cross cultural differences, Examples to demonstrate the differences. Assignment: Students will have to work with a team member from another culture to complete a specific task.

Unit 5 Cognitive Load management: Introduction, Current situation of information overload, Tools and techniques to handle the cognitive load. Importance of these skills in work place. Assignment: Students will be given a specific topic and time to quickly arrive at a good summary of the topic. They will be given access to internet and books to refer. Importance is given to how quickly they can gather, curate and present the summary of the topic.

References:

1. The detailed report can be found at http://www.iftf.org/uploads/media/SR1382A_UPRI_future_work_skills_sm.pdf 2. The reading material for individual lectures will be shared with the students using TutorSpace.

Course Delivery: The course will be delivered through lectures, software tools in laboratory, class room interaction, group discussion, exercises and self study cases.

62 Course Assessment and Evaluation Scheme:

When/ Where Max Evidence Contribution to What To Whom (Frequency in the Marks Collected Course Outcomes course)

C I At the end of each Assignment Direct E Students 50 1,2 ,3,4 & 5 & unit scripts Indirec t Assess ment 1,2,3,4 & 5 method Effectiveness of End of Course Delivery of Students End of the course - Questionnaire s Survey instructions & Assessment Methods

Course Outcomes: At the end of the course the student is able to understand 1. Identify the Future Work skills needed for next 5 years. 2. Illustrate sense Making Skills through assignments. 3. Survey the different Virtual Collaboration skills to complete an assignment. 4. Describe the social intelligence skill and application of the same. 5. Compose an assignment using Cross-cultural competence and load management skills.

Mapping Course Outcomes with Programme Outcomes:

Programme Outcomes Course Outcomes PO1 PO2 PO3 PO4 PO5 PO6 Identify the Future Work skills needed for x x x x x x next 5 years. Illustrate sense Making Skills through x x x x assignments. Survey the different Virtual Collaboration x x x skills to complete an assignment. Describe the social intelligence skill and x x x x x x application of the same. Compose an assignment using Cross- cultural competence and load management x x x x skills.

63 Course Title: Internship Course Code: 15MCNE32 Credits (L:T:P:SS): 0:0:8:0 Core/ Elective: Core Type of course: Practical Total Contact Hours:-

Industrial Training is used as course delivery mode to encourage students to gather current trends in Industry and the usage of newer technology in any of the reputed Industries. In this way the student is able to gather the knowledge of working environment at the Industry during his/her Course.

At the end of the Industrial Training the Student is required to prepare a presentation on the training at the Industry and present the same in front of the committee constituted at the Department.

He will be then accessed on the new technology Learnt, the documentation skills of the same, exposure and demonstration of any Tools and Techniques Learnt and his presentation Skills.

 Rubrics for assessment of Internship in given in Table 3 of Annexure

64 Course Title: Project Phase I Course Code: 16MCSE34 Credits (L:T:P:SS) : 0:0:6:0 Core/ Elective: Core Type of Course: Practical Total Contact Hours: -

 Project can be done in-house or externally in any reputed industry/institution.  Students are instructed to meet their Guides at the department every week.

 The project guides are responsible for approving the progress of their respective wards.  In case the project guide requires a committee to approve their status of the work, he/she can convey the same to the project coordinator at regular intervals. An expert committee will be then formed to review the work on request from the project guide. The committee will finalize the work by end of the semester.  Students are required to maintain a project diary wherein all the student-guide meetings must be recorded.

Component Timeline Assessment Project phase-I After 8weeks of ---- Evaluation I commencement of 3rd semester Project phase-I End of III Interim Progress Evaluation II semester Assessment

Guidelines for External Projects  The company/organization has to give an acceptance letter permitting the students to carry out their project work in their premises prior to the conduction (Third Semester, Project Phase I).  Students are free to carry out their project work in the Company premises, but should meet their guides at the department every week for updates.  Demonstration of the project is a must at the College during the final Viva Voce.  A project guide (external guide) shall be allotted by the company/organization for supervising the progress of the project work (Third Semester Project Phase I).  An internal guide will be allotted by the department for every external project also. In consultation with the external guide, the internal guide must be permitted to oversee the progress of the project work at the company premises at suitable times.

 Students carrying out external projects will have to submit synopsis / functional specification of the project work duly signed by the external guide before the deadline (Third Semester Project Phase I).

* Rubrics for assessment of student performance in Project phase I is given in table 4 of Annexure

65 Course Title: Project Phase II Course Code: 16MCSE41 Credits (L:T:P:SS) : 0:0:24:0 Core/ Elective: Core Type of Course: Practical Total Contact Hours: -

 Project can be done in-house or externally in any reputed industry/institution.  Students are instructed to meet their Guides at the department every week.

 The project guides are responsible for approving the progress of their respective wards.  In case the project guide requires a committee to approve their status of the work, he/she can convey the same to the project coordinator at regular intervals. An expert committee will be then formed to review the work on request from the project guide. The committee will finalize the work by end of the semester.  Students are required to maintain a project diary wherein all the student-guide meetings must be recorded.

Component Timeline Assessment Project phase- Mid of 4th semester Design II -8th week Development and Evaluation-1 Solution Project phase- End of 4th semester Written Report II -13th week Final Presentation Evaluation-2

 The Project Phase II will be reviewed in two stages. a. Project Phase II- Evaluation-I: to be done after six (6) weeks from the start of the semester. The evaluation should be done by the guide and two co-examiners. The students are required to submit the work on the System Design, Detailed Design and further course of action of their work. b. Project Phase II- Evaluation-II: The same team that conducted the Evaluation-I must do the Evaluation- II after twelve (12) weeks from the start of the semester. Students must complete the implementation and testing by this time. They are required to demonstrate the implementation, testing & results. All projects must be demonstrated at the CSE Department. c. The faculty should also visit the Industry (in case it is an external project) to interact with the mentors so as to monitor the progress of their respective students. d. A draft version of the complete project report must also be submitted at the end of twelve (12) weeks.  Rubrics for assessment of student performance in Project phase II is given in table 5 of Annexure  Interim Progress Assessment Rubric for Project Phase-II Evaluation is given in table 6 of Annexure  Design Development and Solution Asset Rubric for Project Phase-II Evaluation is given in table 7 of Annexure  Written Report Rubric for Project Phase-II Evaluation is given in table 8 of Annexure  Final Presentation Rubric for Project Phase-II Evaluation is given in table 9 of Annexure

66 M. S. Ramaiah Institute of Technology (Autonomous Institute, Affiliated to VTU) BANGALORE-560054

Department of Computer Science & Engineering

Guidelines for M.Tech (CSE) Project Phase I and II

Course Details Subject Code /Name: 16MCSE34/ Project Phase 1 Credits: 06 Subject Code/ Name: 16MCSE41/Project Phase-2 Credits: 24

Max CIE marks: 100 Max SEE marks: 100

 Project can be done in-house or externally in any reputed industry/institution.  Students are instructed to meet their Guides at the department every week.

Component Timeline Assessment Project phase-I After 8weeks of ---- Evaluation I commencement of 3rd semester Project phase-I End of III Interim Progress Evaluation II semester Assessment Project phase- Mid of 4th semester Design II -8th week Development and Evaluation-1 Solution Project phase- End of 4th semester Written Report II -13th week Final Presentation Evaluation-2 Guidelines for External Projects  The company/organization has to give an acceptance letter permitting the students to carry out their project work in their premises prior to the conduction (Third Semester, Project Phase I).  Students are free to carry out their project work in the Company premises, but should meet their guides at the department every week for updates.  Demonstration of the project is a must at the College during the final Viva Voce.  A project guide (external guide) shall be allotted by the company/organization for supervising the progress of the project work (Third Semester Project Phase I).  An internal guide will be allotted by the department for every external project also. In consultation with the external guide, the internal guide must be permitted to oversee the progress of the project work at the company premises at suitable times.

 Students carrying out external projects will have to submit synopsis / functional specification of the project work duly signed by the external guide before the deadline (Third Semester Project Phase I).  The project guides are responsible for approving the progress of their respective wards.  In case the project guide requires a committee to approve their status of the work, he/she can convey the same to the project coordinator at regular intervals. An expert committee will be then formed to review the work on request from the project guide. The committee will finalize the work by end of the semester.

 Students are required to maintain a project diary wherein all the student-guide meetings must be recorded.

 The Project Phase II will be reviewed in two stages. 67 a. Project Phase II- Evaluation-I: to be done after six (6) weeks from the start of the semester. The evaluation should be done by the guide and two co-examiners. The students are required to submit the work on the System Design, Detailed Design and further course of action of their work. b. Project Phase II- Evaluation-II: The same team that conducted the Evaluation-I must do the Evaluation- II after twelve (12) weeks from the start of the semester. Students must complete the implementation and testing by this time. They are required to demonstrate the implementation, testing & results. All projects must be demonstrated at the CSE Department. c. The faculty should also visit the Industry (in case it is an external project) to interact with the mentors so as to monitor the progress of their respective students. d. A draft version of the complete project report must also be submitted at the end of twelve (12) weeks.

 The CIE marks will be cumulative sum of the two evaluations done (40:60) for a total of 100 marks.

 The student should prepare a consolidated report in IEEE Format and should submit it for possible publication in National/International Conferences/Journals before the submission of the Thesis

 A final project viva-voce will be conducted at the end of the semester (SEE) with an internal examiner and an external examiner.

Typical Project Activities and Timelines:

The project activities includes 1. Deciding the project subject area (Third Semester Project Phase I). 2. Establishing relevance and importance of the project (Third Semester Project Phase I). 3. Identifying requirements (Third Semester Project Phase I). 4. Feasibility study and freezing of project scope/objectives (Third Semester Project Phase I). 5. General design inputs: requirements analysis (Third Semester Project Phase I). 6. System and subsystem level design: design(Fourth Semester Project Phase II) 7. Convert all designs into programs: implementation(Fourth Semester Project Phase II) 8. Performance evaluation at system/subsystem level testing (Fourth Semester Project Phase II) 9. Documentation of all above activities into a project report (Third Semester Project Phase I & Fourth Semester Project Phase II)

Suggested Timelines for Activities and Deliverables:

1. Start time + 6 weeks Write very clearly scope/objective set for the project. The objectives must reflect as to what exactly is proposed to implement. Freeze the title and scope/ objectives and this will not change under normal situation. System design: Understand the overall system functioning, identify and draw a system level block schematic identifying all identified subsystems and their input/output need. Prepare a list of hardware systems, computing and network environment. Similarly identify the software – operating systems, application software, case tools, simulators, databases, etc. Highlight what is already available and what will be newly created or required for the project. Deliverable: System design document

2. Start time + 8 weeks Detailed Design: Design from the conceptual level block schematic, a detailed architectural layout, indicate every subsystem and within that identify input/output and design for every small entity. Draw functional block schematics, data flow diagrams for every small entity and subsystem. Formulate a test plan: list the test data at the inputs, type of tests to be performed during development and making of subsystems, and tests required during runtime or execution. Deliverable: Detailed design document

68 3. Start time + 10 weeks Write the algorithms, the pseudo code for every function call, the subroutines and the recursions. Implement the design; execute the programs step by step for each module. Debug, evaluate the performance and validate the design. Integrate all modules/subsystems to realize the over system. Perform all system level tests, evaluate the results and compare the project scope/objects and the requirements. Deliverable: Implementation and testing document, demo of working code

4. Start time + 13 weeks Complete all documentation and make the project report ready for submission. Deliverable: Complete project report

The Students need to also consolidate their work into an IEEE and publish the same in a reputed Journal or an International Conference.

At the end of the 13th week, The PG students can attend the Best Project Selection Process which will be conducted at the department of Computer Science and Engineering, MSRIT.

The Criteria for the same would be Quality of the Project, Its relevance to the present technology, Research contribution, relevant papers published, etc.

One Project will be selected from the Batch as the Best Project.

GUIDELINES FOR THE PREPARATION OF PG IV Semester (Project Phase- II) PROJECT REPORTS:

1. Project reports should be typed neatly only on one side of the paper with 1.5 or double line spacing on a A4 size paper. The margins should be: Left - 1.25", Right - 1", Top and Bottom -0.75". 2. The total number of reports to be prepared is 5 (4+1)  Four (4) Copies to be submitted to the department  One (1) copy to the student. 3. Before taking the final printout, the approval of the concerned guide(s) is mandatory and suggested corrections, if any, must be incorporated. 4. The organization of the report should be as follows  Inner title page  Certificate from the guide and department  Declaration by candidate  Abstract or Synopsis  Acknowledgments  Table of Contents  List of table & figures (optional) All the above pages Starting from abstract must be numbered in roman ( i, ii, iii, iv, v, …)  Chapters ( page numbers in Arabic i.e. 1, 2, 3) o Main body of the report divided appropriately into chapters, sections and subsections.  References or bibliography 5. Numbering : The chapters, sections and subsections may be numbered in the decimal form for e.g. Chapter 2, sections as 2.1, 2.2 etc., and subsections as 2.2.3, 2.5.1 etc.

69 6. Fonts sizes: a. The chapter number must be left or right justified (font size 16). b. Followed by the title of chapter centered (font size 18), c. Section/subsection numbers along with their headings must be left justified with i. Section number and its heading in font size 16 ii. Subsection and its heading in font size 14. iii. The body or the text of the report should have font size 12. 7. The figures and tables must be numbered chapter wise for e.g.: Fig. 2.1 Block diagram of a serial binary adder, Table 3.1 Primitive flow table, etc. Figure captions must be placed below the figure and centred. Table captions must be above the table and centred. 8. Reference or Bibliography: The references should be numbered serially in the order of their occurrence in the text and their numbers should be indicated within square brackets for e.g. [3]. The section on references should list them in serial order in the following format. For textbooks – [1] A.V. Oppenheim and R.W. Schafer, Digital Signal Processing, Englewood, N.J., Prentice Hall, 3 Edition, 1975. For papers – [2] Devid, Insulation design to combat pollution problem, Proc of IEEE, PAS, Vol 71, Aug 1981, pp 1901- 1907.Bibliography need not be numbered and need not be cited. 9. Only SI units are to be used in the report. Important equations must be numbered in decimal form for e.g. V = IR ...... (3.2) All equation numbers should be right justified 10. The project report should be clearly written and include descriptions of work carried out by others only to the minimum extent necessary. Verbatim reproduction of material available elsewhere should be strictly avoided. If short excerpts from published work are desired to be included, they should be within quotation marks and appropriately referenced. 11. Proper attention is to be paid not only to the technical contents but also to the organization and clarity of the report. Due care should be taken to avoid spelling and typing errors. The student should note that report-write-up forms the important component in the overall evaluation of the project. 12. The color of the cover page for Computer Science PG projects is CREAM.

70 Annexure Table 1 Rubrics for Assessment of Student Performance in Laboratory: Trait Barely Acceptable Basic Good Very Good

Specifications The program is The program The program works The program producing incorrect produces correct and produces the works and results. results but does not correct results and meets all of display them displays them the correctly. correctly. It also meets specifications. most of the other specifications.

Readability The code is poorly The code is The code is fairly easy The code is organized and very readable only by to read. exceptionally difficult to read. someone who well organized knows what it is and very easy supposed to be to follow. doing.

Reusability The code is not Some parts of the Most of the code The code organized for code could be could be reused in could be reusability. reused in other other programs. reused as a programs. whole or each routine could be reused.

Documentation The documentation The documentation The documentation The is simply comments is simply consists of embedded documentation embedded in the comments comment and some is well written code and does not embedded in the simple header and clearly help the reader code with some documentation that is explains what understand the simple header somewhat useful in the code is code. comments understanding the accomplishing separating code. and how. routines.

Delivery The code was more The code was The program was The program than 2 weeks within 2 weeks of delivered within a was delivered overdue. the due date. week of the due date. on time.

Efficiency The code is huge The code is brute The code is fairly The code is and appears to be force and efficient without extremely patched together. unnecessarily long. sacrificing readability efficient and understanding. without sacrificing readability and understanding.

71 Table 2 Rubrics for assessment of Seminar

Criteria Distinguished Good Basic Unacceptable Score (5) (4) (3) (1)

Organization - Extremely - Generally - Somewhat - Poorly well organized. well organized. organize organized. d -Introduces the -Introduces purpose of the -Introduces the the purpose -Does not presentation purpose of the of the clearly clearly and presentation presentation introduce the creatively. clearly. purpose of the -Includes presentation -Effectively -Includes some includes transitions to transitions -Uses smooth, clever connect key to connect ineffective transitions points and key points transitions that which are better but there is succinct but not transitions difficulty in rarely connect broken up in from idea to following points; cannot order to idea are noted. presentation understand connect key - Most . presentation points information because there -Student presented is in - Student is no sequence presents logical jumps of information. information in sequence; around - Presentation logical, topics. is broken and interesting A few minor Several disjointed; no sequence which points may be points are apparent audience can confusing confusing. logical order follow. -Ends with a -Ends with of -Ends with an summary of a summary presentation- accurate main points or Ends without a conclusion showing some conclusion; summary or showing evaluation of little conclusion. thoughtful, the evidence evidence of strong presented. evaluating evaluation of content the evidence based on presented. Evidence.

Content: -Speaker -For the most - -No reference Depth and provides an part, Explanation is made to Accuracy accurate and explanations s of literature or complete of concepts concepts theory. explanation of and theories and/or Presentation is

72 key concepts are accurate theories are not clear; and theories, and complete. inaccurate information drawing upon Some helpful or that does not relevant applications of incomplete. support literature. theory are Little presentation in Applications of included. attempt is any way is theory are made to tie unnecessarily included to -Presents in theory. included. illuminate evidence of There is a issues. valid research great deal -Presents little on the selected of or no evidence -Provides topic, with information of valid evidence of multiple that is not research on the extensive sources. connected selected topic. to the and valid -Combines -Shows little current research on the existing ideas evidence of the presentation selected topic, to form combination of . with multiple ideas. new insights. -Presents and varied -Information evidence of sources. -No significant included is research on errors are sufficiently the selected -Combines and made; a few inaccurate that topic, with evaluates inconsistencies indicates sources. existing or errors in absence of information. accurate ideas to form -Combines information. new insights. -Level of existing presentation is ideas. -Presentation -Information generally consistently is completely -Few errors appropriate. too elementary accurate; all are made to or too names and facts distract a sophisticated were precise knowledgea for the and explicit ble listener, audience. -Level of but some presentation is information appropriate for is accurate. the audience. -Portions of presentation are too elementary or too sophisticate d for audience.

Creativity -Uses the -Some -Little or no - Bland and unexpected to originality variation; a predictable. full advantage; apparent; few original Repetitive

73 very original, clever at times; touches but with little or clever, and good variety for the most no variety; creative and blending part little creative approach that of material energy used. captures materials/medi presented audience's a. with little attention. originality or interpretatio n.

Use of -Graphics -While - occasional --Student uses Communica designed graphics relate use of superfluous tion Aids reinforce and aid graphics graphics, no presentation presentation, that rarely graphics, or and maximize media are not support graphics that audience as varied and presentation are so poorly understanding; not as well ; visual aids prepared that use of media is connected to were not they detract varied and the useful or from the appropriate presentation. clear, time presentation. with media not wasting use being added of simply for the multimedia; sake of use.

Use of -Poised, clear -Clear -Audience -Student is Language articulation; articulation but occasionall anxious and proper volume; not as y has cannot be steady rate; polished; trouble heard or enthusiasm; slightly hearing the monotone with confidence; uncomfortable presentation little or no speaker is at times Most ; seems expression.- clearly can hear uncomforta Presentation comfortable in presentation.- ble.- has four or front of the Presentation Presentation more spelling group. - has no more has three errors and/or Presentation than two misspelling grammatical has no misspellings s and/or errors. misspellings or and/or grammatica grammatical grammatical l errors. errors. errors

Eye Contact -Maintains eye - Student -Some eye -Student reads contact; seldom maintains eye contact, but all or most of returning to contact most not slides with no notes; of the time but eye contact. presentation is frequently Maintained like a planned returns to and at least conversation. slides. half the time reads

74 most of slides.

Viva Voce -Demonstrates -Demonstrates - -Demonstrates extensive knowledge of Demonstrat incomplete knowledge of the topic by es some the topic by responding knowledge knowledge of responding accurately and of the topic by confidently, rudimentary responding precisely and Appropriately questions inaccurately appropriately to addressing by and all audience questions . At responding ease with questions. accurately Inappropriatel answers to all y to questions. questions but to fails to questions. elaborate.

Report Document is Document has Document Document has fully compliant high degree of has low minimal With required compliance degree of degree of rules and with required compliance compliance structure. rules and with with required structure. required rules and Document uses rules and structure highly Document uses structure appropriate appropriate Document language and language Document contains style. specific to the uses mostly inappropriate discipline appropriate language or language many spelling and /grammatical contains errors occasional spelling / grammatica l errors

Regularity Reports to Reports to Does not Has not met guide regularly guide often for report to the guide at for seminar seminar guide for all. discussion discussion seminar discussion

Overall Excellent Good Average Poor Presentation

75 Table 3 Rubrics for assessment of Internship Deliverables for Student Performance in Internship:

Internship Title: ______

Company Name: ______

Name of Student: ______

Name of Supervisor at Company: ______

Name of Supervisor at College: ______

Each supervisor must fill a rubric for each student:

Basic Good Very Good Total

(0-4 Pts) (5-7 Pts) (10 Pts) Possible Earned

Tools and new Few sources at Multiple sources Multiple sources 10 Technology the Industry, of high quality, of high quality, Learnt aware of quality good judgment of well researched of resources the information, and analyzed, and relevance identification of continuous to tools and gaps in efforts at Techniques at knowledge at the acquiring hand Industry and Information. Academics. Identification of the application of the tools and Technology learnt to the

present market.

Relevance of the Fairly Relevant Moderately Highly Relevant 10 topic chosen to Relevant the current market

76 Report Writing Reasonably Sound Excellent 10 good organization and organization, no organization structure, clear, technical or and lacks clarity very few errors, grammar errors, in few topics, complete, concise and complete, few reasonably good precise, omissions, style complete

grammatically documentation correct, lacks style

Demonstration Moderately be Efficiently be able Excellent 10 of the Tools able to to demonstrate demonstration of Learnt demonstrate the skills learnt the tools and the tools learnt and be able to techniques learnt at the Industry propose an and be able to application for the apply it to any same. simple case study.

Presentation Reasonably Good , Excellent 10 and viva voce good professional professional and communication communication, technical and good visual aids, communication, presentation, able to give effective able to give technical answers presentations, technical able to analyze answers to technically and some extent clarify views in viva-voce

77 Table 4

Rubrics for assessment of student performance in Project phase I

Level of achievement

Sl Excellent Good (4) Average Acceptable Unacceptable Score No (5) (3) (2) (1)

Identificat Purpose Purpose Purpose Purpose Purpose and ion of and need and need and need and need of need of the Problem of the of the of the the Project Project is not 1 Domain project is project is Project is is at all and very well explained moderate satisfactoril explained Detailed explained well. ly y explained Analysis . explained

Study of Existing Existing Existing Existing Existing the systems systems systems systems are systems are are very are well are satisfactoril not studied. Existing well studied. moderate y studied. Documents of Systems / studied. ly Documen studied. Documents very poor Literature Documen ts of of standards, Survey 2 ts of high good Documen satisfactory online standards standards ts of resources and like IEEE like average standards, books are papers, internatio standards online studied. reputed nal , online resources online journal/c resources and books resources onference and are studied and papers, books are books are good studied. studied. online resources and books are studied.

Objectives All All Most of Only few Objectives of objective objective the objectives the proposed 3 of the s of the s of the objective of the work are proposed proposed s of the proposed Proposed either not

78 Work work are work are proposed work are defined very well well work are well properly. defined. defined. well defined defined.

Design Steps to Steps to Steps are Steps to be Steps to be be be mentione followed to followed to 4 Methodolo followed Followed d but are solve the solve the gy to solve to solve unclear; defined defined the the without problem problem are defined defined justificati are not not at all problem problem on to specified specified. are is objective properly. clearly specified s Design specified. but Design Methodology Most detailing Appropri Methodolo used is not suitable is not ate gy used is correct and is design done. design ambiguous not justified .Methodo Methodol and not logy is Suitable ogy is justified used and design used but is Methodol not properly ogy is justified used and properly justified properly justified

Tools used Clear Acceptab Good Average Not for Design Understa le Acceptable 5 nding

Planning Time Time Time Time Time frame of frame frame frame frame is itself is not 6 properly properly properly vaguely properly Project specified specified specified, specified, specified Work and being and being but not and is not followed followed being followed accuratel most of followed y the time

Understan Clear Acceptab Good Average Not ding of the understan le Acceptable modules ding 7

79 Demonsta Objective Objective Objective Objectives No objectives rtion s s s not achieved. achieved achieved achieved achieved as and as per as per as per per time Contents of time time time frame. Presentations Presentati are not o frame frame. frame. 8 .Contents Contents of appropriate n of Contents Contents presentatio and not well Presentati of of n is not delivered on Is Presentati Presentati appropriate on is on is . Poor delivery Appropri of ate and appropria appropria te but not te but not Eye presentation well contact arranged. well well arranged. arranged. with few Proper people and eye Satisfact Presentat unclear contact ory ion not voice with demonstr satisfacto audience ation, ry and and clear clear average voice voice demonstr with with ation good good spoken spoken language language but eye contact not proper

Regularity Student Student Student Student Student does reports to does not reports to does not not meet 9 the guide report to the guide report to guide at all regularly guide but lacks guide and the work and is very consisten regularly is always consisten regularly cy and is not incomplete t in work but is consistent consisten in work t in the work

Report of Project Project Project Project Project report Project report report report report is not prepared

80 10 Phase I is is is not fully according to according according according according the specified to the to the to the to the format specified specified specified specified format format format format References with few and citations Referenc Referenc mistakes Insufficient are not es and es and references appropriate citations citations In- and are are sufficient citations appropria appropria reference te and te but not s and well mentione citations mentione d well d

81 Table 5

Rubrics for assessment of student performance in Project phase II

Level of achievement

Excellent Good (8) Averag Acceptabl Unaccepta Score (10) e e ble

(6) (4) (2)

Incorporati Changes Changes All Few Suggestions on of are made are made major changes are made during Suggestions as per as per changes made as Project modificati modificat are per Phase I ons ions made as modificatio evaluation suggested suggested per ns are not during during modifica suggested incorporated Project Project tions during Phase I Phase I suggeste Project evaluation evaluatio d during Phase I and new n and is Project evaluation innovation justified Phase I ns are correctly evaluati added on

Project All All Most of Some of Defined defined defined the the defined objectives Demonstrat objectives objective defined objectives are not ion are are objectiv are achieved achieved achieved es are achieved. with some Each achieved Modules are more Module Most of Only few not in additional is the Modules proper features. working Modules are working satisfacto are working form which Each rily and workin and is further leads Module is is and is demonstrat to failure of working properly satisfact ed integrated well and is demonstr orily system properly Modules of ated demon project demonstrat

82 ed All rated are not modules properly All of project Integrati integrated modules of are well on of all project are integrate modules well and not done integrated system and and system working system working is is working accurate satisfacto is not ry very satisfact ory

Demonstar Contents Contents Content Contents of Contents of of of s of presentatio Presentation tion and Presentatio Presentati Presenta n is not s are not Presentatio n is onis tion is appropriate appropriate Appropriat appropria appropri and not well n e and well te but not ate but Eye delivered arranged well not well contact arranged arranged with few Poor Proper eye people and delivery of contact Satisfact Presenta unclear presentation with ory tion not voice audience demonstr satisfact and clear ation, ory and voice with clear average good voice demonst spoken with ration language good spoken language but eye contact not proper

Project Project Project Project Project Project report is report report report Report according report is is is not to the not fully specified according accordin prepared format g to the according to the specifie according to the specified

83 References specified dformat to the format and format with few specified citations mistakes format References are Referenc and citations appropriate es and In- Insufficient are not and well citations sufficien references appropriate mentioned are t and appropria referenc citations te but not es and mentione citations d well

Conclusi Results are Results Results Results Results are presented are presente presented not on in very presented d are not are not presented and appropriate in good much clear properly manner. manner. satisfact Discussi ory Project Project Project Project work work is not on work is work Project summary summarized well summary work and and summarize and summar conclusion concluded d and conclusio y and is vague properly concluded. n not conclusi very on not Future Future appropria very extensions extensions in the Future te . appropri extensions in the ate. project are project are Future not clearly in the very well extension Future specified project are specified s in the extensio not at all project ns in the specified are well project specified are specifie d

84 Table 6 Interim Progress Assessment Rubric for Project Phase-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______Each supervisor on the project must fill a rubric for each student Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earne ( 0 – 2 Pts) d Problem  Bare Basic  Clear  Clea 5 formulatio formulation formulation formulation r n  Bare Basic  Good formulatio understanding understanding understandin n of the problem, of g of with well with scarce the problem, the problem, defined knowledge of but with scope relevant material lack study of  Very good appropriate relevant understandi study of material ng of relevant  Good the problem material system and analysis relevant material  Near production quality system analysis Self- Slow progress, Slow  Good  Steady 5 motivation with barely progress, progress progress and project satisfactory with basic  Need  Highly manageme result project reminder self- nt Unresponsive outcome sometimes motivated to Rely on  Minor Good supervisor supervisor’s problems project push in project manageme to work manageme nt

85 Table 7 Design Development and Solution Asset Rubric for Project Phase-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______

Each supervisor on the project must fill a rubric for each student Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Analysis and  Obvious  Simple,  Comp  Provide 5 solving skills solution, yet mostly lete solution sketchy complete solution with to complex functionalities solution that nontrivial problems; solves the functionalities Solution stated that meet the optimize problem desired needs desired needs Innovation  Basic   Self-  New 5 in concepts Superficial study of new concepts the Design used correctly usage of concepts / used Solution and  Lack self- new technique, frequently self-study study, concepts with  Self-study but apply  Self-study good of new previously of new understanding technique and taught technique,  Minor solve technique on a with basic innovative technical satisfactory level understanding Work difficulties;  Innova tive work with research value Self-  Slow  Slow  Good  Good 5 motivation progress, progress, progress progress and project with barely with basic  Need  Need management satisfactory project reminder reminder result outcome sometimes sometimes  Unresponsive  Rely on  Minor  Minor to Supervisor supervisor’s problems problems push to in project in project work management management

86 Table 8 Written Report Rubric for Project Phase-II Evaluation: Project: ______Name of Student: ______Name of Supervisor: ______Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Content  Important  Covers  All major  Major 5 points important points points covered only points covered and strongly superficially  A few explained supported  No major inaccurate clearly and with errors or correctly suitable and irrelevant detail misconception points Writing  Frequent  Some  A few  Well 5 errors errors in errors in proofread in spelling spelling spelling and  Clear and and grammar and easy to grammar grammar  Readable understand  Mostly  Reada and  Graph readable, but ble easy to s and a  Follo understand diagrams few points w basic used are written appropriately hard to report understand structure

87 Table 9 Final Presentation Rubric for Project Phase-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______Barely Basic Good Very Good Total acceptable (3 Pts) (4 Pts) (5 Pts) Possible Earned ( 0 – 2 Pts) Content  Important  Covers  All major  Major 5 points important points points covered only points covered and strongly superficially  A few explained supported  No major inaccurate clearly and with errors or correctly suitable detail and irrelevant misconception points Presentation  Bare  Basic  Good  Excellent 5 Skills organization organization organization organization and and and and preparation preparation preparation preparation  Lack  Confident  Confident Confident and of confidence in in relaxed in the and only some most parts whole familiarity in parts of the of  presentation some parts of presentation the Engaging to the presentati audience presentation on Attractive to audience Communication  Answer at  Answer  Answer  Handle 5 (Q/A) least most most difficult one questions questions questions questions with correctly correctly correctly ease and  Need  Need and confidence clarificatio clarification concisely  Illustrative n sometimes explanation

88 CURRICULUM for the Academic year 2017 – 2018

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

I - IV Semester M. Tech (CSE)

RAMAIAH INSTITUTE OF TECHNOLOGY (Autonomous Institute, Affiliated to VTU) BANGALORE – 54

About the Institute Ramaiah Institute of Technology (RIT) (formerly known as M. S. Ramaiah Institute of Technology) is a self-financing institution established in Bangalore in the year 1962 by the industrialist and philanthropist, Late Dr. M S Ramaiah. The institute is accredited with A grade by NAAC in 2016 and all engineering departments offering bachelor degree programs have been accredited by NBA. RIT is one of the few institutes with faculty student ratio of 1:15 and achieves excellent academic results. The institute is a participant of the Technical Education Quality Improvement Program (TEQIP), an initiative of the Government of India. All the departments are full with competent faculty, with 100% of them being postgraduates or doctorates. Some of the distinguished features of RIT are: State of the art laboratories, individual computing facility to all faculty members. All research departments are active with sponsored projects and more than 130 scholars are pursuing PhD. The Centre for Advanced Training and Continuing Education (CATCE), and Entrepreneurship Development Cell (EDC) have been set up on campus. RIT has a strong Placement and Training department with a committed team, a fully equipped Sports department, large air- conditioned library with over 80,000 books with subscription to more than 300 International and National Journals. The Digital Library subscribes to several online e-journals like IEEE, JET etc. RIT is a member of DELNET, and AICTE INDEST Consortium. RIT has a modern auditorium, several hi- tech conference halls, all air-conditioned with video conferencing facilities. It has excellent hostel facilities for boys and girls. RIT Alumni have distinguished themselves by occupying high positions in India and abroad and are in touch with the institute through an active Alumni Association. RIT obtained Academic Autonomy for all its UG and PG programs in the year 2007.As per the National Institutional Ranking Framework, MHRD, Government of India, Ramaiah Institute of Technology has achieved 45th rank in 2017 among the top 100 engineering colleges across India and occupied No. 1 position in Karnataka, among the colleges affiliated to VTU, Belagavi.

About the Department 2 Year of 1984 Establishment Names of the 1. UG: B.E. in Computer science and Engineering Programmes 2. PG: M.Tech. in Computer Science and Engineering offered 3. PG: M.Tech. in Computer Networks and Engineering 4. Ph.D 5. M.Sc(Engg.) by research

The Department of Computer Science and Engineering (CSE) has four eminent emeritus professors, 8 faculty with the doctorate degree and 17 perusing the doctoral studies. The faculty has been publishing in refereed journals and in conference proceedings. The department also conducts vocational courses and proficiency courses on fundamental and new programming languages and computer science concepts. These courses are conducted beyond college hours/summer semester by the faculty of the department. Some of the faculty are involved in institutional level activities and actively involved in interdisciplinary research activities. The department has state of the art laboratories like SAP, IBM Centre of Excellence and Cuda learning center. Technical seminars, workshops and hackathons are conducted regularly for UG & PG students. The department encourages the students to conduct and participate in extra-curricular/sports activities. The alumni network is very active and regular meeting are conducted by the department. The department is accredited by Nation Board of Accreditation (NBA) for the period of 3 years. The department has MoUs with leading IT Industries like NVIDIA, SAP, IBM and HP. The department conducts subjects with more of hands-on sessions and encourages students to take up MOOC based online courses in NPTEL, IITBombayX, Coursera, Udacity and edX.

3 VISION OF THE INSTITUTE To evolve into an autonomous institution of international standing for imparting quality technical education

MISSION OF THE INSTITUTE

MSRIT shall deliver global quality technical education by nurturing a conducive learning environment for a better tomorrow through continuous improvement and customization

QUALITY POLICY We at M. S. Ramaiah Institute of Technology strive to deliver comprehensive, continually enhanced, global quality technical and management education through an established Quality Management System complemented by the synergistic interaction of the stake holders concerned

VISION OF THE DEPARTMENT

To build a strong learning and research environment in the field of Computer Science and Engineering that responds to the challenges of 21st century.

MISSION OF THE DEPARTMENT  To produce computer science graduates who, trained in design and implementation of computational systems through competitive curriculum and research in collaboration with industry and other organizations.  To educate students in technology competencies by providing professionally committed faculty and staff.  To inculcate strong ethical values, leadership abilities and research capabilities in the minds of students so as to work towards the progress of the society.

4 PROGRAM EDUCATIONAL OBJECTIVES (PEOs):

An M.Tech (Computer Science & Engineering) graduate of M S Ramaiah Institute of Technology should, within three to five years of graduation

PEO1 Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur PEO2 Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing doctoral studies and engage in research and inquiry leading to new innovations and products PEO3 Be able to work effectively in multidisciplinary and multicultural environments and Be responsible members and leaders of their communities PEO4 Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large

PROGRAM OUTCOMES (POs):

PO1: An ability to independently carry out research/investigation and development work to solve practical problems PO2: An ability to write and present a substantial technical report/document PO3: Students should be able to demonstrate a degree of mastery over the area as per the specialization of the program. The mastery should be at a level higher than the requirements in the appropriate bachelor program. PO4: Acquire professional and intellectual integrity to stress upon the impact of computer engineering applications with respect to economic and environmental aspects PO5: Acquire methods of engaging in life-long learning not only to predict and plan the projects of the future but also to groom others in the group.

5 Curriculum Course Credits Distribution

Semester Humanit Basic Engin Profession Professiona Other Project Extra & Total ies Science eering al Courses l Courses- Elective Work/ Co- credits & Social s/ Lab Scienc - Core Electives s Internshi curricula in a Sciences (BS) es/ (Hard (PC-E) (OE) p r semeste (HSS) Lab core, soft (PW /IN) activities r (ES) core, Lab) (EAC) (PC-C) First 0 0 0 17 8 0 0 0 25 Second 0 0 0 17 8 0 0 0 25 Third 0 0 0 1 4 0 16 0 21 Fourth 0 0 0 4 0 0 25 0 29

6 SCHEME OF TEACHING I SEMESTER Credits Contact Sl. Course Course Name Category Hours No. Code L T* P S* Total 1. CSE11 Advanced Engineering PC-C 4 0 0 0 4 56 Mathematics 2. CSE12 Advanced Algorithms PC-C 3 0 0 1 4 42 3. CSE13 Advances in Database PC-C 3 1 0 0 4 42+28 Management Systems 4. CSEEXX Elective-I PC-E * * * * 4 * 5. CSEEXX Elective-II PC-E * * * * 4 * 6. CSEL14 Software Development PC-C 0 0 2 0 2 56 for Portable Devices Laboratory 7. CSEL15 Java / Python PC-C 0 0 2 0 2 56 Programming Laboratory 8. CSE16 Technical Writing and PC-C 0 0 1 0 1 28 Seminar-I Total 25

7 II SEMESTER Credits Contact Sl. Course Course Name Category Hours No. Code L T* P S* Total 1. CSE21 Big Data and Analytics PC-C 3 0 0 1 4 42 2. CSE22 Computer System PC-C 3 1 0 0 4 42+28 Performance Analysis 3. CSE23 Cloud Computing PC-C 4 0 0 0 4 56 4. CSEEXX Elective-III PC-E * * * * 4 * 5. CSEEXX Elective-IV PC-E * * * * 4 * 6. CSEL24 IoT and Cloud PC-C 0 0 2 0 2 56 Computing Laboratory 7. CSEL25 Big Data Laboratory PC-C 0 0 2 0 2 56 8. CSE26 Technical Writing and PC-C 0 0 1 0 1 28 Seminar-II Total 25

8 III SEMESTER

Credits Contact Sl. Course Course Name Category Hours No. Code L T P S Total 1 CSEEXX Elective-V PC-E * * * * 4 * 2 CSE31 Internship IN 0 0 10 0 10 * 3 CSE32 Project Work-I PW 0 0 6 0 6 * 4 CSE33 Technical Writing and PC-C 0 0 1 0 1 28 Seminar-III Total 21

Internship: The department should prepare Gantt chart with milestones, deliverables, evaluation and maintain weekly dairy signed by both Internal and External Guide.

Project Work-I: Seminar on: problem definition, literature survey and methodology to be used.

IV SEMESTER Sl. Course Credits Contact Hours Course Name Category No. Code L T P S Total 1 CSE41 Digital Forensic PC-C 4 0 0 0 4 56 and Cyber Crime 2 CSEP Project Work-II PW 0 0 25 0 25 * Total 29 9  Project Work-II: Phase I Review of Project Work-I  Project Work-II: Phase II Presentation on detailed design, implementation and validation  Project Work-II: Phase III Seminar with project demonstration, project report submission and viva voce. Outcome as a paper publication in journal/conference approved by the department with plagiarism check limit < 25%. Self Study (SS)  The course instructors need to provide the course material/topics to the students.  The material/topics provided, be preferably extracted from all the units of the syllabus.  The topics of the SS component are considered for evaluation during all CIE and SEE of that particular subject.

10 Electives Elective-I CSEE11: Advances in Computer Networks (3:1:0:0) CSEE12: Advances in Digital Image Processing (4:0:0:0) CSEE13: Compiler Optimization Techniques (4:0:0:0) Elective-II CSEE14: Advanced Software Engineering (3:0:1:0) CSEE15: Advances in Operating Systems (3:0:0:1) CSEE16: Web Technologies (4:0:0:0) Elective-III CSEE21: Natural Language Processing (4:0:0:0) CSEE22: Multi Core Architecture and Programming (4:0:0:0) CSEE23: Soft Computing (4:0:0:0) Elective-IV CSEE24: Information Retrieval (4:0:0:0) CSEE25: Software Oriented Architecture (4:0:0:0) CSEE26: Information and Network Security (3:1:0:0) Elective-V CSEE31: Engineering Economics, Project Management and Professional Ethics (4:0:0:0) CSEE32: Start-up Engineering (4:0:0:0) CSEE33: Future Skills (4:0:0:0)

11 Advanced Engineering Mathematics Course Code: CSE11 Credits: 4:0:0:0 Prerequisites: Engineering Mathematics I, II, III, IV Contact Hours: 56 Course Coordinator/s: Dr. Govindaraju M V Unit I Numerical Methods: Numerical Solution of Algebraic and Transcendental equations:Horner’s method and Graffe root method.Numerical Solution of system of non-linear equations:Newton-Raphson method.Solution of Higher Order ODE with initial conditions: Runge – Kutta Method and Milne’s Predictor and Corrector method. Unit II Linear Transformations: Introduction to Linear transformations, Composition of matrix transformations, Rotation about the origin, Dilation, Contraction and Reflection, Kernel and Range, Change of basis. Unit III Random Variables: Random Variables (Discrete and Continuous), Probability density function, Cumulative distribution function, Mean, Variance, Moment generating function.Probability Distributions: Binomial distribution, Poisson distribution, Normal distribution, Exponential distribution and Uniform distribution. Joint probability distribution:Joint probability distribution (both discrete and continuous), Conditional expectation. Unit IV Markov Process: Introduction, Markov chain and Transition probabilities, Continuous Parameter Markov Chain, Pure Birth and Pure Death Process, Birth and Death Process, Renewal Process. Unit V Introduction to Queuing and Applications: Single server with infinite system capacity queuing models. M/M/1: ∞/FIFO, K/FIFO, M/M/s:∞/FIFO, K/FIFO, M/G/1 Queuing system characteristics, Case studies.

Text Books: 1. Erwin Kreyszig - Advanced Engineering Mathematics-Wiley-India publishers- 10th edition-2015. 2. B.S.Grewal - Higher Engineering Mathematics - Khanna Publishers - 40th edition-2007. 3. R.E. Walpole, R. H. Myers, R. S. L. Myers and K. Ye – Probability and Statistics for Engineers and Scientists – Pearson Education – Delhi – 8th edition – 2007.

12 4. Garreth Williams – Linear Algebra with Applications – Jones and Bartlett Press – 4th edition – 2001.

Reference Books: 1. Sheldon M. Ross – Probability models for Computer Science – Academic Press – 2009. 2. Murray R Spiegel, John Schiller & R. Alu Srinivasan – Probability and Statistics – Schaum’s outlines -2nd edition. 3. Kishor S. Trivedi – Probability & Statistics with reliability, Queuing and Computer Science Applications – PHI – 2nd edition – 2002.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Solve the problems of algebraic, transcendental and ordinary differential equations using numerical methods. (PO1,3,4) 2. Find the Kernel and Range of Linear transformations. (PO1,3) 3. Express the probability distribution arising in the study of engineering problems and their applications. (PO1,3,4) 4. Apply the Markov Chain in prediction of future events. (PO1,3) 5. Apply and calculate the various parameters of the queuing models. (PO1,3)

13 Advanced Algorithms Course Code: CSE12 Credits: 3:0:0:1 Prerequisites: Knowledge of Analysis and Design of Algorithm Contact Hours: 42 Course Coordinator: Dr. Jagadish S Kallimani Unit I Analysis Techniques: Growth of Functions, Asymptotic notations, Standard notations and common functions, Recurrences and Solution of Recurrence equations – The Substitution method, The recurrence – tree method, The master method, Amortized Analysis: Aggregate, Accounting and Potential Methods. Unit II Graph Algorithms: Bellman-Ford Algorithm, Single source shortest paths in a DAG, Johnson’s Algorithm for sparse graphs, Maximum bipartite matching. Trees: B-trees, Red-Black trees Hashing: General Idea, Hash Function, Separate Chaining, Open addressing, Rehashing, Extendible hashing. Unit III Number – Theoretic Algorithms: Elementary notations, GCD, Modular Arithmetic, Solving modular linear equations, The Chinese remainder theorem, Powers of an element, RSA cryptosystem. Heaps: Heaps, Priority Queues, Binomial Heaps, Fibonacci Heaps. Unit IV String Matching Algorithms: Naïve string matching, Rabin – Karp algorithm, String matching with finite automata, Knuth-Morris-Pratt algorithm, Boyer-Moore Algorithms. Unit V Algorithmic Puzzles: Magic Square, n-queens problem, Glove Selection, Ferrying Soldiers, Jigsaw Puzzle Assembly, A Stack of Fake Coins, Maximum Sum Descent, Hats of Two Colors, Pluses and Minuses, Searching for a Pattern, Locker Doors, Palindrome Counting, Inverting a Coin Triangle, Sorting 5 in 7.

Text Books: 1. T H Cormen, C E Leiserson, R L Rivest and C Stein: Introduction to Algorithms, 3/e, PHI, 2011. 2. Mark Allen Weiss: Data Structures and Algorithm Analysis in C++, 3rd Edition, Pearson Education, 2011.

14 3. Anany Levitin and Maria Levitin: Algorithmic Puzzle, Oxford University Press, 2011

Reference Books: 1. Ellis Horowitz, Sartaj Sahni, S Rajasekharan: Fundamentals of Computer Algorithms, University Press, 2007. 2. Alfred V Aho, John E Hopcroft, J D Ullman: The Design and Analysis of Computer Algorithms, Pearson Education, 2011.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Devise recurrence relations and amortized cost of various operations. (PO1,3,4) 2. Illustrate graph algorithms such as Bellman-Ford, Shortest path, bipartite matching, B-trees, Red-Black trees and hashing techniques. (PO1,3,4) 3. Identify the methods for solving modular linear equations, Chinese remainder theorem and RSA cryptosystem, types of heaps such as Binomial and Fibonacci heaps. (PO1,3,4) 4. Assess the string matching algorithms such as Boyer-Moore and Knuth- Morris-Pratt algorithm. (PO1,3,4) 5. Compose mathematical models, objective functions and constraints to solve algorithmic puzzles. (PO1,3,4,5)

15 Advances in Database Management Systems Course Code: CSE13 Credits: 3:1:0:0 Prerequisites: DBMS Contact Hours: 70 Course Coordinator: Dr. Seema S Unit I Database models and overview of Relational data model: Database models: Flat data model, Entity relationship model, Relation model, Record base model, Network model, Hierarchical model, Object oriented data model, Object relation model, Semi structured model, Associative model, Context data model, graph data model, Overview of relational data model, querying relational model with relational algebra, transaction processing and concurrency control. Unit II Indexing and Hashing: Basic Concepts, Ordered Indices, B+-Tree Index Files, B+-Tree Extensions, Multiple-Key access, Static Hashing, Dynamic Hashing, Comparison of Ordered Indexing and Hashing, Bitmap Indices, Index Definition in SQL. Unit III Query Processing and Optimization: Overview, Measures of Query Cost, Selection Operation, Sorting, Join Operation, Other Operations, Evaluation of Expressions Query Optimization: Transformation of Relational Expressions, Estimating Statistics of Expression Results, Choice of Evaluation Plans. Unit IV Parallel Databases: Introduction, I/O Parallelism, Inter-query Parallelism, Intra-query Parallelism, Intra-operation Parallelism, Interoperation Parallelism, Query Optimization, Design of Parallel Systems, Parallelism on Multi-core Processors Unit V Distributed Databases: Homogeneous and Heterogeneous Databases, Distributed Data Storage, Distributed Transactions, Commit Protocols, Concurrency Control in Distributed Databases, Availability, Distributed Query Processing, Heterogeneous Distributed Databases, Cloud-Based Databases, Directory Systems

Text Books: 1. Database System Concepts, Abraham Silberschatz, Henry F. Korth, Sixth Edition, McGraw Hill Education.

16 2. Fundamentals of Database Systems, Ramez Elmasri, Shamkant B. Navathe, Fifth Edition, Pearson Publications.

Reference book: 1. Database Management Systems, Raghu Ramakrishnan, Johanners Gehrke, Second Edition. McGraw-Hill Education.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Understand different database model and the overview of relation database model. (PO1,3,4) 2. Understand the methods of storing, managing and interrogating complex data and the background processes involved in query processing. (PO1,3,4) 3. Analyze background methods to optimizing the query. (PO1,3,4) 4. Understand the concept of distributed databases and parallel databases. (PO1,3,4) 5. Analyze the processing the queries in distributed and parallel databases. (PO1,3,4)

17 Software Development for Portable Devices Laboratory Course Code: CSEL14 Credits: 0:0:2:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator: Mr. Pramod Sunagar Experiments that are to be conducted as a part of the course: 1. Introducing different Android development tools and developing Hello World application. 2. Develop an android application to investigate the activity life cycle. 3. Develop an android application to investigate the fragments. 4. Develop an android application to create user interfaces with different layouts and views. 5. Develop an android application to create a Registration form using appropriate widgets. 6. Develop an android application to embed PickerViews in an activity. 7. Develop an android application on using implicit & explicit Intents. 8. Develop an android application to utilize Action bar. 9. Develop an android application to utilize Toasts and Notifications. 10. Develop an android application to work SQLite data storage and create a table. 11. Develop an android application to work SQLite data storage and perform various operations on the table. 12. Develop an android application to introduce content providers. 13. Developing applications to work with messaging and telephony services. 14. Develop an android application for creating location based service.

Reference Books: 1. Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley Publishing. 2. Android Application Development, Programming with the Google SDK, by, Rick Rogers, John Lombardo, Zigurd Mednieks, Blake Meike, SPD, Oreilly, ISBN10: 81-8404-733-9, ISBN13:978-81- 8404-733-2 3. Hello Android, Introducing Google’s Mobile Development Platform, 3rd Edition, by Ed Burnette, Pragmatic Programmers, LLC.ISBN-10: 1-934356-56-5, ISBN-13: 978-1-934356-56-2 4. https://developer.android.com/training/index.html 5. http://www.codelearn.org/android-tutorial

18 6. http://www.tutorialspoint.com/android/

Course Outcomes (COs): At the end of the course, students should be able to: 1. Identify the various aspects of android platform and different android developer tools. (PO1,3,4) 2. Recognize the activity life cycle and fragment life cycle. (PO1,3,4) 3. Demonstrate the usage of different Views and ViewGroups. (PO1,3,4) 4. Demonstrate the knowledge of location-based services and notifications in applications. (PO1,3,4) 5. Develop the Android’s communication abilities using SMS and Telephony services. (PO1,3,4)

19 Java / Python Programming Laboratory Course Code: CNEL15 Credits: 0:0:2:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. Geetha J The following exercises can be practiced using Java or Python programming. 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 protection. 2. Write a program in Java for String handling which performs the following: i) Checks the capacity of String Buffer objects. ii) Reverses the contents of a string given on console and converts the resultant string in upper case. iii) Reads a string from console and appends it to the resultant string of ii. 3. a. Write a JAVA Program to demonstrate Inheritance. b. Simple Program on Java for the implementation of multiple inheritance using interfaces to calculate the area of a rectangle and triangle. 4. 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 Less Balance Exception if an account holder tries to withdraw money which makes the balance become less than 500Rs. ii. A Class called Less Balance Exception 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 Less Balance Exception take appropriate action for the same. 5. Write a JAVA program using Synchronized Threads, which demonstrates Producer Consumer concept. 6. Write a JAVA program to implement a Queue using user defined Exception Handling (also make use of throw, throws.). 7. Complete the following: 1. Create a package named shape. 2. Create some classes in the package representing some common shapes like Square, Triangle, and Circle. 3. Import and compile these classes in other program.

20 8. Write a JAVA Program Create an enumeration Day of Week with seven values SUNDAY through SATURDAY. Add a method is Workday( ) to the Day of Week class that returns true if the value on which it is called is MONDAY through FRIDAY. For example, the call DayOfWeek.SUNDAY. is WorkDay ( ) returns false. 9. 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. 10.Write a JAVA program to print a chessboard pattern. 11.Write a JAVA Program which uses FileInputStream / FileOutPutStream Classes. 12.Write a JAVA program which demonstrates utilities of Linked List Class. 13.Write a JAVA program which uses Datagram Socket for Client Server Communication. 14.Write a JAVA applet program, which handles keyboard event.

Text Book: 1. Java Fundamentals, A comprehensive Introduction by Herbert Schildt, Dale Skrien. Tata McGraw Hill Edition 2013. (Chapters: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,22,23,24,25,26)

Reference Books: 1. Programming with Java by T V Suresh Kumar, B Eshwara Reddy and P Raghavan, Sanguine Technical Publishers, 2011. 2. Programming in JAVA2 by Dr K Somasundaram ,Jaico publications 3. Java Programming by Hari Mohan Pandey, Pearson Education, 2012. 4 Java 6 Programming, Black Book, KoGenT , dreamtech Press, 2012. 5. Java 2 Essentials, Cay Hortsmann, second edition, Wiley.

21 Course Outcomes (COs): At the end of the course, students should be able to: 1. Knowledge of the structure and model of the Java programming language, (knowledge). (PO1,3,4) 2. Use the Java programming language for various programming technologies (understanding). (PO1,3,4) 3. Develop software in the Java programming language, (application). (PO1,3,4) 4. Evaluate user requirements for software functionality required to decide whether the Java programming language can meet user requirements (analysis). (PO1,3,4) 5. Propose the use of certain technologies by implementing them in the Java programming language to solve the given problem (synthesis). (PO1,3,4) 6. Choose an engineering approach to solving problems, starting from the acquired knowledge of programming and knowledge of operating systems. (evaluation) (PO1,3,4)

22 Technical Writing and Seminar-I/II/III Course Code: CSE16/CSE26/CSE33 Credits: 0:0:1:0 Prerequisites: Nil Contact Hours: 28 Rubrics for assessment of Seminar Criteria Distinguished (5) Good (4) Basic (3) Unacceptable (1) Score Organization - Extremely well - Generally well - Somewhat - Poorly organized organized. organized. organized. -Does not clearly -Introduces the -Introduces the -Introduces the introduce the purpose of the purpose of the purpose of the purpose of the presentation clearly presentation clearly. presentation presentation and creatively. -Includes transitions -Includes some -Uses ineffective -Effectively includes to connect transitions to transitions that smooth, clever key points and connect key points rarely connect transitions which are better transitions but there is difficulty points; cannot succinct but not from idea to idea in following understand broken up in order to are noted. presentation. presentation because connect key points - Most information - Student jumps there is no sequence -Student presents presented is in around topics. of information. information in logical, logical sequence; Several points are - Presentation is interesting sequence A few minor points confusing. broken and which audience can may be confusing -Ends with a disjointed; no follow. -Ends with a summary or apparent logical -Ends with an accurate summary of main conclusion; little order of conclusion showing points showing evidence of presentation-Ends thoughtful, strong some evaluation of evaluating content without a summary 23 evaluation of the the evidence based on Evidence. or conclusion. evidence presented. presented.

Content: -Speaker provides an -For the most part, -Explanations of -No reference is Depth and accurate and complete explanations of concepts and/or made to literature or Accuracy explanation of key concepts and theories are theory. Presentation concepts and theories, theories are accurate inaccurate or is not clear; drawing upon relevant and complete. Some incomplete. Little information that literature. helpful applications attempt is made to does not support Applications of theory of theory are tie in theory. There presentation in any are included to included. is a great deal of way is unnecessarily illuminate issues. -Presents evidence information that is included. -Provides evidence of of valid research on not connected to the -Presents little or no extensive and valid the selected topic, current presentation. evidence of valid research on the with multiple -Presents evidence of research on the selected topic, with sources. research on the selected topic. multiple and varied -Combines existing selected topic, with -Shows little sources. ideas to form new sources. evidence of the -Combines and insights. -Combines existing combination of evaluates existing -No significant ideas. ideas. ideas to form new errors are made; a -Few errors are made -Information insights. few inconsistencies to distract a included is -Information or errors in knowledgeable sufficiently completely accurate; information. listener, but some inaccurate that all names and facts -Level of information is indicates absence of were precise and presentation is accurate. accurate 24 explicit generally -Portions of information. -Level of presentation appropriate. presentation are too -Presentation is appropriate for the elementary or too consistently is too audience. sophisticated for elementary or too audience. sophisticated for the audience. Creativity -Uses the unexpected -Some originality -Little or no - Bland and to full advantage; very apparent; clever at variation; a few predictable. original, clever, and times; good variety original touches but Repetitive with little creative approach that and blending of for the most part or no variety; little captures audience's materials/media. material presented creative energy attention. with little originality used. or interpretation. Use of -Graphics designed -While graphics - occasional use of -Student uses Communicat reinforce presentation relate and aid graphics that rarely superfluous ion Aids and maximize presentation, media support presentation graphics, no audience are not as varied ; visual aids were not graphics, or graphics understanding; use of and not as well useful or clear, time that are so poorly media is varied and connected to the wasting use of prepared that they appropriate with presentation. multimedia detract from the media not being added presentation. simply for the sake of use.

25 Use of -Poised, clear -Clear articulation -Audience -Student is anxious Language articulation; proper but not as polished; occasionally has and cannot be heard volume; steady rate; slightly trouble hearing the or monotone with enthusiasm; uncomfortable at presentation; seems little or no confidence; speaker is times Most can uncomfortable.- expression.- clearly comfortable in hear presentation.- Presentation has Presentation has front of the group. - Presentation has no three misspellings four or more Presentation has no more than two and/or grammatical spelling errors misspellings or misspellings and/or errors. and/or grammatical grammatical errors. grammatical errors errors.

Eye Contact -Maintains eye - Student maintains -Some eye contact, -Student reads all or contact; seldom eye contact most of but not most of slides with returning to notes; the time but Maintained and at no eye contact. presentation is like a frequently returns to least half the time planned conversation. slides. reads most of slides. Viva Voce -Demonstrates -Demonstrates -Demonstrates some -Demonstrates extensive knowledge knowledge of the knowledge of incomplete of the topic by topic by responding rudimentary knowledge of the responding accurately and questions by topic by confidently, precisely Appropriately responding responding and addressing accurately to inaccurately and appropriately to all questions . At ease questions. Inappropriately to 26 audience with answers to all questions. questions. questions but fails to elaborate. Report Document is fully Document Document has low Document has compliant with has high degree of degree of minimal degree of required compliance compliance with compliance with rules and with required required required rules structure. rules rules and Document uses and and structure highly appropriate structure. structure Document contains language Document uses Document uses inappropriate and style. appropriate mostly appropriate language or many language language and spelling / specific to the contains occasional grammatical errors discipline spelling / grammatical errors Regularity Reports to guide Reports to guide Does not report to Has not met the regularly for seminar often for seminar guide for seminar guide at all. discussion discussion discussion Overall Excellent Good Average Poor Presentation

27 Big Data and Analytics Course Code: CSE21 Credits: 3:0:0:1 Prerequisites: Nil Contact Hours: 42 Course Coordinator: Mrs. S Rajarajeswari Unit I Introduction to big Data: Big Data Overview with typical examples, What is Data Science, Introduction to Big Data Analytics, Data Analytics Life cycle, Domain-specific Life cycle. Unit II Data, Data Range, Data Management, Data Mining, Data Munging, Wrangling and Cleaning, Databases and Relational Algebra, Parallel Data Bases, Parallel Query Processing, Mean and Standard Deviation, Estimation- Only Analyses, Use Case: Watching Data Trends with Google Ngrams, Use Case: Estimating Move Preferences. Unit III Introduction to Analytics - introduction to machine learning, Supervised learning overview, simple nearest neighbor, decision trees/forests, regression, Unsupervised learning: k-means, multi-dimensional scaling Graph Analytics: PageRank, community detection, recursive queries, iterative processing, Text Analytics: latent semantic analysis, Visualization & visual data analytics. Unit IV Tools and Methods deployed in Data Science, Introduction to R language, R functions and programming, R Grphics, R and commonly used statistics, R Commander, analyzing and exploring data with R, R studio, Advantages and disadvantages of R, R vs SAS Map Reduce/Hadoop, MapR Technologies and The Most Powerful, Elegant FREE Version of Hadoop Window and MADlib functions. Unit V Case Studies and Illustrations: IBM BigInsights, BigSheets, and Netezza Customer Intelligence, RainStor Big Data Analytics on Hadoop - The Industry's First Enterprise-Class Database Running Natively on Hadoop, DataStax (Including Coverage of the Free "Community Edition" of DataStax's Cassandra Implementation, with OpsCenter), Microsoft's Big Data Solution,Jigsaw: Visualization for Investigative Analysis and latest state of the art examples.

28 Text Books: 1. Chen, M., Mao, S., Zhang, Y., & Leung, V. C.“Big Data-Related Technologies, Challenges and Future Prospect”s , 2014, Springer (Chapters: 1-6) 2. Lin, J., & Dyer, C. “Data-intensive text processing with MapReduce”,2010, (Chapters: 2and 5) 3. Robert I. Kabacoff, “R in Action”, 2011,(Chapter 2 Pages:21-32) 4. Zumel, N., & Mount, J. “Practical data science with R”, 2014, (Chapters: 5, Pages 81-91 )

Reference Books: 1. O. R. Team. Big Data Now: Current Perspectives from O’Reilly Radar. O’Reilly Media, 2011. 2. Adler, Joseph. R in a Nutshell, Second Edition. O’Reilly Media, 2012.

Course Outcomes (COs): At the end of the course, students should be able to: 1. To take typical Big Data, filter and wrangle the data. (PO1,3,4) 2. To recognize the domain for analysis. (PO1,3,4) 3. To identify the type of domain-specific analytics to be deployed. (PO1,3,4) 4. To carry out mathematical approach in analytics. (PO1,3,4) 5. To be ready as a Data Scientist leading towards suitable job in analytics in industry or to pursue research towards higher degree. (PO1,3,4)

29 Computer System Performance Analysis Course Code: CSE22 Credits: 3:1:0:0 Prerequisites: Probability Theory, matrices, software engineering aspects and queuing theory. Contact Hours: 42 Course Coordinator: Dr. T N R Kumar Unit I Introduction: The Art Of Performance Evaluation, Common Mistakes In Performance Evaluation, A Systematic Approach To Performance Evaluation, Selecting An Evaluation Technique, Selecting Performance Metrics, Commonly Used Performance Metrics, Utility Classification Of Performance Metrics, Setting Performance Requirements. Unit II Workloads, Workload Selection and Characterization: Types of Work Loads, Addition Instructions, Instruction Mixes, Kernels; Synthetic Programs, Application Benchmarks, Popular Benchmarks. Work Load Selection: Services Exercised, Level Of Detail; Representativeness; Timeliness, Other Considerations In Workload Selection. Work Load Characterization Techniques: Terminology, Averaging, Specifying Dispersion, Single Parameter Histograms, Multi Parameter Histograms, Principle Component Analysis, Markov Models, Clustering. Unit III Monitors, Program Execution Monitors and Accounting Logs: Monitors: Terminology and classification; Software and hardware monitors, Software versus hardware monitors, Firmware and hybrid monitors, Distributed System Monitors, Program Execution Monitors and Accounting Logs, Program Execution Monitors, Techniques for Improving Program Performance, Accounting Logs, Analysis and Interpretation of Accounting log data, Using accounting logs to answer commonly asked questions. Unit IV Capacity Planning and Benchmarking: Steps in capacity planning and management; Problems in Capacity Planning; Common Mistakes in Benchmarking; Benchmarking Games; Load Drivers; Remote-Terminal Emulation; Components of an RTE; Limitations of RTEs, Experimental Design and Analysis: Introduction: Terminology, Common mistakes in experiments, Types of experimental designs, 2k Factorial Designs, Concepts, Computation of effects, Sign table method for computing effects; Allocation of variance; General 2k Factorial Designs, General full factorial designs with k factors: Model, Analysis of a General Design, Informal Methods. Unit V

30 Queuing Models: Introduction: Queuing Notation; Rules for all Queues; Little’s Law, Types of Stochastic Process. Analysis of Single Queue: Birth- Death Processes; M/M/1 Queue; M/M/m Queue; M/M/m/B Queue with finite buffers; Results for other M/M/1 Queuing Systems. Queuing Networks: Open and Closed Queuing Networks; Product form networks, queuing Network models of Computer Systems. Operational Laws: Utilization Law; Forced Flow Law; Little’s Law; General Response Time Law; Interactive Response Time Law; Bottleneck Analysis; Mean Value Analysis and Related Techniques; Analysis of Open Queuing Networks; Mean Value Analysis;

Text Book: 1. Raj Jain: The Art of Computer Systems Performance Analysis, 1st edition, John Wiley and Sons, 2012.

Reference Books: 1. Paul J Fortier, Howard E Michel: computer Systems Performance Evaluation and prediction, 1st edition, Elsevier, 2009. 2. Trivedi K S: Probability and Statistics with Reliability, Queuing and Computer Science Applications, 1st edition, PHI, 2011.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Understand the techniques to approach performance problem and Compare two systems and determine the optimal value of a parameter. (PO1,3,4) 2. Identify performance bottlenecks and characterize the load on a system and Select the number and size of system components and predict the performance of future workloads. (PO1,3,4) 3. Understand the use of different analysis strategies like measurement, simulation, analytical modeling and Implement different techniques in experimental design like factorial design techniques. (PO1,3,4) 4. Understand how to use monitors and accounting logs of systems use to improve the performance of the system and Apply mathematical techniques with stress on learning the types of Queuing models. (PO1,3,4) 5. Apply queuing models to solve problems in computer Networks, Operating system, etc. (PO1,3,4)

31 Cloud Computing Course Code: CSE23 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator: Mrs. Rajarajeswari S Unit I Introduction: Network centric computing and network centric content, Peer- to-peer systems, Cloud Computing: an old idea whose time has come, Cloud Computing delivery models & Services, Ethical issues, Cloud vulnerabilities, Challenges, Cloud Infrastructure: Amazon, Google, Azure & online services, open source private clouds. Storage diversity and vendor lock-in, intercloud, Energy use & ecological impact of data centers, service level and compliance level agreement, Responsibility sharing, user experience, Software licensing. Unit II Cloud Computing: Applications & Paradigms, Challenges, existing and new application opportunities, Architectural styles of cloud applications: single , multi ,hybrid cloud site, redundant, non redundant , 3 tier, multi tier architectures, Workflows coordination of multiple activities, Coordination based on a state machine model -the Zoo Keeper, The Map Reduce programming model, Apache Hadoop, A case study: the GrepTheWeb application, Applications: Healthcare, Energy systems, transportation, manufacturing, Education, Government, mobile communication, application development. Unit III Cloud Resource Virtualization: Definition, merits and demerits, types & Techniques, Layering, Virtual machine monitors, Hardware support for virtualization Case study: Xen -a VMM based on paravirtualization, Optimization of network virtualization in Xen 2.0, vBlades -paravirtualization targeting a x86-64 Itanium processor, A performance comparison of virtual machines, The darker side of virtualization, Software fault isolation. Unit IV Cloud Resource Management and Scheduling: Policies and mechanisms for resource management, Applications of control theory to task scheduling on a cloud, Stability of a two-level resource allocation architecture, Feedback control based on dynamic thresholds, Coordination of specialized autonomic performance managers, A utility-based model for cloud-based web services, Resource bundling, combinatorial auctions, fair queuing, Start time fair queuing, borrowed virtual time, Cloud scheduling subject to deadlines,

32 Scheduling mapreduce applications subject to deadlines, Resource management and application scaling. Unit V Storage systems: Evolution, Storage models, file systems, databases, DFS, General parallel File system, GFS, Hadoop, Locks & Chubby, TPS, NOSQL, BigTable, Mega store. Cloud security: Risks, Security, privacy, Trust. Security of OS,VM, VMM, shared image, management OS, Xoar.

Text Books: 1. Cloud Computing Theory and Practice – DAN C. Marinescu – Elsevier. 2. Cloud Computing: A hands on Approach, by Bagha Madisetti.

Reference Books: 1. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things, Kai Hwang, Jack Dongarra, Geoffrey Fox. MK Publishers. 2. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert Elsenpeter, McGraw Fill, 2010.

Course Outcomes (COs): At the end of the course, students should be able to: 1. To analyze the transformation that led to the evolution of Cloud computing, it's vulnerabilities and its impact. (PO1,3,4) 2. Design different workflows according to requirements and apply map reduce programming model and real time applications. (PO1,3,4) 3. Make performance comparison of virtual machines and optimization of virtualization. (PO1,3,4) 4. Develop policies and mechanisms for cloud resources and design algorithms for scheduling. (PO1,3,4) 5. Assess cloud Storage systems and identify cloud security, privacy issues, threats, the risks involved, its impact and provide solution. (PO1,3,4)

33 IoT and Cloud Computing Laboratory Course Code: CSEL24 Credits: 0:0:2:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. Aparna R Internet of Things Laboratory: Internet of Things Laboratory provides one of the simplest ways to design and implement various IoT applications. IoT is a flexible platform for experimental research that uses connected devices in homes and beyond.  Interconnection of devices and implementation of application scenarios.  Deployment and monitoring of field studies and analysis of data from experiments.  Sharing of data, code to evaluate ideas in a diverse set. Projects can be designed in various IoTs domain like 1. Home Automation- Smart Lighting, Smart Appliances, Intrusion Detection, Smoke/Gas Detectors. 2. Cities - Smart Parking, Smart Lighting, Smart Roads, Structural Health Monitoring, Surveillance Emergency Response. 3. Environment -Weather Monitoring, Air Pollution Monitoring, Noise Pollution Monitoring, Forest Fire Detection, River Floods Detection. 4. Energy -Smart Grids, Renewable Energy Systems. 5. Retail -Inventory Management, Smart Payments, Smart Vending Machines. 6. Logistics-Route Generation and scheduling, Fleet Tracking Shipment, Monitoring, Remote Vehicle Diagnostics. 7. Agriculture-Smart Irrigation, Green House Control. 8. Industry - Machine Diagnosis & Prognosis - Indoor Air Quality Monitoring. 9. Health & Lifestyle - Health & Fitness Monitoring, Wearable Electronics. The above mentioned projects can be developed using microcontrollers like Arduino Boards and Raspberry Pi. Course Delivery: This course is delivered through presentations and mini project.

Cloud Computing Laboratory List of Experiments: Use Eucalyptus or Open Nebula or equivalent to set up the cloud and demonstrate:

34 1. Find procedure to run the virtual machine of different configuration. Check how many virtual machines can be utilized at particular time. 2. Find procedure to attach virtual block to the virtual machine and check whether it holds the data even after the release of the virtual machine. 3. Install a C compiler in the virtual machine and execute a sample program. 4. Show the virtual machine migration based on the certain condition from one node to the other. 5. Find procedure to install storage controller and interact with it. 6. Find procedure to set up the one node Hadoop cluster. 7. Mount the one node Hadoop cluster using FUSE. 8. Write a program to use the API’s of Hadoop to interact with it. 9. Write a wordcount program to demonstrate the use of Map and Reduce tasks.

List of Experiments: 1. SaaS: Google Drive  With your Gmail account, create a spreadsheet to share with the people at the same table, invite them.  See how you can simultaneously edit the document you just created PaaS: google Maps http://maps.google.com/maps/api/staticmap?center=Eiffel+Tower&zoom=12 &size=512x512&sensor=false 2. Design Virtual Machine using VM player and test Client server application using Virtual Machine 3. Design Virtual Machine using VM player and test Client server application using Virtual Box 4. Compare the pros and cons of VM player and Virtual Box 5. Paas – Deploy Applications to google App Engine - simple web applications 6. Paas – Deploy Applications to google App Engine - web applications with database 7. Deploy Applications to cloud foundry using VMC 8. Deploy Applications to cloud foundry using Micro cloud foundry 9. Deploy Applications to cloud foundry using Eclipse 10. To Set up a Hadoop Cluster – Single Node 11. To Set up a Hadoop Cluster – Multi Node 12. Execute Map Reduce Programs in Hadoop Cluster 13. Study of Future Grid

35 Reference Books: 1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers, 2013. 2. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things, Kai Hwang, Jack Dongarra, Geoffrey Fox. MK Publishers. 3. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert Elsenpeter, McGraw Fill, 2010 4. Cloud computing A Hands on Approach Arshdeep Bahga,Vijay Madisetti Universities Publications 5. Online Readings : http://www.pds.ewi.tudelft.nl/ , http://csrc.nist.gov/publications/nistpubs

Course Outcomes (COs): At the end of the course, students should be able to: 1. Design applications that will communicate with IoT hardware and software. (PO1,3,4) 2. Explore specific IoT domain like Network, communications, Management infrastructure, Services applications development and Human interaction. (PO1,3,4) 3. Examine an IoT offering of the project in terms of IoT levels and Protocols. (PO1,3,4) 4. Describe different kinds of Internet-connected product concepts. (PO1,3,4)

36 Big Data Laboratory Course Code: CSEL25 Credits: 0:0:2:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mr. Srinidhi H 1. HDFS Start by reviewing HDFS. You will find that its composition is similar to your local Linux file system. You will use the Hadoop fs command when interacting with HDFS.  Review the commands available for the Hadoop Distributed File System  Copy file foo.txt from local disk to the user’s directory in HDFS  Get a directory listing of the user’s home directory in HDFS  Get a directory listing of the HDFS root directory  Display the contents of the HDFS file user/fred/bar.txt  Move that file to the local disk, named as baz.txt  Create a directory called input under the user’s home directory  Delete the directory input old and all its contents  Verify the copy by listing the directory contents in HDFS 2. MapReduce  Create a JOB and submit to cluster  Track the job information  Terminate the job  Counters in MR Jobs with example  Map only Jobs and generic map examples  Distributed cache example  Combiners, Secondary sorting and Job chain examples 3. MapReduce (Programs) Using movie lens data  List all the movies and the number of ratings  List all the users and the number of ratings they have done for a movie  List all the Movie IDs which have been rated (Movie Id with at least one user rating it)  List all the Users who have rated the movies (Users who have rated at least one movie)  List of all the User with the max, min, average ratings they have given against any movie  List all the Movies with the max, min, average ratings given by any user

37 4. Extract facts using Hive Hive allows for the manipulation of data in HDFS using a variant of SQL. This makes it excellent for transforming and consolidating data for load into a relational database. In this exercise you will use HiveQL to filter and aggregate click data to build facts about user’s movie preferences. The query results will be saved in a staging table used to populate the Oracle Database. The moveapp_log_json table contains an activity column. Activity states are as follows:  RATE_MOVIE  COMPLETED_MOVIE  PAUSE_MOVIE  START_MOVIE  BROWSE_MOVIE  LIST_MOVIE  SEARCH_MOVIE  LOGIN  LOGOUT  INCOMPLETE_MOVIE hive> SELECT * FROM movieapp_log_json LIMIT 5; hive> drop table movieapp_log_json; hive> CREATE EXTERNAL TABLE movieapp_log_json ( custId INT, movieId INT, genreId INT, time STRING, recommended STRING, activity INT, rating INT, price FLOAT ) ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.JsonSerde' LOCATION '/user/oracle/moviework/applog/'; hive> SELECT * FROM movieapp_log_json LIMIT 20; hive> SELECT MIN(time), MAX(time) FROM movieapp_log_json 1. PURCHASE_MOVIE Hive maps queries into Map Reduce jobs, simplifying the process of querying large datasets in HDFS. HiveQL statements can be mapped to phases of the Map Reduce framework. As illustrated in the following figure, selection and transformation operations occur in map tasks, while aggregation is handled by reducers. Join operations are flexible: they can be performed in the reducer or mappers depending on the size of the leftmost table. 1. Write a query to select only those clicks which correspond to starting, browsing, completing, or purchasing movies. Use a CASE statement to transform the RECOMMENDED column into integers where ‘Y’ is 1 and ‘N’ is 0. Also, ensure GENREID is not null. Only include the first 25 rows. 2. Write a query to select the customer ID, movie ID, recommended state and most recent rating for each movie.

38 3. Load the results of the previous two queries into a staging table. First, create the staging table: 4. Next, load the results of the queries into the staging table. 5. Extract sessions using Pig While the SQL semantics of HiveQL are useful for aggregation and projection, some analysis is better described as the flow of data through a series of sequential operations. For these situations, Pig Latin provides a convenient way of implementing data flows over data stored in HDFS. Pig Latin statements are translated into a sequence of Map Reduce jobs on the execution of any STORE or DUMP command. Job construction is optimized to exploit as much parallelism as possible, and much like Hive, temporary storage is used to hold intermediate results. As with Hive, aggregation occurs largely in the reduce tasks. Map tasks handle Pig’s FOREACH and LOAD, and GENERATE statements. The EXPLAIN command will show the execution plan for any Pig Latin script. As of Pig 0.10, the ILLUSTRATE command will provide sample results for each stage of the execution plan. In this exercise you will learn basic Pig Latin semantics and about the fundamental types in Pig Latin, Data Bags and Tuples. 1. Start the Grunt shell and execute the following statements to set up a dataflow with the click stream data. Note: Pig Latin statements are assembled into Map Reduce jobs which are launched at execution of a DUMP or STORE statement. 2. Group the log sample by movie and dump the resulting bag. 3. Add a GROUP BY statement to the sessionize.pig script to process the click stream data into user sessions.

Reference Books: 1. Tom White, "Hadoop: The Definitive Guide", Third Edition, O'Reilley, 2012. 2. Eric Sammer, "Hadoop Operations", O'Reilley, 2012. 3. Vignesh Prajapati, Big data analytics with R and Hadoop, SPD 2013. 4. E. Capriolo, D. Wampler, and J. Rutherglen, "Programming Hive", O'Reilley, 2012. 5. Lars George, "HBase: The Definitive Guide", O'Reilley, 2011. 6. Alan Gates, "Programming Pig", O'Reilley, 2011

39 Course Outcomes (COs): At the end of the course, students should be able to: 1. Describe big data and use cases from selected business domains. (PO1,3,4) 2. Explain NoSQL big data management. (PO1,3,4) 3. Install, configure, and run Hadoop and HDFS. (PO1,3,4) 4. Perform map-reduce analytics using Hadoop. (PO1,3,4) 5. Use Hadoop related tools such as HBase, Cassandra, Pig, and Hive for big data Analytics. (PO1,3,4)

40 Digital Forensic and Cyber Crime Course Code: CSE41 Credits: 3:0:1:0 Prerequisites: Nil Contact Hours: 70 Course Coordinator/s: Dr Ramani S Unit 1 Understanding Cyber Crime: Indian IT Act 2008 and amendments, Computer Forensic and Investigations as a Profession, Understanding Computer Forensics. Understanding Computer Investigations: Preparing a Computer Investigation, Taking a Systematic Approach, Procedures for Corporate High-Tech Investigations, Understanding Data Recovery Workstations and Software. Unit II Working with Windows and DOS Systems: Understanding File Systems, Exploring Microsoft File Structures, Examining NTFS Disks, Understanding Whole Disk Encryption, Understanding the Windows Registry, Understanding Microsoft Startup Tasks, Understanding MS-DOS Startup Tasks, and Understanding Virtual Machines. Unit III Data Acquisition: Understanding Storage Formats for Digital Evidence, Determining the best Acquisition Method, Contingency Planning for Image Acquisitions, Using Acquisition Tools, Validating Data Acquisitions, Using Remote Network Acquisition Tools. Computer Forensics Analysis and Validation: Determining What Data to Collect and Analyze, Validating Forensic Data, Addressing Data-Hiding Techniques, Performing Remote Acquisitions. Unit IV Current Computer Forensics Tools: Evaluating Computer Forensic Tool Needs, Computer Forensics Software Tools, Computer Forensics Hardware Tools, Validating and Testing Forensics Software. Recovering Graphics Files: Recognizing a Graphics File, Understanding Data Compression, Locating and Recovering Graphics Files, Identifying Unknown File Formats, Understanding Copyright Issues with Graphics. Unit V Network Forensics: Network Forensic Overview, Performing Live Acquisitions, Developing Standard Procedures for Network Forensics, Using Network Tools. E-mail Investigations: Exploring the Role of E-mail in Investigations, Exploring the Roles of the Client and Server in E-mail, Investigating E-mail Crimes and Violations, Understanding E-mail Servers,

41 Using Specialized E-mail Forensics Tools. Laboratory Lab exercises using forensic software and Case study data.

Text Book: 1. Nelson, Phillips, Frank, Enfinger and Steuart: Computer Forensics and Investigations, Cengage Learning, 2008. Chapters: 1, 2, 4, 6, 7, 8, 9, 10, 11, 12

Reference Books: 1. Marjie T. Britz: Computer Forensics and Cyber Crime - An Introduction, 2nd Edition, Pearson Education, 2012. 2. Harish Chander: Cyber Laws and IT Protection, PHI, 2012. 3. http://www.cyberforensics.in/default.aspx

Lab Exercises The following exercises have to be performed using various open source software tools/utilities mentioned. Software Tools:  CyberCheck 4.0 - Academic Version  CyberCheckSuite  MobileCheck  Network Session Analyser  Win-LiFT  TrueImager  TrueTraveller  PhotoExaminer Ver 1.1  CDRAnalyzer

Forensics Exercises: I) Disk Forensics: 1. Identify digital evidences 2. Acquire the evidence 3. Authenticate the evidence 4. Preserve the evidence 5. Analyze the evidence 6. Report the findings II) Network Forensics: 1. Intrusion detection

42 2. Logging (the best way to track down a hacker is to keep vast records of activity on a network with the help of an intrusion detection system) 3. Correlating intrusion detection and logging

Course Outcomes (COs): At the end of the course, students should be able to: 1. Recall the Indian IT Act 2008 and its amendments. (PO1,3,4) 2. Classify various types of computer crime. (PO1,3,4) 3. Apply computer forensic techniques to identify the digital fingerprints associated with criminal activities. (PO1,3,4) 4. Analyze hidden information from pictures and other files. (PO1,3,4) 5. Apply network forensic tools for network forensic and live data forensic analysis. (PO1,3,4)

43 ELECTIVES Advances in Computer Networks Course Code: CSEE11 Credits: 3:1:0:0 Prerequisites: Computer Networks Contact Hours: 42+28 Course Coordinator/s: Dr. Monica R Mundada Unit I Foundation: Building a Network, Requirements, Perspectives, Scalable Connectivity, Cost-Effective Resource sharing, Support for Common Services, Manageability, Protocol layering, Performance, Bandwidth and Latency, Delay X Bandwidth Product, Perspectives on Connecting, Classes of Links, Reliable Transmission, Stop-and-Wait, Sliding Window, Concurrent Logical Channels. Unit II Internetworking I: Switching and Bridging, Datagram’s, Virtual Circuit Switching, Source Routing, Bridges and LAN Switches, Basic Internetworking (IP), What is an Internetwork?, Service Model, Global Addresses, Datagram Forwarding in IP, sub netting and classless addressing, Address Translation (ARP), Host Configuration (DHCP), Error Reporting (ICMP), Virtual Networks and Tunnels. Unit III Internetworking- II: Network as a Graph, Distance Vector (RIP), Link State (OSPF), Metrics, The Global Internet, Routing Areas, Routing among Autonomous systems (BGP), IP Version 6 (IPv6), Mobility and Mobile IP Unit IV End-to-End Protocols: Simple Demultiplexer (UDP), Reliable Byte Stream(TCP), Endto-End Issues, Segment Format, Connecting Establishment and Termination, Sliding Window Revisited, Triggering Transmission, Adaptive Retransmission, Record Boundaries, TCP Extensions, Queuing Disciplines, FIFO, Fair Queuing, TCP Congestion Control, Additive Increase/ Multiplicative Decrease, Slow Start, Fast Retransmit and Fast Recovery. Unit V Congestion Control and Resource Allocation Congestion-Avoidance Mechanisms, DEC bit, Random Early Detection (RED), Source-Based Congestion Avoidance. The Domain Name System (DNS), Electronic Mail (SMTP,POP,IMAP,MIME), World Wide Web (HTTP), Network Management (SNMP)

44 Reference Books: 1. Larry Peterson and Bruce S Davis “Computer Networks :A System Approach” 5th Edition , Elsevier -2014. 2. Douglas E Comer, “Internetworking with TCP/IP, Principles, Protocols and Architecture” 6th Edition, PHI – 2014. 3. Uyless Black, “Computer Networks, Protocols , Standards and Inte rfaces” 2 nd Edition - PHI. 4. Behrouz A Forouzan, “TCP /IP Protocol Suite” 4 th Edition – Tata McGraw-Hill.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Explain basic computer network technology. (PO1,3,4) 2. Explain Data Communications System and its components. (PO1,3,4) 3. Identify the different types of network topologies and protocols. (PO1,3,4) 4. Identify the different types of network devices and their functions within a network. (PO1,3,4) 5. Illustrate the skills of subnet and routing mechanisms. (PO1,3,4)

45 Advances in Digital Image Processing Course Code: CSEE12 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. Veena G S Unit I Digital Image Fundamentals: What is Digital Image Processing? fundamental Steps in Digital Image Processing, Components of an Image processing system, elements of Visual Perception, Image Sensing and Acquisition, Image Sampling and Quantization, Some Basic Relationships between Pixels, Linear and Nonlinear Operations. Unit II Image Transforms: Two-dimensional orthogonal & unitary transforms, properties of unitary transforms, two dimensional discrete Fourier transform. Discrete cosine transform, sine transform, Hadamard transform, Haar transform, Slant transform, KL transform. Unit III Image Enhancement: Image Enhancement in Spatial domain, Some Basic Gray Level Trans -formations, Histogram Processing, Enhancement Using Arithmetic/Logic Operations. Unit IV Basics of Spatial Filtering Image enhancement in the Frequency Domain filters, Smoothing Frequency Domain filters, Sharpening Frequency Domain filters, homomorphic filtering. Unit V Model of image degradation/restoration process, noise models, Restoration in the Presence of Noise, Only-Spatial Filtering Periodic Noise Reduction by Frequency Domain Filtering, Linear Position-Invariant Degradations, inverse filtering, minimum mean square error (Weiner) Filtering, Color Fundamentals. Color Models, Pseudo color Image Processing., processing basics of full color image processing.

Reference Books: 1. “Digital Image Processing”, Rafael C Gonzalez, Richard E. Woods, etl , TMH , 2nd Edition 2010. 2. “Fundamentals of Digital Image Processing”, Anil K. Jain, Pearson Education, 2001. 3. “Digital Image Processing and Analysis”, B. Chanda and D. Dutta Majumdar, PHI, 2003.

46 Course Outcomes (COs): At the end of the course, students should be able to: 1. Examine various types of images, intensity transformations and applying various filtering techniques. (PO1,3,4) 2. Show how higher-level image concepts such as edge detection, segmentation representation can be implemented and used. (PO1,3,4) 3. To manipulate both binary and grayscale digital images using morphological filters and operators to achieve a desired result. (PO1,3,4) 4. Apply image processing algorithms in practical applications. (PO1,3,4)

47 Compiler Optimization Techniques Course Code: CSEE13 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Jagadish S Kallimani Unit I Introduction, Lexical analysis, Compilers; Analysis of Source Program; The Phases of a Compiler; Cousins of the Compiler; The grouping of phases; Compiler- Construction tools. Lexical analysis: The Role of Lexical Analyzer; Input Buffering; Specifications of Tokens; Recognition of Tokens. Unit II Syntax Analysis, The Role of the Parser; Context-free Grammars; Writing a Grammar; Top-down Parsing; Bottom-up Parsing. Syntax Analysis, Operator-Precedence Parsing; LR Parsers; Using ambiguous grammars; Parser Generators. Unit III Syntax-Directed Translation, Syntax-Directed definitions; Constructions of Syntax Trees; Bottom-up evaluation of S-attributed definitions; L-attributed definitions; Top-down translation, Run-Time Environments, Source Language Issues; Storage Organization; Storage-allocation strategies, Storage-allocation in C; Parameter passing. Unit IV Intermediate Code Generation, Intermediate Languages; Declarations; Assignment statements; Boolean Expressions; Case statements; Back patching; Procedure calls, Code Generation, Issues in the design of Code Generator; The Target Machine; Run-time Storage Management; Basic blocks and Flow graphs; Next-use information; A Simple Code Generator; Register allocation and assignment; The dag representation of basic blocks; Generating code from dags. Unit V Code Optimization, Compiler Development, Code Optimization: Introduction; The principal sources of optimization; Peephole optimization; Optimization of basic blocks; Loops in flow graphs, Compiler Development: Planning a compiler; Approaches to compiler development; The compiler development environment; Testing and maintenance.

Reference Books: 1. Alfred V Aho, Ravi Sethi, Jeffrey D Ullman: Compilers- Principles, Techniques and Tools, Addison-Wesley, 2007. (Chapters 1, 3.1 to 3.4, 4, 5.1 to 5.5, 7, 8, 9.1 to 9.9, 10.1 to 10.5, 11)

48 2. Charles N. Fischer, Richard J. leBlanc, Jr.: Crafting a Compiler with C, Pearson Education, 1991. 3. Andrew W Apple: Modern Compiler Implementation in C, Cambridge University Press, 1997. 4. Kenneth C Louden: Compiler Construction Principles & Practice, Thomson Education, 1997.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Construct lexical analyzer to recognize inputs using patterns. (PO 1, 3, 4) 2. Devise different types of syntax analyzers using grammars. (PO 1, 3, 4) 3. Illustrate syntax-directed translation schemes for grammars. (PO 1, 3, 4) 4. Formulate intermediate code generators for programming statements. (PO 1, 3, 4) 5. Develop assembly language code for the given optimized intermediate codes. (PO 1, 3, 4)

49 Advanced Software Engineering Course Code: CSEE14 Credits: 3:0:1:0 Prerequisites: Basic Concepts of Software Engineering Contact Hours: 70 Course Coordinator/s: Dr. Annapurna P Patil Unit I Agile development: What is agile? Agility and cost of change; What is an agile process? Extreme programming; Other agile process models. Design Concepts: Design process, Design Concepts, Design Models. Web Application Design: Web application design quality; Design quality and design pyramid; Interface design; Aesthetic design; Content design; Architecture design; Navigation design; Component-level design; Object- oriented hypermedia design method. Unit II Formal Modeling and verification: The cleanroom strategy; Functional specification; Cleanroom design; Cleanroom testing; Formal methods: Concepts; Applying mathematical notation for formal specification; Formal specification languages. Software Project Management: The management spectrum; The management of people, product, process and project; The W5HH Principle; Critical practices. Estimation for Software Projects: Software project estimation; Decomposition techniques, Examples; Empirical estimation models; Estimation for Object-Oriented projects; specialized estimation techniques; the make / buy decision. Unit III Software Project Scheduling: Basic concepts and principles of project scheduling; Defining task set and task network; Scheduling; Earned value analysis. Risk Management: Reactive versus proactive strategies; Software risks; risk identification; Risk projection; Risk refinement; Risk mitigation, monitoring and management; The RMMM plan. Unit IV Maintenance and Reengineering: Software maintenance; Software supportability; Reengineering; Business process reengineering; Software reengineering; Reverse engineering; Restructuring; Forward engineering; The economics of reengineering. Software Process Improvement (SPI): Approaches to SPI; Maturity models; The SPI process; The CMMI; The People CMM; Other SPI frameworks: SPICE, Bootstrap, PSP and TSP, ISO; SPI return on investment. Unit V

50 Software Configuration Management (SCM): Basic concepts; SCM repository; The SCM process; Configuration management for web applications; SCM standards. Product Metrics: A framework for product metrics; Metrics for requirements model, design model, source code, testing and maintenance; Design metrics for web applications. Process and Project Metrics: Basic concepts; Software measurement; Metrics for software quality; Integrating metrics within the software process; Metrics for small organizations; Establishing a software metrics program.

Laboratory: The Software Engineering Lab has been designed for students to be exposed to the following:  To Understand and realize the concept of Software Engineering and UML using any case studies.  The students would be exposed to experiment with the following concepts using any of the tools available:  Identifying the Requirements from Problem Statements  Modeling UML Use Case Diagrams  Identifying Domain Classes from the Problem Statements  State chart and Activity Modeling  Modeling UML Class Diagrams and Sequence diagrams  Estimation of Test Coverage Metrics and Structural Complexity  Designing Test Suites for the case study  The Students would also be required to Prepare a Work Breakdown Structure (WBS) and a mini project plan with PERT and Gantt charts.

Text Book: 1. Roger S. Pressman: Software Engineering: A Practitioner’s Approach, Alternate edition, 7th Edition, McGraw Hill, 2010.

Reference Books: 1. Ian Sommerville: Software Engineering, 8th Edition, Pearson, 2012. 2. Bernd Bruegge & Allen H. Dutoit : Object-Oriented Software Engineering Using UML, Patterns, and Java™ Third Edition, Prentice Hall ,2012

Course Outcomes (COs): At the end of the course, the students will be able to:

51 1. Apply the concept of agile development and design any web application using the principles learnt. (PO 1,3,4) 2. Identify the concepts of Formal Modeling and verification methods and also the process of Project management and estimation. (PO 1,3,4) 3. Demonstrate the activities involved in Software Scheduling, Risk management and reverse engineering and Maintenance task. (PO 1,3,4) 4. Identify the approaches to Software Process Improvement. (PO 1,3,4) 5. Understand the concepts of Software Configuration Management, Product and Process metrics. (PO 1,3,4) 6. Practice the application of principles of object-oriented software development through the course group project and develop teamwork and communication skills. (PO 1,3,4) 7. Conduct individual and detailed research into a topic covered by the course in the field of software engineering and be able to search appropriate literature including research publications, industrial newspapers, articles, and internet resources so as to summaries the findings in a clear and critical manner. (PO 1,3,4)

52 Advances in Operating Systems Course Code: CSEE15 Credits: 3:0:0:1 Prerequisites: Operating Systems Contact Hours: 42 Course Coordinator/s: Dr. T N R Kumar Unit I Process Synchronization: Synchronizations Mechanisms – Concurrent Processes, Critical Section Problem, Synchronization Problems. Distributed Operating Systems: Architectures of Distributed Systems, Theoretical Foundations Unit II Distributed Mutual Exclusion - Classification of Mutual Exclusion and Associated Algorithms - A Comparative Performance Analysis, Distributed Deadlock Detection - Deadlock Handling Strategies, Issues - Control Organizations – Centralized, Distributed and Hierarchical Deadlock Detection Algorithms Unit III Agreement Protocols - System Model, Classification of Agreement Problems, Applications Of Agreement Algorithms. Distributed Resource Management: Distributed File Systems- Architecture - Mechanisms for Building Distributed File Systems - Design Issues - Log Structured File Systems, Distributed Shared Memory-Architecture- Algorithms For Implementing DSM - Memory Coherence And Protocols - Design Issues. Unit IV Distributed Scheduling - Issues In Load Distributing, Components Of Load Distributing Algorithm - Stability , Algorithms - Performance Comparison, Selecting A Suitable Load Sharing Algorithm, Requirements For Load Distributing -Task Migration and Issues. Failure Recovery: Classification , Backward And Forward Error Recovery, Recovery In Concurrent Systems - Consistent Set Of Check Points - Synchronous And Asynchronous Check Pointing And Recovery , Check Pointing For Distributed Database Systems- Recovery In Replicated Distributed Databases. Unit V Protection And Security- Resource Security And Protection- The Access Matrix Model And Its Implementations, Safety In Matrix Model- Advanced Models Of Protection, Multiprocessor Operating Systems: System Architectures, Inter Connection Networks, Caching , Hypercube Architecture. Multiprocessor Operating System - Structures , Design Issues, Threads , Process Synchronization and Issues, Processor Scheduling: Issues, Co-Scheduling, Smart Scheduling.

53 Laboratory Work: (The following programs can be executed on any available and suitable platform) 1. Design, develop and execute a program using any thread library to create the number of threads specified by the user; each thread independently generates a random integer as an upper limit, and then computes and prints the number of primes less than or equal to that upper limit along with that upper limit. 2. Rewrite above program such that the processes instead of threads are created and the number of child processes created is fixed as two. The program should make use of kernel timer to measure and print the real time, processor time, user space time and kernel space time for each process. 3. Design, develop and implement a process with a producer thread and a consumer thread which make use of a bounded buffer (size can be prefixed at a suitable value) for communication. Use any suitable synchronization construct. 4. Design, develop, and execute a program to solve a system of n linear equations using Successive Over-relaxation method and n processes which use Shared Memory API. 5. Design, develop, and execute a program to demonstrate the use of RPC.

Reference Books: 1. Mukesh Singhal, Niranjan G.Shivaratri, "Advanced concepts in operating systems: Distributed, Database and multiprocessor operating systems", TMH, 2009. 2. Andrew S.Tanenbaum, "Modern operating system", PHI, 2003 3. Pradeep K.Sinha, "Distributed operating system-Concepts and design", PHI, 2003. 4. Andrew S.Tanenbaum, "Distributed operating system", Pearson education, 2003.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Implement a concurrent programming application using semaphores & monitors for process control. (PO 1,3,4) 2. Explain the basic concepts of Distributed Operating Systems and its architecture. (PO 1,3,4)

54 3. Implement deadlock avoidance, prevention & recovery. (PO 1,3,4) 4. Identify the Distributed resource management and design issues. (PO 1,3,4) 5. Implement various CPU scheduling, IPC memory management, recovery and concurrent algorithms. (PO 1,3,4) 6. Understand the architecture of multiprocessor operating systems including caching. (PO 1,3,4)

55 Web Technologies Course Code: CSEE16 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. J Geetha Unit I Introduction: From Browsers to Rich Clients – browser drawbacks, A solution – rich clients, Rich clients today. Web 1.0: HTML, URLs and HTTP, The WEB Model and REST – resources, representations, state, transfer – using HTTP methods. XML, XPATH and XSLT – XML Support in browsers, XPath support in browsers, XSLT support in Browsers. Unit II HTML 5: Detecting HTML 5 features – Canvas, video, local storage, web workers, offline applications, geo-location, placeholders, and input types. What does it all mean – doc type, root, headers, articles, dates and times, navigation and footers. Let’s call it a drawing surface – Simple shapes, canvas, Paths, texts, gradients and images. The past, present and future of local storage for web applications, A Form of madness – place holders, autofocus fields, email, web addresses, numbers as spin boxes and sliders, date and color pickers, search boxes. Unit III AJAX-I: Basic communication techniques – XHR, AJAX with images, Dynamic script loading, Cache control. AJAX patterns: Communication control patterns – predictive fetch, page preloading, submission throttling, periodic refresh, multi-stage download. Fallback patterns. AJAX libraries – JQuery. Unit IV AJAX-II: Syndication with RSS and Atom – RSS, Atom, XParser, Creating a news ticker, Web search with RSS. JSON – Array, object, mixing literals, syntax, encoding/decoding, JSON versus XML, server-side JSON tools. COMET: HTTP streaming – request delays, file modification example, using Iframes, browserspecific approaches, server-sent DOM events, connection management and server-side support. Unit V Mashups and Web services: The rise of mashups, geocoding, Google maps API. Introduction to Service Oriented Architecture, Combining protocols to build Web services – clarifying web services, REST Services, WS-* Web services using SOAP and WSDL, REST vs WS-* services.

56 Reference Books: 1. Professional AJAX, Nicholas C Zakas et al, 2nd Edition, Wrox publications,2007. 2. Professional Web 2.0 Programming, Eric Van Der VList et al, Wrox Publications, 2007 3. HTML 5 Up and Running, Mark Pilgrim, O’REILLY| GOOGLE Press, 2010. 4. SOA: Concepts, Technology and Design, Thomas Erl, Pearson, 2005

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Develop a dynamic webpage by the use of java script and DHTML. (PO 1,3,4) 2. Write a well formed / valid XML document. (PO 1,3,4) 3. Connect a java program to a DBMS and perform insert, update and delete operations on DBMS table. (PO 1,3,4) 4. Write a server side java application called Servlet to catch form data sent from client, process it and store it on database. (PO 1,3,4) 5. Write a server side java application called JSP to catch form data sent from client and store it on database. (PO 1,3,4)

57 Natural Language Processing Course Code: CSEE21 Credits: 4:0:0:0 Prerequisites: Artificial Intelligence Contact Hours: 56 Course Coordinator/s: Dr. Jagadish S Kallimani Unit I Introduction: Knowledge in Speech and Language Processing, Ambiguity, Models and Algorithms; Language, Thought, and Understanding; The State of the Art and The Near-Term Future; Regular Expressions and Automata; Morphology and Finite-State Transducers: Lexicon-free FSTs: The Porter Stemmer, Human Morphological Processing. Unit II N-grams: Counting Words in Corpora, Smoothing, N-grams for Spelling and Pronunciation, Entropy; Word Classes and Part-of-Speech Tagging: Part- of-Speech Tagging , Rule-based Part-of-speech Tagging, Stochastic Part-of- speech Tagging, Transformation-Based Tagging; Context-Free Grammars for English: Constituency, Context-Free Rules and Trees, Sentence-Level Constructions, The Noun Phrase. Unit III Parsing with Context-Free Grammars: The Earley Algorithm; Features and Unification: Feature Structures, Unification of Feature Structures, Features Structures in the Grammar, Implementing Unification, Parsing with Unification Constraints; Lexicalized and Probabilistic Parsing: Probabilistic Context-Free Grammars, Problems with PCFGs. Unit IV Representing Meaning: First Order Predicate Calculus, Some Linguistically Relevant Concepts, Related Representational Approaches, Alternative Approaches to Meaning; Semantic Analysis : Syntax-Driven Semantic Analysis, Attachments for a Fragment of English; Lexical Semantics : Relations Among Lexemes and Their Senses, WordNet: A Database of Lexical Relations, The Internal Structure of Words. Unit V Discourse: Reference Resolution, Text Coherence, Discourse Structure; Generation: Introduction to Language Generation, An Architecture for Generation; Machine Translation: Language Similarities and Differences, The Transfer Metaphor.

Text Book: 1. Daniel Jurafsky and James H Martin, “Speech and Language Processing: An introduction to Natural Language Processing,

58 Computational Linguistics and Speech Recognition”, Prentice Hall, 2nd Edition, 2008.

Rerefence Book: 1. Tanveer Siddiqui, U.S. Tiwary, “Natural Language Processing and Information Retrieval”, Oxford University Press, 2008.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Interpret how speech and language technology relies on formal models to capture knowledge, and language processing deals with subparts of words (morphology). (PO 1,3,4) 2. Illustrate the way N-gram tool is used for spelling and pronunciation processing, and part-of-speech tagging mechanism using various categories. (PO 1,3,4) 3. Describe feature structures and unification operation which is used to combine them, and probabilistic parsing to capture more syntactic information. (PO 1,3,4) 4. Outline representations used to bridge the gap from language to commonsense Knowledge (semantic processing), and meanings associated with lexical items. (PO 1,3,4) 5. Emphasize problems that NLP systems face, natural language outputs construction from non-linguistic inputs and machine translation framework approaches. (PO 1,3,4)

59 Multi Core Architecture and Programming Course Code: CSEE22 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. Chandrika P Unit I Introduction To Multi-Core Architecture: Motivation For Concurrency In Software, Parallel Computing Platforms, Parallel Computing In Microprocessors, Differentiating Multi-Core Architectures From Hyper- Threading Technology, Multi-Threading On Single-Core Versus Multi-Core Platforms Understanding Performance, Amdahl’s Law, Growing Returns: Gustafson’s Law. System Overview Of Threading: Defining Threads, System View Of Threads, Threading Above The Operating System, Threads Inside The OS, Threads Inside The Hardware, What Happens When A Thread Is Created, Application Programming Models And Threading, Virtual Environment: Vms And Platforms, Runtime Virtualization, System Virtualization. Unit II Fundamental Concepts Of Parallel Programming: Designing For Threads, Task Decomposition, Data Decomposition, Data Flow Decomposition, Implications Of Different Decompositions, Challenges You’ll Face, Parallel Programming Patterns, A Motivating Problem: Error Diffusion, Analysis Of The Error Diffusion Algorithm, An Alternate Approach: Parallel Error Diffusion, Other Alternatives. Unit III Threading And Parallel Programming Constructs: Synchronization, Critical Sections, Deadlock, Synchronization Primitives, Semaphores, Locks, Condition Variables, Messages, Flow Control- Based Concepts, Fence, Barrier, Implementation-Dependent Threading Features. Threading Apis : Threading Apls For Microsoft Windows, Win32/MFC Thread Apls, Threading Apls For Microsoft. NET Framework, Creating Threads, Managing Threads, Thread Pools, Thread Synchronization, POSIX Threads, Creating Threads, Managing Threads, Thread Synchronization, Signaling, Compilation And Linking. Unit IV

60 Openmp: A Portable Solution For Threading: Challenges In Threading A Loop, Loop-Carried Dependence, Data-Race Conditions, Managing Shared And Private Data, Loop Scheduling And Portioning, Effective Use Of Reductions, Minimizing Threading Overhead, Work-Sharing Sections, Performance-Oriented Programming, Using Barrier And No Wait, Interleaving Single-Thread And Multi-Thread Execution, Data Copy-In And Copy-Out, Protecting Updates Of Shared Variables, Intel Task Queuing Extension To Openmp, Openmp Library Functions, Openmp Environment Variables, Compilation, Debugging, Performance. Unit V Solutions To Common Parallel Programming Problems: Too Many Threads, Data Races, Deadlocks, And Live Locks, Deadlock, Heavily Contended Locks, Priority Inversion, Solutions For Heavily Contended Locks, Non-Blocking Algorithms, ABA Problem, Cache Line Ping-Ponging, Memory Reclamation Problem, Recommendations, Thread-Safe Functions And Libraries, Memory Issues, Bandwidth, Working In The Cache, Memory Contention, Cache-Related Issues, False Sharing, Memory Consistency, Current IA-32 Architecture, Itanium Architecture, High-Level Languages, Avoiding Pipeline Stalls On IA-32,Data Organization For High Performance.

Text Books: 1. Multicore Programming , Increased Performance through Software Multi-threading by Shameem Akhter and Jason Roberts , Intel Press , 2006 2. Hennessey and Patterson: “Computer Architecture A Quantitative Approach”, 4th Edition, Elsevier, 2012.

Reference Book: 1. Kai Hwang, Naresh Jotwani: Advanced Computer Architecture - Parallelism, Scalability, Programmability, 2nd Edition, Tata McGraw Hill, 2011.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Identify performance related parameters in the field of Computer Architecture. (PO 1,3,4)

61 2. Identify the limitations of ILP and the need for multi-core architectures. (PO 1,3,4) 3. Solve the issues related to multiprocessing and suggest solutions. (PO 1,3,4) 4. Point out the salient features of different multi-core architectures and how they exploit parallelism. (PO 1,3,4) 5. Understand the concept of multi threading and OPENMP. (PO 1,3,4)

62 Soft Computing Course Code: CSEE23 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Jagadish S Kallimani Unit I Introduction: Neural networks, Fuzzy logic, Genetic algorithms, Hybrid systems, Artificial Neural Networks: Fundamental concept, Evolution, Basic model of ANN, Important terminologies of ANN, MP neuron, Hebb Network. Unit II Supervised Learning Network: Perceptron Networks, Adaptive linear neuron, multiple adaptive linear neurons, Back propagation Network. Unit III Introduction to Fuzzy logic, classical sets and fuzzy sets: Classical sets, Fuzzy sets. Classical relations and fuzzy relations: Cartesian product of relation, Classical relation, Fuzzy relations, Tolerance and equivalence relations. Membership functions: Features, Fuzzification, methods of membership value assignments. Unit IV Defuzzification: Lambda-cuts for fuzzy sets, Lambda-cuts for fuzzy relations, Defuzzification methods. Fuzzy decision making: Individual, multiperson, multiobjective, multiattibute, and fuzzy Bayesian decision making. Unit V Genetic algorithms: Introduction, Basic operations, Traditional algorithms, Simple GA, General genetic algorithms, the schema theorem, Genetic programming, applications.

Reference Books: 1. Principles of Soft computing, S N Sivanandam, Deepa S. N, Wiley, India, (Chapters 1, 2, 3(Up to 3.5), 7, 8, 9, 10, 13, 15 ( up to 15.6 & 15.9,15,10). 2. Neuro-fuzzy and soft computing, J.S.R. Jang, C.T. Sun, E. Mizutani, PHI (EEE edition) ISBN: 978-81-203-2243-1

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Identify and describe soft computing techniques and their roles in building intelligent machines (PO1,3,4) 2. Identify the components and building block hypothesis of Genetic algorithm. (PO1,3,4) 3. Examine the features of neural network and its applications. (PO1,3,4)

63 4. Design Genetic algorithm to solve optimization problem. (PO1,3,4) 5. Describe Neuro Fuzzy system for clustering and classification. (PO1,3,4) 6. Recognize the feasibility of applying a soft computing methodology for a particular problem. (PO1,3,4)

64 Information Retrieval Course Code: CSEE24 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Ms. Vandana Sardar Sudhakar Unit I Introduction: Motivation, Basic concepts, Past, present, and future, the retrieval process. Modeling: Introduction, A taxonomy of information retrieval models, Retrieval: Adhoc and filtering, A formal characterization of IR models, Classic information retrieval, Alternative set theoretic models, Alternative algebraic models, Alternative probabilistic models, Structured text retrieval models, Models for browsing. Unit II Retrieval Evaluation: Introduction, Retrieval performance evaluation, Reference collections. Query Languages: Introduction, keyword-based querying, Pattern matching, Structural queries, Query protocols. Unit III Query Operations: Introduction, User relevance feedback, Automatic local analysis, Automatic global analysis. Text and Multimedia Languages and Properties: Introduction, Metadata, Text, Markup languages, Multimedia. Unit IV Text Operations: Introduction, Document preprocessing, Document clustering, Text compression, comparing text compression techniques. Indexing and Searching: Introduction; Inverted Files; Other indices for text; Boolean queries; Sequential searching; Pattern matching; Structural queries; Compression. Parallel and Distributed IR: Introduction, Parallel IR, Distributed IR. Unit V User Interfaces and Visualization: Introduction, Human-Computer interaction, the information access process, Starting pints, Query specification, Context, Using relevance judgments, Interface support for the search process. Searching the Web: Introduction, Challenges, Characterizing the web, Search engines, Browsing, Meta searchers, finding the needle in the haystack, searching using hyperlinks.

Text Book: 1. Ricardo Baeza-Yates, Berthier Ribeiro-Neto: Modern Information Retrieval, 1st edition, Pearson, 2011.

Reference Books:

65 1. David A. Grossman, Ophir Frieder: Information Retrieval Algorithms and Heuristics, 2nd Edition, Springer, 2009. 2. William B. Frakes, Ricardo Baeza-Yates (Editors): Information Retrieval Data Structures and Algorithms, 1st edition, Prentice Hall PTR, 2009.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Distinguish between data and information retrieval systems and explain different classical IR models. (PO 1,3,4) 2. Assess the performance of information retrieval systems and use different querying languages and protocols. (PO 1,3,4) 3. Perform query operations and recognize the use of metadata and markup languages. (PO 1,3,4) 4. Explain various text operations, indexing and search techniques, and the basics of parallel and distributed IR. (PO 1,3,4) 5. Discuss the concepts of user interfaces for IR applications and web search techniques. (PO 1,3,4)

66 Software Oriented Architecture Course Code: CSEE25 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Divakar Harekal V Unit I SOA Basics :Software Architecture – Types of IT Architecture – SOA – Evolution – Key components – perspective of SOA – Enterprise-wide SOA – Architecture – Enterprise Applications – Solution Architecture for enterprise application – Software platforms for enterprise Applications – Patterns for SOA – SOA programming models. Unit II SOA Analysis and Design: Service-oriented Analysis and Design – Design of Activity, Data, Client and business process services – Technologies of SOA – SOAP – WSDL – JAX – WS – XML WS for .NET – Service integration with ESB – Scenario – Business case for SOA – stakeholder OBJECTIVES – benefits of SPA – Cost Savings. Unit III SOA Governance: SOA implementation and Governance – strategy – SOA development – SOA governance – trends in SOA – event-driven architecture – software s a service – SOA technologies – proof-ofconcept – process orchestration – SOA best practices. Unit IV SOA Implementation: SOA based integration – integrating existing application – development of web services – Integration - SOA using REST – RESTful services – RESTful services with and without JWS – Role of WSDL,SOAP and Java/XML mapping in SOA – JAXB Data binding. Unit V Application Integration: JAX –WS 2.0 client side/server side development – Packaging and Deployment of SOA component – SOA shopper case study – WSDL centric java WS with SOA-J – related software – integration through service composition (BPEL) – case study - current trends.

Reference Books: 1. Shankar Kambhampaly, “Service–Oriented Architecture for Enterprise Applications”,Wiley 2008. 2. Mark D. Hansen, “SOA using Java Web Services”, Practice Hall, 2007. 3. Waseem Roshen, “SOA-Based Enterprise Integration”, Tata McGraw- HILL, 2009.

67 Course Outcomes (COs): At the end of the course, the students will be able to: 1. Design, develop and test Web services. (PO 1,3,4) 2. Learn standards related to Web services: Web Services Description Language (WSDL), Simple Object Access Protocol (SOAP), and Universal Description, Discovery and Integration (UDDI). (PO 1,3,4) 3. Learn basic principles of Service-Oriented Architecture and apply these concepts to develop a sample application. (PO 1,3,4) 4. Conceptually model Web services and formulate specifications of them in the Resource Description Framework (RDF) and the Web Ontology Language (OWL). (PO 1,3,4) 5. Evaluate emerging and proposed standards for the main components of Web services architectures. (PO 1,3,4)

68 Information and Network Security Course Code: CSEE26 Credits: 3:1:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. Meeradevi A Kawalgi Unit I Classical Encryption Techniques: Symmetric Cipher Model, Cryptography, Cryptanalysis and Brute-Force Attack, Substitution Techniques, Caesar Cipher, Mono alphabetic Cipher, Playfair Cipher, Hill Cipher, Polyalphabetic Cipher, One Time Pad. Block Ciphers and the data encryption standard: Traditional block Cipher structure, stream Ciphers and block Ciphers, Motivation for the feistel Cipher structure, the feistel Cipher, The data encryption standard, DES encryption , DES decryption , A DES example, results, the avalanche effect, the strength of DES, the use of 56-Bit Keys, the nature of the DES algorithm, timing attacks, Block cipher design principles, number of rounds, design of function F, key schedule algorithm. Unit II Public-Key Cryptography and RSA: Principles of public-key cryptosystems. Public-key cryptosystems. Applications for public-key cryptosystems, requirements for public-key cryptosystems. public-key cryptanalysis. The RSA algorithm, description of the algorithm, computational aspects, the security of RSA: Other Public-Key Cryptosystems: Diffiehellman key exchange, The algorithm, key exchange protocols, man in the middle attack, Elgamal Cryptographic systems, Elliptic curve arithmetic, abelian groups, elliptic curves over real numbers, elliptic curves over Zp, elliptic curves over GF(2m), Elliptic curve cryptography, Analog of Diffie-hellman key exchange, Elliptic curve encryption/ decryption, security of Elliptic curve cryptography, Pseudorandom number generation based on an asymmetric cipher, PRNG based on RSA. Unit III Key Management and Distribution: Symmetric key distribution using Symmetric encryption, A key distribution scenario, Hierarchical key control, session key lifetime, a transparent key control scheme, Decentralized key control, controlling key usage, Symmetric key distribution using asymmetric encryption, simple secret key distribution, secret key distribution with confidentiality and authentication, A hybrid scheme, distribution of public keys, public announcement of public keys, publicly available directory, public key authority, public keys certificates, X-509 certificates. Certificates, X- 509 version 3, public key infrastructure .User Authentication: Remote user Authentication principles, Mutual Authentication, one way

69 Authentication, remote user Authentication using Symmetric encryption, Mutual Authentication, one way Authentication, Kerberos, Motivation , Kerberos version 4, Kerberos version 5, Remote user Authentication using Asymmetric encryption, Mutual Authentication, one way Authentication, federated identity management, identity management, identity federation, personal identity verification. Unit IV Wireless network security: Wireless security, Wireless network threats, Wireless network measures, mobile device security, security threats, mobile device security strategy, IEEE 802.11 Wireless LAN overview, the Wi-Fi alliance, IEEE 802 protocol architecture. Security, IEEE 802.11i services, IEEE 802.11i phases of operation, discovery phase, Authentication phase, key management phase, protected data transfer phase, the IEEE 802.11i pseudorandom function, Web Security Considerations: Web Security Threats, Web Traffic Security Approaches. Secure Sockets Layer: SSL Architecture, SSL Record Protocol, Change Cipher Spec Protocol, Alert Protocol, handshake Protocol, Cryptographic Computations. Transport Layer Security: Version Number, Message Authentication Code, Pseudorandom Functions, Alert Codes, Cipher Suites, Client Certificate Types, Certificate Verify And Finished Messages, Cryptographic Computations, Padding. HTTPS Connection Initiation, Connection Closure. Secure Shell (SSH): Transport Layer Protocol, User Authentication Protocol, and Connection Protocol. Unit V Electronic Mail Security: Pretty good privacy, notation, operational; description, S/MIME, RFC5322, Multipurpose internet mail extensions, S/MIME functionality, S/MIME messages, S/MIME certificate processing, enhanced security services, Domain keys identified mail, internet mail architecture, E-Mail threats, DKIM strategy, DKIM functional flow, .IP Security: IP Security overview, applications of IPsec, benefits of IPsec, Routing applications, IPsec documents, IPsec services, transport and tunnel modes, IP Security policy, Security associations, Security associations database, Security policy database, IP traffic processing, Encapsulating Security payload, ESP format, encryption and authentication algorithms, Padding, Anti replay service, transport and tunnel modes, combining security associations, authentication plus confidentiality, basic combinations of security associations, internet key exchange, key determinations protocol, header and payload formats, cryptographic suits.

70 Reference books: 1. William Stallings: Cryptography and Network Security, Pearson 6th edition, 2013. 2. V K Pachghare: Cryptography and Information Security, 2013.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Master information security governance, and related legal and regulatory issues and also master understanding external and internal threats to an organization. (PO 1,3,4) 2. Get familiarity with information security awareness and a clear understanding of its importance and how threats to an organization are discovered, analyzed, and dealt with. (PO 1,3,4) 3. Master fundamentals of secret and public cryptography and master protocols for security services. (PO 1,3,4) 4. Get familiar with network security threats and countermeasures and familiar with network security designs using available secure solutions (such as PGP, SSL, IPSec, etc). (PO 1,3,4) 5. Get familiar with advanced security issues and technologies (such as DDoS attack detection and containment, and anonymous communications,) and exposed to original research in network security and also exposed to the importance of integrating people, processes and technology. (PO 1,3,4)

71 Engineering Economics, Project Management and Professional Ethics Course Code: CSEE31 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Prof. Nagabhushana A M Unit I Introduction: Understanding Project Management, Defining the Project Manager’s Role, The Project Manager as the Planning Agent, The Downside of Project Management, Classification of Projects, Differing Views of Project Management, Concurrent Engineering: A Project Management Approach, Project Management Growth Concepts and definitions: Systems, Programs, and Projects: A Definition, Product versus Project Management: A Definition, The Many Faces of Success, The Many Faces of Failure, The Stage-Gate Process, Project Management Methodologies, Organizational Structures: Traditional (Classical) Organization, Matrix Organizational Form Modification of Matrix Structures, The Strong, Weak, Balanced Matrix. Unit II Organizing and staffing the project office and the team: The Staffing Environment, Selecting the Project Manager: An Executive Decision, Skill Requirements for Project and Program Managers, Next Generation Project Managers, Duties and Job Descriptions, Selecting the Project Management Implementation Team, Management Functions: Project Authority, Team Building as an Ongoing Process, Dysfunctions of a Team , Employee– Manager Problems, Management Pitfalls , Conflicts: The Conflict Environment, Conflict Resolution, The Management of Conflicts, Conflict Resolution Modes, the variables for success: Predicting Project Success, Project Management Effectiveness. Unit III Planning: General Planning, Life-Cycle Phases, Proposal Preparation, Kickoff Meetings, Understanding Participants’ Roles, Project Planning, The Statement of Work, Project Specifications, Milestone Schedules, Work Breakdown Structure, Detailed Schedules and Charts, Project Plan, Total Project Planning, Management Control, Configuration Management, Enterprise Project Management Methodologies, Project Audits, Network Scheduling Techniques: Network Fundamentals, Graphical Evaluation and Review Technique, Network Replanning, Estimating Activity Time, Estimating Total Project Time, Total PERT/CPM Planning, Project Graphics: Bar (Gantt) Chart, Other Conventional Presentation Techniques. Unit IV

72 Pricing and Estimating: Types of Estimates, Pricing Process, Organizational Input Requirements, Labor Distributions, Overhead Rates, Materials/Support Costs, Pricing Out the Work, Smoothing Out Department Man-Hours, The Pricing Review Procedure, Project Risks, Life-Cycle Costing (LCC), Cost Control: Understanding Control, The Operating Cycle, Cost Account Codes, Budgets,The Earned Value Measurement System (EVMS), Variance and Earned Value, Trade off analysis in project environment: Methodology for Trade-off Analysis Unit V Risk Management: Definition of Risk, Tolerance for Risk, Definition of Risk Management, Certainty, Risk, and Uncertainty, Risk Identification, Risk Analysis, Qualitative Risk Analysis, Quantitative Risk Analysis, Probability Distributions and the Monte Carlo Process, Contract Management: Plan Procurement, Types of Contracts, Incentive Contracts, Contract Type versus Risk, Contract Administration Cycle, Quality Management: Definition of Quality, The Quality Movement, Quality Management Concepts, The Cost of Quality, The Seven Quality Control Tools, Implementing Six Sigma, Lean Six Sigma and DMAIC 914, Just-in-Time Manufacturing (JIT), Total Quality Management (TQM).

Reference Book: 1. Project Management: A Systems Approach to Planning, Scheduling, and Controlling, 10th ed. Author: Harold Kerzner.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Recognize issues in a realistic project scenario. (PO 1,3,4) 2. Employ work breakdown structures (WBS) in a project application. (PO 1,3,4) 3. Demonstrate the use of appropriate network scheduling techniques. (PO 1,3,4) 4. Produce a project proposal. (PO 1,3,4) 5. Discuss the implementation of a proposed plan. (PO 1,3,4)

73 Start-up Engineering Course Code: CSEE32 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Prof. Nagabhushana A M Unit I Introduction, Start up : past & present , NSF AUP Repeal: Internet for Business, The Key Features of Internet Startups, Technological Trends Toward Mobility and Decentralization, Start up engineering, Technologies, Design, Marketing, and Sales, Mobile HTML5 for the Final Project, Interactive Start, Webapp, Setup and Signup- AWS, Gravatar, Github, and Heroku, Connect to a Cloud Computer,Launch EC2 Instance, Mac: Connect to EC2 instance via Terminal.app, Windows: Connect to EC2 instance via Cygwin, Security Groups, Standard Operating System: Ubuntu 12.04.2 LTS on a t1.micro AWS instance, Deploy code to Test Heroku account. Unit II Linux and Server-Side Javascript (SSJS), Overview, Features of Linux, Virtual Machines and the Cloud, Virtualization, Cloud and IAAS/PAAS/SAAS, Linux , Filesystem-Usage of env, PATH, HOME, which, issues, ssh, scp, bash, apt-get, Compiling from source: ./configure; make; make install, Example of installation conflicts , Server-Side JS (SSJS), Install node and npm, node.js REPL, Editing code with nano, node.js programming, Using the libraries, Market Research, Wireframing, and Design, Idea, Execution, and Market, Importance of product/idea- execution/team and market, Idea Maze, Execution Mindset, Kind of Business: Startups & Small Businesses, Startups: Exhibit Economies of Scale, Pursue Large Markets, Market Sizing Calculations Early and Often, Market Research: Tools , framework for determining product tiers, Wireframing, Copywriting, and Design, Wireframing, Copywriting, Design. Unit III Introduction to HTML/CSS/JS, webpage program, HTTP Request to Rendered Page, Anatomy of web page, HTML: Skeleton and Semantics, CSS, JS, Separation of concerns, Tools , Deployment, DNS, and Custom Domains, Deployment: Dev, Staging, Production, Sidebar: Comparing EC2 vs. local laptops for development, Preliminaries: SSH/HTTP/HTTPS- accessible EC2 dev instance, Creating and managing git branches, Worked Example: Dev, Staging, Production, DNS, Custom Domains, Finding a domain: domize.com, Registering a domain: dnsimple.com, Configuring DNS to work with Heroku, Setting up HTTPS and Google Apps,

74 Social/Local/Mobile, Virality, Growth, Virality Equation, Local, Local Commerce, Graveyard of Startups. Unit IV Regulation, Disruption, Technologies of 2013, Gaining Context, Transportation and Lodging, Payments and Finance, Biotech, Antitrust and Acquisitions, Aspects of Regulation, Anticipate the Argument, A/B/C/D Theory of Regulation, Technological Legalization, Amazon.com, anesthetizing C, Square, Tesla, Facebook/Goldman, Uber, Angel List, Disruption and the Technologies of 2013, Industrial Robotics, 3D Printing, Telepresence, Quantified Self, Bitcoin, Autonomous Drones, Coda, Linux Command Line, three streams, Navigation and Filesystem, Downloading and Syncing, Basic Text Processing, Help, Superuser, Intermediate Text Processing, Intermediate bash, Linux Development Environment: Development Environment, Distributed Version Control Systems (DVCS). Unit V Linux Development Environment : Managing Setup and Configuration as Code, Mobile: Age of Internetification, Mobile Simply a Fad, Mobile Present & Future , Mobile technologies , Intermediate Javascript: rise of Javascript, Basics and Built-ins, Array, Date, RegExp, Math, String, JSON, Error, Built- in functions, Functional Programming (FP) and JS Functions, Object- Oriented Programming (OOP), Prototypal Inheritance, and JS Objects, Heuristics for OOP in JS, Node.js: Asynchrony, Flow Control, and Debugging: Motivation: reduce the impact of I/O latency with asynchronous calls, advantages and disadvantages of Node, Asynchronous Programming and Flow Control, Basic debugging with the Node Debugger.

Reference Books: 1. Materials on Startup Engineering, Balaji S. Srinivasan, Stanford University 2. http://www.wsj.com/articles/SB100014240531119034809045765122509 15629460#printMode 3. http://www.asymco.com/2012/01/17/the-rise-and-fall-of-personal- computing/ 4. http://www.kpcb.com/blog/2012-internet-trends-update 5. http://www.nytimes.com/2011/05/08/technology/08class.html?pagewante d=all&_r=0 6. http://www.nytimes.com/2011/06/11/technology/11computing.html?page wanted=all&_r=0

75 7. http://www.nytimes.com/projects/magazine/ideas/2009/#natural_science- 7 8. http://www.paulgraham.com/growth.html 9. http://blakemasters.com/peter-thiels-cs183-startup 10.http://web.stanford.edu/class/cs106b/textbook/CS106BX-Reader.pdf

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Describing startups and technology trends towards businesses. (PO 1,3,4) 2. Identifying software usage for businesses and ethics. (PO 1,3,4) 3. Figuring out the web usage for business launch. (PO 1,3,4) 4. Assessing the latest technologies for startups. (PO 1,3,4) 5. Preparing software for startups. (PO 1,3,4)

76 Future Skills 2020 Course Code: CSEE33 Credits: 4:0:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Prof. Nagabhushana A M Unit I Introduction: Current industry overview, Future Skills 2020 research report from IFTF. Sense making: Introduction, VUCA (Volatility, Uncertainty, Complexity and Ambiguity).What is Sense Making? How Sense Making Helps? Steps in sense making, How to do effective sense making? Hurdles in effective sense making. Assignment: A short 1 hour assignment where students will be posed with a situation to exercise their Sense Making ability. It will be assessed at the end of the session. Unit II Virtual Collaboration(VC): Introduction, How VC helps? Characteristics of Virtual Collaboration, Types of Virtual Collaboration. Advantages, Disadvantages and Applications of VC. Assignment: The students will be given an assignment applying both the sensemaking skills and Virtual Collaboration skills using the cloud based tools to complete a specific task. This assignment will also cover working in a team using virtual collaboration tools. In order to focus on learning of the specified skills, the end task is kept small and achievable in short time frame. Unit III Social Intelligence: Introduction, Hypothesis, Measuring Social Intelligence, Difference between intelligence and Social Intelligence, Derive some of the study done in Social networking theory. Assignment: The assignment will focus on students using their social network to accomplish a specific task. Unit IV Crosscultural competency: Introduction, Importance of cross cultural competence in workplace. Nuances of cross cultural differences, Examples to demonstrate the differences. Assignment: Students will have to work with a team member from another culture to complete a specific task. Unit V Cognitive Load management: Introduction, Current situation of information overload, Tools and techniques to handle the cognitive load. Importance of these skills in work place. Assignment: Students will be given a specific topic and time to quickly arrive at a good summary of the topic. They will be given access to internet and books to refer. Importance is given to how quickly they can gather, curate and present the summary of the topic.

77 Reference Books: 1. The detailed report can be found at http://www.iftf.org/uploads/media/SR1382A_UPRI_future_work_skills_s m.pdf 2. The reading material for individual lectures will be shared with the students using Tutor Space.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Identify the Future Work skills needed for next 5 years. (PO 1,3,4) 2. Illustrate sense Making Skills through assignments. (PO 1,3,4) 3. Survey the different Virtual Collaboration skills to complete an assignment. (PO 1,3,4) 4. Describe the social intelligence skill and application of the same. (PO 1,3,4) 5. Compose an assignment using Cross-cultural competence and load management skills. (PO 1,3,4)

78 Annexure Table 1 Rubrics for Assessment of Student Performance in Laboratory

Trait Barely Basic Good Very Good Acceptable

Specifications The program is The program The program works The program producing produces correct and produces the works and incorrect results. results but does correct results and meets all of not display them displays them the correctly. correctly. It also specifications. meets most of the other specifications.

Readability The code is The code is The code is fairly The code is poorly organized readable only by easy to read. exceptionally and very difficult someone who well organized to read. knows what it is and very easy supposed to be to follow. doing.

Reusability The code is not Some parts of the Most of the code The code organized for code could be could be reused in could be

79 reusability. reused in other other programs. reused as a programs. whole or each routine could be reused.

Documentation The The The documentation The documentation is documentation is consists of documentation simply comments simply comments embedded comment is well written embedded in the embedded in the and some simple and clearly code and does code with some header explains what not help the simple header documentation that the code is reader understand comments is somewhat useful accomplishing the code. separating in understanding the and how. routines. code.

Delivery The code was The code was The program was The program more than 2 within 2 weeks of delivered within a was delivered weeks overdue. the due date. week of the due date. on time.

Efficiency The code is huge The code is brute The code is fairly The code is and appears to be force and efficient without extremely patched together. unnecessarily sacrificing efficient long. readability and without understanding. sacrificing readability and

80 understanding.

81 Table 2 Rubrics for assessment of Seminar Criteria Distinguished Good Basic Unacceptable Score (5) (4) (3) (1) Organization - Extremely well - Generally well - Somewhat - Poorly organized. organized. organized. organized -Introduces the -Introduces the -Introduces -Does not clearly purpose of the purpose of the the purpose of introduce the presentation presentation the purpose of the clearly and clearly. presentation presentation creatively. -Includes -Includes -Uses ineffective -Effectively transitions to some transitions that includes smooth, connect key transitions to rarely connect clever transitions points and better connect key points; cannot which are succinct transitions from points but understand but not broken up idea to idea are there is presentation in order to connect noted. difficulty in because there is key points - Most following no sequence of -Student presents information presentation. information. information in presented is in - Student - Presentation is logical, interesting logical sequence; jumps around broken and sequence which A few minor topics. Several disjointed; no audience can points may be points are apparent logical follow. confusing confusing. order of -Ends with an -Ends with a -Ends with a presentation-Ends accurate summary of main summary or without a 82 conclusion points showing conclusion; summary or showing some evaluation little evidence conclusion. thoughtful, strong of the evidence of evaluating evaluation of the presented. content based evidence on presented. Evidence.

Content: Depth -Speaker provides -For the most -Explanations -No reference is and Accuracy an accurate and part, explanations of concepts made to literature complete of concepts and and/or theories or theory. explanation of key theories are are inaccurate Presentation is concepts and accurate and or incomplete. not clear; theories, drawing complete. Some Little attempt information that upon relevant helpful is made to tie does not support literature. applications of in theory. presentation in Applications of theory are There is a any way is theory are included included. great deal of unnecessarily to illuminate -Presents information included. issues. evidence of valid that is not -Presents little or -Provides evidence research on the connected to no evidence of of extensive selected topic, the current valid research on and valid research with multiple presentation. the selected topic. on the selected sources. -Presents -Shows little topic, with -Combines evidence of evidence of the multiple existing ideas to research on combination of and varied form the selected ideas. 83 sources. new insights. topic, with -Information -Combines and -No significant sources. included is evaluates existing errors are made; a -Combines sufficiently ideas to form new few existing ideas. inaccurate that insights. inconsistencies or -Few errors indicates absence -Information errors in are made to of accurate completely information. distract a information. accurate; all names -Level of knowledgeabl -Presentation and facts were presentation is e listener, but consistently is too precise and explicit generally some elementary or too -Level of appropriate. information is sophisticated for presentation is accurate. the audience. appropriate for the -Portions of audience. presentation are too elementary or too sophisticated for audience. Creativity -Uses the -Some originality -Little or no - Bland and unexpected to full apparent; clever variation; a predictable. advantage; very at times; good few original Repetitive with original, clever, variety and touches but little or no and creative blending of for the most variety; little approach that materials/media. part material creative energy captures audience's presented with used. 84 attention. little originality or interpretation. Use of -Graphics -While graphics - occasional --Student uses Communicatio designed reinforce relate and aid use of superfluous n Aids presentation and presentation, graphics that graphics, no maximize audience media are not as rarely support graphics, or understanding; use varied and not as presentation ; graphics that are of media is varied well connected to visual aids so poorly and appropriate the presentation. were not prepared that they with media not useful or clear, detract from the being added time wasting presentation. simply for the sake use of of use. multimedia;

85 Use of -Poised, clear -Clear -Audience -Student is Language articulation; proper articulation but occasionally anxious and volume; steady not as polished; has trouble cannot be heard rate; enthusiasm; slightly hearing the or monotone with confidence; uncomfortable at presentation; little or no speaker is clearly times Most can seems expression.- comfortable in hear uncomfortable Presentation has front of the group. presentation.- .-Presentation four or more -Presentation has Presentation has has three spelling errors no misspellings or no more than two misspellings and/or grammatical misspellings and/or grammatical errors. and/or grammatical errors. grammatical errors. errors

Eye Contact -Maintains eye - Student -Some eye -Student reads all contact; seldom maintains eye contact, but or most of slides returning to notes; contact most of not with no eye presentation is like the time but Maintained contact. a planned frequently returns and at least conversation. to slides. half the time 86 reads most of slides. Viva Voce -Demonstrates -Demonstrates -Demonstrates -Demonstrates extensive knowledge of the some incomplete knowledge of the topic by knowledge of knowledge of the topic by responding rudimentary topic by responding accurately and questions by responding confidently, Appropriately responding inaccurately and precisely and addressing accurately Inappropriately to appropriately to all questions . At to questions. questions. audience ease with answers questions. to all questions but fails to elaborate. Report Document is fully Document has Document has Document has compliant With high degree of low degree of minimal degree of required rules and compliance with compliance compliance with structure. required rules and with required required rules Document uses structure. rules and and structure highly appropriate Document uses structure Document language and style. appropriate Document contains language specific uses mostly inappropriate to the discipline appropriate language or many language and spelling contains /grammatical occasional errors 87 spelling / grammatical errors Regularity Reports to guide Reports to guide Does not Has not met the regularly for often for seminar report to guide guide at all. seminar discussion discussion for seminar discussion Overall Excellent Good Average Poor Presentation

88 Table 3 Rubrics for assessment of Internship Deliverables for Student Performance in Internship:

Internship Title: ______

Company Name: ______

Name of Student: ______

Name of Supervisor at Company: ______

Name of Supervisor at College: ______

Each supervisor must fill a rubric for each student:

Basic Good Very Good Total

(0-4 Pts) (5-7 Pts) (10 Pts) Possible Earned

Tools and new Few sources at Multiple sources Multiple sources 10 Technology the Industry, of high quality, of high quality, Learnt aware of quality good judgment of well researched 89 of resources the information, and analyzed, and relevance identification of continuous to tools and gaps in efforts at Techniques at knowledge at the acquiring hand Industry and Information. Academics. Identification of the application of the tools and Technology learnt to the present market.

Relevance of the Fairly Relevant Moderately Highly Relevant 10 topic chosen to Relevant the current market

90 Report Writing Reasonably Sound Excellent 10 good organization and organization, no organization structure, clear, technical or and lacks clarity very few errors, grammar errors, in few topics, complete, concise and complete, few reasonably good precise, omissions, style complete

grammatically documentation correct, lacks style

Demonstration Moderately be Efficiently be able Excellent 10 of the Tools able to to demonstrate demonstration of Learnt demonstrate the skills learnt the tools and the tools learnt and be able to techniques learnt at the Industry propose an and be able to application for the apply it to any 91 same. simple case study.

Presentation Reasonably Good , Excellent 10 and viva voce good professional professional and communication communication, technical and good visual aids, communication, presentation, able to give effective able to give technical answers presentations, technical able to analyze answers to technically and some extent clarify views in viva-voce

92 Table 4

Rubrics for assessment of student performance in Project phase I

Level of achievement Sl Excellent Good (4) Average Acceptable Unacceptable Score No (5) (3) (2) (1)

Identificatio Purpose Purpose Purpose Purpose and Purpose and n of Problem and need of and need of and need of need of the need of the 1 Domain and the project the project the Project Project is Project is not at Detailed is very well is is satisfactorily all explained Analysis explained. explained moderately explained well. explained

Study of the Existing Existing Existing Existing Existing systems Existing systems are systems are systems are systems are are not studied. Systems / very well well moderately satisfactorily Documents of Literature studied. studied. studied. studied. very poor Survey Documents Documents Documents Documents standards, online of high of good of average of resources and standards standards standards, satisfactory books are 2 like IEEE like online standards, studied. 93 papers, internation resources online reputed al and books resources and online journal/con are studied. books are resources ference studied and books papers, are studied. good online resources and books are studied. Objectives All All Most of the Only few Objectives of the 3 of the objectives objectives objectives objectives of proposed work Proposed of the of the of the the proposed are Work proposed proposedw proposedw work are well either not work are ork are ork are defined defined properly. very well well well defined. defined. defined. Design Steps to be Steps to be Steps are Steps to be Steps to be 4 Methodolo followed to Followed mentioned followed to followed to solve gy solve the to solve the but are solve the the defined defined defined unclear; defined problem are not problem problem is without problem are at all specified. are clearly specified justificatio not specified Design specified.M but n to properly. Methodology ost suitable detailing is objectives Design used is not design not done. Appropriat Methodology correct and is .Methodolo Suitable e design used is not justified 94 gy is used design Methodolo ambiguous and is Methodolo gy is used and not properly gy is used but not justified justified and justified properly properly justified Tools used Clear Acceptable Good Average Not Acceptable 5 for Design Understand ing Planning of Time Time Time Time frame Time frame itself 6 Project frame frame frame is vaguely is not properly Work properly properly properly specified, and specified specified specified specified, is not and being and being but not followed followedac followed being curately most of the followed time Understandi Clear Acceptable Good Average Not Acceptable ng of the understandi 7 modules ng Demonstarti Objectives Objectives Objectives Objectives No objectives on achieved as achieved as achieved as not achieved achieved. and per time per time per time as per time Contents of Presentatio frame frame. frame. frame. Presentations are n .Contents Contents of Contents of Contents of not appropriate

95 of Presentatio Presentatio presentation and not well 8 Presentatio n is n is is not delivered n Is appropriate appropriate appropriate. Poor delivery of Appropriat but not but not Eye contact presentation e and well well well with few arranged. arranged. arranged. people and Proper eye Satisfactor Presentatio unclear voice contact y n not with demonstrati satisfactory audience on, clear and and clear voice with average voice with good demonstrati good spoken on spoken language language but eye contact not proper Regularity Student Student Student Student does Student does not 9 reports to does not reports to not report to meet guide at all the guide report to the guide guide and the work is regularlyan guide very but lacks regularly and always d is regularly consistency is not incomplete consistent but is consistent in in work consistent work in the work Report of Project Project Project Project report Project report 96 Project report report report is not prepared 10 Phase I is is is not fully according to the according accordingto according according to specified format to the the to the the specified References and specified specified specified format citations are not format format format with Insufficient appropriate References References few references and and mistakes and citations citations citations In- are are sufficientre appropriate appropriate ferences and well but not and mentioned mentioned citations well

97 Table 5

Rubrics for assessment of student performance in Project phase II

Level of achievement Excellent Good (8) Average Acceptable Unacceptable Score (10) (6) (4) (2)

98 Incorporation Changes are Changes All major Few changes Suggestions of Suggestions made as per are made as changesar are made as made during modifications per e made as per Project Phase I suggested modificatio per modifications evaluation are during ns modificati suggested not Project Phase suggested ons during incorporated I during suggested Project Phase evaluationan Project during I evaluation d new Phase I Project innovationns evaluation Phase I are added and is evaluation justified correctly

Project All defined All defined Most of Some of the Defined Demonstratio objectives objective the defined objectives are n are achieved are defined objectives are not achieved with some achievedEa objectives achieved. Modules are more ch Module are Only few not in proper additional is working achieved Modules are working form 99 features. satisfactoril Most of working and which further Each Module y and is the is leads to failure is working properly Modulesar demonstrated of integrated well and is demonstrat e workin Modules of system properly ed and is project demonstrated All satisfactor are not All modules modules of ily demon properly of project are project are rated integrated well well Integratio integrated integrate n of all and system and system modules working is working is not done accurate satisfactory and system working is not very satisfactor y Demonstar Contents of Contents of Contents Contents of Contents of tion and Presentation Presentatio of presentation Presentations Presentatio is nis Presentati is not are not n Appropriate appropriate on is appropriate appropriate and well but not appropriat Eye contact and not well arranged well e but not with few delivered Proper eye arranged well people and Poor delivery contact with Satisfactor arranged unclear voice of presentation 100 audience and y Presentati clear voice demonstrati on not with good on, clear satisfactor spoken voice with y and language good average spoken demonstra language tion but eye contact not proper Project Project Project Project Project Project report Report report is report report report is not prepared according to is is not fully according to the specified according according according the specified format to the to the to the format References specified specifiedf specified References and citations format ormat format and citations are References with few Insufficient are not appropriate and mistakes references appropriate and well citations In- and citations mentioned are sufficient appropriate references but not and mentioned citations well Conclusi Results are Results are Results Results Results are not 101 on presented in presented presented presented are presented and very in good are not not clear properly Discussi appropriatem manner. much Project work Project work on anner. Project satisfactor summary and is not Project work work y conclusion is summarized is well summary Project vague and concluded summarized and work Future properly and conclusion summary extensions in concluded. not very and the project Future Future appropriate conclusio are not extensions in extensions in . n not very clearly the project are the project Future appropriat specified not at all are very well extensions e. specified specified in the Future project are extensions well in the specified project are specified

102 Table 6 Interim Progress Assessment Rubric for Project Phase-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______Each supervisor on the project must fill a rubric for each student Barely acceptable Basic Good Very Good Total ( 0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Problem  Bare formulation  Basic Clear  Clear 5 formulation  Bare formulation formulation formulation understanding  Basic Good with well of the problem, understanding of understanding defined with scarce the problem, but of scope knowledge of lack appropriate the problem,  Very good relevant material study of relevant with understanding material study of of relevant the problem material and  Good system relevant analysis material  Near production quality system analysis 103 Self-  Slow progress,  Slow progress,  Good  Steady 5 motivation with barely with basic project progress progress and project satisfactory result outcome  Need  Highly self- management  Unresponsive to  Rely on reminder motivated supervisor supervisor’s push sometimes Good project to work  Minor management problems in project manageme

104 Table 7 Design Development and Solution Asset Rubric for Project Phase-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______

Each supervisor on the project must fill a rubric for each student Barely acceptable Basic Good Very Good Total ( 0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Analysis and  Obvious  Simple, yet  Comple  Provide 5 solving skills solution, mostly te solution sketchy complete solution with to complex functionalities solution that nontrivial problems; solves the stated functionalities Solution problem that meet the optimize desired needs desired needs Innovation in  Basic concepts   Self-  New concepts 5 the Design used correctly Superficial study of new used frequently Solution and  Lack self-study, usage of new concepts /  Self-study of self-study but apply concepts technique, with new previously taught  Self-study of good technique and technique on a new understanding solve technical satisfactory level technique,  Minor difficulties; with basic innovative  Innovati

105 understanding Work ve work with research value Self-motivation  Slow progress,  Slow  Good  Good 5 and project with barely progress, progress progress management satisfactory result with basic  Need  Need  Unresponsive to project reminder reminder Supervisor outcome sometimes sometimes  Rely on  Minor  Minor supervisor’s problems problems push to work in project in project management management

106 Table 8 Written Report Rubric for Project Phase-II Evaluation: Project: ______Name of Student: ______Name of Supervisor: ______Barely acceptable Basic Good Very Good Total ( 0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Content -Important points -Covers -All major -Major points 5 covered only important points strongly superficially points covered and supported with -No major errors -A few explained suitable detail and inaccurate clearly and misconception or irrelevant correctly points Writing -Frequent errors Some errors in -A few errors -Well proofread 5 in spelling and spelling and in spelling and -Clear and easy grammar grammar grammar to understand -Mostly Readable -Readable and -Graphs and readable, but a Follow basic easy to diagrams used few points are written report understand appropriately hard to structure understand

107 Table 9 Final Presentation Rubric for Project Phase-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______Barely acceptable Basic Good Very Good Total ( 0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Content -Important points -Covers -All major -Major points 5 covered only important points strongly superficially points covered and supported with -No major errors -A few explained suitable detail And misconception inaccurate or clearly and irrelevant correctly points Presentation -Bare organization -Basic -Good -Excellent 5 Skills and preparation organization organization organization -Lack of confidence and and preparation and preparation and familiarity in preparation -Confident in Confident and some parts of the -Confident in most parts of relaxed in the presentation only some the presentation whole parts of the Attractive to -presentation presentation audience Engaging to audience Communication -Answer at least -Answer -Answer most -Handle 5 (Q/A) one questions most questions difficult 108 correctly questions correctly and questions with -Need clarification correctly concisely ease and -Need confidence clarification -Illustrative sometimes explanation

109 CURRICULUM for the Academic year 2018 – 2019 Batch (2018-2020)

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

I - IV Semester M. Tech (CSE)

COMPUTER SCIENCE AND ENGINEERING

RAMAIAH INSTITUTE OF TECHNOLOGY (Autonomous Institute, Affiliated to VTU) BANGALORE – 54 About the Institute Ramaiah Institute of Technology (RIT) (formerly known as M. S. Ramaiah Institute of Technology) is a self-financing institution established in Bangalore in the year 1962 by the industrialist and philanthropist, Late Dr. M S Ramaiah. The institute is accredited with A grade by NAAC in 2016 and all engineering departments offering bachelor degree programs have been accredited by NBA. RIT is one of the few institutes with faculty student ratio of 1:15 and achieves excellent academic results. The institute is a participant of the Technical Education Quality Improvement Program (TEQIP), an initiative of the Government of India. All the departments are full with competent faculty, with 100% of them being postgraduates or doctorates. Some of the distinguished features of RIT are: State of the art laboratories, individual computing facility to all faculty members. All research departments are active with sponsored projects and more than 130 scholars are pursuing PhD. The Centre for Advanced Training and Continuing Education (CATCE), and Entrepreneurship Development Cell (EDC) have been set up on campus. RIT has a strong Placement and Training department with a committed team, a fully equipped Sports department, large air- conditioned library with over 80,000 books with subscription to more than 300 International and National Journals. The Digital Library subscribes to several online e-journals like IEEE, JET etc. RIT is a member of DELNET, and AICTE INDEST Consortium. RIT has a modern auditorium, several hi- tech conference halls, all air-conditioned with video conferencing facilities. It has excellent hostel facilities for boys and girls. RIT Alumni have distinguished themselves by occupying high positions in India and abroad and are in touch with the institute through an active Alumni Association. RIT obtained Academic Autonomy for all its UG and PG programs in the year 2007.As per the National Institutional Ranking Framework, MHRD, Government of India, Ramaiah Institute of Technology has achieved 45th rank in 2017 among the top 100 engineering colleges across India and occupied No. 1 position in Karnataka, among the colleges affiliated to VTU, Belagavi.

2 About the Department Year of 1984 Establishment Names of the 1. UG: B.E. in Computer Science and Engineering Programmes 2. PG: M.Tech. in Computer Science and offered Engineering 3. PG: M.Tech. in Computer Networks and Engineering 4. Ph.D 5. M.Sc(Engg.) by Research

The Department of Computer Science and Engineering (CSE) has eminent emeritus professors, 10 faculty with the doctorate degree and 15pursuing the doctoral studies. The faculty has been publishing research papers in refereed journals and in conference proceedings. The department also conducts vocational courses and proficiency courses on fundamental and new programming languages and computer science concepts. These courses are conducted beyond college hours/summer semester by the faculty of the department. Some of the faculty are involved in institutional level activities and actively involved in interdisciplinary research activities. The department has state of the art laboratories like SAP, IBM Centre of Excellence and CUDA learning center. Technical seminars, workshops and hackathons are conducted regularly for UG & PG students. The department encourages the students to conduct and participate in extra-curricular/sports activities. The alumni network is very active and regular meeting are conducted by the department. The department is accredited by Nation Board of Accreditation (NBA). The department has MoUs with leading IT Industries like NVIDIA, SAP, IBM and HP. The department conducts subjects with more of hands-on sessions and encourages students to take up MOOC based online courses in NPTEL, IITBombayX, Coursera, Udacity and edX.

3 VISION OF THE INSTITUTE To be an Institution of International Eminence, renowned for imparting quality technical education, cutting edge research and innovation to meet global socio economic needs

MISSION OF THE INSTITUTE MSRIT shall meet the global socio-economic needs through  Imparting quality technical education by nurturing a conducive learning environment through continuous improvement and customization  Establishing research clusters in emerging areas in collaboration with globally reputed organizations  Establishing innovative skills development, techno-entrepreneurial activities and consultancy for socio-economic needs

QUALITY POLICY We at M. S. Ramaiah Institute of Technologystrive to deliver comprehensive, continually enhanced, global quality technical and management education through an established Quality Management System complemented by the synergistic interaction of the stake holders concerned

VISION OF THE DEPARTMENT To build a strong learning and research environment in the field of Computer Science and Engineering that responds to the challenges of 21st century.

MISSION OF THE DEPARTMENT  To produce computer science graduates who, trained in design and implementation of computational systems through competitive curriculum and research in collaboration with industry and other organizations  To educate students in technology competencies by providing professionally committed faculty and staff  To inculcate strong ethical values, leadership abilities and research capabilities in the minds of students so as to work towards the progress of the society

4 PROGRAM EDUCATIONAL OBJECTIVES (PEOs):

An M.Tech (Computer Science & Engineering) graduate of M S Ramaiah Institute of Technology should, within three to five years of graduation

PEO1 Pursue a successful career in the field of Computer Science & Engineering or a related field utilizing his/her education and contribute to the profession as an excellent employee, or as an entrepreneur PEO2 Be aware of the developments in the field of Computer Science & Engineering, continuously enhance their knowledge informally or by pursuing doctoral studies and engage in research and inquiry leading to new innovations and products PEO3 Be able to work effectively in multidisciplinary and multicultural environments and Be responsible members and leaders of their communities PEO4 Understand the human, social and environmental context of their profession and contribute positively to the needs of individuals and society at large

PROGRAM OUTCOMES (POs):

PO1: An ability to independently carry out research/investigation and development work to solve practical problems PO2: An ability to write and present a substantial technical report/document PO3: Students should be able to demonstrate a degree of mastery over the area as per the specialization of the program. The mastery should be at a level higher than the requirements in the appropriate bachelor program. PO4: Acquire professional and intellectual integrity to stress upon the impact of computer engineering applications with respect to economic and environmental aspects PO5: Acquire methods of engaging in life-long learning not only to predict and plan the projects of the future but also to groom others in the group.

5 Curriculum Course Credits Distribution

Semester Humanit Basic Engin Profession Professiona Other Project Extra & Total ies Science eering al Courses l Courses- Electi Work/ Co- credits & Social s/ Lab Scienc - Core Electives ves Internship curricular in a Sciences (BS) es/ (Hard (PC-E) (OE) (PW /IN) activities semester (HSS) Lab core, soft (EAC) (ES) core, Lab) (PC-C) First 0 0 0 12 12 0 0 0 24 Second 0 0 0 12 12 0 0 0 24 Third 0 0 0 4 4 0 10 0 18 Fourth 0 0 0 0 0 0 22 0 22 Total 88

6 SCHEME OF TEACHING I SEMESTER Credits Contact Sl. Course Course Name Category Hours No. Code L T P Total 1. MCS11 Advanced Engineering PC-C 4 0 0 4 56 Mathematics 2. MCS12 Advances in Database PC-C 3 1 0 4 42 Management Systems 3. MCSExx Elective-I PC-E * * * 4 * 4. MCSExx Elective-II PC-E * * * 4 * 5. MCSExx Elective-III PC-E * * * 4 * 6. MCSL13 Software Development PC-C 0 0 1 1 28 for Portable Devices Laboratory 7. MCSL14 Python Programming PC-C 0 0 1 1 28 Laboratory 8. MCS15 Technical Seminar-I PC-C 0 0 2 2 -- Total 24

7 II SEMESTER Credits Contact Sl. Course Course Name Category Hours No. Code L T P Total 1. MCS21 Data Analytics Using R PC-C 4 0 0 4 56 2. MCS22 Advanced Algorithms PC-C 3 0 1 4 42+28 3. MCSExx Elective-IV PC-E * * * 4 * 4. MCSExx Elective-V PC-E * * * 4 * 5. MCSExx Elective-VI PC-E * * * 4 * 6. MCSL23 IoT and Cloud PC-C 0 0 1 1 28 Computing Laboratory 7. MCSL24 Data Analytics Lab PC-C 0 0 1 1 28 8. MCS25 Technical Seminar-II PC-C 0 0 2 2 -- Total 24

8 III SEMESTER Credits Contact Sl. Course Course Name Category Hours No. Code L T P Total 1 MCS31 Engineering PC-C 4 0 0 4 56 Economics, Project Management and Professional Ethics 2 MCSExx Elective -VII PC-E * * * 4 56 3 MCSE32 Internship/Industrial IN 0 0 4 4 * Training 4 MCSE33 Project Work-I PC-C 0 0 6 6 * Total 18 Internship: The department should prepare Gantt chart with milestones, deliverables, evaluation and maintain weekly dairy signed by both Internal and External Guide. Project Work-I: Seminar on: problem definition, literature survey and methodology to be used. IV SEMESTER Credits Contact Sl. Course Course Name Category Hours No. Code L T P Total 1 MCS41 Project Work-II PC-C 0 0 22 22 * Total 22

9 Electives Subject Code Subject Name Stream 1 MCSE01 Advances in Computer Networks MCSE02 Wireless Ad hoc Networks MCSE03 Distributed Systems MCSE04 Cloud Computing MCSE05 Software Defined Networks MCSE06 Advances in Storage Area Networks MCSE07 Protocol Engineering MCSE08 Network Management Stream 2 Multi core Architecture and MCSE09 Programming MCSE10 Embedded Systems MCSE11 Compiler Optimization Techniques MCSE12 Advanced Software Engineering MCSE13 Software Oriented Architecture MCSE14 Information Retrieval MCSE15 Web Technologies MCSE16 Advances in Digital Image Processing MCSE17 Advances in Operating Systems Stream 3 MCSE18 Cryptography and Security MCSE19 Information and network security MCSE20 Digital Forensics and cyber crime MCSE21 Applied Cryptography MCSE22 Internet of Things MCSE23 Software Testing Privacy and security in Online Social MCSE24 Media MCSE25 Start-up Engineering Stream 4 MCSE26 Artificial Intelligence MCSE27 Machine Learning MCSE28 Deep Learning MCSE29 Social Network Analysis

10 MCSE30 Natural Language Processing MCSE31 Soft Computing MCSE32 Computer System Performance Analysis MCSE33 Future Skills 2020 MCSE34 Cyber Physical Systems MCSE35 High Performance Computing

Note:

The total number of credits for all the elective courses is 4. The Faculty coordinator can choose to conduct a 1 credit integrated lab or 1 credit Tutorial for the course offered. The lab exercises and tutorial exercises will be formulated during teaching.

11 Advanced Engineering Mathematics Course Code: MCS11 Credits: 4:0:0 Prerequisites:Engineering Mathematics I- IV Contact Hours: 56 Course Coordinator/s: Dr. Govindaraju M V

Unit I Numerical Methods: Numerical Solution of Algebraic and Transcendental equations:Horner’s method and Graffe root method.Numerical Solution of system of non-linear equations:Newton-Raphson method.Solution of Higher Order ODE with initial conditions: Runge – Kutta Method and Milne’s Predictor and Corrector method. Unit II Linear Transformations: Introduction to Linear transformations, Composition of matrix transformations, Rotation about the origin, Dilation, Contraction and Reflection, Kernel and Range, Change of basis. Unit III Random Variables: Random Variables (Discrete and Continuous), Probability density function, Cumulative distribution function, Mean, Variance, Moment generating function.Probability Distributions: Binomial distribution, Poisson distribution, Normal distribution, Exponential distribution and Uniform distribution.Joint probability distribution:Joint probability distribution (both discrete and continuous), Conditional expectation. UnitIV Markov Process: Introduction, Markov chain and Transition probabilities, Continuous Parameter Markov Chain, Pure Birth and Pure Death Process, Birth and Death Process, Renewal Process. UnitV Introduction to Queuing and Applications: Single server with infinite system capacity queuing models.M/M/1: ∞/FIFO, K/FIFO, M/M/s:∞/FIFO, K/FIFO, M/G/1 Queuing system characteristics, Case studies.

Text Books: 1. Erwin Kreyszig - Advanced Engineering Mathematics-Wiley-India publishers- 10th edition-2015. 2. B.S.Grewal - Higher Engineering Mathematics - Khanna Publishers - 40th edition-2007.

12 3. R.E. Walpole, R. H. Myers, R. S. L. Myers and K. Ye – Probability and Statistics for Engineers and Scientists – Pearson Education – Delhi – 8th edition – 2007. 4. Garreth Williams – Linear Algebra with Applications – Jones and Bartlett Press – 4th edition – 2001.

Reference Books: 1. Sheldon M. Ross – Probability models for Computer Science – Academic Press – 2009. 2. Murray R Spiegel, John Schiller & R. Alu Srinivasan – Probability and Statistics – Schaum’s outlines -2nd edition. 3. Kishor S. Trivedi – Probability & Statistics with reliability, Queuing and Computer Science Applications – PHI – 2nd edition – 2002.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Solve the problems of algebraic, transcendental and ordinary differential equations using numerical methods. (PO1,3,4) 2. Find the Kernel and Range of Linear transformations. (PO1,3) 3. Express the probability distribution arising in the study of engineering problems and their applications. (PO1,3,4) 4. Apply the Markov Chain in prediction of future events. (PO1,3) 5. Apply and calculate the various parameters of the queuing models. (PO1,3)

13 Advances in Database Management Systems Course Code: MCS12 Credits: 3:1:0 Prerequisites :DBMS Contact Hours:42 Course Coordinator/s: Dr. Seema S

Unit I Database models and overview of Relational data model: Database models: Flat data model, Entity relationship model, Relation model, Record base model, Network model, Hierarchical model, Object oriented data model, Object relation model, Semi structured model, Associative model, Context data model, graph data model, Overview of relational data model, querying relational model with relational algebra, transaction processing and concurrency control. Unit II Indexing and Hashing: Basic Concepts, Ordered Indices, B+-Tree Index Files, B+-Tree Extensions, Multiple-Key access, Static Hashing, Dynamic Hashing, Comparison of Ordered Indexing and Hashing, Bitmap Indices, Index Definition in SQL. Unit III Query Processing and Optimization: Overview, Measures of Query Cost, Selection Operation, Sorting, Join Operation, Other Operations, Evaluation of Expressions Query Optimization: Transformation of Relational Expressions, Estimating Statistics of Expression Results, Choice of Evaluation Plans. Unit IV Parallel Databases: Introduction, I/O Parallelism, Inter-query Parallelism, Intra-query Parallelism, Intra-operation Parallelism, Interoperation Parallelism, Query Optimization, Design of Parallel Systems, Parallelism on Multi-core Processors Unit V Distributed Databases: Homogeneous and Heterogeneous Databases, Distributed Data Storage, Distributed Transactions, Commit Protocols, Concurrency Control in Distributed Databases, Availability, Distributed Query Processing, Heterogeneous Distributed Databases, Cloud-Based Databases, Directory Systems

Text Books: 1. Database System Concepts, Abraham Silberschatz, Henry F. Korth, Sixth Edition, McGraw Hill Education. 14 2. Fundamentals of Database Systems, Ramez Elmasri, Shamkant B. Navathe, Fifth Edition, Pearson Publications.

Reference book: 1. Database Management Systems, Raghu Ramakrishnan, Johanners Gehrke, Second Edition. McGraw-Hill Education.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Understand different database model and the overview of relation database model. (PO1,3,4) 2. Understand the methods of storing, managing and interrogating complex data and the background processes involved in query processing. (PO1,3,4) 3. Analyze background methods to optimizing the query. (PO1,3,4) 4. Understand the concept of distributed databases and parallel databases. (PO1,3,4) 5. Analyze the processing the queries in distributed and parallel databases. (PO1,3,4)

15 Software Development for Portable Devices Laboratory CourseCode:MCSL13 Credits: 0:0:1 Prerequisites:Nil Contact Hours: 28 Course Coordinator/s: Mr. Pramod Sunagar

Experiments that are to be conducted as a part of the course: 1. Introducing different Android development tools and developing Hello World application. 2. Develop an android application to investigate the activity life cycle. 3. Develop an android application to investigate the fragments. 4. Develop an android application to create user interfaces with different layouts and views. 5. Develop an android application to create a Registration form using appropriate widgets. 6. Develop an android application to embed PickerViews in an activity. 7. Develop an android application on using implicit & explicit Intents. 8. Develop an android application to utilize Action bar. 9. Develop an android application to utilize Toasts and Notifications. 10. Develop an android application to work SQLite data storage and create a table. 11. Develop an android application to work SQLite data storage and perform various operations on the table. 12. Develop an android application to introduce content providers. 13. Developing applications to work with messaging and telephony services. 14. Develop an android application for creating location based service.

Reference Books: 1. Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley Publishing. 2. Android Application Development, Programming with the Google SDK, by, Rick Rogers, John Lombardo, Zigurd Mednieks, Blake Meike, SPD, Oreilly, ISBN10: 81-8404-733-9, ISBN13:978-81- 8404-733-2 3. Hello Android, Introducing Google’s Mobile Development Platform, 3rd Edition, by Ed Burnette, Pragmatic Programmers, LLC.ISBN-10: 1-934356-56-5, ISBN-13: 978-1-934356-56-2 4. https://developer.android.com/training/index.html

16 5. http://www.codelearn.org/android-tutorial 6. http://www.tutorialspoint.com/android/

Course Outcomes (COs): At the end of the course, students should be able to: 1. Identify the various aspects of android platform and different android developer tools. (PO1,3,4) 2. Recognize the activity life cycle and fragment life cycle. (PO1,3,4) 3. Demonstrate the usage of different Views and ViewGroups. (PO1,3,4) 4. Demonstrate the knowledge of location-based services and notifications in applications. (PO1,3,4) 5. Develop the Android’s communication abilities using SMS and Telephony services. (PO1,3,4)

17 Python Programming Laboratory CourseCode:MCSL14 Credits: 0:0:1 Prerequisites:Nil Contact Hours: 28 Course Coordinator/s: Dr. Rajarajeswari S

Course Contents:

1. Python Basics 2. Control Structures 3. Functions 4. Strings, lists, list comprehensions 5. Tuples and dictionaries 6. Modules and packages 7. Object Oriented Concepts 8. Regular Expression 9. Programs on File I/O 10. Exceptions 11. Network Programming 12. GUI Programming 13. Design a simple game application using pygame 14. Game application Demo.

Text Books: 1. Python Programming: Using Problem Solving Approach, Reema Thareja. 2. Problem Solving and Python Programming, E Balagurusamy

Reference Books: 1. Introduction to computer science using Python : A computational Problem solving focus, Charles dierbagh. 2. Practical programming: An Introduction To Computer science using Python,Campbell, J., Gries, P., Montojo, J., & Wilson, G. (2013), Pragmatic Bookshelf,2ndEdition. 3. Learn Python the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code, Shaw, Z. A. (2013), Addison-Wesley. 18 Course Outcomes (COs) After the course, students should be able to: 1. Adapt and combine standard algorithms to solve a given problem (includes numericalas well as non-numerical algorithms)(PO1,3,4) 2. Adequately use standard programming constructs: repetition, selection, functions,Composition, modules, aggregated data (arrays, lists, etc.)(PO1,3,4) 3. Understand and use object based software concepts (constructing OO software will bedealt with in the course Software Engineering).(PO1,3,4) 4. Create, debug and test a software application using the Python programming language.(PO1,3,4) 5. Use library software for (e.g.) building a graphical user interface, web application, orMathematical software.(PO1,3,4)

19 Technical Seminar-I/II Course Code: MCS15/MCS25 Credits: 0:0:2 Prerequisites: Nil Rubrics for assessment of Seminar Criteria Distinguished (5) Good (4) Basic (3) Unacceptable (1) Score Organization - Extremely well - Generally well - Somewhat - Poorly organized organized. organized. organized. -Does not clearly -Introduces the -Introduces the -Introduces the introduce the purpose of the purpose of the purpose of the purpose of the presentation clearly presentation clearly. presentation presentation and creatively. -Includes transitions -Includes some -Uses ineffective -Effectively includes to connect transitions to transitions that smooth, clever key points and connect key points rarely connect transitions which are better transitions but there is difficulty points; cannot succinct but not from idea to idea in following understand broken up in order to are noted. presentation. presentation because connect key points - Most information - Student jumps there is no sequence -Student presents presented is in around topics. of information. information in logical, logical sequence; Several points are - Presentation is interesting sequence A few minor points confusing. broken and which audience can may be confusing -Ends with a disjointed; no follow. -Ends with a summary or apparent logical -Ends with an accurate summary of main conclusion; little order of conclusion showing points showing evidence of presentation-Ends thoughtful, strong some evaluation of evaluating content without a summary 20 evaluation of the the evidence based on Evidence. or conclusion. evidence presented. presented.

Content: -Speaker provides an -For the most part, -Explanations of -No reference is Depth and accurate and complete explanations of concepts and/or made to literature or Accuracy explanation of key concepts and theories are theory. Presentation concepts and theories, theories are accurate inaccurate or is not clear; drawing upon relevant and complete. Some incomplete. Little information that literature. helpful applications attempt is made to does not support Applications of theory of theory are tie in theory. There presentation in any are included to included. is a great deal of way is unnecessarily illuminate issues. -Presents evidence information that is included. -Provides evidence of of valid research on not connected to the -Presents little or no extensive and valid the selected topic, current presentation. evidence of valid research on the with multiple -Presents evidence of research on the selected topic, with sources. research on the selected topic. multiple and varied -Combines existing selected topic, with -Shows little sources. ideas to form new sources. evidence of the -Combines and insights. -Combines existing combination of evaluates existing -No significant ideas. ideas. ideas to form new errors are made; a -Few errors are made -Information insights. few inconsistencies to distract a included is -Information or errors in knowledgeable sufficiently completely accurate; information. listener, but some inaccurate that all names and facts -Level of information is indicates absence of were precise and presentation is accurate. accurate 21 explicit generally -Portions of information. -Level of presentation appropriate. presentation are too -Presentation is appropriate for the elementary or too consistently is too audience. sophisticated for elementary or too audience. sophisticated for the audience. Creativity -Uses the unexpected -Some originality -Little or no - Bland and to full advantage; very apparent; clever at variation; a few predictable. original, clever, and times; good variety original touches but Repetitive with little creative approach that and blending of for the most part or no variety; little captures audience's materials/media. material presented creative energy attention. with little originality used. or interpretation. Use of -Graphics designed -While graphics - occasional use of -Student uses Communicat reinforce presentation relate and aid graphics that rarely superfluous ion Aids and maximize presentation, media support presentation graphics, no audience are not as varied ; visual aids were not graphics, or graphics understanding; use of and not as well useful or clear, time that are so poorly media is varied and connected to the wasting use of prepared that they appropriate with presentation. multimedia detract from the media not being added presentation. simply for the sake of use.

22 Use of -Poised, clear -Clear articulation -Audience -Student is anxious Language articulation; proper but not as polished; occasionally has and cannot be heard volume; steady rate; slightly trouble hearing the or monotone with enthusiasm; uncomfortable at presentation; seems little or no confidence; speaker is times Most can uncomfortable.- expression.- clearly comfortable in hear presentation.- Presentation has Presentation has front of the group. - Presentation has no three misspellings four or more Presentation has no more than two and/or grammatical spelling errors misspellings or misspellings and/or errors. and/or grammatical grammatical errors. grammatical errors errors.

Eye Contact -Maintains eye - Student maintains -Some eye contact, -Student reads all or contact; seldom eye contact most of but not most of slides with returning to notes; the time but Maintained and at no eye contact. presentation is like a frequently returns to least half the time planned conversation. slides. reads most of slides. Viva Voce -Demonstrates -Demonstrates -Demonstrates some -Demonstrates extensive knowledge knowledge of the knowledge of incomplete of the topic by topic by responding rudimentary knowledge of the responding accurately and questions by topic by confidently, precisely Appropriately responding responding and addressing accurately to inaccurately and appropriately to all questions . At ease questions. Inappropriately to 23 audience with answers to all questions. questions. questions but fails to elaborate. Report Document is fully Document Document has low Document has compliant with has high degree of degree of minimal degree of required compliance compliance with compliance with rules and with required required required rules structure. rules rules and Document uses and and structure highly appropriate structure. structure Document contains language Document uses Document uses inappropriate and style. appropriate mostly appropriate language or many language language and spelling / specific to the contains occasional grammatical errors discipline spelling / grammatical errors Regularity Reports to guide Reports to guide Does not report to Has not met the regularly for seminar often for seminar guide for seminar guide at all. discussion discussion discussion Overall Excellent Good Average Poor Presentation

24 Data Analytics Using R Course Code: MCS21 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator:Dr. S Rajarajeswari Unit I Introduction to big Data: Big Data Overview with typical examples, What is Data Science, Introduction to Big Data Analytics, Data Analytics Life cycle, Domain-specific Life cycle. Unit II Data, Data Range, Data Management, Data Mining, Data Munging, Wrangling and Cleaning, Databases and Relational Algebra, Parallel Data Bases, Parallel Query Processing, Mean and Standard Deviation, Estimation- Only Analyses, Use Case: Watching Data Trends with Google Ngrams, Use Case: Estimating Move Preferences. Unit III Introduction to Analytics - introduction to machine learning, Supervised learning overview, simple nearest neighbor, decision trees/forests, regression, Unsupervised learning: k-means, multi-dimensional scaling Graph Analytics: PageRank, community detection, recursive queries, iterative processing, Text Analytics: latent semantic analysis, Visualization & visual data analytics. Unit IV Tools and Methods deployed in Data Science, Introduction to R language, R functions and programming, R Grphics, R and commonly used statistics, R Commander, analyzing and exploring data with R, R studio, Advantages and disadvantages of R, R vs SAS Map Reduce/Hadoop, MapR Technologies and The Most Powerful, Elegant FREE Version of Hadoop Window and MADlib functions. Unit V Case Studies and Illustrations:IBM BigInsights, BigSheets, and Netezza Customer Intelligence, RainStor Big Data Analytics on Hadoop - The Industry's First Enterprise-Class Database Running Natively on Hadoop, DataStax (Including Coverage of the Free "Community Edition" of DataStax's Cassandra Implementation, with OpsCenter), Microsoft's Big Data Solution,Jigsaw: Visualization for Investigative Analysis and latest state of the art examples.

25 Text Books: 1. Chen, M., Mao, S., Zhang, Y., & Leung, V. C.“Big Data-Related Technologies, Challenges and Future Prospect”s , 2014, Springer (Chapters: 1-6) 2. Lin, J., & Dyer, C. “Data-intensive text processing with MapReduce”,2010, (Chapters: 2and 5) 3. Robert I. Kabacoff, “R in Action”, 2011,(Chapter 2 Pages:21-32) 4. Zumel, N., & Mount, J. “Practical data science with R”, 2014, (Chapters: 5, Pages 81-91 )

Reference Books: 1. O. R. Team. Big Data Now: Current Perspectives from O’Reilly Radar. O’Reilly Media, 2011. 2. Adler, Joseph. R in a Nutshell, Second Edition. O’Reilly Media, 2012.

Course Outcomes (COs): At the end of the course, students should be able to: 1. To take typical Big Data, filter and wrangle the data. (PO1,3,4) 2. To recognize the domain for analysis.(PO1,3,4) 3. To identify the type of domain-specific analytics to be deployed. (PO1,3,4) 4. To carry out mathematical approach in analytics. (PO1,3,4) 5. To be ready as a Data Scientist leading towards suitable job in analytics in industry or to pursue research towards higher degree. (PO1,3,4)

26 Advanced Algorithms Course Code: MCS22 Credits: 3:0:1 Prerequisites: Knowledge of Analysis and Design of Algorithm Contact Hours: 42+28 Course Coordinator: Dr. Jagadish S Kallimani Unit I Analysis Techniques: Growth of Functions, Asymptotic notations, Standard notations and common functions, Recurrences and Solution of Recurrence equations – The Substitution method, The recurrence – tree method, The master method, Amortized Analysis: Aggregate, Accounting and Potential Methods. Unit II Graph Algorithms: Bellman-Ford Algorithm, Single source shortest paths in a DAG, Johnson’s Algorithm for sparse graphs, Maximum bipartite matching. Trees: B-trees, Red-Black trees Hashing: General Idea, Hash Function, Separate Chaining, Open addressing, Rehashing, Extendible hashing. Unit III Number – Theoretic Algorithms: Elementary notations, GCD, Modular Arithmetic, Solving modular linear equations, The Chinese remainder theorem, Powers of an element, RSA cryptosystem. Heaps: Heaps, Priority Queues, Binomial Heaps, Fibonacci Heaps. Unit IV String Matching Algorithms: Naïve string matching, Rabin – Karp algorithm, String matching with finite automata, Knuth-Morris-Pratt algorithm, Boyer-Moore Algorithms. Unit V Algorithmic Puzzles: Magic Square, n-queens problem, Glove Selection, Ferrying Soldiers, Jigsaw Puzzle Assembly, A Stack of Fake Coins, Maximum Sum Descent, Hats of Two Colors, Pluses and Minuses, Searching for a Pattern, Locker Doors, Palindrome Counting, Inverting a Coin Triangle, Sorting 5 in 7.

Text Books: 1. T H Cormen, C E Leiserson, R L Rivest and C Stein: Introduction to Algorithms, 3/e, PHI, 2011. 2. Mark Allen Weiss: Data Structures and Algorithm Analysis in C++, 3rdEdition, Pearson Education, 2011.

27 3. Anany Levitin and Maria Levitin: Algorithmic Puzzle, Oxford University Press, 2011

Reference Books: 1. Ellis Horowitz, Sartaj Sahni, S Rajasekharan: Fundamentals of Computer Algorithms, University Press, 2007. 2. Alfred V Aho, John E Hopcroft, J D Ullman: The Design and Analysis of Computer Algorithms, Pearson Education, 2011.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Devise recurrence relations and amortized cost of various operations. (PO1,3,4) 2. Illustrate graph algorithms such as Bellman-Ford, Shortest path, bipartite matching, B-trees, Red-Black trees and hashing techniques. (PO1,3,4) 3. Identify the methods for solving modular linear equations, Chinese remainder theorem and RSA cryptosystem, types of heaps such as Binomial and Fibonacci heaps. (PO1,3,4) 4. Assess the string matching algorithms such as Boyer-Moore and Knuth- Morris-Pratt algorithm. (PO1,3,4) 5. Compose mathematical models, objective functions and constraints to solve algorithmic puzzles. (PO1,3,4,5)

28 IoT and Cloud Computing Laboratory Course Code:MCSL23 Credits: 0:0:1 Prerequisites: Nil Contact Hours: 28 Course Coordinator/s: Mrs. Aparna R

Internet of Things Laboratory: Internet of Things Laboratory provides one of the simplest ways to design and implement various IoT applications. IoT is a flexible platform for experimental research that uses connected devices in homes and beyond.  Interconnection of devices and implementation of application scenarios.  Deployment and monitoring of field studies and analysis of data from experiments.  Sharing of data, code to evaluate ideas in a diverse set. Projects can be designed in various IoTs domain like 1. Home Automation- Smart Lighting, Smart Appliances, Intrusion Detection, Smoke/Gas Detectors. 2. Cities - Smart Parking, Smart Lighting, Smart Roads, Structural Health Monitoring, Surveillance Emergency Response. 3. Environment -Weather Monitoring, Air Pollution Monitoring, Noise Pollution Monitoring, Forest Fire Detection, River Floods Detection. 4. Energy -Smart Grids, Renewable Energy Systems. 5. Retail -Inventory Management, Smart Payments, Smart Vending Machines. 6. Logistics-Route Generation and scheduling, Fleet Tracking Shipment, Monitoring, Remote Vehicle Diagnostics. 7. Agriculture-Smart Irrigation, Green House Control. 8. Industry - Machine Diagnosis & Prognosis - Indoor Air Quality Monitoring. 9. Health & Lifestyle - Health & Fitness Monitoring, Wearable Electronics. The above mentioned projects can be developed using microcontrollers like Arduino Boards and Raspberry Pi. Course Delivery: This course is delivered through presentations and miniproject.

Cloud Computing Laboratory List of Experiments: Use Eucalyptus or Open Nebula or equivalent to set up the cloud and demonstrate: 29 1. Find procedure to run the virtual machine of different configuration. Check how many virtual machines can be utilized at particular time. 2. Find procedure to attach virtual block to the virtual machine and check whether it holds the data even after the release of the virtual machine. 3. Install a C compiler in the virtual machine and execute a sample program. 4. Show the virtual machine migration based on the certain condition from one node to the other. 5. Find procedure to install storage controller and interact with it. 6. Find procedure to set up the one node Hadoop cluster. 7. Mount the one node Hadoop cluster using FUSE. 8. Write a program to use the API’s of Hadoop to interact with it. 9. Write a wordcount program to demonstrate the use of Map and Reduce tasks.

List of Experiments: 1. SaaS: Google Drive  With your Gmail account, create a spreadsheet to share with the people at the same table, invite them.  See how you can simultaneously edit the document you just created PaaS: google Maps http://maps.google.com/maps/api/staticmap?center=Eiffel+Tower&zoom=12 &size=512x512&sensor=false 2. Design Virtual Machine using VM player and test Client server application using Virtual Machine 3. Design Virtual Machine using VM player and test Client server application using Virtual Box 4. Compare the pros and cons of VM player and Virtual Box 5. Paas – Deploy Applications to google App Engine - simple web applications 6. Paas – Deploy Applications to google App Engine - web applications with database 7. Deploy Applications to cloud foundry using VMC 8. Deploy Applications to cloud foundry using Micro cloud foundry 9. Deploy Applications to cloud foundry using Eclipse 10. To Set up a Hadoop Cluster – Single Node 11. To Set up a Hadoop Cluster – Multi Node 12. Execute Map Reduce Programs in Hadoop Cluster 13. Study of Future Grid

30 Reference Books: 1. Cloud Computing: Theory and Practice, Dan Marinescu, 1st edition, MK Publishers, 2013. 2. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things, Kai Hwang, Jack Dongarra, Geoffrey Fox. MK Publishers. 3. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert Elsenpeter, McGraw Fill, 2010 4. Cloud computing A Hands on Approach Arshdeep Bahga,Vijay Madisetti Universities Publications 5. Online Readings : http://www.pds.ewi.tudelft.nl/ , http://csrc.nist.gov/publications/nistpubs

Course Outcomes (COs): At the end of the course, students should be able to: 1. Design applications that will communicate with IoT hardware and software.(PO1,3,4) 2. Explore specific IoT domain like Network, communications, Management infrastructure, Services applications development and Human interaction.(PO1,3,4) 3. Examine an IoT offering of the project in terms of IoT levels and Protocols.(PO1,3,4) 4. Describe different kinds of Internet-connected product concepts.(PO1,3,4)

31 Data Analytics Lab Course Code:MCSL24 Credits: 0:0:1 Prerequisites: Nil Contact Hours: 28 Course Coordinator/s:Mr. Srinidhi H

1. HDFS Start by reviewing HDFS. You will find that its composition is similar to your local Linux file system. You will use the Hadoop fs command when interacting with HDFS.  Review the commands available for the Hadoop Distributed File System  Copy file foo.txt from local disk to the user’s directory in HDFS  Get a directory listing of the user’s home directory in HDFS  Get a directory listing of the HDFS root directory  Display the contents of the HDFS file user/fred/bar.txt  Move that file to the local disk, named as baz.txt  Create a directory called input under the user’s home directory  Delete the directory input old and all its contents  Verify the copy by listing the directory contents in HDFS 2. MapReduce  Create a JOB and submit to cluster  Track the job information  Terminate the job  Counters in MR Jobs with example  Map only Jobs and generic map examples  Distributed cache example  Combiners, Secondary sorting and Job chain examples 3. MapReduce (Programs) Using movie lens data  List all the movies and the number of ratings  List all the users and the number of ratings they have done for a movie  List all the Movie IDs which have been rated (Movie Id with at least one user rating it)  List all the Users who have rated the movies (Users who have rated at least one movie)  List of all the User with the max, min, average ratings they have given against any movie

32  List all the Movies with the max, min, average ratings given by any user 4. Extract facts using Hive Hive allows for the manipulation of data in HDFS using a variant of SQL. This makes it excellent for transforming and consolidating data for load into a relational database. In this exercise you will use HiveQL to filter and aggregate click data to build facts about user’s movie preferences. The query results will be saved in a staging table used to populate the Oracle Database. The moveapp_log_json table contains an activity column. Activity states are as follows:  RATE_MOVIE  COMPLETED_MOVIE  PAUSE_MOVIE  START_MOVIE  BROWSE_MOVIE  LIST_MOVIE  SEARCH_MOVIE  LOGIN  LOGOUT  INCOMPLETE_MOVIE hive> SELECT * FROM movieapp_log_json LIMIT 5; hive> drop table movieapp_log_json; hive> CREATE EXTERNAL TABLE movieapp_log_json ( custId INT, movieId INT, genreId INT, time STRING, recommended STRING, activity INT, rating INT, price FLOAT ) ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.JsonSerde' LOCATION '/user/oracle/moviework/applog/'; hive> SELECT * FROM movieapp_log_json LIMIT 20; hive> SELECT MIN(time), MAX(time) FROM movieapp_log_json 1. PURCHASE_MOVIE Hive maps queries into Map Reduce jobs, simplifying the process of querying large datasets in HDFS. HiveQL statements can be mapped to phases of the Map Reduce framework. As illustrated in the following figure, selection and transformation operations occur in map tasks, while aggregation is handled by reducers. Join operations are flexible: they can be performed in the reducer or mappers depending on the size of the leftmost table. 1. Write a query to select only those clicks which correspond to starting, browsing, completing, or purchasing movies. Use a CASE statement to transform the RECOMMENDED column into integers where ‘Y’ is 1 and ‘N’ is 0. Also, ensure GENREID is not null. Only include the first 25 rows.

33 2. Write a query to select the customer ID, movie ID, recommended state and most recent rating for each movie. 3. Load the results of the previous two queries into a staging table. First, create the staging table: 4. Next, load the results of the queries into the staging table. 5. Extract sessions using Pig While the SQL semantics of HiveQL are useful for aggregation and projection, some analysis is better described as the flow of data through a series of sequential operations. For these situations, Pig Latin provides a convenient way of implementing data flows over data stored in HDFS. Pig Latin statements are translated into a sequence of Map Reduce jobs on the execution of any STORE or DUMP command. Job construction is optimized to exploit as much parallelism as possible, and much like Hive, temporary storage is used to hold intermediate results. As with Hive, aggregation occurs largely in the reduce tasks. Map tasks handle Pig’s FOREACH and LOAD, and GENERATE statements. The EXPLAIN command will show the execution plan for any Pig Latin script. As of Pig 0.10, the ILLUSTRATE command will provide sample results for each stage of the execution plan. In this exercise you will learn basic Pig Latin semantics and about the fundamental types in Pig Latin, Data Bags and Tuples. 1. Start the Grunt shell and execute the following statements to set up a dataflow with the click stream data. Note: Pig Latin statements are assembled into Map Reduce jobs which are launched at execution of a DUMP or STORE statement. 2. Group the log sample by movie and dump the resulting bag. 1. Add a GROUP BY statement to the sessionize.pig script to process the click stream data into user sessions.

Reference Books: 1. Tom White, "Hadoop: The Definitive Guide", Third Edition, O'Reilley, 2012. 2. Eric Sammer, "Hadoop Operations", O'Reilley, 2012. 3. Vignesh Prajapati, Big data analytics with R and Hadoop, SPD 2013. 4. E. Capriolo, D. Wampler, and J. Rutherglen, "Programming Hive", O'Reilley, 2012. 5. Lars George, "HBase: The Definitive Guide", O'Reilley, 2011. 6. Alan Gates, "Programming Pig", O'Reilley, 2011

34 Course Outcomes (COs): At the end of the course, students should be able to: 1. Describe big data and use cases from selected business domains. (PO1,3,4) 2. Explain NoSQL big data management. (PO1,3,4) 3. Install, configure, and run Hadoop and HDFS. (PO1,3,4) 4. Perform map-reduce analytics using Hadoop. (PO1,3,4) 5. Use Hadoop related tools such as HBase, Cassandra, Pig, and Hive for big data Analytics. (PO1,3,4)

35 Engineering Economics, Project Management and Professional Ethics Course Code: MCS31 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Prof. Nagabhushana A M Unit I Introduction: Understanding Project Management, Defining the Project Manager’s Role, The Project Manager as the Planning Agent, The Downside of Project Management, Classification of Projects, Differing Views of Project Management, Concurrent Engineering: A Project Management Approach, Project Management Growth Concepts and definitions: Systems, Programs, and Projects: A Definition, Product versus Project Management: A Definition, The Many Faces of Success, The Many Faces of Failure, The Stage-Gate Process, Project Management Methodologies, Organizational Structures: Traditional (Classical) Organization, Matrix Organizational Form Modification of Matrix Structures, The Strong, Weak, Balanced Matrix. Unit II Organizing and staffing the project office and the team: The Staffing Environment, Selecting the Project Manager: An Executive Decision, Skill Requirements for Project and Program Managers, Next Generation Project Managers, Duties and Job Descriptions, Selecting the Project Management Implementation Team, Management Functions: Project Authority, Team Building as an Ongoing Process, Dysfunctions of a Team , Employee– Manager Problems, Management Pitfalls , Conflicts: The Conflict Environment, Conflict Resolution, The Management of Conflicts, Conflict Resolution Modes, the variables for success: Predicting Project Success, Project Management Effectiveness. Unit III Planning: General Planning, Life-Cycle Phases, Proposal Preparation, Kickoff Meetings, Understanding Participants’ Roles, Project Planning, The Statement of Work, Project Specifications, Milestone Schedules, Work Breakdown Structure, Detailed Schedules and Charts, Project Plan, Total Project Planning, Management Control, Configuration Management, Enterprise Project Management Methodologies, Project Audits, Network Scheduling Techniques: Network Fundamentals, Graphical Evaluation and Review Technique, Network Replanning, Estimating Activity Time, Estimating Total Project Time, Total PERT/CPM Planning, Project Graphics: Bar (Gantt) Chart, Other Conventional Presentation Techniques. Unit IV

36 Pricing and Estimating: Types of Estimates, Pricing Process, Organizational Input Requirements, Labor Distributions, Overhead Rates, Materials/Support Costs, Pricing Out the Work, Smoothing Out Department Man-Hours, The Pricing Review Procedure, Project Risks, Life-Cycle Costing (LCC), Cost Control: Understanding Control, The Operating Cycle, Cost Account Codes, Budgets,The Earned Value Measurement System (EVMS), Variance and Earned Value, Trade off analysis in project environment: Methodology for Trade-off Analysis Unit V Risk Management: Definition of Risk, Tolerance for Risk, Definition of Risk Management, Certainty, Risk, and Uncertainty, Risk Identification, Risk Analysis, Qualitative Risk Analysis, Quantitative Risk Analysis, Probability Distributions and the Monte Carlo Process, Contract Management: Plan Procurement, Types of Contracts, Incentive Contracts, Contract Type versus Risk, Contract Administration Cycle, Quality Management: Definition of Quality, The Quality Movement, Quality Management Concepts, The Cost of Quality, The Seven Quality Control Tools, Implementing Six Sigma, Lean Six Sigma and DMAIC 914, Just-in-Time Manufacturing (JIT), Total Quality Management (TQM).

Reference Book: 1. Project Management: A Systems Approach to Planning, Scheduling, and Controlling, 10thed. Author: Harold Kerzner.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Recognize issues in a realistic project scenario.(PO 1,3,4) 2. Employ work breakdown structures (WBS) in a project application.(PO 1,3,4) 3. Demonstrate the use of appropriate network scheduling techniques.(PO 1,3,4) 4. Produce a project proposal.(PO 1,3,4) 5. Discuss the implementation of a proposed plan.(PO 1,3,4)

37 ELECTIVES Advances in Computer Networks Course Code:MCSE01 Credits: 4:0:0 Prerequisites: Computer Networks Contact Hours: 56 Course Coordinator/s: Dr. Monica R Mundada Unit I Foundation: Building a Network, Requirements, Perspectives, Scalable Connectivity, Cost-Effective Resource sharing, Support for Common Services, Manageability, Protocol layering, Performance, Bandwidth and Latency, Delay X Bandwidth Product, Perspectives on Connecting, Classes of Links, Reliable Transmission, Stop-and-Wait, Sliding Window, Concurrent Logical Channels. Unit II Internetworking I: Switching and Bridging, Datagram’s, Virtual Circuit Switching, Source Routing, Bridges and LAN Switches, Basic Internetworking (IP), What is an Internetwork?, Service Model, Global Addresses, Datagram Forwarding in IP, sub netting and classless addressing, Address Translation (ARP), Host Configuration (DHCP), Error Reporting (ICMP), Virtual Networks and Tunnels. Unit III Internetworking- II: Network as a Graph, Distance Vector (RIP), Link State (OSPF), Metrics, The Global Internet, Routing Areas, Routing among Autonomous systems (BGP), IP Version 6 (IPv6), Mobility and Mobile IP Unit IV End-to-End Protocols: Simple Demultiplexer (UDP), Reliable Byte Stream(TCP), Endto-End Issues, Segment Format, Connecting Establishment and Termination, Sliding Window Revisited, Triggering Transmission, Adaptive Retransmission, Record Boundaries, TCP Extensions, Queuing Disciplines, FIFO, Fair Queuing, TCP Congestion Control, Additive Increase/ Multiplicative Decrease, Slow Start, Fast Retransmit and Fast Recovery. Unit V Congestion Control and Resource Allocation Congestion-Avoidance Mechanisms, DEC bit, Random Early Detection (RED), Source-Based Congestion Avoidance. The Domain Name System (DNS), Electronic Mail (SMTP,POP,IMAP,MIME), World Wide Web (HTTP), Network Management (SNMP)

38 Reference Books: 1. Larry Peterson and Bruce S Davis “Computer Networks :A System Approach” 5th Edition , Elsevier -2014. 2. Douglas E Comer, “Internetworking with TCP/IP, Principles, Protocols and Architecture” 6th Edition, PHI – 2014. 3. Uyless Black, “Computer Networks, Protocols , Standards and Inte rfaces” 2 nd Edition - PHI. 4. Behrouz A Forouzan, “TCP /IP Protocol Suite” 4 th Edition – Tata McGraw-Hill.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Explain basic computer network technology. (PO1,3,4) 2. Explain Data Communications System and its components. (PO1,3,4) 3. Identify the different types of network topologies and protocols. (PO1,3,4) 4. Identify the different types of network devices and their functions within a network. (PO1,3,4) 5. Illustrate the skills of subnet and routing mechanisms. (PO1,3,4)

39 Wireless Ad-Hoc Networks Course Code: MCSE02 Credits: 4:0:0 Prerequisites: Computer Networks Contact Hours: 56 Course Coordinator/s: Dr. Annapurna P Patil UnitI Ad-hoc Wireless Networks Introduction, Issues in Ad-hoc Wireless Networks, Ad-hoc Wireless Internet; MAC Protocols for Ad-hoc Wireless Networks: Introduction, Issues in Designing a MAC Protocol, Design Goals of MAC Protocols, Classification of MAC protocols, Contention-Based Protocols, Contention-Based Protocols with Reservation Mechanisms, Contention-Based Protocols with Scheduling Mechanisms, MAC Protocols that Use Directional Antennas. UnitII Routing Protocols for Ad-hoc Wireless Networks Introduction, Issues in Designing a Routing Protocol for Ad-hoc Wireless Networks; Classification of Routing Protocols; Table Driven Routing Protocols; On-Demand Routing Protocols, Hybrid Routing Protocols, Hierarchical Routing Protocols and Power-Aware Routing Protocols. UnitIII Multicast Routing in Ad-hoc Wireless Networks Introduction, Issues in Designing a Multicast Routing Protocol, Operation of Multicast Routing Protocols, An Architecture Reference Model for Multicast Routing Protocols, Classifications of Multicast Routing Protocols, Tree-Based Multicast Routing Protocols and Mesh-Based Multicast Routing Protocols. UnitIV Transport Layer and Security Protocols for Ad-hoc Networks: Introduction, Issues in Designing a Transport Layer Protocol; Design Goals of a Transport Layer Protocol; Classification of Transport Layer Solutions; TCP over Transport Layer Solutions; Other Transport Layer Protocols for Ad-hoc Networks; Security in Ad-hoc Wireless Networks, Issues and Challenges in Security Provisioning, Network Security Attacks, Key Management and Secure Touting Ad-hoc Wireless Networks. UnitV Quality of Service and Energy Management in Ad-hoc Wireless Networks: Introduction, Issues and Challenges in Providing QoS in Ad-hoc Wireless Networks, Classification of QoS Solutions, MAC Layer Solutions, Network Layer Solutions; Energy Management in Ad-hoc Wireless Networks: Introduction, Need for Energy Management in Ad-hoc Wireless Networks, Classification of Energy Management Schemes, Battery Management

40 Schemes, Transmission Management Schemes, System Power Management Schemes.

Text Book: 1. C. Siva Ram Murthy & B. S. Manoj: Ad-hoc Wireless Networks, 2nd Edition, Pearson Education, 2011

Reference Books: 1. Ozan K. Tonguz and Gianguigi Ferrari: Ad-hoc Wireless Networks, John Wiley, 2007. 2. Xiuzhen Cheng, Xiao Hung, Ding-Zhu Du: Ad-hoc Wireless Networking, Kluwer Academic Publishers, 2004. 3. C.K. Toh: Ad-hoc Mobile Wireless Networks- Protocols and Systems, Pearson Education, 2002.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Understand of basic WSN technology and supporting protocols and technology. (PO1,3,4) 2. Identify medium access control protocols and address physical layer issues.(PO1,3,4) 3. Describe the knowledge routing protocols for sensor networks and main design issues.(PO1,3,4) 4. Describe knowledge of transport layer protocols for sensor networks, and design requirements. (PO1,3,4) 5. Describe Sensor management, sensor network middleware, operating systems. (PO1,3,4)

41 Distributed Systems

Course Code: MCSE03 Credits: 4:0:0 Prerequisites: OS Contact Hours: 56 Course Coordinator/s: Sini Anna Alex

Course Contents: Unit I Introduction : Definition, Relation to computer system components, Motivation, Relation to parallel multiprocessor/multicomputer systems, Message-passing systems versus shared memory systems, Primitives for distributed communication, Synchronous versus asynchronous executions, Design issues and challenges. A model of distributed computations: A distributed program, A model of distributed executions, Models of communication networks, Global state of a distributed system, Cuts of a distributed computation, Past and future cones of an event, Models of process communications Logical time: Introduction, A framework for a system of logical clocks, Scalar time, Vector time, Efficient implementations of vector clocks, Jard– Jourdan’s adaptive technique, Matrix time, Virtual time, Physical clock synchronization: NTP. Unit II Global state and snapshot recording algorithms: Introduction, System model and definitions, Snapshot algorithms for FIFO channels, Variations of the Chandy–Lamport algorithm, Snapshot algorithms for non-FIFO channels, Snapshots in a causal delivery system, Monitoring global state, Necessary and sufficient conditions for consistent global snapshots, Finding consistent global snapshots in a distributed computation. Terminology and basic algorithms: Topology abstraction and overlays, Classifications and basic concepts, Complexity measures and metrics, Program structure, Elementary graph algorithms, Synchronizers, Maximal independent set (MIS), Connected dominating set, Compact routing tables, Leader election, Challenges in designing distributed graph algorithms, Object replication problems. Unit III Message ordering and group communication: Message ordering paradigms, Asynchronous execution with synchronous communication, Synchronous program order on an asynchronous system, Group communication, Causal order (CO), Total order, A nomenclature for

42 multicast, Propagation trees for multicast, Classification of application-level multicast algorithms, Semantics of fault-tolerant group communication, Distributed multicast algorithms at the network layer, . Termination detection: Introduction, System model of a distributed computation, Termination detection using distributed snapshots, Termination detection by weight throwing, A spanning-tree-based termination detection algorithm, Message-optimal termination detection, Termination detection in a very general distributed computing model, Termination detection in the atomic computation model, Termination detection in a faulty distributed system. Unit IV Distributed mutual exclusion algorithms: Introduction, Preliminaries, Lamport’s algorithm, Ricart–Agrawala algorithm, Singhal’s dynamic information-structure algorithm, Lodha and Kshemkalyani’s fair mutual exclusion algorithm, Quorum-based mutual exclusion algorithms, Maekawa’s algorithm, Agarwal–El Abbadi quorum-based algorithm, Token- based algorithms, Suzuki–Kasami’s broadcast algorithm, Raymond’s tree- based algorithm, Deadlock detection in distributed systems: Introduction, System model, Preliminaries, Models of deadlocks, Knapp’s classification of distributed deadlock detection algorithms, Mitchell and Merritt’s algorithm for the single resource model, Chandy–Misra–Haas algorithm for the AND model, Chandy–Misra–Haas algorithm for the OR model, Kshemkalyani–Singhal algorithm for the P-out-of-Q model. Unit V Global predicate detection: Stable and unstable predicates, Modalities on predicates, Centralized algorithm for relational predicates, Conjunctive predicates, Distributed algorithms for conjunctive predicates, Further classification of predicates. Consensus and agreement algorithms: Problem definition, Overview of results, Agreement in a failure-free system (synchronous or asynchronous), Agreement in (message-passing) synchronous systems with failures, Agreement in asynchronous message-passing systems with failures, Wait- free shared memory consensus in asynchronous systems. Peer-to-peer computing and overlay graphs: Introduction, Data indexing and overlays, Unstructured overlays, Chord distributed hash table, Content addressable networks (CAN), Tapestry, Some other challenges in P2P system design, Tradeoffs between table storage and route lengths, Graph

43 structures of complex networks, Internet graphs, Generalized random graph networks, Small-world networks, Scale-free networks, Evolving networks.

Text Book: 1. Ajay D. Kshemkalyani, and Mukesh Singhal “Distributed Computing: Principles, Algorithms, and Systems”, Cambridge University Press, 2008 (Reprint 2013).

Reference Books: 1. John F. Buford, Heather Yu, and Eng K. Lua, “P2P Networking and Applications”, Morgan Kaufmann, 2009 Elsevier Inc. 2. Kai Hwang, Geoffrey C. Fox, and Jack J. Dongarra, “Distributed and Cloud Computing: From Parallel processing to the Internet of Things”, Morgan Kaufmann, 2012 Elsevier Inc.

Course Outcomes (COs):

At the end of the course, the students will be able to: 1. Identify the design issues and Challenges in building distributed systems. (PO1,3,4) 2. Explore different ways of managing time (clock) and recording global state of distributed computation. (PO1,3,4) 3. Analyze basic distributed graph algorithms, synchronizers, and practical graph problems, P2P overlay problems(PO1,3,4) 4. Discuss ways to achieve various message ordering schemes and approaches for detecting termination of a distributed computation. (PO1,3,4) 5. Identify different assertion based, and tree based distributed algorithms to implement Distributed Mutual Exclusion. (PO1,3,4)

44 Cloud Computing Course Code: MCSE04 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator: Mrs. Rajarajeswari S Unit I Introduction: Network centric computing and network centric content, Peer- to-peer systems, Cloud Computing: an old idea whose time has come, Cloud Computing delivery models & Services, Ethical issues, Cloud vulnerabilities, Challenges, Cloud Infrastructure: Amazon, Google, Azure & online services, open source private clouds. Storage diversity and vendor lock-in, intercloud, Energy use & ecological impact of data centers, service level and compliance level agreement, Responsibility sharing, user experience, Software licensing. Unit II Cloud Computing: Applications & Paradigms, Challenges, existing and new application opportunities, Architectural styles of cloud applications: single , multi ,hybrid cloud site, redundant, non redundant , 3 tier, multi tier architectures, Workflows coordination of multiple activities, Coordination based on a state machine model -the Zoo Keeper, The Map Reduce programming model, Apache Hadoop, A case study: the GrepTheWeb application, Applications: Healthcare, Energy systems, transportation, manufacturing, Education, Government, mobile communication, application development. Unit III Cloud Resource Virtualization: Definition, merits and demerits, types & Techniques, Layering, Virtual machine monitors, Hardware support for virtualization Case study: Xen -a VMM based on paravirtualization, Optimization of network virtualization in Xen 2.0, vBlades -paravirtualization targeting a x86-64 Itanium processor, A performance comparison of virtual machines, The darker side of virtualization, Software fault isolation. Unit IV Cloud Resource Management and Scheduling: Policies and mechanisms for resource management, Applications of control theory to task scheduling on a cloud, Stability of a two-level resource allocation architecture, Feedback control based on dynamic thresholds, Coordination of specialized autonomic performance managers, A utility-based model for cloud-based web services, Resource bundling, combinatorial auctions, fair queuing, Start time fair queuing, borrowed virtual time, Cloud scheduling subject to deadlines,

45 Scheduling mapreduce applications subject to deadlines, Resource management and application scaling. Unit V Storage systems: Evolution, Storage models, file systems, databases, DFS, General parallel File system, GFS, Hadoop, Locks & Chubby, TPS, NOSQL, BigTable, Mega store. Cloud security: Risks, Security, privacy, Trust. Security of OS,VM, VMM, shared image, management OS, Xoar.

Text Books: 1. Cloud Computing Theory and Practice – DAN C. Marinescu – Elsevier. 2. Cloud Computing: A hands on Approach, by Bagha Madisetti.

Reference Books: 2. Distributed and Cloud Computing, From Parallel Processing to the Internet of Things, Kai Hwang, Jack Dongarra, Geoffrey Fox. MK Publishers. 3. Cloud Computing: A Practical Approach, Anthony T. Velte, Toby J. Velte, Robert Elsenpeter, McGraw Fill, 2010.

Course Outcomes (COs): At the end of the course, students should be able to: 1. To analyze the transformation that led to the evolution of Cloud computing, it's vulnerabilities and its impact.(PO1,3,4) 2. Design different workflows according to requirements and apply map reduce programming model and real time applications.(PO1,3,4) 3. Make performance comparison of virtual machines and optimization of virtualization.(PO1,3,4) 4. Develop policies and mechanisms for cloud resources and design algorithms for scheduling. (PO1,3,4) 5. Assess cloud Storage systems and identify cloud security, privacy issues, threats, the risks involved, its impact and provide solution. (PO1,3,4)

46 Software Defined Networks Course Code: MCSE05 Credits: 4:0:0 Prerequisites: Data communications and Computer networks Contact Hours: 56 Course Coordinator: Sanjeetha R Prerequisites: Data communications and Computer networks

Course Contents: Unit I Introduction - Traditional Switch Architecture. Why SDN-Evolution of Switches and Control Planes, Cost, SDN Implications for Research and Innovation, Data Center Innovation, Data Center Needs. The Genesis of SDN: Forerunners of SDN: Early efforts, Network Access Control, Orchestration, Virtualization manager network plugins, FORCES, 4D Centralized Network Control, Ethane, Software Defined Networking is Born, Network Virtualization. How SDN Works - Fundamental Characteristics of SDN, SDN Operation, SDN Devices, SDN Controller, SDN Applications, Alternate SDN Methods. Data Center Needs, Network Virtualization.

Unit II How SDN Works Contd. -SDN Controller- SDN controller core modules, SDN controller interfaces, Existing controller implementations, potential issues with the SDN Controller, SDN Applications, Alternate SDN Methods – SDN via APIs, Benefits and Limitations of SDN via APIs, SDN via hypervisor based overlay networks. The OpenFlow Specification– OpenFlow Overview – The OpenFlow switch, The OpenFlow Controller, The OpenFlow protocol, The Controller- switch secure channel, OpenFlow 1.0 and OpenFlow Basics, OpenFlow 1.1 Additions, OpenFlow 1.2 Additions, OpenFlow 1.3 Additions, OpenFlow Limitations. Benefits and Limitations of SDN via APIs, OpenFlow Limitations.

Unit III The OpenFlow SpecificationContd. Openflow 1.4 additions – Bundles, Eviction and vacancy events, enhanced support for multiple controller, optical port support, and flow table synchronization.

47 Alternative Definitions of SDN - Potential Drawbacks of Open SDN, SDN via APIs – Legacy APIs in Network Devices, NETCONF/YANG, BGP- LS/PCE-P, REST, Examples of SDN via APIs, Ranking SDN via APIs, SDN via Hypervisor-Based Overlays – Overlay Controller, Overlay Operation, Examples of SDN via Hypervisor-Based Overlays, Ranking SDN via Hypervisor-Based Overlays, SDN via Opening Up the Device, Network Functions Virtualization, Alternatives Overlap and Ranking. flow table synchronization, Alternatives Overlap and Ranking.

Unit IV Emerging Protocol, Controller - Additional SDN Protocol Models, Using Existing Protocols to Create SDN Solutions, Using the Netconf Protocol, BGP Protocol, BGP-LS Protocol, PCE-P Protocol MPLS Protocol For SDN. Additional SDN Controller Models - Controllers with Multiple Southbound Plugins, Controllers Targeting Service Provider Solutions, Controllers Built For Scalability, Intents-Based Applications. SDN in the Data Center-Data Center Demands – Overcoming Current Network Limitations, MAC address explosion, Number of VLANs, Spanning tree, adding, moving and deleting resources, Failure recovery, multitenancy, Tunneling Technologies for the Data Center. Intents-Based Applications, Tunneling Technologies for the Data Center. Unit V SDN in the Data Center- Path Technologies in the Data Center, Ethernet Fabrics in the Data Center, SDN Use Cases in the Data Center, Comparison Of Open SDN, Overlays, and APIs. SDN in Other Environments - Wide Area Networks, Service Provider and Carrier Networks, Campus Networks, Mobile Networks, Optical Networks. Network Functions Virtualization - Definition Of NFV, What Can We Virtualize? SDN Vs NFV, When Should NFV Be Used With SDN?, In-Line Network Functions, SDN Applied To Server Load-Balancing, Firewalls and Intrusion Detection. SDN Applications- Application Types, a Simple Reactive Java Application - Blacklisting Hostnames and IP Addresses, Offloading Flows in the Data Center. Optical Networks, Firewalls and Intrusion Detection, Offloading Flows in the Data Center.

48 Text Book:

1. Paul Goransson, Chuck Black, and Timothy Culver: Software Defined Networks A Comprehensive Approach, Second Edition, Elsevier, 2014.

Reference Book:

1. Thomas D.Nadeau & Ken Gray: SDN Software Defined Networks O'Reilly publishers, Second edition, 2017.

Course Outcomes(COs):

At the end of the course, students should be able to: 1. Describe the fundamental characteristics of SDN. (PO1,3,4) 2. Differentiate between various OpenFlow specifications. (PO1,3,4)Identify different ways of implementing SDN. (PO1,3,4) 3. Compare and contrast different types of controller models in SDN. (PO1,3,4 4. )Illustrate use of SDN in Data Centers and other environments(PO1,3,4)

49 Advances in Storage Area Networks Course Code: MCSE06 Credits: 4:0:0 Prerequisites: Computer Networks, Computer Organization, Operating Systems Contact Hours: 56 Course Coordinator/s: Dr. Divakar Harekal

Course Contents: Unit I Introduction: Information Storage, Evolution of Storage Architecture, Data Centre Infrastructure, Virtualization and Cloud Computing. Data Centre Environment: Application, DBMS, Host, Connectivity, Storage, Disk Drive Components, Disk Drive Performance, Host Access to Data, Direct-Attached Storage, Storage Design Based on Application, Disk Native Command Queuing, Introduction to Flash Drives.

Unit II Data Protection: RAID Implementation Methods, Array Components, Techniques, Levels, Impact on Disk Performance, Comparison, Hot Spares. Intelligent Storage System: Components, Storage Provisioning, Types.

Unit III Fiber Channel Storage Area Networks: FC Overview, Evolution, Components, FC Connectivity, Ports, FC Architecture, Fabric Services, Login Types, Zoning, FC Topologies, Virtualization in SAN.IP SAN and FCoE: iSCSI, FCIP, FCoE.

Unit IV Network-Attached Storage: Benefits, Components, NAS I/O Operation, Implementations, File Sharing Protocols, I/O Operations, Factors Affecting NAS Performance, File-Level VirtualizationObject Based and Unified Storage: Object Based Storage Devices, Content Addressed Storage, CAS Use Cases, Unified Storage. Backup Archive and Replication.

Unit V Business Continuity: Information Availability, Terminology, Planning Lifecycle, Failure Analysis, Impact Analysis, Challenges, Adoption Considerations.Securing the Storage Infrastructure: Framework, Risk Triad, Domains Managing the Storage Infrastructure: Monitoring, Management

50 Activities, Management Challenges, Information Lifecycle Management, Storage Tiering.

Text Book:

1. EMC Education Services, edited by Somasundaram G., Alok Shrivastava “Information Storage and Management”; 2nd edition , Wiley India, 2012, ISBN 9788126537501.

Reference Books:

1. Ulf Troppens, Rainer Erkens and Wolfgang Muller: Storage Networks Explained, 1st Edition, Wiley India, 2012. 2. Robert Spalding: Storage Networks, The Complete Reference, 1st Edition, Tata McGraw Hill, 2011.

Course Outcomes (COs):

At the end of the course, student should be able to:

1. Identify the need for storage centric network and its benefits of its adoption (PO1,3,4) 2. Design a storage solution for an application depending on the IOPS and RAID requirements (PO1,3,4) 3. Have an understanding of the Fiber channel stack and working of the different layers (PO1,3,4) 4. Have an understanding of NAS, object oriented storage and backup and recovery (PO1,3,4) 5. Have a business continuity plan and ILM of an enterprise (PO1,3,4)

51 Protocol Engineering Course Code: MCSE07 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Annapurna P Patil Unit I Network Reference Model: Layered Architecture, Network Services and Interfaces, Protocol Functions: Encapsulation, Segmentation and Reassembly of messages, Error Control, Flow control and Multiplexing, Addressing, OSI Model, Functions of layers in OSI model, TCP/IP Protocol Suite, MAC protocols, LLC protocols, Network protocols, Routing, RIP, OSPF, BGP, Multicast protocols, BOOTP, DHCP, Mobile IP, ICMP, CIDR, ARP, RARP, transport protocols, UDP, RTP, Wireless protocol challenges, Application Protocols: FTP, TFTP, Telnet, E-mail, POP, IMAP, SNMP, DNS, HTTP, RTSP. Unit II Introduction: Communication model, Communication Software, Communication Subsystems, Communication Protocol Definition/Representation, Formal and Informal Protocol Development Methods, Protocol Engineering Phases. Protocol Specification: Components of specification, Service specification, Communication Service Specification Protocol entity specification: Sender, Receiver and Channel specification, Interface specifications, Interactions, Multimedia specifications, Alternating Bit Protocol Specification, RSVP specification. Unit III Protocol Specification Language (SDL): Salient Features. Communication System Description using SDL, Structure of SDL. Data types and communication paths, Examples of SDL based Protocol Specifications: Question and answer protocol, X-on-X-off protocol, Alternating bit protocol, Sliding window protocol specification, TCP protocol specification, SDL based platform for network, OSPF, BGP Multi Protocol Label Switching SDL components. Protocol Verification / Validation: Protocol Verification using FSM, ABP Verification, Protocol Design Errors, Deadlocks, Unspecified Reception, Non-executable Interactions, State Ambiguities, Protocol Validation Approaches: Perturbation Technique, Reachability Analysis, Fair Reachability Graphs, Process Algebra based Validation, SDL Based Protocol Verification: ABP Verification, Liveness Properties, SDL Based Protocol Validation: ABP Validation. Unit IV

52 Protocol Conformance and Performance Testing: Conformance Testing Methodology and Framework, Local and Distributed Conformance Test Architectures, Test Sequence Generation Methods: T, U, D and W methods, Distributed Architecture by Local Methods, Synchronizable Test Sequence, Conformance testing with Tree and Tabular Combined Notation (TTCN), Conformance Testing of RIP, Testing Multimedia Systems, quality of service test architecture(QOS), Performance Test methods, SDL Based Performance Testing of TCP, OSPF, Interoperability testing, Scalability testing protocol synthesis problem. Unit V Protocol Synthesis and Implementation: Synthesis methods, Interactive Synthesis Algorithm, Automatic Synthesis Algorithm, Automatic Synthesis of SDL from MSC, Protocol Re-synthesis, Requirements of Protocol Implementation, Objects Based Approach to Protocol Implementation, Protocol Compilers, Code generation from Estelle, LOTOS, SDL and CVOPS.

Text Book: 1. PallapaVenkataram and Sunilkumar S. Manvi: Communication Protocol Engineering, PHI, 2004.

Reference Book: 1. Mohammed G. Gouda: Elements of Protocol Design, Wiley Student Edition, 2004.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Recall the structure of TCP/IP protocol suite. (PO1,3,4) 2. Identify different phases of protocol engineering. (PO1,3,4) 3. Design SDL based protocol specifications for various protocols. (PO1,3,4) 4. Design and generate test sequences using different methods. (PO1,3,4) 5. Demonstrate different ways of protocol synthesis. (PO1,3,4)

53 Network Management Course Code: MCSE08 Credits: 4:0:0 Prerequisites: Computer Networks Contact Hours: 56 Course Coordinator/s: Dr. Monica R Mundada

Course Contents: Unit I Data communications and Network Management Overview: Analogy of Telephone Network Management, Communications protocols and Standards, Case Histories of Networking and Management, Challenges of Information Technology Managers, Network Management: Goals, Organization, and Functions, Network and System Management, Network Management System Platform, Current Status and future of Network Management. Unit II SNMPV1 Network Management: Organization and Information Models, Managed network: Case Histories and Examples, The History of SNMP Management, The SNMP Model, The Organization Model, System Overview, The Information Model. SNMPv1 Network Management: Communication and Functional Models. The SNMP Communication Model, Functional Model. Unit III SNMP Management: SNMPv2: Major Changes in SNMPv2, SNMPv2 System Architecture, SNMPv2 Structure of Management Information, SNMPv2 Management Information Base, SNMPv2 Protocol, Compatibility With SNMPv1. SNMP Management: SNMPv3,Introduction,SNMPv3 Key Features,SNMPv3 Documentation Architecture, SNMPv3 Applications, SNMPv3 Management Information Base, Security, SNMPv3 User-based Security Model, Authentication Protocols, Encryption Protocol. Unit IV SNMP Management: RMON: What is Remote Monitoring? , RMON SMI and MIB, RMON1, RMON2, ATM Remote Monitoring, a Case Study of Internet Traffic Using RMON, ATM Networks. Unit V Network Management Tools and Systems: Network Management Tools, Network Statistics Measurement Systems, History of Enterprise Management, Network Management systems, Commercial Network management Systems, System Management, Enterprise Management Solutions.

54 Text Book:

1. Network Management: Principles and Practice, Mai Subramanian, George institute of Technology, 2000, Pearson.

Course Outcomes (COs):

At the end of the course, students should be able to:

1. Identify five major functional areas of network management. (PO- 1,3,4) 2. Explore SNMP Management Information, Standard MIBs and SNMP protocol. (PO- 1,3,4) 3. Defend the need for security in networking monitoring and control. (PO-1,3,4 4. Devise Remote network monitoring System for statistics collection, alarms and filters. (PO-1,3,4) 5. Summarize complete network management plan for a moderate to large network enterprise through case studies. (PO-1,3,4)

55 Multi-core Architecture and Programming Course Code: MCSE09 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mr. Mallegowda M Unit I Introduction To Multi-Core Architecture: Motivation For Concurrency In Software, Parallel Computing Platforms,Parallel Computing In Microprocessors, Differentiating Multi-Core Architectures From Hyper- Threading Technology, Multi-Threading On Single-Core Versus Multi-Core Platforms Understanding Performance, Amdahl’s Law, Growing Returns: Gustafson’s Law. System Overview Of Threading: Defining Threads, System View Of Threads, Threading Above The Operating System, Threads Inside The OS, Threads Inside The Hardware, What Happens When A Thread Is Created, Application Programming Models andThreading, Virtual Environment: Vms And Platforms, Runtime Virtualization, System Virtualization. Unit II Fundamental Concepts Of Parallel Programming: Designing For Threads, Task Decomposition, Data Decomposition,Data Flow Decomposition, Implications Of Different Decompositions, Challenges You’ll Face, Parallel Programming Patterns, A Motivating Problem: Error Diffusion, Analysis Of The Error Diffusion Algorithm, An Alternate Approach: Parallel Error Diffusion, Other Alternatives. Unit III Threading And Parallel Programming Constructs: Synchronization, Critical Sections, Deadlock, SynchronizationPrimitives, Semaphores, Locks, Condition Variables, Messages, Flow Control- Based Concepts, Fence, Barrier, Implementation-Dependent Threading Features. Threading Apis : Threading Apls For Microsoft Windows, Win32/MFC Thread Apls, Threading Apls For Microsoft. NET Framework, Creating Threads, Managing Threads, Thread Pools, Thread Synchronization, POSIX Threads, Creating Threads, Managing Threads, Thread Synchronization, Signaling, Compilation And Linking. Unit IV Openmp: A Portable Solution For Threading: Challenges In Threading A Loop, Loop-Carried Dependence, Data-RaceConditions, Managing Shared And Private Data, Loop Scheduling And Portioning, Effective Use Of Reductions, Minimizing Threading Overhead, Work-Sharing Sections, Performance-Oriented Programming, Using Barrier And No Wait,

56 Interleaving Single-Thread And Multi-Thread Execution, Data Copy-In And Copy-Out, Protecting Updates Of Shared Variables, Intel Task Queuing Extension To Openmp, Openmp Library Functions, Openmp Environment Variables, Compilation, Debugging, Performance. Unit V Solutions To Common Parallel Programming Problems: Too Many Threads, Data Races, Deadlocks, And Live Locks,Deadlock, Heavily Contended Locks, Priority Inversion, Solutions For Heavily Contended Locks, Non-Blocking Algorithms, ABA Problem, Cache Line Ping-Ponging, Memory Reclamation Problem, Recommendations, Thread-Safe Functions And Libraries, Memory Issues, Bandwidth, Working In The Cache, Memory Contention, Cache-Related Issues, False Sharing, Memory Consistency, Current IA-32 Architecture, Itanium Architecture, High-Level Languages, Avoiding Pipeline Stalls On IA-32,Data Organization For High Performance.

Text Books: 1. Multicore Programming , Increased Performance through Software Multi- threading by Shameem Akhter and Jason Roberts , Intel Press , 2006 2. Hennessey and Patterson: “Computer Architecture A Quantitative Approach”, 4thEdition, Elsevier, 2012.

Reference Book: 1. Kai Hwang, Naresh Jotwani: Advanced Computer Architecture - Parallelism, Scalability, Programmability, 2nd Edition, Tata McGraw Hill, 2011.

Course Outcomes (COs): At the end of the course, the students should be able to: 1. Identify performance related parameters in the field of Computer Architecture. (PO1,3,4) 2. Identify the limitations of ILP and the need for multi-core architectures. (PO1,3,4) 3. Solve the issues related to multiprocessing and suggest solutions. (PO1,3,4) 4. Point out the salient features of different multi-core architectures and how they exploit parallelism. (PO1,3,4) 5. Understand the concept of multi threading and OPENMP. (PO1,3,4)

57 Embedded Systems Course Code: MCSE10 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Divakar Harekal V Unit I Embedded Computing: Introduction, Complex Systems And Microprocessors Embedded Systems, Design Process, Design Metrics, Flow And Optimization, Specifications And Modeling,Cortex-M0 Technical Overview, Implementation Features, System Features, Debug Features, Advantages. Unit II Programming Model, Operation Modes And States, Architecture, Registers And Special Registers Behaviors Of The Application Program Status Register (APSR), Memory System Overview, Stack Memory, Operations Introduction To Cortex-M0 Programming, Instruction Set. Unit III Instruction Usage Examples, Implementation Of Various Structures Like Loop, Switch, Function, Subroutine, Memory System, Exceptions And Interrupts, Interrupt Control And System Control. Unit IV Simple Application Programming, Simple Input /Output, Simple Interrupt Programming, Sensors, Thermistors, Ldrs, Leds 7 Segment, LCD, Stepper Motor, Relays, Actuator, and Adcs. Unit V Embedded/ Real Time Tasks, Real Time Systems, Types Of Real Time Systems Quality Of Good Real Time Systems. Real Time Operating System Concepts: Architecture Of The Kernel, Task And Task Scheduler,ISR, Sémaphores, Mutex, Mailboxes, Message Queues, Message Queues Pipes, Signal, Memory Management,PriorityInversion problems.

Text Books: 1. Wayne Wolf “Computers as Components Principles of Embedded Computer System Design”, Second Edition, Elsevier, 2008. 2. Joseph Yiu, “ The Definitive Guide to the ARM Cortex-M0 “, 1st edition, Newnes - an imprint of Elsevier, 2011 3. Lyla B. Das, “Embedded Systems an integrated approach “ , 1st edition, Pearson, 2013. 4. KVVK Prasad, “Embedded/Real Time Systems: Concepts, Design and Programming “ , 1st edition, Dreamtech, 2011 .

58 Reference Books: 1. Frank Wahid/Tony Givargis “Embedded System Design A Unified Hardware/Software Introduction “ 1st Edition, John Wiley & Sons, 2002. 2. Raj Kamal , “Embedded Systems: Architecture ,Programming and Design”, Tata McGrawhill, New Delhi,2003. 3. Tammy Noergaard, “Embedded Systems Architecture- Comprehensive Guide for Engineer and Programmers – Elsevier Publication, 2005 4. Barnett, Cox &O’cull,”Embedded C programming”,Thomson ,2005.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Identify embedded system requirements and goals.(PO1,3,4) 2. Describe Cortex M0 advantages for designing embedded systems. (PO1,3,4) 3. Evaluate Cortex M0 in assembly instructions and write embedded C programs using CMSIS features. (PO1,3,4) 4. Understand the memory mapping of Cortex M0 architecture. (PO1,3,4) 5. Compare the working of various sensors and actuators and their interface with microcontrollers. (PO1,3,4)

59 Compiler Optimization Techniques Course Code: MCSE11 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Jagadish S Kallimani UnitI Introduction, Lexical analysis, Compilers; Analysis of Source Program; The Phases of a Compiler; Cousins of the Compiler; The grouping of phases; Compiler- Construction tools. Lexical analysis: The Role of Lexical Analyzer; Input Buffering; Specifications of Tokens; Recognition of Tokens. UnitII Syntax Analysis, The Role of the Parser; Context-free Grammars; Writing a Grammar; Top-down Parsing; Bottom-up Parsing. Syntax Analysis, Operator-Precedence Parsing; LR Parsers; Using ambiguous grammars; Parser Generators. UnitIII Syntax-Directed Translation, Syntax-Directed definitions; Constructions of Syntax Trees; Bottom-up evaluation of S-attributed definitions; L-attributed definitions; Top-down translation, Run-Time Environments, Source Language Issues; Storage Organization; Storage-allocation strategies, Storage-allocation in C; Parameter passing. UnitIV Intermediate Code Generation, Intermediate Languages; Declarations; Assignment statements; Boolean Expressions; Case statements; Back patching; Procedure calls, Code Generation, Issues in the design of Code Generator; The Target Machine; Run-time Storage Management; Basic blocks and Flow graphs; Next-use information; A Simple Code Generator; Register allocation and assignment; The dag representation of basic blocks; Generating code from dags. UnitV Code Optimization, Compiler Development, Code Optimization: Introduction; The principal sources of optimization; Peephole optimization; Optimization of basic blocks; Loops in flow graphs, Compiler Development: Planning a compiler; Approaches to compiler development; The compiler development environment; Testing and maintenance.

Reference Books: 1. Alfred V Aho, Ravi Sethi, Jeffrey D Ullman: Compilers- Principles, Techniques and Tools, Addison-Wesley, 2007. (Chapters 1, 3.1 to 3.4, 4, 5.1 to 5.5, 7, 8, 9.1 to 9.9, 10.1 to 10.5, 11)

60 2. Charles N. Fischer, Richard J. leBlanc, Jr.: Crafting a Compiler with C, Pearson Education, 1991. 3. Andrew W Apple: Modern Compiler Implementation in C, Cambridge University Press, 1997. 4. Kenneth C Louden: Compiler Construction Principles & Practice, Thomson Education, 1997.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Construct lexical analyzer to recognize inputs using patterns. (PO1,3, 4) 2. Devise different types of syntax analyzers using grammars. (PO1,3, 4) 3. Illustrate syntax-directed translation schemes for grammars. (PO 1, 3, 4) 4. Formulate intermediate code generators for programming statements. (PO1, 3, 4) 5. Develop assembly language code for the given optimized intermediate codes. (PO1, 3, 4)

61 Advanced Software Engineering Course Code: MCSE12 Credits: 4:0:0 Prerequisites: Basic Concepts of Software Engineering Contact Hours: 56 Course Coordinator/s: Dr. Annapurna P Patil Unit I Agile development: What is agile? Agility and cost of change; What is an agile process? Extreme programming; Other agile process models. Design Concepts: Design process, Design Concepts, Design Models. Web Application Design: Web application design quality; Design quality and design pyramid; Interface design; Aesthetic design; Content design; Architecture design; Navigation design; Component-level design; Object- oriented hypermedia design method. Unit II Formal Modeling and verification: The cleanroom strategy; Functional specification; Cleanroom design; Cleanroom testing; Formal methods: Concepts; Applying mathematical notation for formal specification; Formal specification languages. Software Project Management: The management spectrum; The management of people, product, process and project; The W5HH Principle; Critical practices. Estimation for Software Projects: Software project estimation; Decomposition techniques, Examples; Empirical estimation models; Estimation for Object-Oriented projects; specialized estimation techniques; the make / buy decision. Unit III Software Project Scheduling: Basic concepts and principles of project scheduling; Defining task set and task network; Scheduling; Earned value analysis. Risk Management: Reactive versus proactive strategies; Software risks; risk identification; Risk projection; Risk refinement; Risk mitigation, monitoring and management; The RMMM plan. Unit IV Maintenance and Reengineering: Software maintenance; Software supportability; Reengineering; Business process reengineering; Software reengineering; Reverse engineering; Restructuring; Forward engineering; The economics of reengineering. Software Process Improvement (SPI): Approaches to SPI; Maturity models; The SPI process; The CMMI; The People CMM; Other SPI frameworks: SPICE, Bootstrap, PSP and TSP, ISO; SPI return on investment. Unit V

62 Software Configuration Management (SCM): Basic concepts; SCM repository; The SCM process; Configuration management for web applications; SCM standards. Product Metrics: A framework for product metrics; Metrics for requirements model, design model, source code, testing and maintenance; Design metrics for web applications. Process and Project Metrics: Basic concepts; Software measurement; Metrics for software quality; Integrating metrics within the software process; Metrics for small organizations; Establishing a software metrics program.

Laboratory: The Software Engineering Lab has been designed for students to be exposed to the following:  To Understand and realize the concept of Software Engineering and UML using any case studies.  The students would be exposed to experiment with the following concepts using any of the tools available:  Identifying the Requirements from Problem Statements  Modeling UML Use Case Diagrams  Identifying Domain Classes from the Problem Statements  State chart and Activity Modeling  Modeling UML Class Diagrams and Sequence diagrams  Estimation of Test Coverage Metrics and Structural Complexity  Designing Test Suites for the case study  The Students would also be required to Prepare a Work Breakdown Structure (WBS) and a mini project plan with PERT and Gantt charts

Text Book: 1. Roger S. Pressman: Software Engineering: A Practitioner’s Approach, Alternate edition, 7th Edition, McGraw Hill, 2010.

Reference Books: 1. Ian Sommerville: Software Engineering, 8th Edition, Pearson, 2012.

63 2. Bernd Bruegge & Allen H. Dutoit : Object-Oriented Software Engineering Using UML, Patterns, and Java™ Third Edition, Prentice Hall ,2012

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Apply the concept of agile development and design any web application using the principles learnt. (PO 1,3,4) 2. Identify the concepts of Formal Modeling and verification methods and also the process of Project management and estimation. (PO 1,3,4) 3. Demonstrate the activities involved in Software Scheduling, Risk management and reverse engineering and Maintenance task. (PO 1,3,4) 4. Identify the approaches to Software Process Improvement. (PO 1,3,4) 5. Understand the concepts of Software Configuration Management, Product and Process metrics. (PO 1,3,4)

64 Software Oriented Architecture Course Code: MCSE13 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Divakar Harekal V UnitI SOA Basics :Software Architecture – Types of IT Architecture – SOA – Evolution – Key components – perspective of SOA – Enterprise-wide SOA – Architecture – Enterprise Applications – Solution Architecture for enterprise application – Software platforms for enterprise Applications – Patterns for SOA – SOA programming models. UnitII SOA Analysis and Design: Service-oriented Analysis and Design – Design of Activity, Data, Client and business process services – Technologies of SOA – SOAP – WSDL – JAX – WS – XML WS for .NET – Service integration with ESB – Scenario – Business case for SOA – stakeholder OBJECTIVES – benefits of SPA – Cost Savings. UnitIII SOA Governance:SOA implementation and Governance – strategy – SOA development – SOA governance – trends in SOA – event-driven architecture – software s a service – SOA technologies – proof-ofconcept – process orchestration – SOA best practices. UnitIV SOA Implementation:SOA based integration – integrating existing application – development of web services – Integration - SOA using REST – RESTful services – RESTful services with and without JWS – Role of WSDL,SOAP and Java/XML mapping in SOA – JAXB Data binding. UnitV Application Integration:JAX –WS 2.0 client side/server side development – Packaging and Deployment of SOA component – SOA shopper case study – WSDL centric java WS with SOA-J – related software – integration through service composition (BPEL) – case study - current trends.

Reference Books: 1. Shankar Kambhampaly, “Service–Oriented Architecture for Enterprise Applications”,Wiley 2008. 2. Mark D. Hansen, “SOA using Java Web Services”, Practice Hall, 2007. 3. Waseem Roshen, “SOA-Based Enterprise Integration”, Tata McGraw- HILL, 2009.

65 Course Outcomes (COs): At the end of the course, the students will be able to: 1. Design, develop and test Web services.(PO 1,3,4) 2. Learn standards related to Web services: Web Services Description Language (WSDL), Simple Object Access Protocol (SOAP), and Universal Description, Discovery and Integration (UDDI).(PO 1,3,4) 3. Learn basic principles of Service-Oriented Architecture and apply these concepts to develop a sample application. (PO 1,3,4) 4. Conceptually model Web services and formulate specifications of them in the Resource Description Framework (RDF) and the Web Ontology Language (OWL).(PO 1,3,4) 5. Evaluate emerging and proposed standards for the main components of Web services architectures.(PO 1,3,4)

66 Information Retrieval Course Code: MCSE14 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Ms. Vandana Sardar Sudhakar Unit I Introduction: Motivation, Basic concepts, Past, present, and future, the retrieval process. Modeling: Introduction, A taxonomy of information retrieval models, Retrieval: Adhoc and filtering, A formal characterization of IR models, Classic information retrieval, Alternative set theoretic models, Alternative algebraic models, Alternative probabilistic models, Structured text retrieval models, Models for browsing. Unit II Retrieval Evaluation: Introduction, Retrieval performance evaluation, Reference collections. Query Languages: Introduction, keyword-based querying, Pattern matching, Structural queries, Query protocols. Unit III Query Operations: Introduction, User relevance feedback, Automatic local analysis, Automatic global analysis. Text and Multimedia Languages and Properties: Introduction, Metadata, Text, Markup languages, Multimedia. Unit IV Text Operations: Introduction, Document preprocessing, Document clustering, Text compression, comparing text compression techniques. Indexing and Searching: Introduction; Inverted Files; Other indices for text; Boolean queries; Sequential searching; Pattern matching; Structural queries; Compression. Parallel and Distributed IR: Introduction, Parallel IR, Distributed IR. Unit V User Interfaces and Visualization: Introduction, Human-Computer interaction, the information access process, Starting pints, Query specification, Context, Using relevance judgments, Interface support for the search process. Searching the Web: Introduction, Challenges, Characterizing the web, Search engines, Browsing, Meta searchers, finding the needle in the haystack, searching using hyperlinks.

Text Book: 1. Ricardo Baeza-Yates, Berthier Ribeiro-Neto: Modern Information Retrieval, 1st edition, Pearson, 2011.

Reference Books:

67 1. David A. Grossman, Ophir Frieder: Information Retrieval Algorithms and Heuristics, 2nd Edition, Springer, 2009. 2. William B. Frakes, Ricardo Baeza-Yates (Editors): Information Retrieval Data Structures and Algorithms, 1st edition, Prentice Hall PTR, 2009.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Distinguish between data and information retrieval systems and explain different classical IR models. (PO 1,3,4) 2. Assess the performance of information retrieval systems and use different querying languages and protocols.(PO 1,3,4) 3. Perform query operations and recognize the use of metadata and markup languages.(PO 1,3,4) 4. Explain various text operations, indexing and search techniques, and the basics of parallel and distributed IR. (PO 1,3,4) 5. Discuss the concepts of user interfaces for IR applications and web search techniques.(PO 1,3,4)

68 Web Technologies Course Code: MCSE15 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. J Geetha Unit I Introduction: From Browsers to Rich Clients – browser drawbacks, A solution – rich clients, Rich clients today. Web 1.0: HTML, URLs and HTTP, The WEB Model and REST – resources, representations, state, transfer – using HTTP methods. XML, XPATH and XSLT – XML Support in browsers, XPath support in browsers, XSLT support in Browsers. Unit II HTML 5: Detecting HTML 5 features – Canvas, video, local storage, web workers, offline applications, geo-location, placeholders, and input types. What does it all mean – doc type, root, headers, articles, dates and times, navigation and footers. Let’s call it a drawing surface – Simple shapes, canvas, Paths, texts, gradients and images. The past, present and future of local storage for web applications, A Form of madness – place holders, autofocus fields, email, web addresses, numbers as spin boxes and sliders, date and color pickers, search boxes. Unit III AJAX-I: Basic communication techniques – XHR, AJAX with images, Dynamic script loading, Cache control. AJAX patterns: Communication control patterns – predictive fetch, page preloading, submission throttling, periodic refresh, multi-stage download. Fallback patterns. AJAX libraries – JQuery. Unit IV AJAX-II: Syndication with RSS and Atom – RSS, Atom, XParser, Creating a news ticker, Web search with RSS. JSON – Array, object, mixing literals, syntax, encoding/decoding, JSON versus XML, server-side JSON tools. COMET: HTTP streaming – request delays, file modification example, using Iframes, browserspecific approaches, server-sent DOM events, connection management and server-side support. Unit V Mashups and Web services: The rise of mashups, geocoding, Google maps API. Introduction to Service Oriented Architecture, Combining protocols to build Web services – clarifying web services, REST Services, WS-* Web services using SOAP and WSDL, REST vs WS-* services.

69 Reference Books: 1. Professional AJAX, Nicholas C Zakas et al, 2nd Edition, Wrox publications,2007. 2. Professional Web 2.0 Programming, Eric Van Der VList et al, Wrox Publications, 2007 3. HTML 5 Up and Running, Mark Pilgrim, O’REILLY| GOOGLE Press, 2010. 4. SOA: Concepts, Technology and Design, Thomas Erl, Pearson, 2005

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Develop a dynamic webpage by the use of java script and DHTML. (PO 1,3,4) 2. Write a well formed / valid XML document.(PO 1,3,4) 3. Connect a java program to a DBMS and perform insert, update and delete operations on DBMS table.(PO 1,3,4) 4. Write a server side java application called Servlet to catch form data sent from client, process it and store it on database.(PO 1,3,4) 5. Write a server side java application called JSP to catch form data sent from client and store it on database.(PO 1,3,4)

70 Advances in Digital Image Processing Course Code:MCSE16 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s:Mrs. Veena G S Unit I Digital Image Fundamentals: What is Digital Image Processing? fundamental Steps in Digital Image Processing, Components of an Image processing system, elements of Visual Perception, Image Sensing and Acquisition, Image Sampling and Quantization, Some Basic Relationships between Pixels, Linear and Nonlinear Operations. Unit II Image Transforms: Two-dimensional orthogonal & unitary transforms, properties of unitary transforms, two dimensional discrete Fourier transform. Discrete cosine transform, sine transform, Hadamard transform, Haar transform, Slant transform, KL transform. Unit III Image Enhancement: Image Enhancement in Spatial domain, Some Basic Gray Level Trans -formations, Histogram Processing, Enhancement Using Arithmetic/Logic Operations. Unit IV Basics of Spatial Filtering Image enhancement in the Frequency Domain filters, Smoothing Frequency Domain filters, Sharpening Frequency Domain filters, homomorphic filtering. Unit V Model of image degradation/restoration process, noise models, Restoration in the Presence of Noise, Only-Spatial Filtering Periodic Noise Reduction by Frequency Domain Filtering, Linear Position-Invariant Degradations, inverse filtering, minimum mean square error (Weiner) Filtering, Color Fundamentals. Color Models, Pseudo color Image Processing., processing basics of full color image processing.

Reference Books: 1. “Digital Image Processing”, Rafael CGonzalez, Richard E. Woods, etl , TMH , 2nd Edition 2010. 2. “Fundamentals of Digital Image Processing”, Anil K. Jain, Pearson Education, 2001. 3. “Digital Image Processing and Analysis”, B. Chanda and D. Dutta Majumdar, PHI, 2003.

71 Course Outcomes (COs): At the end of the course, students should be able to: 1. Examine various types of images, intensity transformations and applying various filtering techniques. (PO1,3,4) 2. Show how higher-level image concepts such as edge detection, segmentation representation can be implemented and used. (PO1,3,4) 3. To manipulate both binary and grayscale digital images using morphological filters and operators to achieve a desired result. (PO1,3,4) 4. Apply image processing algorithms in practical applications. (PO1,3,4)

72 Advances in Operating Systems Course Code: MCSE17 Credits: 4:0:0 Prerequisites: Operating Systems Contact Hours: 56 Course Coordinator/s: Dr. T N R Kumar Unit I Process Synchronization: Synchronizations Mechanisms – Concurrent Processes, Critical Section Problem, Synchronization Problems. Distributed Operating Systems: Architectures of Distributed Systems, Theoretical Foundations Unit II Distributed Mutual Exclusion - Classification of Mutual Exclusion and Associated Algorithms - A Comparative Performance Analysis, Distributed Deadlock Detection - Deadlock Handling Strategies, Issues - Control Organizations – Centralized, Distributed and Hierarchical Deadlock Detection Algorithms Unit III Agreement Protocols - System Model, Classification of Agreement Problems, Applications Of Agreement Algorithms. Distributed Resource Management: Distributed File Systems- Architecture - Mechanisms for Building Distributed File Systems - Design Issues - Log Structured File Systems, Distributed Shared Memory-Architecture- Algorithms For Implementing DSM - Memory Coherence And Protocols - Design Issues. Unit IV Distributed Scheduling - Issues In Load Distributing, Components Of Load Distributing Algorithm - Stability , Algorithms - Performance Comparison, Selecting A Suitable Load Sharing Algorithm, Requirements For Load Distributing -Task Migration and Issues. Failure Recovery: Classification , Backward And Forward Error Recovery, Recovery In Concurrent Systems - Consistent Set Of Check Points - Synchronous And Asynchronous Check Pointing And Recovery , Check Pointing For Distributed Database Systems- Recovery In Replicated Distributed Databases. Unit V Protection And Security- Resource Security And Protection- The Access Matrix Model And Its Implementations, Safety In Matrix Model- Advanced Models Of Protection, Multiprocessor Operating Systems: System Architectures, Inter Connection Networks, Caching , Hypercube Architecture. Multiprocessor Operating System - Structures , Design Issues, Threads , Process Synchronization and Issues, Processor Scheduling: Issues, Co-Scheduling, Smart Scheduling.

73 Laboratory Work: (The following programs can be executed on any available and suitable platform) 1. Design, develop and execute a program using any thread library to create the number of threads specified by the user; each thread independently generates a random integer as an upper limit, and then computes and prints the number of primes less than or equal to that upper limit along with that upper limit. 2. Rewrite above program such that the processes instead of threads are created and the number of child processes created is fixed as two. The program should make use of kernel timer to measure and print the real time, processor time, user space time and kernel space time for each process. 3. Design, develop and implement a process with a producer thread and a consumer thread which make use of a bounded buffer (size can be prefixed at a suitable value) for communication. Use any suitable synchronization construct. 4. Design, develop, and execute a program to solve a system of n linear equations using Successive Over-relaxation method and n processes which use Shared Memory API. 5. Design, develop, and execute a program to demonstrate the use of RPC.

Reference Books: 1. Mukesh Singhal, Niranjan G.Shivaratri, "Advanced concepts in operating systems: Distributed, Database and multiprocessor operating systems", TMH, 2009. 2. Andrew S.Tanenbaum, "Modern operating system", PHI, 2003 3. Pradeep K.Sinha, "Distributed operating system-Concepts and design", PHI, 2003. 4. Andrew S.Tanenbaum, "Distributed operating system", Pearson education, 2003.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Implement a concurrent programming application using semaphores & monitors for process control. (PO 1,3,4) 2. Explain the basic concepts of Distributed Operating Systems and its architecture. (PO 1,3,4)

74 3. Implement deadlock avoidance, prevention & recovery. (PO 1,3,4) 4. Identify the Distributed resource management and design issues. (PO 1,3,4) 5. Implement various CPU scheduling, IPC memory management, recovery and concurrent algorithms. (PO 1,3,4)

75 Cryptography and Security Course Code: MCSE18 Credits: 4:0:0 Prerequisites: Contact Hours: 56 Course Coordinator/s: Sowmya B J

Unit I Introduction to security attacks - services and mechanism - introduction to cryptography - Conventional Encryption: Conventional encryption model classical encryption techniques - substitution ciphers and transposition ciphers – cryptanalysis – steganography - stream and block ciphers - Modern Block Ciphers: Block ciphers principals - Shannon’s theory of confusion and diffusion - fiestal structure - data encryption standard(DES) - strength of DES differential and linearcrypt analysis of DES - block cipher modes of operations - triple DES – AES.

Unit II Confidentiality using conventional encryption - traffic confidentiality - key distribution - random number generation - Introduction to graph - ring and field - prime and relative prime numbers - modular arithmetic - Fermat’s and Euler’s theorem - primality testing - Euclid’s Algorithm - Chinese Remainder theorem - discrete algorithms.

Unit III Principles of public key crypto systems - RSA algorithm - security of RSA key management – Diffle-Hellman key exchange algorithm - introductory idea of Elliptic curve cryptography – Elgamel encryption - Message Authentication and Hash Function: Authentication requirements authentication functions - message authentication code - hash functions birthday attacks – security of hash functions and MACS.

Unit IV MD5 message digest algorithm - Secure hash algorithm (SHA) Digital Signatures: Digital Signatures - authentication protocols - digital signature standards (DSS) - proof of digital signature algorithm - Authentication Applications: Kerberos and X.509 - directory authentication service electronic mail security-pretty good privacy (PGP) - S/MIME.

76 Unit V IP Security: Architecture - Authentication header - Encapsulating security payloads - combining security associations - key management.

Text Books:

1. William Stallings, “Cryptography and Network security Principles and Practices”, Pearson/PHI. 2. Wade Trappe, Lawrence C Washington, “ Introduction to Cryptography with coding theory”, Pearson.

Reference Books:

1. W. Mao, “Modern Cryptography – Theory and Practice”, Pearson Education. 2. Charles P. Pfleeger, Shari Lawrence Pfleeger – Security in computing – Prentice Hall of India.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Provide security of the data over the network. (PO 1,3,4) 2. Do research in the emerging areas of cryptography and network security. (PO 1,3,4) 3. Implement various networking protocols. (PO 1,3,4) 4. Protect any network from the threats in the world. (PO 1,3,4) 5. Understand the IP security issues (PO 1,3,4)

77 Information and Network Security Course Code: MCSE19 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. Meeradevi A Kawalgi UnitI Classical Encryption Techniques: Symmetric Cipher Model, Cryptography, Cryptanalysis and Brute-Force Attack, Substitution Techniques, Caesar Cipher, Mono alphabetic Cipher, Playfair Cipher, Hill Cipher, Polyalphabetic Cipher, One Time Pad. Block Ciphers and the data encryption standard: Traditional block Cipher structure, stream Ciphers and block Ciphers, Motivation for the feistel Cipher structure, the feistel Cipher, The data encryption standard, DES encryption , DES decryption , A DES example, results, the avalanche effect, the strength of DES, the use of 56-Bit Keys, the nature of the DES algorithm, timing attacks, Block cipher design principles, number of rounds, design of function F, key schedule algorithm. UnitII Public-Key Cryptography and RSA: Principles of public-key cryptosystems. Public-key cryptosystems. Applications for public-key cryptosystems, requirements for public-key cryptosystems. public-key cryptanalysis. The RSA algorithm, description of the algorithm, computational aspects, the security of RSA: Other Public-Key Cryptosystems: Diffiehellman key exchange, The algorithm, key exchange protocols, man in the middle attack, Elgamal Cryptographic systems, Elliptic curve arithmetic, abelian groups, elliptic curves over real numbers, elliptic curves over Zp, elliptic curves over GF(2m), Elliptic curve cryptography, Analog of Diffie-hellman key exchange, Elliptic curve encryption/ decryption, security of Elliptic curve cryptography, Pseudorandom number generation based on an asymmetric cipher, PRNG based on RSA. UnitIII Key Management and Distribution: Symmetric key distribution using Symmetric encryption, A key distribution scenario, Hierarchical key control, session key lifetime, a transparent key control scheme, Decentralized key control, controlling key usage, Symmetric key distribution using asymmetric encryption, simple secret key distribution, secret key distribution with confidentiality and authentication, A hybrid scheme, distribution of public keys, public announcement of public keys, publicly available directory, public key authority, public keys certificates, X-509 certificates. Certificates, X- 509 version 3, public key infrastructure .User Authentication: Remote user Authentication principles, Mutual Authentication, one way

78 Authentication, remote user Authentication using Symmetric encryption, Mutual Authentication, one way Authentication, Kerberos, Motivation , Kerberos version 4, Kerberos version 5, Remote user Authentication using Asymmetric encryption, Mutual Authentication, one way Authentication, federated identity management, identity management, identity federation, personal identity verification. UnitIV Wireless network security: Wireless security, Wireless network threats, Wireless network measures, mobile device security, security threats, mobile device security strategy, IEEE 802.11 Wireless LAN overview, the Wi-Fi alliance, IEEE 802 protocol architecture. Security, IEEE 802.11i services, IEEE 802.11i phases of operation, discovery phase, Authentication phase, key management phase, protected data transfer phase, the IEEE 802.11i pseudorandom function, Web Security Considerations: Web Security Threats, Web Traffic Security Approaches. Secure Sockets Layer: SSL Architecture, SSL Record Protocol, Change Cipher Spec Protocol, Alert Protocol, handshake Protocol, Cryptographic Computations. Transport Layer Security: Version Number, Message Authentication Code, Pseudorandom Functions, Alert Codes, Cipher Suites, Client Certificate Types, Certificate Verify And Finished Messages, Cryptographic Computations, Padding. HTTPS Connection Initiation, Connection Closure. Secure Shell (SSH): Transport Layer Protocol, User Authentication Protocol, and Connection Protocol. UnitV Electronic Mail Security: Pretty good privacy, notation, operational; description, S/MIME, RFC5322, Multipurpose internet mail extensions, S/MIME functionality, S/MIME messages, S/MIME certificate processing, enhanced security services, Domain keys identified mail, internet mail architecture, E-Mail threats, DKIM strategy, DKIM functional flow, .IP Security: IP Security overview, applications of IPsec, benefits of IPsec, Routing applications, IPsec documents, IPsec services, transport and tunnel modes, IP Security policy, Security associations, Security associations database, Security policy database, IP traffic processing, Encapsulating Security payload, ESP format, encryption and authentication algorithms, Padding, Anti replay service, transport and tunnel modes, combining security associations, authentication plus confidentiality, basic combinations of security associations, internet key exchange, key determinations protocol, header and payload formats, cryptographic suits.

79 Reference books: 1. William Stallings: Cryptography and Network Security, Pearson 6th edition, 2013. 2. V K Pachghare: Cryptography and Information Security, 2013.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Master information security governance, and related legal and regulatory issues and also master understanding external and internal threats to an organization. (PO 1,3,4) 2. Get familiarity with information security awareness and a clear understanding of its importance and how threats to an organization are discovered, analyzed, and dealt with. (PO 1,3,4) 3. Master fundamentals of secret and public cryptography and master protocols for security services. (PO 1,3,4) 4. Get familiar with network security threats and countermeasures and familiar with network security designs using available secure solutions (such as PGP, SSL, IPSec, etc). (PO 1,3,4) 5. Get familiar with advanced security issues and technologies (such as DDoS attack detection and containment, and anonymous communications,) and exposed to original research in network security and also exposed to the importance of integrating people, processes and technology. (PO 1,3,4)

80 Digital Forensic and Cyber Crime Course Code: MCSE20 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr Ramani S Unit 1 Understanding Cyber Crime: Indian IT Act 2008 and amendments, Computer Forensic and Investigations as a Profession, Understanding Computer Forensics.Understanding Computer Investigations: Preparing a Computer Investigation, Taking a Systematic Approach, Procedures for Corporate High-Tech Investigations, Understanding Data Recovery Workstations and Software. Unit II Working with Windows and DOS Systems: Understanding File Systems, Exploring Microsoft File Structures, Examining NTFS Disks, Understanding Whole Disk Encryption, Understanding the Windows Registry, Understanding Microsoft Startup Tasks, Understanding MS-DOS Startup Tasks, and Understanding Virtual Machines. Unit III Data Acquisition: Understanding Storage Formats for Digital Evidence, Determining the best Acquisition Method, Contingency Planning for Image Acquisitions, Using Acquisition Tools, Validating Data Acquisitions, Using Remote Network Acquisition Tools.Computer Forensics Analysis and Validation: Determining What Data to Collect and Analyze, Validating Forensic Data, Addressing Data-Hiding Techniques, Performing Remote Acquisitions. Unit IV Current Computer Forensics Tools: Evaluating Computer Forensic Tool Needs, Computer Forensics Software Tools, Computer Forensics Hardware Tools, Validating and Testing Forensics Software. Recovering Graphics Files: Recognizing a Graphics File, Understanding Data Compression, Locating and Recovering Graphics Files, Identifying Unknown File Formats, Understanding Copyright Issues with Graphics. Unit V Network Forensics: Network Forensic Overview, Performing Live Acquisitions, Developing Standard Procedures for Network Forensics, Using Network Tools. E-mail Investigations: Exploring the Role of E-mail in Investigations, Exploring the Roles of the Client and Server in E-mail, Investigating E-mail Crimes and Violations, Understanding E-mail Servers,

81 Using Specialized E-mail Forensics Tools. Laboratory Lab exercises using forensic software and Case study data.

Text Book: 1. Nelson, Phillips, Frank, Enfinger and Steuart: Computer Forensics and Investigations, Cengage Learning, 2008. Chapters: 1, 2, 4, 6, 7, 8, 9, 10, 11, 12

Reference Books: 1. Marjie T. Britz: Computer Forensics and Cyber Crime - An Introduction, 2nd Edition, Pearson Education, 2012. 2. Harish Chander: Cyber Laws and IT Protection, PHI, 2012. 3. http://www.cyberforensics.in/default.aspx

Lab Exercises The following exercises have to be performed using various open source software tools/utilities mentioned. Software Tools:  CyberCheck 4.0 - Academic Version  CyberCheckSuite  MobileCheck  Network Session Analyser  Win-LiFT  TrueImager  TrueTraveller  PhotoExaminer Ver 1.1  CDRAnalyzer

Forensics Exercises: I) Disk Forensics: 1. Identify digital evidences 2. Acquire the evidence 3. Authenticate the evidence 4. Preserve the evidence 5. Analyze the evidence 6. Report the findings II) Network Forensics: 1. Intrusion detection

82 2. Logging (the best way to track down a hacker is to keep vast records of activity on a network with the help of an intrusion detection system) 3. Correlating intrusion detection and logging

Course Outcomes (COs): At the end of the course, students should be able to: 1. Recall the Indian IT Act 2008 and its amendments. (PO1,3,4) 2. Classify various types of computer crime. (PO1,3,4) 3. Apply computer forensic techniques to identify the digital fingerprints associated with criminal activities. (PO1,3,4) 4. Analyze hidden information from pictures and other files. (PO1,3,4) 5. Apply network forensic tools for network forensic and live data forensic analysis. (PO1,3,4)

83 Applied Cryptography Course Code: MCSE21 Credits: 4:0:0 Prerequisites: Contact Hours: 56 Course Coordinator/s: Dr. Mohana Kumar S

Unit I OSI security architecture: Classical encryption techniques, Cipher principles, Data encryption standard, Block cipher design principles and modes of operation, Evaluation criteria for AES, AES cipher, Triple DES, Placement of encryption function, Traffic confidentiality

Unit II Key management: Diffie Hellman key exchange, Elliptic curve architecture and cryptography, Introduction to number theory, Confidentiality using symmetric encryption, Public key cryptography and RSA.

Unit III Authentication requirements: Authentication functions, Message authentication codes, Hash functions, Security of hash functions and MACS, MD5 Message Digest algorithm, Secure hash algorithm, Ripened, HMAC digital signatures, Authentication protocols

Unit IV Quantum Cryptography and Quantum Teleportation: Heisenberg uncertainty principle, polarization states of photons, quantum cryptography using polarized photons, local vs. non local interactions, entanglements, EPR paradox, Bell’s theorem, Bell basis, teleportation of a single qu-bit theory and experiments.

Unit V Future trends: Review of recent experimental achievements, study on technological feasibility of a quantum computer candidate physical systems and limitations imposed by noise.

84 Text Books: 1. William Stallings, “Cryptography and Network Security -Principles and Practices”, 3rd Edition, Prentice Hall of India, 2003. 2. Atul Kahate, “Cryptography and Network Security”, Tata McGraw - Hill, 2003. 3. William Stallings, “Network Security Essentials: Applications and Standards”, Pearson Education Asia, 2000.

Reference Books: 1. R. P. Feynman, “Feynman Contacts on computation”, Penguin Books, 1996. 2. Gennady P. Berman, Gary D. Doolen, Ronnie Mainiri & Valdmis Itri Frinovich, “Introduction to quantum computers”, World Scientific, Singapore, 1998. 3. Jonathan Katz, Yehuda Lindell, “Introduction to Modern Cryptography” Principles And Protocols”,CRC Press.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Explain the concepts of principles and practice of cryptography and network security. . (PO1,3,4) 2. Present an overview of the Feistel cipher, Distribution of Public Keys, digital signatures and Authentication protocols. . (PO1,3,4) 3. Analyze the security of multiple encryption schemes and Triples DES. . (PO1,3,4) 4. Build secure authentication systems by use of message authentication techniques. . (PO1,3,4) 5. Explain the concepts of principles and practice of visual cryptography. . (PO1,3,4)

85 Internet of Things (IoT) Course Code: MCSE22 Credits: 4:0:0 Prerequisites: Nil Contact Hours:56 Course Coordinator/s: HanumanthaRaju R

Course Contents:

Unit I Introduction to IoT:What is IoT? , IOT terms and Basic Definitions, Disambiguation of IoT vs IoE vs M2M vs Others, Characteristics of IoT. Wireless Sensor Networks: Potential Applications, WSN System Architecture, WSN Network Topologies, Components of a WSN Node. Architecture of IoT systems: Things in IoT, Applications of IoT and IoT Reference model, IoT Ecosystem, Enabling Technologies in IoT, Marketplace and Vision of IoT.

Unit II Hardware aspects of IoT: Sensors and Actuators: Introduction to Sensors:Workflow of a Sensor in a typical system, Classification of Sensors,Sampling DAC and ADC conversion. Introduction to Actuators: Workflow of an Actuator in a typical system, Classification of Actuators,Types of Sensors, Interfacing concepts to embedded systems.

Unit III Communications and networking aspects of IoT: High bandwidth networking: Ethernet, gigabit Ethernet, Ethernet topologies like bridge and switches, Passive optical fiber network and topologies, WiFi and WiMax. WiFi routers, radius servers, Wireless security with WPA-2, LEAP, enterprise WPA networks Low Bandwidth Wireless Networks: FSK, LoRa modulation basics, LoRaWAN basics. Peripherals networking: Basics of I2C, SPI, RS232, RS485 and CAN bus, Comparisons and use cases of I2C, SPI, RS232, RS485and CAN bus. Introduction to BLE 5 and industrial Wireless sensor networks, Security in low bandwidth wireless networks, Security in peripheral networks.

Unit IV Software and middleware aspects of IoT:-

86 Middleware: Components of Middleware, Types of Databases, Micro services and API’s. IP Communication protocols: HTTP, AMQP, MQTT and STOMP. Protocol definitions, use cases and differences.

Unit V IoT Platform Design Methodology and Domain Specific IoT. Futuristic view of IoT, problems pertaining to implementation like scaling, feasibility and management.

Text Books:

1. Srinivasa K G, Siddesh G.M and HanumanthaRaju R “Internet of Things”, CENGAGE Leaning India, 2017. (ISBN:978-93-868-5895- 5).

References:

1. Vijay Madisetti and ArshdeepBahga, “Internet of Things (A Hands- on-Approach)”, 1stEdition, VPT, 2014. (ISBN: 978-8173719547). 2. Designing the Internet of Things by Adrian McEwenSmart Cities, Software above the level of a single device,Ebooks on IoT by O’Reilly 3. Sentilo middleware http://www.sentilo.io/xwiki/bin/view/Sentilo.About.Product/Whatis 4. Mosquitto broker https://mosquitto.org/ 5. Getting started with raspberry pi https://www.raspberrypi.org/resources/learn/ 6. Arduino basics https://www.arduino.cc/en/Tutorial/HomePage 7. Wired peripheral protocols http://www.comm.pub.ro/dicm/C7_Serial_Bus.pdf 8. OneM2m http://www.indiaeu-ictstandards.in/wp- content/uploads/2017/04/oneM2M-for-smart-city-TSDSI- presentation-April-21st-2017-Omar-Elloumi.pdf 9. LoRa Modulation http://www.semtech.com/images/datasheet/an1200.22.pdf

87 Course Outcomes (COs):

At the end of the course, students should be able to:

1. Understand the basics of IoT.(PO1,3,4) 2. Demonstrate various components, layouts and views in creating IoT applications.(PO1,3,4) 3. Design applications using sensors and actuators.(PO1,3,4) 4. Demonstrate the working of long running tasks in the background using IoT.(PO1,3,4) 5. Demonstrates how to write applications for smart world.(PO1,3,4)

88 Software Testing

Course Code: MCSE23 Credits: 4:0:0 Prerequisites: SE Contact Hours: 56 Course Coordinator/s: Pradeep Kumar D

Course Contents:

Unit I A Perspective on Testing, Examples: Basic definitions, Test cases, Insights from a Venn diagram, Identifying test cases, Error and fault taxonomies, Levels of testing. Examples: Generalized pseudo code, the triangle problem, The Next Date function, The commission problem, The SATM (Simple Automatic Teller Machine) problem, The currency converter, Saturn windshield wiper.

Unit II Boundary Value Testing, Equivalence Class Testing, Decision Table-Based Testing: Boundary value analysis, Robustness testing, Worst-case testing, Special value testing, Examples, Random testing, Equivalence classes, Equivalence test cases for the triangle problem, Next Date function, and the commission problem, Guidelines and observations. Decision tables, Test cases for the triangle problem, Next Date function, and the commission problem, Guidelines and observations. Path Testing, Data Flow Testing:DD paths, Test coverage metrics, Basis path testing, guidelines and observations, Definition-Use testing, Slice-based testing, Guidelines and observations.

Unit III Levels of Testing, Integration Testing: Traditional view of testing levels, Alternative life-cycle models, The SATM system, separating integration and system testing. A closer look at the SATM system, Decomposition-based, call graph-based, Path-based integrations, System Testing, Interaction Testing: Threads, Basic concepts for requirements specification, Finding threads, Structural strategies and functional strategies for thread testing, SATM test threads, System testing guidelines, ASF (Atomic System Functions) testing example. Context of interaction, A taxonomy of interactions, Interaction, composition, and determinism, Client/Server Testing.

89 Unit IV Process Framework: Validation and verification, Degrees of freedom, Varieties of software. Basic principles: Sensitivity, redundancy, restriction, partition, visibility, Feedback. The quality process, Planning and monitoring, Quality goals, Dependability properties, Analysis, Testing, Improving the process, Organizational factors, Fault-Based Testing, Test Execution: Overview, Assumptions in fault-based testing, Mutation analysis, Fault-based adequacy criteria, Variations on mutation analysis. Test Execution: Overview, from test case specifications to test cases, Scaffolding, Generic versus specific scaffolding, Test oracles, Self-checks as oracles, Capture and replay.

Unit V Planning and Monitoring the Process, Documenting Analysis and Test: Quality and process, Test and analysis strategies and plans, Risk planning, Monitoring the process, Improving the process, The quality team, Organizing documents, Test strategy document, Analysis and test plan, Test design specifications documents, Test and analysis reports.

Text Books:

1. Paul C. Jorgensen: Software Testing, A Craftsman’s Approach, 3rdEdition, Auerbach Publications, 2012. 2. Mauro Pezze, Michal Young: Software Testing and Analysis –Process, Principles and Techniques, 1stEdition, WileyIndia, 2011.

Reference Books:

1. Aditya P Mathur:Foundations of Software Testing, 1stEdition,Pearson Education, 2008. 2. Srinivasan Desikan, Gopalaswamy Ramesh: Software testing Principles and Practices, 2ndEdition, Pearson Education, 2007.

Course Outcomes (COs): At the end of the course, a student should be able to:

1. Identify Test cases, Error and fault taxonomies, Levels of testing. (PO1,3,4)

90 2. Classify different types of testing (Boundary Value Testing, Equivalence Class Testing and Decision Table-Based Testing). (PO1,3,4) 3. Recognize Alternative life - cycle models, recognize Basic concepts for requirements specification, assess context of interaction. (PO1,3,4) 4. Recognize approaches for Test Execution: from test case specifications to test cases, Scaffolding, Generic versus specific scaffolding. (PO1,3,4) 5. Identify and plan strategies to test design specifications document. (PO1,3,4)

91 Privacy and Security in Online Social Media Course Code: MCSE24 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Mrs. Parkavi A

Unit I What is Online Social Networks, data collection from social networks, challenges, opportunities, and pitfalls in online social networks,APIs. Unit II Collecting data from Online Social Media, Trust, credibility, and reputations in social systems. Unit III Trust, credibility, and reputations in social systems, Online social Media and Policing. Unit IV Information privacy disclosure,revelation and its effects in OSM and online social networks. Unit V Phishing in OSM & Identifying fraudulent entities in online social networks.

Reference Links: 1. http://www.amazon.com/Programming-Collective-Intelligence- BuildingApplications/dp/0596529325 2. http://www.amazon.com/Practical-Web-Applications-Experts- Voice/dp/1590599063 3. http://www.amazon.in/Building-Social-Applications-Gavin- Bell/dp/8184048327? =googinhydr18418-21 4. http://www.amazon.in/The-Web-Application-Hackers- Handbookebook/dp/B005LVQA9S?tag=googinhydr18418-21.

92 Start-up Engineering Course Code: MCSE25 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Prof. Nagabhushana A M Unit I Introduction, Start up : past & present , NSF AUP Repeal: Internet for Business, The Key Features of Internet Startups, Technological Trends Toward Mobility and Decentralization, Start up engineering, Technologies, Design, Marketing, and Sales, Mobile HTML5 for the Final Project, Interactive Start, Webapp, Setup and Signup- AWS, Gravatar, Github, and Heroku, Connect to a Cloud Computer,Launch EC2 Instance, Mac: Connect to EC2 instance via Terminal.app, Windows: Connect to EC2 instance via Cygwin, Security Groups, Standard Operating System: Ubuntu 12.04.2 LTS on a t1.micro AWS instance, Deploy code to Test Heroku account. Unit II Linux and Server-Side Javascript (SSJS), Overview, Features of Linux, Virtual Machines and the Cloud, Virtualization, Cloud and IAAS/PAAS/SAAS, Linux , Filesystem-Usage of env, PATH, HOME, which, issues, ssh, scp, bash, apt-get, Compiling from source: ./configure; make; make install, Example of installation conflicts , Server-Side JS (SSJS), Install node and npm, node.js REPL, Editing code with nano, node.js programming, Using the libraries, Market Research, Wireframing, and Design, Idea, Execution, and Market, Importance of product/idea- execution/team and market, Idea Maze, Execution Mindset, Kind of Business: Startups & Small Businesses, Startups: Exhibit Economies of Scale, Pursue Large Markets, Market Sizing Calculations Early and Often, Market Research: Tools , framework for determining product tiers, Wireframing, Copywriting, and Design, Wireframing, Copywriting, Design. Unit III Introduction to HTML/CSS/JS, webpage program, HTTP Request to Rendered Page, Anatomy of web page, HTML: Skeleton and Semantics, CSS, JS, Separation of concerns, Tools , Deployment, DNS, and Custom Domains, Deployment: Dev, Staging, Production, Sidebar: Comparing EC2 vs. local laptops for development, Preliminaries: SSH/HTTP/HTTPS- accessible EC2 dev instance, Creating and managing git branches, Worked Example: Dev, Staging, Production, DNS, Custom Domains, Finding a domain: domize.com, Registering a domain: dnsimple.com, Configuring DNS to work with Heroku, Setting up HTTPS and Google Apps,

93 Social/Local/Mobile, Virality, Growth, Virality Equation, Local, Local Commerce, Graveyard of Startups. Unit IV Regulation, Disruption, Technologies of 2013, Gaining Context, Transportation and Lodging, Payments and Finance, Biotech, Antitrust and Acquisitions, Aspects of Regulation, Anticipate the Argument, A/B/C/D Theory of Regulation, Technological Legalization, Amazon.com, anesthetizing C, Square, Tesla, Facebook/Goldman, Uber, Angel List, Disruption and the Technologies of 2013, Industrial Robotics, 3D Printing, Telepresence, Quantified Self, Bitcoin, Autonomous Drones, Coda, Linux Command Line, three streams, Navigation and Filesystem, Downloading and Syncing, Basic Text Processing, Help, Superuser, Intermediate Text Processing, Intermediate bash, Linux Development Environment: Development Environment, Distributed Version Control Systems (DVCS). Unit V Linux Development Environment : Managing Setup and Configuration as Code, Mobile: Age of Internetification, Mobile Simply a Fad, Mobile Present & Future , Mobile technologies , Intermediate Javascript: rise of Javascript, Basics and Built-ins, Array, Date, RegExp, Math, String, JSON, Error, Built- in functions, Functional Programming (FP) and JS Functions, Object- Oriented Programming (OOP), Prototypal Inheritance,and JS Objects, Heuristics for OOP in JS, Node.js: Asynchrony, Flow Control, and Debugging: Motivation: reduce the impact of I/O latency withasynchronous calls, advantages and disadvantages of Node, Asynchronous Programming and Flow Control, Basic debugging with the Node Debugger.

Reference Books: 1. Materials on Startup Engineering, Balaji S. Srinivasan, Stanford University 2. http://www.wsj.com/articles/SB100014240531119034809045765122509 15629460#printMode 3. http://www.asymco.com/2012/01/17/the-rise-and-fall-of-personal- computing/ 4. http://www.kpcb.com/blog/2012-internet-trends-update 5. http://www.nytimes.com/2011/05/08/technology/08class.html?pagewante d=all&_r=0 6. http://www.nytimes.com/2011/06/11/technology/11computing.html?page wanted=all&_r=0

94 7. http://www.nytimes.com/projects/magazine/ideas/2009/#natural_science- 7 8. http://www.paulgraham.com/growth.html 9. http://blakemasters.com/peter-thiels-cs183-startup 10.http://web.stanford.edu/class/cs106b/textbook/CS106BX-Reader.pdf

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Describing startups and technology trends towards businesses. (PO 1,3,4) 2. Identifying software usage for businesses and ethics. (PO 1,3,4) 3. Figuring out the web usage for business launch. (PO 1,3,4) 4. Assessing the latest technologies for startups. (PO 1,3,4) 5. Preparing software for startups. (PO 1,3,4)

95 Artificial Intelligence Course Code: MCSE26 Credits: 4:0:0 Contact Hours: 56 Prerequisites: Knowledge of any advanced programming language, Algorithms and Data structures, Elementary Discrete Mathematics or similar. Course Coordinator/s: Dr. S. Rajarajeswari and Dr. Annapurna P Patil

Course Contents:

Unit I Introduction: What is AI? Intelligent Agents: Agents and environment, Rationality, the natureof environment, the structure of agents. Problem- solving by search: Problem-solving agents, Example problems, searching for solution, uniformed search strategies informed search strategies, Heuristic functions, On-linesearch agents and unknown environments.On-line search agents and unknown environments. Unit II Logical Agents: Knowledge-based agents, the wumpus world, Logic, propositional logic, Reasoning patterns in propositional logic, Effective propositional model checking, Agents based on propositional logic First- Order Logic: Representation revisited, Syntax and semantics of first-order logic, usingfirst-order logic, Knowledge engineering in first-order logic. Interference in First-order Logic: Propositional vs first-order inference, Unification and lifting, Forward chaining, Backward chaining, Resolution. Forward chaining, Backward chaining. Unit III Planning: Definition, planning with state-space search, Planning graphs, other planning approaches analysis. Uncertainty: Acting under uncertainty, Basic probability Notations, Inference using full joint distributions, Independence, Bayes’ rule and its use. Learning fromExamples: Forms of Learning, Supervised Learning, Learning Decision Trees Best Hypothesis Theory Regression and Classification with Linear Models ANN, Non Parametric Models SVM, Ensemble Learning, Practical Machine Learning. SVM, Ensemble Learning, Practical Machine Learning.

96 Unit IV Learning Probabilistic Models: Statistical Learning, Learning with complete data Hidden Variables. Natural Language Processing & communication: Language Models Text Classification Information retrieval, Extraction, Phrase, structure grammars, Syntactic Analysis, Augmented Grammars & Semantic Interpretation, Machine translation, Speech recognition.Machine translation, Speech recognition. Unit V Genetic Algorithms: GA, Significance of genetic operators, Termination parameters, Niching and Speciation, Evolving Neural Networks, Theoretical grounding, Ant Algorithms. Perception: Image Formation Earthly Image Processing operations,Object recognition by appearance, from structural Information 3D world,using world. Robotics: Introduction, Hardware Perception planning to Move, planning uncertain movement, moving robotic software architecture, application domains.Evolving Neural Networks, Theoretical grounding, Ant Algorithms. Robotic software architecture, application domains.

Text Books:

1. Stuart Russel, Peter Norvig: Artificial Intelligence - A Modern Approach, 3rd Edition, Pearson Education, 2012. (Unit-1,2,3,4,5). 2. Elaine Rich, Kevin Knight, Shivashankar B Nair: Artificial Intelligence, 3rd Edition, Tata McGraw Hill, 2011. (Unit-5).

Reference Books:

1. Peter Jackson, “Introduction to Expert Systems”, 3rd Edition, Pearson Education, 2007.(Unit 5). 2. Deepak Khemani “Artificial Intelligence”, Tata Mc Graw Hill Education 2013.(unit 3). 3. http://nptel.ac.in

97 Course Outcomes (COs):

At the end of the course, the student should be able to: 1. Identify problems that are amenable to specific solution by appropriate AI methods.(PO1,3,4) 2. Utilize various symbolic knowledge representation to specify domains and reasoning tasks of a situated software agent. Use different logical systems for inference over formal domain representations, and trace how a particular inference algorithm works on a given problem specification.(PO1,3,4) 3. Formalize a given problem in the language/framework of different AI methods and solve using basic AI algorithms. (PO1,3,4) 4. Design and carry out an empirical evaluation of different algorithms on a problem formalization, and state the conclusions that the evaluation supports.(PO1,3,4) 5. Communicate scientific knowledge at different levels of abstraction in a variety of research settings(PO1,3,4)

98 Machine Learning

Course Code: MCSE27 Credits: 4:0:0 Prerequisites: AI Contact Hours:56 Course Coordinator/s: Dr. S Rajarajeswari

Course Contents: Unit I Introduction Learning – Types of Machine Learning – Supervised Learning – The Brain and the Neuron – Design a Learning System – Perspectives and Issues in Machine Learning – Concept LearningTask – Concept Learning as Search – Finding a Maximally Specific Hypothesis – Version Spaces – Find S, Candidate Elimination Algorithm – Linear Discriminants – Perceptron – LinearSeparability – Linear Regression. Unit II Linear Models Multi-layer Perceptron – Going Forwards – Going Backwards: Back Propagation Error – MultilayerPerceptron in Practice – Examples of using the MLP – Overview – Deriving BackPropagation– Radial Basis Functions and Splines – Concepts – RBF Network – Curse ofDimensionality – Interpolations and Basis Functions – Support Vector Machines. Unit III Tree and Probabilistic Models Learning with Trees – Decision Trees – Constructing Decision Trees – Classification and Regression Trees – Ensemble Learning – Boosting – Bagging – Different ways to Combine Classifiers – Probability and Learning – Data into Probabilities – Basic Statistics – Gaussian Mixture Models – Nearest Neighbor Methods – Unsupervised Learning – K means Algorithms –Vector Quantization – Self Organizing Feature Map. Unit IV Dimensionality Reduction and Evolutionary Models Dimensionality Reduction – Linear Discriminant Analysis – Principal Component Analysis – FactorAnalysis – Independent Component Analysis – Locally Linear Embedding – Isomap – LeastSquares Optimization – Evolutionary Learning – Genetic algorithms – Genetic Offspring: -

99 GeneticOperators – Using Genetic Algorithms – Reinforcement Learning – Overview – Getting LostExample – Markov Decision Process. Unit V Graphical Models Markov Chain Monte Carlo Methods – Sampling – Proposal Distribution – Markov Chain Monte Carlo – Graphical Models – Bayesian Networks – Markov Random Fields – Hidden Markov Models – Tracking Methods.

Text Books:

1. Ethem Alpaydin "Introduction To Machine Learning" 2nd Edition PHI Learning Pvt. Ltd-New Delhi. 2. Tom M Mitchell, ―Machine Learningǁ, First Edition, McGraw Hill Education, 2013.

Reference Books:

1. Peter Flach, ―Machine Learning: The Art and Science of Algorithms that Make Sense of Data‖, First Edition, Cambridge University Press, 2012. 2. Stephen Marsland, ―Machine Learning – An Algorithmic Perspective‖, Second Edition, 3. Chapman and Hall/CRC Machine Learning and Pattern Recognition Series, 2014. 4. Trevor Hastie, Robert Tibshirani, Jerome Friedman, h The Elements of Statistical Learning, 2nd edition, springer series in statistics. 5. Jason Bell, ―Machine learning – Hands on for Developers and Technical Professionals‖, FirstEdition, Wiley, 2014

Course Outcomes (COs):

At the end of the course, the student will be able to: 1. Distinguish between, supervised, unsupervised and semi-supervised learning.(PO1,3,4)

100 2. Apply the appropriate machine learning strategy for any given problem.(PO1,3,4) 3. Suggest tree and probabilistic learning algorithms for any given. Problem. (PO1,3,4) Modify existing machine learning algorithms to improve classification efficiency.(PO1,3,4) 4. Design systems that uses the appropriate graph models of machine learning(PO1,3,4)

101 Deep Learning

Course Code: MCSE28 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Srinidhi H

Course Contents: Unit I Introduction: Human brain, neuron models, neural nets as directed graphs, feedback, neural architectures, knowledge representation, connection to artificial intelligence,Pytorch and Tensorflow.

Unit II Learning Process: Error-correction learning, memory based learning, Hebbian learning, competitive learning, Boltzmann learning, credit assignment, learning with and without a teacher, learning tasks, memory, statistical learning theory,Backpropagation using MNSIT.

Unit III Modern practical deep neural networks: Deep feedforward networks, regularization for deep learning, optimization for training deep models, convolutional Networks,Classification using Tensorflow and Pytorch.

Unit IV Sequence Modelling: Recurrent and recursive nets, practical Methodology, applications.Reinforcement learning.

Unit V Deep Learning Research: Linear factor models, auto encoders, variational auto encoders, restricted Boltzmann machine, generative adversarial networks,Transfer learning.

TextBooks:

102 1. Simon Haykin, Neural networks: A comprehensive foundation, Second Edition, Prentice Hall, New Delhi, 1999, ISBN-81-203- 2373-4. 2. Ian Goodfellow, Yoshua Bengio and Aaron Courville, Deep Learning, MIT Press, 2016.

Course Outcomes (COs):

At the end of the course, student should be able to:

1. Explain the concepts and applications of neural networks and deep learning. (PO1,3,4) 2. Explain how various types of learning work and how they can be used. (PO1,3,4) 3. Apply deep feedforward networks and convolutional to solve practical problems. (PO1,3,4) 4. Demonstrate how recurrent and recursive nets function and how practical problems can be mapped to them. (PO1,3,4) 5. Design end-to-end deep learning architectures involving various types of feedforward networks, auto encoders, RBM, and generative adversarial networks for practical applications. (PO1,3,4)

103 Social Network Analysis Course Code: MCSE29 Credits: 4:0:0 Prerequisites: Contact Hours: 56 Course Coordinator/s: Parkavi A

Unit I

Introduction to social network analysis Introduction to new science of networks. Networks examples. Graph theory basics Descriptive network analysis Statistical network properties. Degree distribution, clustering coefficient. Frequent patterns. Network motifs. Cliques and k-cores

Unit II Network structure. Nodes and edges, network diameter and average path length. Node centralities and ranking on network Node centrality metrics: degree, closeness and betweenness centrality. Eigenvector centrality and PageRank. Algorithm HITS

Unit III Network communities Networks communities. Graph partitioning and cut metrics. Edge betweenness. Modularity clustering. Affiliation networks Affiliation network and bipartite graphs. 1-mode projections. Recommendation systems

Unit IV Information and influence propagation on networks Social Diffusion. Basic cascade model. Influence maximization. Most influential nodes in network. Network visualization Network visualization and graph layouts. Graph sampling. Low-dimensional projections

Unit V Social media mining Natural language processing and sentiment mining. SNA in real world: FB/VK and Twitter analysis Properties of large social networks: friends, connections, likes, re-tweets

104 Text Books:

1. David Easley and John Kleinberg. "Networks, Crowds, and Markets: Reasoning About a Highly Connected World." Cambridge University Press 2010. 2. Eric Kolaczyk, Gabor Csardi. “Statistical Analysis of Network Data with R (Use R!)”. Springer, 2014.

Reference Books:

1. Maarten van Steen. “Graph Theory and Complex Networks. An Introduction”, 2010. 2. Reza Zafarani, Mohammed Ali Abbasi, Huan Liu. “Social Media Mining: An Introduction”. Cambridge University Press 2014. 3. Maksim Tsvetovat and Alexander Kouznetsov. “Social Network Analysis for Startups”. O’Reilly Media, 2011

Course Outcomes (COs):

At the end of the course, student should be able to: 1. Know basic notation and terminology used in network science (PO1,3,4) 2. Be able to visualize, summarize and compare networks (PO1,3,4) 3. Understand basic principles behind network analysis algorithms (PO1,3,4) 4. Develop practical skills of network analysis in R programming language (PO1,3,4) 5. Be capable of analyzing real work networks (PO1,3,4)

105 Natural Language Processing Course Code: MCSE30 Credits: 4:0:0 Prerequisites: Artificial Intelligence Contact Hours: 56 Course Coordinator/s: Dr. Jagadish S Kallimani UnitI Introduction: Knowledge in Speech and Language Processing, Ambiguity, Models and Algorithms; Language, Thought, and Understanding; The State of the Art and The Near-Term Future; Regular Expressions and Automata; Morphology and Finite-State Transducers: Lexicon-free FSTs: The Porter Stemmer, Human Morphological Processing. UnitII N-grams: Counting Words in Corpora, Smoothing, N-grams for Spelling and Pronunciation, Entropy; Word Classes and Part-of-Speech Tagging: Part- of-Speech Tagging , Rule-based Part-of-speech Tagging, Stochastic Part-of- speech Tagging, Transformation-Based Tagging; Context-Free Grammars for English: Constituency, Context-Free Rules and Trees, Sentence-Level Constructions, The Noun Phrase. UnitIII Parsing with Context-Free Grammars: The Earley Algorithm; Features and Unification: Feature Structures, Unification of Feature Structures, Features Structures in the Grammar, Implementing Unification, Parsing with Unification Constraints; Lexicalized and Probabilistic Parsing: Probabilistic Context-Free Grammars, Problems with PCFGs. UnitIV Representing Meaning: First Order Predicate Calculus, Some Linguistically Relevant Concepts, Related Representational Approaches, Alternative Approaches to Meaning; Semantic Analysis : Syntax-Driven Semantic Analysis, Attachments for a Fragment of English; Lexical Semantics : Relations Among Lexemes and Their Senses, WordNet: A Database of Lexical Relations, The Internal Structure of Words. UnitV Discourse: Reference Resolution, Text Coherence, Discourse Structure; Generation: Introduction to Language Generation, An Architecture for Generation; Machine Translation: Language Similarities and Differences, The Transfer Metaphor.

Text Book: 1. Daniel Jurafsky and James H Martin, “Speech and Language Processing: An introduction to Natural Language Processing,

106 Computational Linguistics and Speech Recognition”, Prentice Hall, 2nd Edition, 2008.

Rerefence Book: 1. Tanveer Siddiqui, U.S. Tiwary, “Natural Language Processing and Information Retrieval”, Oxford University Press, 2008.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Interpret how speech and language technology relies on formal models to capture knowledge, and language processing deals with subparts of words (morphology). (PO 1,3,4) 2. Illustrate the way N-gram tool is used for spelling and pronunciation processing, and part-of-speech tagging mechanism using various categories. (PO 1,3,4) 3. Describe feature structures and unification operation which is used to combine them, and probabilistic parsing to capture more syntactic information. (PO 1,3,4) 4. Outline representations used to bridge the gap from language to commonsense Knowledge (semantic processing), and meanings associated with lexical items. (PO 1,3,4) 5. Emphasize problems that NLP systems face, natural language outputs construction from non-linguistic inputs and machine translation framework approaches. (PO 1,3,4)

107 Soft Computing Course Code: MCSE31 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Jagadish S Kallimani Unit I Introduction: Neural networks, Fuzzy logic, Genetic algorithms, Hybrid systems,Artificial Neural Networks: Fundamental concept, Evolution, Basic model of ANN, Important terminologies of ANN, MP neuron, Hebb Network. Unit II Supervised Learning Network: Perceptron Networks, Adaptive linear neuron, multiple adaptive linear neurons, Back propagation Network. Unit III Introduction to Fuzzy logic, classical sets and fuzzy sets: Classical sets, Fuzzy sets.Classical relations and fuzzy relations: Cartesian product of relation, Classical relation, Fuzzy relations, Tolerance and equivalence relations.Membership functions: Features, Fuzzification, methods of membership value assignments. Unit IV Defuzzification: Lambda-cuts for fuzzy sets, Lambda-cuts for fuzzy relations, Defuzzification methods. Fuzzy decision making: Individual, multiperson, multiobjective, multiattibute, and fuzzy Bayesian decision making. Unit V Genetic algorithms: Introduction, Basic operations, Traditional algorithms, Simple GA, General genetic algorithms, the schema theorem, Genetic programming, applications.

Reference Books: 1. Principles of Soft computing, S N Sivanandam, Deepa S. N, Wiley, India, (Chapters 1, 2, 3(Up to 3.5), 7, 8, 9, 10, 13, 15 ( up to 15.6 & 15.9,15,10). 2. Neuro-fuzzy and soft computing, J.S.R. Jang, C.T. Sun, E. Mizutani, PHI (EEE edition) ISBN: 978-81-203-2243-1

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Identify and describe soft computing techniques and their roles in building intelligent machines (PO1,3,4) 2. Identify the components and building block hypothesis of Genetic algorithm. (PO1,3,4) 3. Examine the features of neural network and its applications. (PO1,3,4)

108 4. Design Genetic algorithm to solve optimization problem. (PO1,3,4) 5. Describe Neuro Fuzzy system for clustering and classification. (PO1,3,4)

109 Computer System Performance Analysis Course Code: MCSE32 Credits: 4:0:0 Prerequisites: Probability Theory, matrices, software engineering aspects and queuing theory. Contact Hours: 56 Course Coordinator: Dr. T N R Kumar Unit I Introduction: The Art Of Performance Evaluation, Common Mistakes In Performance Evaluation, A Systematic Approach To Performance Evaluation, Selecting An Evaluation Technique, Selecting Performance Metrics, Commonly Used Performance Metrics, Utility Classification Of Performance Metrics, Setting Performance Requirements. Unit II Workloads, Workload Selection and Characterization: Types of Work Loads, Addition Instructions, Instruction Mixes, Kernels; Synthetic Programs, Application Benchmarks, Popular Benchmarks. Work Load Selection: Services Exercised, Level Of Detail; Representativeness; Timeliness, Other Considerations In Workload Selection. Work Load Characterization Techniques: Terminology, Averaging, Specifying Dispersion, Single Parameter Histograms, Multi Parameter Histograms, Principle Component Analysis, Markov Models, Clustering. Unit III Monitors, Program Execution Monitors and Accounting Logs: Monitors: Terminology and classification; Software and hardware monitors, Software versus hardware monitors, Firmware and hybrid monitors, Distributed System Monitors, Program Execution Monitors and Accounting Logs, Program Execution Monitors, Techniques for Improving Program Performance, Accounting Logs, Analysis and Interpretation of Accounting log data, Using accounting logs to answer commonly asked questions. Unit IV Capacity Planning and Benchmarking: Steps in capacity planning and management; Problems in Capacity Planning; Common Mistakes in Benchmarking; Benchmarking Games; Load Drivers; Remote-Terminal Emulation; Components of an RTE; Limitations of RTEs, Experimental Design and Analysis: Introduction: Terminology, Common mistakes in experiments, Types of experimental designs, 2k Factorial Designs, Concepts, Computation of effects, Sign table method for computing effects; Allocation of variance; General 2k Factorial Designs, General full factorial designs with k factors: Model, Analysis of a General Design, Informal Methods. Unit V

110 Queuing Models: Introduction: Queuing Notation; Rules for all Queues; Little’s Law, Types of Stochastic Process. Analysis of Single Queue: Birth- Death Processes; M/M/1 Queue; M/M/m Queue; M/M/m/B Queue with finite buffers; Results for other M/M/1 Queuing Systems. Queuing Networks: Open and Closed Queuing Networks; Product form networks, queuing Network models of Computer Systems. Operational Laws: Utilization Law; Forced Flow Law; Little’s Law; General Response Time Law; Interactive Response Time Law; Bottleneck Analysis; Mean Value Analysis and Related Techniques; Analysis of Open Queuing Networks; Mean Value Analysis;

Text Book: 1. Raj Jain: The Art of Computer Systems Performance Analysis, 1st edition, John Wiley and Sons, 2012.

Reference Books: 1. Paul J Fortier, Howard E Michel: computer Systems Performance Evaluation and prediction, 1st edition, Elsevier, 2009. 2. Trivedi K S: Probability and Statistics with Reliability, Queuing and Computer Science Applications, 1st edition, PHI, 2011.

Course Outcomes (COs): At the end of the course, students should be able to: 1. Understand the techniques to approach performance problem and Compare two systems and determine the optimal value of a parameter.(PO1,3,4) 2. Identify performance bottlenecks and characterize the load on a system and Select the number and size of system components and predict the performance of future workloads.(PO1,3,4) 3. Understand the use of different analysis strategies like measurement, simulation, analytical modeling and Implement different techniques in experimental design like factorial design techniques.(PO1,3,4) 4. Understand how to use monitors and accounting logs of systems use to improve the performance of the system and Apply mathematical techniques with stress on learning the types of Queuing models.(PO1,3,4) 5. Apply queuing models to solve problems in computer Networks, Operating system, etc.(PO1,3,4)

111 Future Skills 2020 Course Code: MCSE33 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Prof. Nagabhushana A M Unit I Introduction: Current industry overview, Future Skills 2020 research report from IFTF. Sense making: Introduction, VUCA (Volatility, Uncertainty, Complexity and Ambiguity).What is Sense Making? How Sense Making Helps? Steps in sense making, How to do effective sense making? Hurdles in effective sense making. Assignment: A short 1 hour assignment where students will be posed with a situation to exercise their Sense Making ability. It will be assessed at the end of the session. Unit II Virtual Collaboration(VC): Introduction, How VC helps? Characteristics of Virtual Collaboration, Types of Virtual Collaboration. Advantages, Disadvantages and Applications of VC. Assignment: The students will be given an assignment applying both the sensemaking skills and Virtual Collaboration skills using the cloud based tools to complete a specific task. This assignment will also cover working in a team using virtual collaboration tools. In order to focus on learning of the specified skills, the end task is kept small and achievable in short time frame. Unit III Social Intelligence: Introduction, Hypothesis, Measuring Social Intelligence, Difference between intelligence and Social Intelligence, Derive some of the study done in Social networking theory. Assignment: The assignment will focus on students using their social network to accomplish a specific task. Unit IV Crosscultural competency: Introduction, Importance of cross cultural competence in workplace. Nuances of cross cultural differences, Examples to demonstrate the differences. Assignment: Students will have to work with a team member from another culture to complete a specific task. Unit V Cognitive Load management: Introduction, Current situation of information overload, Tools and techniques tohandle the cognitive load. Importance of these skills in work place. Assignment: Students will be given a specific topic and time to quickly arrive at a good summary of the topic. They will be given access to internet and books to refer. Importance is given to how quickly they can gather, curate and present the summary of the topic.

112 Reference Books: 1. The detailed report can be found at http://www.iftf.org/uploads/media/SR1382A_UPRI_future_work_skills_s m.pdf 2. The reading material for individual lectures will be shared with the students using Tutor Space.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Identify the Future Work skills needed for next 5 years.(PO 1,3,4) 2. Illustrate sense Making Skills through assignments.(PO 1,3,4) 3. Survey the different Virtual Collaboration skills to complete an assignment.(PO 1,3,4) 4. Describe the social intelligence skill and application of the same.(PO 1,3,4) 5. Compose an assignment using Cross-cultural competence and load management skills.(PO 1,3,4)

113 Cyber Physical Systems Course Code: MCSE34 Credits: 4:0:0 Prerequisites: Nil Contact Hours: 56 Course Coordinator/s: Dr. Anita Kanavalli

Unit I Modeling, design, analysis, and implementation of cyber-physical systems

Unit II Dynamic behavior modeling, state machine composition, and concurrent computation Unit III Sensors and actuators. Embedded systems and networks

Unit IV Feedback control systems, Analysis and verification techniques, temporal logic, and model checking

Unit V Machine learning topics

Text Book:

1. Edward A. Lee and Sanjit A. Seshia, Introduction to Embedded Systems, A Cyber-Physical Systems Approach, Second Edition, http://LeeSeshia.org, ISBN 978-1-312-42740-2, 2015.

Course Outcomes (COs): At the end of the course, the students will be able to: 1. Apply the afore mentioned cyber-physical systems fundamentals to application domains such as connected and autonomous vehicles, industrial internet, and smart and connected health. 2. Implement cyber-physical systems solutions (e.g., embedded networking protocols, real-time scheduling algorithms, and networked control algorithms). 3. Explore (e.g., survey) cutting-edge research findings in cyber physical systems.

114 High Performance Computing Course Code: MCSE35 Credits: 4:0:0 Prerequisites: Computer Organization Contact Hours: 56 Course Coordinator/s: Mallegowda M

Unit I Introduction to High–Performance Computers, Memory Hierarchy, CPU Design: Reduced Instruction Set Computers, Multiple–Core Processors, Vector Processors.Parallel Semantics, Distributed Memory Programming.

Unit II Programming Shared Address Space Platforms: Thread Basics, Why Threads? The POSIX Thread API, Thread Creation and Termination, Synchronization Primitives in Pthreads, Controlling Thread and Synchronization Attributes, Thread Cancellation, Composite Synchronization Constructs.Tips for Designing Asynchronous Programs, OpenMP: a Standard for Directive Based Parallel Programming.

Unit III Programming using the Message-Passing Paradigm: Principles of Message- Passing Programming, The Building Blocks: Send and Receive Operations, MPI: the Message Passing Interface, Topologies and Embedding, Overlapping Communication with Computation, Collective Communication and Computation Operations.Groups and Communicators.

Unit IV Introduction: GPUs as Parallel Computers, Architecture of a Model GPU, Why More Speed or Parallelism? Parallel Programming Languages and Models, Overarching Goals. History of GPU Computing: Evolution of Graphics Pipelines, GPU Computing. Introduction to CUDA: Data Parallelism, CUDA Program Structure, A Matrix-Matrix Multiplication Example, Device Memories and Data Transfer.Kernel Functions and Threading.

Unit V CUDA Threads: CUDA Thread Organization, Using blockIdx and threadIdx, Synchronization and Transparent Scalability, Thread Assignment, Thread Scheduling and Latency Tolerance. CUDA Memories: Importance of

115 Memory Access Efficiency, CUDA Device Memory Types, A Strategy for Reducing Global Memory Traffic.Memory as a limiting Factor to Parallelism.

Text Books: 1. Rubin H Landau, Oregon State University, http://science.oregonstate.edu/ rubin/. 2. Ananth Grama,Anshul Gupta,Vipin kumar, George Karypis, Introduction to parallel computing, second edition, 2003, Pearson education publishers. 3. David B Kirk, Wen-mei W. Hwu, “Programming Massively Parallel Processors – A Hands-on Approach”, First Edition, Elsevier and nvidia Publishers, 2010.

Reference Books:

1. Thomas Rauber and Gudula Runger Parallel Programming for Multicore and cluster systems,Springer International Edition, 2009. 2. Hennessey and Patterson Computer Architecture: A quantitative Approach, Morgan Kaufman Publishers, 2011. 3. Michael J.Quin “Parallel Programming in C with MPI and Open MP”, McGraw Hill.

Course Outcomes (COs): At the end of the course, the student must be able to: 1. Explain the technologies and architectures used for parallel computing (PO-1,2,3) 2. Design and develop parallel programs using Open-MP programming interface. (PO-1,2,3) 3. Elaborate the principles and architecture of message-passing programming paradigm for solving real world problems(PO-1,2,3) 4. Provide an understanding of Graphical Processing Units and their architecture(PO-1,2,3) 5. Analyze the features of GPUs, their functionalities and also Design parallel applications using CUDA-C (PO-1,2,3)

116 Annexure Table 1 Rubrics for Assessment of Student Performance in Laboratory

Trait Barely Basic Good Very Good Acceptable

Specifications The program is The program The program works The program producing produces correct and produces the works and incorrect results. results but does correct results and meets all of not display them displays them the correctly. correctly. It also specifications. meets most of the other specifications.

Readability The code is The code is The code is fairly The code is poorly organized readable only by easy to read. exceptionally and very difficult someone who well organized to read. knows what it is and very easy supposed to be to follow. doing.

Reusability The code is not Some parts of the Most of the code The code organized for code could be could be reused in could be reusability. reused in other other programs. reused as a

117 programs. whole or each routine could be reused.

Documentation The The The documentation The documentation is documentation is consists of documentation simply comments simply comments embedded comment is well written embedded in the embedded in the and some simple and clearly code and does code with some header explains what not help the simple header documentation that the code is reader understand comments is somewhat useful accomplishing the code. separating in understanding the and how. routines. code.

Delivery The code was The code was The program was The program more than 2 within 2 weeks of delivered within a was delivered weeks overdue. the due date. week of the due date. on time.

Efficiency The code is huge The code is brute The code is fairly The code is and appears to be force and efficient without extremely patched together. unnecessarily sacrificing efficient long. readability and without understanding. sacrificing readability and understanding.

118 Table 2 Rubrics for assessment of Seminar Criteria Distinguished Good Basic Unacceptable Score (5) (4) (3) (1) Organization - Extremely well - Generally well - Somewhat - Poorly organized. organized. organized. organized -Introduces the -Introduces the -Introduces -Does not clearly purpose of the purpose of the the purpose of introduce the presentation presentation the purpose of the clearly and clearly. presentation presentation creatively. -Includes -Includes -Uses ineffective -Effectively transitions to some transitions that includes smooth, connect key transitions to rarely connect clever transitions points and better connect key points; cannot which are succinct transitions from points but understand but not broken up idea to idea are there is presentation in order to connect noted. difficulty in because there is key points - Most following no sequence of -Student presents information presentation. information. information in presented is in - Student - Presentation is logical, interesting logical sequence; jumps around broken and sequence which A few minor topics. Several disjointed; no audience can points may be points are apparent logical follow. confusing confusing. order of -Ends with an -Ends with a -Ends with a presentation-Ends accurate summary of main summary or without a 119 conclusion points showing conclusion; summary or showing some evaluation little evidence conclusion. thoughtful, strong of the evidence of evaluating evaluation of the presented. content based evidence on presented. Evidence.

Content: Depth -Speaker provides -For the most -Explanations -No reference is and Accuracy an accurate and part, explanations of concepts made to literature complete of concepts and and/or theories or theory. explanation of key theories are are inaccurate Presentation is concepts and accurate and or incomplete. not clear; theories, drawing complete. Some Little attempt information that upon relevant helpful is made to tie does not support literature. applications of in theory. presentation in Applications of theory are There is a any way is theory are included included. great deal of unnecessarily to illuminate -Presents information included. issues. evidence of valid that is not -Presents little or -Provides evidence research on the connected to no evidence of of extensive selected topic, the current valid research on and valid research with multiple presentation. the selected topic. on the selected sources. -Presents -Shows little topic, with -Combines evidence of evidence of the multiple existing ideas to research on combination of and varied form the selected ideas. 120 sources. new insights. topic, with -Information -Combines and -No significant sources. included is evaluates existing errors are made; a -Combines sufficiently ideas to form new few existing ideas. inaccurate that insights. inconsistencies or -Few errors indicates absence -Information errors in are made to of accurate completely information. distract a information. accurate; all names -Level of knowledgeabl -Presentation and facts were presentation is e listener, but consistently is too precise and explicit generally some elementary or too -Level of appropriate. information is sophisticated for presentation is accurate. the audience. appropriate for the -Portions of audience. presentation are too elementary or too sophisticated for audience. Creativity -Uses the -Some originality -Little or no - Bland and unexpected to full apparent; clever variation; a predictable. advantage; very at times; good few original Repetitive with original, clever, variety and touches but little or no and creative blending of for the most variety; little approach that materials/media. part material creative energy captures audience's presented with used. 121 attention. little originality or interpretation. Use of -Graphics -While graphics - occasional --Student uses Communicatio designed reinforce relate and aid use of superfluous n Aids presentation and presentation, graphics that graphics, no maximize audience media are not as rarely support graphics, or understanding; use varied and not as presentation ; graphics that are of media is varied well connected to visual aids so poorly and appropriate the presentation. were not prepared that they with media not useful or clear, detract from the being added time wasting presentation. simply for the sake use of of use. multimedia;

122 Use of -Poised, clear -Clear -Audience -Student is Language articulation; proper articulation but occasionally anxious and volume; steady not as polished; has trouble cannot be heard rate; enthusiasm; slightly hearing the or monotone with confidence; uncomfortable at presentation; little or no speaker is clearly times Most can seems expression.- comfortable in hear uncomfortable Presentation has front of the group. presentation.- .-Presentation four or more -Presentation has Presentation has has three spelling errors no misspellings or no more than two misspellings and/or grammatical misspellings and/or grammatical errors. and/or grammatical errors. grammatical errors. errors

Eye Contact -Maintains eye - Student -Some eye -Student reads all contact; seldom maintains eye contact, but or most of slides returning to notes; contact most of not with no eye presentation is like the time but Maintained contact. a planned frequently returns and at least conversation. to slides. half the time 123 reads most of slides. Viva Voce -Demonstrates -Demonstrates -Demonstrates -Demonstrates extensive knowledge of the some incomplete knowledge of the topic by knowledge of knowledge of the topic by responding rudimentary topic by responding accurately and questions by responding confidently, Appropriately responding inaccurately and precisely and addressing accurately Inappropriately to appropriately to all questions . At to questions. questions. audience ease with answers questions. to all questions but fails to elaborate. Report Document is fully Document has Document has Document has compliant With high degree of low degree of minimal degree of required rules and compliance with compliance compliance with structure. required rules and with required required rules Document uses structure. rules and and structure highly appropriate Document uses structure Document language and style. appropriate Document contains language specific uses mostly inappropriate to the discipline appropriate language or many language and spelling contains /grammatical occasional errors 124 spelling / grammatical errors Regularity Reports to guide Reports to guide Does not Has not met the regularly for often for seminar report to guide guide at all. seminar discussion discussion for seminar discussion Overall Excellent Good Average Poor Presentation

125 Table 3 Rubrics for assessment of Internship Deliverables for Student Performance in Internship:

Internship Title: ______

Company Name: ______

Name of Student: ______

Name of Supervisor at Company: ______

Name of Supervisor at College: ______

Each supervisor must fill a rubric for each student:

Basic Good Very Good Total

(0-4 Pts) (5-7 Pts) (10 Pts) Possible Earned

Tools and new Few sources at Multiple sources Multiple sources 10 Technology the Industry, of high quality, of high quality, Learnt aware of quality good judgment of well researched 126 of resources the information, and analyzed, and relevance identification of continuous to tools and gaps in efforts at Techniques at knowledge at the acquiring hand Industry and Information. Academics. Identification of the application of the tools and Technology learnt to the present market.

Relevance of the Fairly Relevant Moderately Highly Relevant 10 topic chosen to Relevant the current market

127 Report Writing Reasonably Sound Excellent 10 good organization and organization, no organization structure, clear, technical or and lacks clarity very few errors, grammar errors, in few topics, complete, concise and complete, few reasonably good precise, omissions, style complete

grammatically documentation correct, lacks style

Demonstration Moderately be Efficiently be able Excellent 10 of the Tools able to to demonstrate demonstration of Learnt demonstrate the skills learnt the tools and the tools learnt and be able to techniques learnt at the Industry propose an and be able to application for the apply it to any 128 same. simple case study.

Presentation Reasonably Good , Excellent 10 and viva voce good professional professional and communication communication, technical and good visual aids, communication, presentation, able to give effective able to give technical answers presentations, technical able to analyze answers to technically and some extent clarify views in viva-voce

129 Table 4

Rubrics for assessment of student performance in Project work I

Level of achievement Sl Excellent Good (4) Average Acceptable Unacceptable Score No (5) (3) (2) (1)

Identificatio Purpose Purpose Purpose Purpose and Purpose and n of Problem and need of and need of and need of need of the need of the 1 Domain and the project the project the Project Project is Project is not at Detailed is very well is is satisfactorily all explained Analysis explained. explained moderately explained well. explained

Study of the Existing Existing Existing Existing Existing systems Existing systems are systems are systems are systems are are not studied. Systems / very well well moderately satisfactorily Documents of Literature studied. studied. studied. studied. very poor Survey Documents Documents Documents Documents standards, online of high of good of average of resources and standards standards standards, satisfactory books are 2 like IEEE like online standards, studied. 130 papers, internation resources online reputed al and books resources and online journal/con are studied. books are resources ference studied and books papers, are studied. good online resources and books are studied. Objectives All All Most of the Only few Objectives of the 3 of the objectives objectives objectives objectives of proposed work Proposed of the of the of the the proposed are Work proposed proposedw proposedw work are well either not work are ork are ork are defined defined properly. very well well well defined. defined. defined. Design Steps to be Steps to be Steps are Steps to be Steps to be 4 Methodolo followed to Followed mentioned followed to followed to solve gy solve the to solve the but are solve the the defined defined defined unclear; defined problem are not problem problem is without problem are at all specified. are clearly specified justificatio not specified Design specified.M but n to properly. Methodology ost suitable detailing is objectives Design used is not design not done. Appropriat Methodology correct and is .Methodolo Suitable e design used is not justified 131 gy is used design Methodolo ambiguous and is Methodolo gy is used and not properly gy is used but not justified justified and justified properly properly justified Tools used Clear Acceptable Good Average Not Acceptable 5 for Design Understand ing Planning of Time Time Time Time frame Time frame itself 6 Project frame frame frame is vaguely is not properly Work properly properly properly specified, and specified specified specified specified, is not and being and being but not followed followedac followed being curately most of the followed time Understandi Clear Acceptable Good Average Not Acceptable ng of the understandi 7 modules ng Demonstarti Objectives Objectives Objectives Objectives No objectives on achieved as achieved as achieved as not achieved achieved. and per time per time per time as per time Contents of Presentatio frame frame. frame. frame. Presentations are n .Contents Contents of Contents of Contents of not appropriate

132 of Presentatio Presentatio presentation and not well 8 Presentatio n is n is is not delivered n Is appropriate appropriate appropriate. Poor delivery of Appropriat but not but not Eye contact presentation e and well well well with few arranged. arranged. arranged. people and Proper eye Satisfactor Presentatio unclear voice contact y n not with demonstrati satisfactory audience on, clear and and clear voice with average voice with good demonstrati good spoken on spoken language language but eye contact not proper Regularity Student Student Student Student does Student does not 9 reports to does not reports to not report to meet guide at all the guide report to the guide guide and the work is regularlyan guide very but lacks regularly and always d is regularly consistency is not incomplete consistent but is consistent in in work consistent work in the work Report of Project Project Project Project report Project report 133 Project report report report is not prepared 10 Phase I is is is not fully according to the according accordingto according according to specified format to the the to the the specified References and specified specified specified format citations are not format format format with Insufficient appropriate References References few references and and mistakes and citations citations citations In- are are sufficientre appropriate appropriate ferences and well but not and mentioned mentioned citations well

134 Table 5

Rubrics for assessment of student performance in Project work II

Level of achievement Excellent Good (8) Average Acceptable Unacceptable Score (10) (6) (4) (2)

135 Incorporation Changes are Changes All major Few changes Suggestions of Suggestions made as per are made as changesar are made as made during modifications per e made as per Project Phase I suggested modificatio per modifications evaluation are during ns modificati suggested not Project Phase suggested ons during incorporated I during suggested Project Phase evaluationan Project during I evaluation d new Phase I Project innovationns evaluation Phase I are added and is evaluation justified correctly

Project All defined All defined Most of Some of the Defined Demonstratio objectives objective the defined objectives are n are achieved are defined objectives are not achieved with some achievedEa objectives achieved. Modules are more ch Module are Only few not in proper additional is working achieved Modules are working form 136 features. satisfactoril Most of working and which further Each Module y and is the is leads to failure is working properly Modulesar demonstrated of integrated well and is demonstrat e workin Modules of system properly ed and is project demonstrated All satisfactor are not All modules modules of ily demon properly of project are project are rated integrated well well Integratio integrated integrate n of all and system and system modules working is working is not done accurate satisfactory and system working is not very satisfactor y Demonstar Contents of Contents of Contents Contents of Contents of tion and Presentation Presentatio of presentation Presentations Presentatio is nis Presentati is not are not n Appropriate appropriate on is appropriate appropriate and well but not appropriat Eye contact and not well arranged well e but not with few delivered Proper eye arranged well people and Poor delivery contact with Satisfactor arranged unclear voice of presentation 137 audience and y Presentati clear voice demonstrati on not with good on, clear satisfactor spoken voice with y and language good average spoken demonstra language tion but eye contact not proper Project Project Project Project Project Project report Report report is report report report is not prepared according to is is not fully according to the specified according according according the specified format to the to the to the format References specified specifiedf specified References and citations format ormat format and citations are References with few Insufficient are not appropriate and mistakes references appropriate and well citations In- and citations mentioned are sufficient appropriate references but not and mentioned citations well Conclusi Results are Results are Results Results Results are not 138 on presented in presented presented presented are presented and very in good are not not clear properly Discussi appropriatem manner. much Project work Project work on anner. Project satisfactor summary and is not Project work work y conclusion is summarized is well summary Project vague and concluded summarized and work Future properly and conclusion summary extensions in concluded. not very and the project Future Future appropriate conclusio are not extensions in extensions in . n not very clearly the project are the project Future appropriat specified not at all are very well extensions e. specified specified in the Future project are extensions well in the specified project are specified

139 Table 6 Interim Progress Assessment Rubric for Project work-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______Each supervisor on the project must fill a rubric for each student Barely acceptable Basic Good Very Good Total (0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Problem  Bare formulation  Basic Clear  Clear 5 formulation  Bare formulation formulation formulation understanding  Basic Good with well of the problem, understanding of understanding defined with scarce the problem, but of scope knowledge of lack appropriate the problem,  Very good relevant material study of relevant with understanding material study of of relevant the problem material and  Good system relevant analysis material  Near production quality system analysis 140 Self-  Slow progress,  Slow progress,  Good  Steady 5 motivation with barely with basic project progress progress and project satisfactory result outcome  Need  Highly self- management  Unresponsive to  Rely on reminder motivated supervisor supervisor’s push sometimes Good project to work  Minor management problems in project manageme

141 Table 7 Design Development and Solution Asset Rubric for Project work-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______

Each supervisor on the project must fill a rubric for each student Barely acceptable Basic Good Very Good Total (0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Analysis and  Obvious  Simple, yet  Comple  Provide 5 solving skills solution, mostly te solution sketchy complete solution with to complex functionalities solution that nontrivial problems; solves the stated functionalities Solution problem that meet the optimize desired needs desired needs Innovation in  Basic concepts   Self-  New concepts 5 the Design used correctly Superficial study of new used frequently Solution and  Lack self-study, usage of new concepts /  Self-study of self-study but apply concepts technique, with new previously taught  Self-study of good technique and technique on a new understanding solve technical satisfactory level technique,  Minor difficulties; with basic innovative  Innovati

142 understanding Work ve work with research value Self-motivation  Slow progress,  Slow  Good  Good 5 and project with barely progress, progress progress management satisfactory result with basic  Need  Need  Unresponsive to project reminder reminder Supervisor outcome sometimes sometimes  Rely on  Minor  Minor supervisor’s problems problems push to work in project in project management management

143 Table 8 Written Report Rubric for Project work-II Evaluation: Project: ______Name of Student: ______Name of Supervisor: ______Barely acceptable Basic Good Very Good Total (0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Content -Important points -Covers -All major -Major points 5 covered only important points strongly superficially points covered and supported with -No major errors -A few explained suitable detail and inaccurate clearly and misconception or irrelevant correctly points Writing -Frequent errors Some errors in -A few errors -Well proofread 5 in spelling and spelling and inspelling and -Clear and easy grammar grammar grammar tounderstand -Mostly Readable -Readable and -Graphs and readable, but a Follow easy to diagrams used few points are basic understand appropriately hard to written understand report structure

144 Table 9 Final Presentation Rubric for Project work-II Evaluation Project: ______Name of Student: ______Name of Supervisor: ______Barely acceptable Basic Good Very Good Total (0 – 2 Pts) (3 Pts) (4 Pts) (5 Pts) Possible Earned Content -Important points -Covers -All major -Major points 5 covered only important points strongly superficially points covered and supported with -No major errors -A few explained suitable detail Andmisconception inaccurate or clearly and irrelevant correctly points Presentation -Bare organization -Basic -Good -Excellent 5 Skills and preparation organization organization organization -Lack of confidence and and preparation and preparation and familiarity in preparation -Confident in Confident and some parts of the -Confident in most parts of relaxed in the presentation only some the presentation whole parts of the Attractive to -presentation presentation audience Engaging to audience Communication -Answer at least -Answer -Answer most -Handle 5 145 (Q/A) one questions most questions difficult correctly questions correctly and questions with -Need clarification correctly concisely ease and -Need confidence clarification -Illustrative sometimes explanation

146