Top Banner
Department of Computer Science & Engineering II B.Tech. - II Semester Course Handout 2019-20 Name of the student Roll No. Section Kallam Haranadhareddy Institute of Technology NH-5, Chowdavaram, Guntur-522 019 Approved by AICTE, New Delhi; Affiliated to JNTUK, Kakinada Accredited by NBA, NAAC with ‘A’ Grade & An ISO 9001:2015 Certified Institution
71

Computer Science & Engineering II B.Tech. - II Semester ...

Jun 08, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Computer Science & Engineering II B.Tech. - II Semester ...

Department of

Computer Science & Engineering

II B.Tech. - II Semester

Course Handout 2019-20

Name of the student

Roll No.

Section

Kallam Haranadhareddy Institute of Technology NH-5, Chowdavaram, Guntur-522 019

Approved by AICTE, New Delhi; Affiliated to JNTUK, Kakinada Accredited by NBA, NAAC with ‘A’ Grade & An ISO 9001:2015 Certified Institution

Page 2: Computer Science & Engineering II B.Tech. - II Semester ...
Page 3: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 2

INDEX

S.No Description Page No.

1 College Vision & Mission 3

2 Department Vision & Mission 3

3 Program Educational Objectives (PEOs) 3

4 Graduate Attributes (GAs) 4

5 Program Outcomes (POs) 4

6 Program Specific Outcomes (PSOs) 5

7 JNTUK Academic Calendar 5

8 Department Academic Process Calendar 6

9 Course Structure 7

10 Evaluation Pattern 7

11 Quality of Internal Question Papers and Assignment

Questions 9

12 Timetable 10

13

Details of All Theory & Lab Courses as per Course

Structure

11 Theory: SE, JAVA, ADS, CO, FLAT, PPL

Labs: ADS, JAVA

14 Non-Programming Laboratory Courses Assessment

Guidelines

15 Programming Laboratory Courses Assessment Guidelines

16 Laboratory Course Evaluation Rubrics

Page 4: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 3

COLLEGE VISION & MISSION

Institute Vision:

To be a quality - oriented technical institution known for global

academic excellence and professional human values

Institute Mission:

To provide quality instruction with competent and knowledgeable faculty

and well - equipped laboratories to meet global standards.

To achieve academic distinction through novel teaching and learning

practice

To encourage students by providing merit scholarships

To prepare the graduates to accomplish professional practice,

employability, entrepreneurial development and higher education

To inculcate self-discipline, accountability and values in the learners for

effective and informed citizenship

To focus on MoUs with premier institutes and renowned industries for

effective industry-institution interaction to become an R&D centre

through skill development , professional up-gradation and innovation

DEPARTMENT VISION & MISSION

CSE Vision:

To impart quality technical education to students in the field of

computer science and engineering to produce technically competent

software and hardware personnel with advanced skills, knowledge and

behavior to meet the global computational challenges.

CSE Mission:

Providing strong theoretical and practical knowledge to students.

Providing students with training on latest technologies to meet the

industry needs.

Developing ethical values in students to lead the life with good

human values.

PROGRAM EDUCATIONAL OBJECTIVES (PEOs)

PEO1: Graduates shall effectively apply mathematics, science and

engineering methodologies for analysis, design and implementation of

real world problems.

PEO2: Graduates utilize breadth and depth of theoretical computer

science to adopt emerging technologies and tools for changing needs of

industry or for pursuing higher studies.

PEO3: Graduates shall continue to enhance technical skills through

lifelong learning, exhibit social and ethical responsibilities and effective

communication skills.

PEO4: Graduates shall be employed in software and hardware industries

or pursue higher studies or research or become entrepreneurs.

Page 5: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 4

GRADUATE ATTRIBUTES (GAs) prescribed by NBA:

i. Engineering Knowledge

ii. Problem Analysis

iii. Design & Development of Solutions

iv. Investigation of Complex Problem

v. Modern Tools Usage

vi. Engineer and Society

vii. Environment & Sustainability

viii. Ethics

ix. Individual & Team work

x. Communication

xi. Lifelong Learning

xii. Project management & Finance

PROGRAM OUTCOMES (POs)

PO1: Graduates will be able to apply the principles of basic sciences,

mathematics and engineering fundamentals in finding solutions to

complex problems.

PO2: Graduates will acquire critical thinking skills, problem solving

abilities and familiarity with the computational procedures essential to

the field.

PO3: Graduates will be able to plan, analyze and design various types of

systems required for technical advancements and societal needs.

PO4: Graduates will be able to use research based knowledge to conduct

experiments and interpret experimental data.

PO5: Graduates gain hands on experience in using latest software and

hardware tools for obtaining solutions to engineering problems.

PO6: Graduates will be able to apply knowledge gained to tackle societal,

health, safety, legal and cultural issues.

PO7:Graduates will possess adequate knowledge required for sustainable

development keeping in view environmental effects and real life

problems.

PO8:Graduates will have professional ethics and the culture of practicing

the established norms of engineering.

PO9: Graduates will acquire the capability of working productively as

individuals, as members or leaders in teams in any environment.

PO10:Graduates will be able to articulate their ideas clearly with

excellent communication skills and prepare technical reports.

PO11: Graduates will acquire knowledge required for project and finance

management.

PO12: Graduates will have ability to engage in lifelong learning to keep

abreast of ever changing technology.

Page 6: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 5

PROGRAM SPECIFIC OUTCOMES (PSOs)

PSO 1: To use mathematical methodologies to crack problem using

suitable mathematical analysis, data structure and suitable algorithm.

PSO 2: The ability to interpret the fundamental concepts and

methodology of computer systems. Students can understand the

functionality of hardware and software aspects of computer systems.

PSO 3: The ability to grasp the software development lifecycle and

methodologies of software systems. Possess competent skills and

knowledge of software design process. Familiarity and practical

proficiency with a broad area of programming concepts and provide new

ideas and innovations towards research.

JNTUK Academic Calendar for II B.Tech 2019-20 Batch

Page 7: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 6

Academic Process Calendar for II B.Tech 2019-20 Batch

S.

No. Event/Activity Scheduled Dates

1 Commencement of class work (Semester-1) 10-06-2019

2 Talentio Training on Programming in C and Datastructures for IV B.Tech

02-06-2019 to 15-06-2019

3 KHIT Student Chapter Oranizing FDP on Introduction to Machine Learning Speaker: Ramachandra Reddy,IIIT Sricity.

6-8 June 2019

4 Commencement of Class work for II,III,IV B.Tech 10-06-2019

5 ABC Technologies, Bangalore Bootstrap Training 24-06-2019

6 ABC Technologies, Bangalore Placement Drive-On Campus

25-06-2019

7 Talentio Training Program Aptitude and Verbal for TCS NINJA

28-06-2019 to 15-07-2015

8

KHIT CSI STUDENT CHAPTEROrganizingONE DAY NATIONAL WORKSHOPon Internet of Intelligent Things Using Cloud Computing Speaker: Mr.J Srinivas and Rajesham, MJCET, Hyd.

28th June 2019

9 Sports Day August 2019

10 Mid-1 Examinations 05-08-2019 to 10-08-2019

11 Four Days FDP on Internet of Things in Association with APSSDC

5-8 AUGUST 2019

12 Two Day Workshop on Cloud Computing in Association with APSSDC

27-28 Aug 2019

13 Three Day Workshop on Problem Solving and Programming using Python in Association with APSSDC

04-06 Sep 2019

14 A National Level Students Tech Cultural Fest SAMKALP 2K19

13th - 14th September 2019

15 ACM Students Chapter Organizing Project Expo Judge: Dr.D.Jagan Mohan Reddy, LBRCE

13th September 2019

16 ACM Student Chapter Organizing 30 Hrs Code Hackathon

13th - 14th September 2019

17 CSI Student Chapter Organizing IDEATHON 13th September 2019

18 CSI Student Chapter Organizing Poster Presentation

13th September 2019

19 Engineer’s Day 15thSeptember -2019

20 Mid-2 Examinations 07-10-2019 to 12-10-2019

21 End Examinations 21-10-2019 to 02-11-2019

22

Cognizant Technologies-Industry Specifc training to IV CSE Trainer: Mr.Subham, Senior Trainer Organization, Tanentio Technologies, Hyderabad

2nd November 2019

23

Investor Awareness Program in association with AMFI&SEBI Speaker:G.Rajasekhar Reddy No.of Faculty Attended:36

8th November 2019

24

Bridge Course: II BTech CSE Lateral Entry Speakers: Mr.N.Md.Jubair Basha and Mr.B.Satyanarayana Reddy No.of students attended:

11th -16th November 2019

25 Commencement of class work (Semester-2) 18-11-2019

26 Percolation Pits Dec-2019

2 APSSDC Workshop on Associate Cloud Architect 2-7 December 2019

Page 8: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 7

28 APSSDC Workshop on Programming Contest & Design

16-December- 2019

29 Tree Plantation Dec-2019

30 5K/10Krun Jan-2020

31 Industrial Visit December 1st or January1st week 2020

32 Mid-1 Examinations 13-01-2020 to 23-01-2020

33 Alumni Meet Jan, 1st or 2nd week

34 APSSDC Workshop on Web Development with Python

20-25 January 2020

35 Medical Camp Jan 2020

36 ACM ESP/ACM DSP January 2020

37 CSI Guest Lecture Feb 2020

38 Blood Camp February 2020

39 Annual Day Feb 2020, 2nd week

40 ACM Code of Hour February 2020

41 Food Festival February 2020

42 CSI Technical Quiz February 2020

43 FDP on Machine Learning February 2020

44 Mid-2 Examinations 23-03-2020 to 28-03-2020

45 ENVISAGE –A Poster Display March 2020

46 Students Feedback March 2020

47 End Examinations 06-04-2020 to 18-04-2020

48 APSSDC FDP on Machine Learning using Pythton May 2020

49 Next Academic Year Class Work 08/06/2020

B.TECH. COMPUTER SCIENCE AND ENGINEERING

II Year II Semester

COURSE STRUCTURE

S.No Subject L P C

1 Software Engineering 4 - 3

2 Java Programming 4 - 3

3 Advanced Data Structures 4 - 3

4 Computer Organization 4 - 3

5 Formal Languages and Automata Theory 4 - 3

6 Principles of Programming Languages 4 - 3

7 Advanced Data Structures Lab - 3 2

8 Java Programming Lab - 3 2

TOTAL CREDITS 22

Page 9: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 8

EVALUATION PATTERN

Distribution and weight age of marks

(i) The performance of a student in each semester shall be evaluated

subject - wise with a maximum of 100 marks for theory subject and 75

marks for practical subject. The project work shall be evaluated for 200

marks.

(ii) For theory subjects the distribution shall be 30 marks for Internal

Evaluation and 70 marks for the End-Examinations.

(iii) For theory subjects, during the semester there shall be 2 internal tests.

The weightage of internal marks for 30 consists of Descriptive - 15,

Assignment – 05, Objective – 10 (Conducted online with 20 Multiple choice

question with a weightage of 1/2 Mark each). The objective examination is

for 20 minutes duration. The subjective examination is for 90 minutes

duration. Each subjective type test question paper shall contain 3

questions and all questions need to be answered. The Objective

examination conducted for 10 marks and subjective examination

conducted for 15 marks are to be added to the assignment marks of 5 for

finalizing internal marks for 30. The best (80% +20%) of two tests will be

taken for internal marks. As the syllabus is framed for 6units, the first

mid examination (both Objective and Subjective) is conducted in 1-3

units and second test in 4-6 units of each subject in a semester.

(iv) The end semester examination is conducted covering the topics of all

units for 70marks. Part-A contains a mandatory question (

Brainstorming / Thought provoking/ case study) for 14marks. Part - B

has 6 questions (one from each Unit). The student has to answer 4 out

of 6 questions in Part -B and carries a weightage of 14marks each.

(v) For practical subjects there shall be continuous evaluation during the

semester for 25 internal marks and 50 end examination marks. The

Internal 25 marks shall be awarded as follows: day to day work - 10

marks, Record-5 marks and the remaining 10marks to be awarded by

conducting an internal laboratory test. The end examination shall be

conducted by the teacher concerned and external examiner.

(vi) For the subject having design and estimation, the distribution

shall be 30 marks for internal evaluation (20 marks for day to day

work and 10 marks for internal test) and 70marks for end

examination. There shall be two internal tests in a Semester and the

better of the two shall be considered for the award of marks for

internal tests.

(vii) For the seminar, the student shall collect the information on a

specialized topic and prepare a technical report, showing his

understanding over the topic and submit to the department, which

shall be evaluated by the Departmental committee consisting of Head

of the department, seminar supervisor and a senior faculty member.

The seminar report shall be evaluated for 50 marks. There shall be no

Page 10: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 9

external examination for seminar.

(viii) Out of a total of 200 marks for the project work, 60 marks shall be

for Internal Evaluation and 140 marks for the End Semester

Examination. The End Semester Examination (Viva-Voce) shall be

conducted by the committee. The committee consists of an external

examiner, Head of the Department and Supervisor of the Project. The

evaluation of project work shall be conducted at the end of the IV year.

The Internal Evaluation shall be on the basis of two seminars given by

each student on the topic of his project and evaluated by an internal

committee.

(ix) Laboratory marks and the internal marks awarded by the College

are not final. The marks are subject to scrutiny and sealing by the

University whenever felt desirable. The internal and laboratory marks

awarded by the College will he referred to a Committee. The

Committee shall arrive at a scaling factor and the marks will be scaled

as per the scaling factor. The recommendations of the Committee are

final and binding. The laboratory records and internal test papers

shall be preserved in the respective departments as per the University

norms and shall be produced to the Committees of University as and

when they ask for.

Quality of Internal Question Papers and Assignment Questions

The quality of internal semester question papers and assignments are

assessed by the Module coordinators and classified as per level of

difficulty into three levels:

Level 1 – These are the questions that the students “must know” –These

questions constitute the fundamental concepts of a subject and it is

mandatory that every student knows these concepts. Further, these

questions are at the lower level of Blooms taxonomy like Remembering

and Understanding. Lack of these fundamental concepts would mean

that the student is not fit for passing this course.

Level 2 – These are the questions that the students “Need to Know” –

These questions test the skill of the student at a higher level of Blooms

Taxonomy like Applying and Analyzing, the student should be able to

apply the fundamental knowledge gained in a course to analyze a typical

problem and arrive at conclusions.

Level 3 – these are the questions that have the status of “Good to know”

– These questions test the highest skills levels of Blooms Taxonomy like

Evaluate and Create. A student would be considered to have achieved

proficiency in the subject if he/she is able to answer the questions in

Level 3 and is able to apply the concepts for finding engineering solutions.

The module coordinators regularly analyze the assignment and internal

Page 11: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 10

papers and classify them into the above three levels and ensure that a

good balance is maintained for all the three levels. A recommended

distribution of marks at the three levels is as follows level 1 -60%, Level

2 -30%, Level 3 – 10%.

TIME TABLE

Page 12: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 11

Details of All Theory & Lab Courses as per Course Structure

Course Title SOFTWARE ENGINEERING

Course Code C209

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

4 - - 3

Course Coordinator

Module Coordinator Dr. B. TarakeswaraRao

Course Coordinator E-mail ID

Course Coordinator

Availability

Pre-requisites

Courses

Course Description: In this course students will learn about the fundamentals of software

engineering and testing and able to prepare SRS document. Students also

learn the quality control and how to ensure good quality software. Overview of learning activities:

1. Lecture and Class Discussions.

2. Assignment work. 3. Tutorial/Quiz sessions

4. Power Point Presentations

Course Assessment Method:

Sessional Marks

Universit

y End-

Exam Marks

Total

Marks

Descriptive + Quiz + Assignment

= 15 + 10 + 5 = 30 Marks

70 100 Mid Term

Max Marks-15

Online Quiz

Max Marks-10

Assignment

Max Marks-05

Mid-1 Mid-2 Quiz-1

Quiz-2

Assign-1

Assign-2

15 15 10 10 5 5

COURSE OBJECTIVES

To understand the software life cycle models.

To understand the software requirements and SRS document.

To understand the importance of modeling and modeling

languages.

To design and develop correct and robust software products.

To understand the quality control and how to ensure good quality

software.

To understand the planning and estimation of software projects.

Page 13: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 12

To understand the implementation issues, validation and

verification procedures.

COURSE OUTCOMES (COs) Upon Completion of the course, the students will be able to have

1. Define the principles and practices of software engineering.

2. Define and develop a software project from requirement gathering to implementation.

3. Describe the fundamentals of modeling a software project.

4. Expalin the concept of debugging, coding and software documentation

5. Evaluate software reliability and Quality management .

6. Describe estimation and maintainance of software systems. Overview of learning resources:

Prescribed & Suggested Text Books

1. Software Engineering - Concepts and Practices: Ugrasen

Suman, Cengage Learning 2. Software Engineering - A Practitioner’s Approach, Roger S.

Pressman, Seventh Edition McGrawHill International Edition.

3. Fundamentals of Software Engineering, Rajib Mall, Third Edition, PHI.

4. Software Engineering, Ian Sommerville, Ninth edition, Pearson

education Overview of assessment:

Internal Test. Quiz

Assignments. University Exams.

VERIFIED BY

Course Coordinator

Module Coordinator Program Coordinator

HOD

Dr.B.TarakeswaraRao Mr.N.Md.Jubair

Basha

Dr.K.Venkata

Subba Reddy

SYLLABUS

UNIT-I: Software and Software Engineering: The Nature of Software, The

Unique Nature of WebApps, Software Engineering, Software Process, Software Engineering Practice, Software Myths. Process Models: A Generic

Process Model, Process Assessment and Improvement, Prescriptive Process

Models, Specialized Process Models, The Unified Process, Personal and Team

Process Models, Process Terminology, Product and Process.

UNIT-II: Requirements Analysis And Specification: Requirements Gathering

and Analysis, Software Requirement Specification (SRS), Formal System Specification. Software Design: Overview of the Design Process, How to

Characterise of a Design?, Cohesion and Coupling, Layered Arrangement of

Modules, Approaches to Software Design

UNIT – III: Function-Oriented Software Design: Overview of SA/SD

Page 14: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 13

Methodology, Structured Analysis, Developing the DFD Model of a System,

Structured Design, Detailed Design, Design Review, over view of Object Oriented design. User Interface Design: Characteristics of Good User

Interface, Basic Concepts, Types of User Interfaces, Fundamentals of

Component-based GUI Development, A User Interface Design Methodology.

UNIT – IV: Coding And Testing: Coding, Code Review, Software

Documentation, Testing, Unit Testing, Black-Box Testing, White-Box

Testing, Debugging, Program Analysis Tool, Integration Testing, Testing Object-Oriented Programs, System Testing, Some General Issues Associated

with Testing

UNIT – V: Software Reliability And Quality Management: Software Reliability,

Statistical Testing, Software Quality, Software Quality Management System,

ISO 9000, SEI Capability Maturity Model. Computer Aided Software Engineering: Case and its Scope, Case Environment, Case Support in

Software Life Cycle, Other Characteristics of Case Tools, Towards Second

Generation CASE Tool, Architecture of a Case Environment

UNIT – VI Software Maintenance: Software maintenance, Maintenance

Process Models, Maintenance Cost, Software Configuration Management.

Software Reuse: what can be Reused? Why almost No Reuse So Far? Basic Issues in Reuse Approach, Reuse at Organization Level.

Prescribed Text Books

1. Software Engineering - Concepts and Practices: Ugrasen Suman, Cengage Learning

2. Software Engineering - A Practitioner’s Approach, Roger S.

Pressman, Seventh Edition McGrawHill International Edition. 3. Fundamentals of Software Engineering, Rajib Mall, Third Edition,

PHI.

4. Software Engineering, Ian Sommerville, Ninth edition, Pearson education

Mapping of COs with Pos

Course Outcomes

PO

1

PO

2

PO

3

PO

4

PO

5

PO

6

PO

7

PO

8

PO

9

PO

10

PO

11

PO

12

PS

O1

PS

O2

CO1: Define the principles and

practices of software

engineering.

CO2: Define and develop a software

project from

requirement gathering to

implementation.

2 3 2

CO3:Describe the

fundamentals of modeling a software

project.

2 2 2

Page 15: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 14

LESSON PLAN

Unit/Topic

No.

Topic Name No of Classes

Requir

ed

I 1 Introduction to software and software engineering 1 13

2 The Nature of Software, The Unique Nature of

WebApps 2

3 Software Engineering, Software Process, Software

Engineering Practice, Software Myths. 3

4 Process Models: A Generic Process Model, Process Assessment and Improvement

2

5 Prescriptive Process Models, Specialized Process

Models, The Unified Process, Personal and Team

Process Models

3

6 Process Terminology, Product and Process 2

II 1 Requirements Analysis And Specification:

Requirements Gathering and Analysis, 2

10

2 Software Requirement Specification (SRS),

Formal System Specification. 2

3 Software Design: Overview of the Design Process,

How to Characterise of a Design 2

4 Cohesion and Coupling Approaches to Software

Design 2

5 Layered Arrangement of Modules 2

III 1 Function-Oriented Software Design: Overview of

SA/SD Methodology, Structured Analysis, 2

12

2 Developing the DFD Model of a System,

Structured Design, Detailed Design, 2

2 Design Review, over view of Object Oriented

design. 2

4 User Interface Design: Characteristics of Good User Interface, Basic Concepts,

2

CO4:Expalin the

concept of debugging,

coding and software documentation

2 2 3

CO5: Evaluate software reliability

and Quality

management

2 2 2

CO6:Describe

estimation and

maintainance of software systems.

2 2 2

Page 16: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 15

5 Types of User Interfaces, Fundamentals of

Component-based GUI Development,

2

6 A User Interface Design Methodology 2

IV 1 Coding And Testing: Coding, Code Review,

2 13

2 Software Documentation, Testing, Unit Testing, Black-Box Testing, White-Box Testing,

Debugging,

4

3 Program Analysis Tool, Integration Testing,

2

2 3

4 Testing Object-Oriented Programs,

5 System Testing, Some General Issues Associated

with Testing

V 1

Software Reliability And Quality Management: Software Reliability, Statistical Testing,

3 16

2 Software Quality, Software Quality Management

System,

2

3 ISO 9000, SEI Capability Maturity Model. 2

4 Computer Aided Software Engineering: Case and

its Scope, Case Environment, Case Support in

Software Life Cycle,

4

5 Other Characteristics of Case Tools, Towards

Second Generation CASE Tool, 3

6 Architecture of a Case Environment 2

VI 1 Software Maintenance: Software maintenance, Maintenance Process Models,

3 10

2 Maintenance Cost, Software Configuration

Management. 3

3 Software Reuse: what can be Reused? Why almost

No Reuse So Far?

2

4 Basic Issues in Reuse Approach, Reuse at

Organization Level. 2

Total No. of hours: 74

74

QUESTION BANK

UNIT NO.

S.NO. QUESTIONS Bloom’s Taxonomy

Mapped with CO

I 1 Define software engineering and

Give a generic view of Software Engineering.

2 CO1

2 Elaborate on evolution of

software. Give the comparison

of software and software system product

3 CO1

3 Compare the incremental model

and the spiral model.

3 CO1

4 Define software. List and

explain about the elements of a

software process.

2 CO1

Page 17: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 16

5 Explain briefly Software

development lifecycle.

3 CO1

6 What are the challenges of software engineering?

4 CO1

II 1 Explain the ways and means for

collecting the software requirements and how are they

organized and represented?

3 CO2

2 Explain the software

requirement analysis and modeling

3 CO2

3 Describe various prototyping

techniques and object oriented analysis and modeling

principles.

3 CO2

4 Narrate the importance of

software specification of requirements.

2 CO2

5 Explain cohesion and coupling 3 CO2

6 Briefly Explain Formal system

specification

4 CO2

III 1 What are the characteristics of

a good design? Describe

different types of coupling and cohesion. How design

evaluation is performed?

2 CO3

2 What is transform mapping?

Explain the process with an illustration. Describe its

strength and weakness.

2 CO3

3 Explain the importance of user interface design in sale of

software

3 CO3

4 Give the comparison of

transaction mapping and transform mapping

2 CO3

5 Explain about structured

analysis

3 CO3

6 How to develop DFD model of a system

3 CO3

IV 1 What is black box testing? Is it

necessary to perform this? Explain various test activities.

3 CO4

2 Discuss how the testing models

may be used together to test a

program schedule.

3 CO4

3 What are the various testing

strategies to software testing?

Discuss them briefly.

2 CO4

4 Why testing is important with 4 CO4

Page 18: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 17

respect to software?

5 Explain general issues

associated with Testing

3 CO4

6 Explain Integration testing 4 CO4

V 1 Explain statistical testing 4 CO4

2 What is case support in

software life cycle

2 CO5

3 Explain Architecture of a Case

Environment

2 CO5

4 What is SEI Capability Maturity

Model? Explain.

3 CO5

5 Explain software Quality and

Reliability

4 CO5

6 Explain computer aided software engineering

4 CO5

VI 1 Discuss the concept of software

maintenance process.

3 CO6

2 Describe software maintenance activities and explain the re-

engineering.

2 CO6

3 What is meant by SQA?

Discuss in detail SQA activities.

3 CO6

4 Distinguish between verification

and validation.

2 CO6

5 Explain software configuration

management.

3 CO6

6 What are the Basic Issues in

Reuse Approach?

2 CO6

7 Explain Reuse at Organization Level.

4 CO6

Question-Papers html

1. http://www.khitguntur.ac.in/cse.php#cseqp.php Recommended books

1. Software Engineering - Concepts and Practices: Ugrasen Suman,

Cengage Learning 2. Software Engineering - A Practitioner’s Approach, Roger S.

Pressman, Seventh Edition, McGrawHill International Edition.

Prepared By

Page 19: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 18

Course Title Java Programming

Course Code C210

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

4 - - 4

Course Coordinator Mr. P.Lakshmikanth

Module Coordinator Dr.MD. Umar Khan

Course Coordinator

Mobile Number +91-9885022246

Course Coordinator

E-mail ID [email protected]

Course Coordinator

Availability

Wednesday: 10:00 Am to 12:30 PM

Friday: 11:00AM to 12:30 PM

Pre-Requisites of

the Course C Programming and CPP Programming.

COURSE DESCRIPTION:

The primary objective of this course is students will study the object oriented concepts, like Class, Object, Method, Encapsulation, Abstraction,

Polymorphism, Inheritance, Message Passing. Upon completion, students

should be able to design, code, test, and debug JAVA language programs.

OVERVIEW OF LEARNING ACTIVITIES: 1. Class Room Lecture.

2. Assignment work. 3. Quiz Sessions 4. Power Point Presentations

COURSE ASSESSMENT METHOD:

Session Marks

University

End-Exam Marks

Total Marks

Descriptive+Objective+Assignment

=15+10+5=30 Marks

70 100 Mid Term

Max Marks-15

Online Quiz

Max Marks-10

Assignment

Max Marks-05

Mid-1 Mid-2 Quiz-1

Quiz-2

Assign-1

Assign-2

15 15 10 10 5 5

COURSE OBJECTIVES:

1. Understanding the OOP’s concepts, classes and objects, threads, files, applets, swings and act.

Page 20: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 19

2. This course introduces computer programming using the JAVA

programming language with object-oriented programming principles.

3. Emphasis is placed on event-driven programming methods,

including creating and manipulating objects, classes, and using Java for network level programming and middleware development.

COURSE OUTCOMES:

CO-1: Explain the differences between procedural oriented

programming languages verses object oriented languages and also able to discuss about working process of JVM.

CO-2: Write the programs using classes, objects and also able

to use variables, data types, branching, constructors and command line arguments.

CO-3: Create the programs on different types of inheritance

and also handle the Exceptions.

CO-4: Implement programs with user defined threads and IO functionality to read from and write to text files.

CO-5: Develop the programs on applets and event handling

techniques.

CO-6: Explain and implement event driven GUI using awt and swings components.

OVERVIEW OF LEARNING RESOURSES: TEXT BOOKS:

1. The complete Reference Java, 8th edition, Herbert Schildt, TMH. 2. Programming in JAVA, Sachin Malhotra, SaurabhChoudary, Oxford.

3. Introduction to java programming, 7th edition by Y Daniel Liang,

Pearson.

REFERENCE BOOKS: 1. Swing: Introduction, JFrame, JApplet, JPanel, Componets in Swings,

Layout Managers in

2. Swings, JList and JScrollPane, Split Pane, JTabbedPane, JTree,

JTable, Dialog Box.

OVERVIEW OF ASSESSMENT: Internal Test. Quiz Assignments. University Exams.

VERIFIED BY

Course Coordinator

Module Coordinator

Program Coordinator

HOD

Mr. P.Lakshmikanth

Dr. MD.Umar Khan

Mr.N.Md.Jubair Basha

Dr.K.Venkata Subba Reddy

Page 21: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 20

Syllabus

OBJECTIVES:

Understanding the OOP’s concepts, classes and objects, threads, files,

applets, swings and act.

This course introduces computer programming using the JAVA programming language with object-oriented programming principles.

Emphasis is placed on event-driven programming methods, including

creating and manipulating objects, classes, and using Java for network level programming and middleware development.

UNIT -I: Introduction to OOP

Introduction to OOP, procedural programming language and object oriented language, principles of OOP, applications of OOP, history of java, java

features, JVM, program structure. Variables, primitive data types,

identifiers, literals, operators, expressions, precedence rules and associativity, primitive type conversion and casting, flow of control.

UNIT -II: Classes and Objects

Classes and objects, class declaration, creating objects, methods,

constructors and constructor overloading, garbage collector, importance of static keyword and examples, this keyword, arrays, command line

arguments, nested classes.

UNIT -III: Inheritance Inheritance, types of inheritance, super keyword, final keyword, overriding

and abstract class. Interfaces, creating the packages, using packages,

importance of CLASSPATH and java.lang package. Exception handling, importance of try, catch, throw, throws and finally block, user defined

exceptions, Assertions.

UNIT -IV: Multithreading Multithreading: introduction, thread life cycle, creation of threads, thread

priorities, thread synchronization, communication between threads. Reading

data from files and writing data to files, random access file.

UNIT -V: Applets and Event Handling Applet class, Applet structure, Applet life cycle, sample Applet programs.

Event handling: event delegation model, sources of event, Event Listeners,

adapter classes, inner classes. UNIT -VI: AWT

AWT: introduction, components and containers, Button, Label, Checkbox,

Radio Buttons, List Boxes, Choice Boxes, Container class, Layouts, Menu and Scrollbar.

OUTCOMES:

1. To Understand Java programming concepts and utilize Java Graphical User Interface in Program writing.

2. To write, compile, execute and troubleshoot Java programming for

networking concepts.

3. To build Java Application for distributed environment. 4. To design and Develop multi-tier applications.

5. To identify and Analyze Enterprise applications.

Page 22: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 21

TEXT BOOKS: 1. The complete Reference Java, 8th edition, Herbert Schildt, TMH.

2. Programming in JAVA, Sachin Malhotra, SaurabhChoudary, Oxford.

3. Introduction to java programming, 7th edition by Y Daniel Liang,

Pearson.

REFERENCE BOOKS: 1. Swing: Introduction, JFrame, JApplet, JPanel, Componets in Swings,

Layout Managers in

2. Swings, JList and JScrollPane, Split Pane, JTabbedPane, JTree,

JTable, Dialog Box.

Mapping of COs with POs

Course Outcomes

PO

-1

PO

-2

PO

-3

PO

-4

PO

-5

PO

-6

PO

-7

PO

-8

PO

-9

PO

-10

PO

-11

PO

-12

PS0-1

PS0-2

PS0-3

CO1: Able to

explain the differences

between

procedural oriented

programming

languages and object oriented

languages and

also able to

discuss about working process

of JVM.

2 2 1 1 3 1

CO2: Able to

implement programs by creating classes

with different class

elements and also develop logics using

control structures.

1 1 1 1 1 2 2 1 2 2

CO3: Able to develop

programs by using

inheritance, packages (creation, importing)

and also exception

handling.

1 1 1 1 2 2 1 2 2

Page 23: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 22

LESSON PLAN

S.NO UNIT NO Topics to be Covered No.of

Periods Total

1

UNIT-I

Introduction to OOP 1

14

2 Procedural programming language and object oriented

language

1

3 Principles of OOP 1

4 applications of OOP 1

5 history of java and java features 1

6 JVM 2

7 program structure 1

8 Variables, primitive data types 1

9 identifiers, literals 1

10 operators, expressions 1

11 precedence rules and

associativity 1

12 primitive type conversion and casting

1

13 flow of control 1

14

UNIT-II

Classes and objects, class declaration 1

11 15 creating objects, methods 1

16 constructors and constructor

overloading 2

CO4: Able to

implement the

programs on multithreading and

also IOStreams in java.

1 1 1 1 3 2 1 2 3

CO5: Able to design

user interfaces using Applet and also handle

the events using event

handling mechanism.

1 3 1 2 3 2 1 2 3

CO6: Able to design

user interfaces using AWT, Swing

Components and also

differentiate both.

1 3 1 2 3 2 1 2 2

AVG 1 1 1.8 2 1 1.4 2.5 1.83

1 2.17

2.17

Page 24: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 23

17 garbage collector 1

18 importance of static keyword and examples

1

19 this keyword 1

20 arrays 2

21 command line arguments 1

22 nested classes 1

23

UNIT-III

Inheritance 1

12

24 types of inheritance 1

25 super keyword 1

26 final keyword 1

27 overriding and abstract class. 1

28 Interfaces 1

29 creating the packages, using

packages, importance of CLASSPATH and

1

30 java.lang package 1

31 Exception handling 1

32 importance of try, catch, throw, throws and finally block

1

33 user defined exceptions 1

34 Assertions 1

31

UNIT-IV

Multithreading 1

09

32 introduction, thread life cycle 1

33 creation of threads, thread

priorities 1

34 Thread synchronization 1

35 Communication between

threads 2

36 Reading data from files and

writing data to files 2

37 random access file 1

41

UNIT-V

Applet class 1

09

42 Applet structure 1

43 Applet life cycle 1

44 Sample Applet programs 1

45 Event handling: event

delegation model 2

46 sources of event, Event

Listeners, 1

47 adapter classes 1

48 inner classes 1

Page 25: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 24

51

UNIT -VI

AWT introduction 1

09

52 components and containers 1

53 Button, Label 1

54 Checkbox, Radio Buttons 1

55 List Boxes, Choice Boxes 1

56 Container class 1

57 Layouts 2

58 Menu and Scrollbar 1

Total No. of Periods 64

QUESTION BANK

UNIT – I

1 What are the drawbacks of procedural languages? Explain the need of object

oriented programming with suitable

program.

3 CO1

2 Discuss the lexical issues of Java. 2 CO1

3 Compare procedural languages with object

oriented languages

3 CO1

4 Explain the important features of Java. 3 CO1

5 Discuss the principles of object oriented

languages in detail.

2 CO1

6 What is the role and responsibility of JVM in

program execution?

3 CO1

7 List and explain Java buzzwords. Which

factors are making Java famous language?

1 CO1

8 Give the program structure of Java 3 CO1

9 Differentiate between abstraction and information hiding

2 CO1

10 List the applications of object oriented

programming.

1 CO1

UNIT – II

1 Illustrate constructor overloading. 3 CO2

2 Explain precedence rules and associativity

concept

3 CO2

3 List various types of statements and quote suitable examples for each type.

1 CO2

4 With a program illustrate the use of

command line arguments.

3 CO2

5 What are the primitive data types in Java? Write about type conversions.

3 CO2

6 What is a constructor? What is its

requirement in programming? Explain with program.

3 CO2

7 How to create objects? Does Java support 2 CO2

Page 26: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 25

object destruction? Justify your answer

8 Write a Java program to find the sum of the

squares of the diagonal elements of a square matrix.

3 CO2

9 What are the naming conventions for Java

identifiers?

3 CO2

10 Illustrate the usage of ‘this’ keyword. 3 CO2

UNIT – III

1 Explain multilevel inheritance with the help

of abstract class in your program.

3 CO3

2 How to handle multiple catch blocks for a nested try block? Explain with an example.

2 CO3

3 Explain multilevel inheritance with the help

of abstract class in your program

3 CO3

4 How to define a user exception in a

program? Illustrate with an example.

2 CO3

5 Write a program to implement multiple

inheritances.

3 CO3

6 What is an exception? How are exceptions

handled in Java programming? Explain

3 CO3

7 What are the benefits of inheritance?

Explain various forms of inheritance with suitable code segments.

3 CO3

8 How to create and use a package in Java

program?

2 CO3

9 Give the basic keywords used in exception handling.

3 CO3

10 Differentiate class, abstract class and

interface.

2 CO3

UNIT – IV

1 Describe Java’s thread model. 2 CO4

2 What is a stream? What is the difference

between byte streams and character streams? How are they used to capture

input from the user?

3 CO4

3 Write a program to implement multi thread

programming.

3 CO4

4 Explain thread synchronization 3 CO4

5 Describe the need of thread synchronization.

How is it achieved in Java programming? Explain with a suitable program.

2 CO4

6 Differentiate between FileReader and

BufferReader.

2 CO4

7 Explain thread life cycle and thread creation in Java.

3 CO4

8 Write a program to read user name from

console and display some message for that

user using streams.

3 CO4

9 Define thread. How is it different from a

process?

1 CO4

Page 27: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 26

10 Write about thread suspension and resume 3 CO4

UNIT – V

1 What is the role of event listeners in event handling? List the Java event listeners

3 CO5

2 Write an applet to display the mouse cursor

position in that applet window

3 CO5

3 Explain delegation event model in detail 3 CO5

4 Write an applet to display a smiley with a

greeting message to the user.

3 CO5

5 What is an applet? Explain its life cycle. 3 CO5

6 Write a program to handle mouse events and mouse motion events.

3 CO5

7 Discuss the applet structure and compare it

with application structure

2 CO5

8 Write a program to handle keyboard events. 3 CO5

9 Give the sources of action event and item

event

3 CO5

10 What is an adapter class? Give any two

examples for it.

3 CO5

UNIT – VI

1 Discuss various AWT containers with

examples

2 CO6

2 Construct an application to explain the use of JTabbedPane

3 CO6

3 What is the significance of Layout

managers? Discuss briefly various layout managers.

3 CO6

4 Write a note on split Pane 3 CO6

5 Write a program to create a frame for a

simple arithmetic calculator using swing components and layout mangers

3 CO6

6 Compare the features of Applet with

JApplet.

3 CO6

7 Construct a frame with necessary components for bus reservation system of

an agent.

3 CO6

8 Write a note on dialog box usage in user interfaces.

3 CO6

9 List the features of Menu component of

AWT.

1 CO6

10 Differentiate between grid layout and gridbag layout managers.

2 CO6

Question Papers HTML:

1. http://khitguntur.ac.in/cseqp/182252.pdf

2. http://khitguntur.ac.in/cseqp/18s2252.pdf

3. http://khitguntur.ac.in/cseqp/17s2252.pdf

4. http://khitguntur.ac.in/cseqp/16s2252.pdf

5. http://khitguntur.ac.in/cseqp/15s2252.pdf

Page 28: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 27

FREELY ACCESSIBLE INTERNET SITES:

1. https://www.geeksforgeeks.org/java-tutorials/ 2. https://www.tutorialspoint.com/java/index.htm

3. https://www.w3schools.com/java/

4. https://www.javatpoint.com/java-tutorial

5. https://www.guru99.com/java-tutorial.html NPTEL

1. https://nptel.ac.in/courses/106/105/106105191/

RECOMMENDED BOOKS 1. Object Oriented Programming Through Java, P. Radha Krishna,

Universities 2. JAVA Programming, K.Rajkumar, Pearson.

3. Core JAVA, Black Book, Nageswara Rao, Wiley, Dream Tech.

4. Core JAVA for Beginners, Rashmi Kanta Das, Vikas. 5. Object oriented programming with JAVA, Essentials and Applications,

Raj Kumar Bhuyya, Selvi, Chu TMH.

6. Introduction to Java rogramming, 7th ed, Y Daniel Liang, Pearson.

Prepared by

Mr. P. Lakshmikanth,

Assistant Professor,CSE Dept, KHIT

Page 29: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 28

Course Title Advanced Data Structures

Course Code C211

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

4 - - 3

Course Coordinator Mr.B.Ramakrishna

Module Coordinator Mr.Ch.Samson

Course Coordinator

Mobile Number +91-9290046742

Course Coordinator E-mail ID

[email protected]

Course Coordinator

Availability

Wednesday: 10:00 Am to 12:30 PM

Friday: 11:00AM to 12:30 PM

Pre-Requisites of

the Course

Data Strucutres

COURSE DESCRIPTION:

The course included some concepts belongs to Data structures like Graphs, Trees, Sorting techniques etc. and also introduces more advanced concepts

of Data structures like Hash tables, Skip lists, AVL Trees, 2-3 Tress, Heaps,

Binomial Queues, Pattern matching algorithms and some concepts

regarding files and operations on files. In Computer Science, Data structures play a vital role. It means that most of the computer applications

cannot be implemented without using data structures. After completion of

this course, students will be able to design and develop applications using basic data structures and also advanced data structures.

OVERVIEW OF LEARNING ACTIVITIES:

5. Class Room Lecture.

6. Assignment work. 7. Quiz sessions

8. Power Point Presentations

COURSE ASSESSMENT METHOD:

Session Marks

University

End-Exam Marks

Total Marks

Descriptive+Objective+Assignment

=15+10+5=30 Marks

70 100 Mid Term

Max Marks-15

Online Quiz

Max Marks-10

Assignment

Max Marks-05

Mid-1 Mid-2 Quiz-1

Quiz-2

Assign-1

Assign-2

15 15 10 10 5 5

COURSE OBJECTIVES:

Page 30: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 29

4. Describe and implement a variety of advanced data structures

(hash tables, priority queues, balanced search trees, graphs). 5. Analyze the space and time complexity of the algorithms studied in

the course.

6. Identify different solutions for a given problem; analyze advantages

and disadvantages to different solutions. 7. Demonstrate an understanding of external memory and external

search and sorting algorithms.

8. Demonstrate an understanding of simple Entity-Relationship models for databases.

COURSE OUTCOMES:

CO-1: Analyze different types of applications related to sorting. CO-2: Develop an application which contains data structures

like Hash table and its concepts.

CO-3: Design applications which consist of heaps, priority queues, Binomial queues etc

CO-4: Implement the application using balanced tree concepts

like AVL trees, Red-Black trees etc.

CO-5: Understand the Multi-way search tress like B-Trees, B+-Trees etc.

CO-6: Apply the knowledge of digital search trees concepts to

develop applications.

OVERVIEW OF LEARNING RESOURSES:

TEXT BOOKS: 1. Data Structures, a Pseudocode Approach, Richard F Gilberg, Behrouz

A Forouzan Cengage.

2. Fundamentals of DATA STRUCTURES in C: 2nd ed, ,Horowitz , Sahani, Anderson-freed, Universities Press.

3. Data structures and Algorithm Analysis in C, 2nd edition, Mark Allen

Weiss, Pearson.

REFERENCE BOOKS:

1. Web : http://lcm.csa.iisc.ernet.in/dsa/dsa.html

2. http://utubersity.com/?page_id=878 3. http://freevideolectures.com/Course/2519/C-Programming-and-

Data-Structures

4. http://freevideolectures.com/Course/2279/Data-Structures-And-Algorithms

5. File Structures :An Object oriented approach with C++, 3rd ed,

Michel J Folk, Greg Riccardi, Bill Zoellick 6. C and Data Structures: A Snap Shot oriented Treatise with Live

examples from Science and Engineering, NB Venkateswarlu & EV

Prasad, S Chand, 2010.. OVERVIEW OF ASSESSMENT:

Internal Test.

Quiz

Assignments.

University Exams.

VERIFIED BY

Page 31: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 30

Course

Coordinator

Module

Coordinator

Program

Coordinator HOD

Mr.B.Ramakrishna Mr.Ch.Samson Mr.N.Md.Jubair

Basha

Dr.K.Venkata

Subba Reddy

SYLLABUS OBJECTIVES:

Describe and implement a variety of advanced data structures (hash

tables, priority queues, balanced search trees, graphs).

Analyze the space and time complexity of the algorithms studied in the course.

Identify different solutions for a given problem; analyze advantages

and disadvantages to different solutions.

Demonstrate an understanding of external memory and external search and sorting algorithms.

Demonstrate an understanding of simple Entity-Relationship models

for databases.

UNIT-I: SORTING External Sorting, Introduction, K-way Merging - Buffer Handling for parallel

Operation- Run Generation- Optimal Merging of Runs.

UNIT-II: HASHING Introduction-Static Hashing- Hash Table- Hash Functions- Secure Hash

Function- Overflow Handling- Theoretical Evaluation of Overflow

Techniques, Dynamic Hashing- Motivation for Dynamic Hashing -Dynamic Hashing Using Directories- Directory less Dynamic, Hashing,

UNIT-III:PRIORITY QUEUES (HEAPS)

Model, Simple Implementation, Binary Heap-Structure Property-Heap-Order Property-Basic Heap Operations- Other Heap Operation, Applications of

Priority Queues- The Selection Problem Event Simulation Problem, Binomial

Queues- Binomial Queue Structure – Binomial Queue Operation-

Implementation of Binomial Queues UNIT-IV: EFFICIENT BINARY SEARCH TREES

Optimal Binary Search Trees, AVL Trees, Red-Black Trees, Definition-

Representation of a Red- Black Tree- Searching a Red-Black Tree- Inserting into a Red Black Tree- Deletion from a Red-Black Tree- Joining Red-Black

Trees, Splitting a Red-Black tree.

UNIT-V: MULTIWAY SEARCH TREES M-Way Search Trees, Definition and Properties- Searching an M-Way Search

Tree, B-Trees, Definition and Properties- Number of Elements in a B-tree-

Insertion into B-Tree- Deletion from a B-Tree- B+-Tree Definition- Searching a B+-Tree- Insertion into B+-tree- Deletion from a B+-Tree.

UNIT-VI: DIGITAL SEARCH STRUCTURES

Digital Search Trees, Definition- Search, Insert and Delete- Binary tries and

Patricia, Binary Tries, Compressed Binary Tries- Patricia, Multiway Tries- Definitions- Searching a Trie- Sampling Strategies- Insertion into a Trie-

Deletion from a Trie- Keys with Different Length- Height of a Trie- Space

Required and Alternative Node Structure- Prefix Search and Applications-

Page 32: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 31

Compressed Tries- Compressed Tries With Skip Fields- Compressed Tries

With Labeled Edges- Space Required by a Compressed Tries, Tries and Internet Packet Forwarding ,- IP Routing- 1-Bit Tries- Fixed-Stride Tries-

Variable-Stride Tries.

OUTCOMES:

1. Be able to understand and apply amortised analysis on data structures, including binary search trees, mergable heaps, and

disjoint sets.

2. Understand the implementation and complexity analysis of fundamental algorithms such as RSA, primality testing, max flow,

discrete Fourier transform.

3. Have an idea of applications of algorithms in a variety of areas, including linear programming and duality, string matching, game-

theory.

TEXT BOOKS: 1. Data Structures, a Pseudocode Approach, Richard F Gilberg, Behrouz

A Forouzan Cengage.

2. Fundamentals of DATA STRUCTURES in C: 2nd ed, , Horowitz ,

Sahani, Anderson-freed, Universities Press. 3. Data structures and Algorithm Analysis in C, 2nd edition, Mark Allen

Weiss, Pearson.

REFERENCE BOOKS: 1. Web : http://lcm.csa.iisc.ernet.in/dsa/dsa.html

2. http://utubersity.com/?page_id=878

3. http://freevideolectures.com/Course/2519/C-Programming-and-Data-Structures

4. http://freevideolectures.com/Course/2279/Data-Structures-And-

Algorithms 5. File Structures :An Object oriented approach with C++, 3rd ed, Michel J

Folk, Greg Riccardi, Bill Zoellick

6. C and Data Structures: A Snap Shot oriented Treatise with Live examples from Science and Engineering, NB Venkateswarlu & EV Prasad, S Chand,

2010..

Mapping of COs with POs

Course Outcomes P

O-1

PO

-2

PO

-3

PO

-4

PO

-5

PO

-6

PO

-7

PO

-8

PO

-9

PO

-10

PO

-11

PO

-12

PS0-1

PS0-2

PS0-3

CO-1: Analyze different types of

applications related

to sorting.

1 2 1 2 2 2 3

CO-2: Design

applications which

consist of heaps, priority Hash table

and its concepts.

2 1 1 1 2 2 2 3

Page 33: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 32

LESSON PLAN

S.NO UNIT NO Topics to be Covered No.of

Periods Total

1

UNIT-I

SORTING : External Sorting, Introduction

2

08 2 K-way Merging 1

3 Buffer Handling for parallel

Operation 2

4 Run Generation 1

5 Optimal Merging of Runs 2

6

UNIT-II

HASHING : Introduction-Static Hashing- Hash Table

1

08

7 Hash Functions- Secure Hash

Function 2

8 Overflow Handling- Theoretical Evaluation of Overflow

Techniques

2

9 Dynamic Hashing- Motivation

for Dynamic Hashing 1

10 Dynamic Hashing Using

Directories 1

11 Directory less Dynamic,

Hashing 1

12

PRIORITY QUEUES (HEAPS) :

Model, Simple Implementation 1

13 Binary Heap-Structure

Property-Heap 1

CO-3: Design

applications which

consist of heaps, priority queues,

Binomial queues

etc.

1 1 2 1 2 2 2 3

CO-4: Implement

the application using balanced tree

concepts like AVL

trees, Red-Black

trees etc.

1 1 2 2 2 3

CO-5: Understand

the Multi-way search tress like B-

Trees, B+-Trees etc.

1 1 1 2 2 2 3

CO-6: Apply the knowledge of digital

search trees

concepts to develop applications.

1 1 1 2 2 2 3

Page 34: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 33

14

UNIT-III

Order Property-Basic Heap

Operations 2

11 15 Other Heap Operation 1

16 Applications of Priority Queues 1

17 The Selection Problem Event

Simulation Problem 1

18 Binomial Queues- Binomial Queue Structure

1

19 Binomial Queue Operation 2

20 Implementation of Binomial

Queues 1

21

UNIT-IV

EFFICIENT BINARY SEARCH

TREES: Optimal Binary Search Trees

1

10

22 AVL Trees 2

23 Red-Black Trees, Definition 1

24 Representation of a Red- Black Tree

1

25 Searching a Red-Black Tree 1

26 Inserting into a Red Black Tree 1

27 Deletion from a Red-Black Tree 1

28 Joining Red-Black Trees 1

29 Splitting a Red-Black tree 1

30

UNIT-V

MULTIWAY SEARCH TREES:

M-Way Search Trees 1

09

31 Definition and Properties-

Searching an M-Way Search

Tree

1

32 B-Trees, Definition and Properties

1

33 Number of Elements in a B-tree 1

34 Insertion into B-Tree- Deletion from a B-Tree

2

35 B+-Tree Definition- Searching a

B+-Tree 1

36 Insertion into B+-tree 1

37 Deletion from a B+-Tree 1

38

DIGITAL SEARCH STRUCTURES: Digital Search

Trees, Definition

1

39 Search, Insert and Delete 2

40 Binary Tries, Patricia 2

Page 35: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 34

41

UNITVI

Compressed Binary Tries-

Patricia 1

18

42 Multiway Tries- Definitions- Searching a Trie

1

43 Sampling Strategies- Insertion

into a Trie 1

44 Deletion from a Trie 1

45 Keys with Different Length-

Height of a Trie 1

46 Space Required and Alternative Node Structure

1

47 Prefix Search and Applications-

Compressed Tries 1

48 Compressed Tries With Skip Fields

1

49 Compressed Tries With Labeled

Edges 1

50 Space Required by a Compressed Tries

1

51 Tries and Internet Packet

Forwarding 1

52 IP Routing- 1-Bit Tries 1

53 Fixed-Stride-Tries-Variable-

Stride Tries. 1

Total No. of Periods 64

QUESTION BANK

Unit No.

Q. No

Questions

Blooms

Taxonomy Level

Course

Outcome

I

1 Discuss the applications of

external sorting algorithm?

3

CO1

2 Explain the difference between external sorting and internal

sorting

7

3 Describe the process of K-way

merging of the given sorted runs with an example.

4

4 What is the need of buffers in

external sorting? Discuss about buffer handling.

4

5 Illustrate the run generation

methods with suitable examples.

6

7 Explain the process of optimal

merging of runs

4

8 Analyze the complexity of above

external sort technique?

6

1 Define hashing. Explain 4

Page 36: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 35

II

different types of hash

functions.

CO2 2 Define collision. Explain different types of collision

resolution strategies.

4

3 Differentiate static hashing with

dynamic hashing.

7

4 Compare and contrast the efficiency of static hashing

techniques.

8

5 Discuss about dynamic hashing

using directories.

4

6 Explain the concept of directory

less dynamic hashing.

4

III

1 What is a priority queue?

Explain about structure property and order property of

priority queue implementation.

4

CO3

2 List and explain the basic binary

heap operations.

4

3 Name any two applications of

priority queues and explain how

priority queue simplifies the implementation.

7

4 What is a binomial queue?

Discuss about its structure.

4

5 Write insertion and deletion

algorithms of priority heap?

5

6 Explain about the operations on

binomial queues.

4

7 Discuss about applications of

binomial queues.

4

IV

1 Describe optimal binary search trees.

4

CO4

2 What is a height balanced tree?

Explain.

4

3 List the properties of AVL trees. 2

4 Illustrate the insertion operation

of AVL trees.

6

5 Illustrate the deletion operation

of AVL trees.

6

6 List the properties of Red-Black tree.

2

7 Explain about insertion and

deletion operations in red-black

trees.

4

8 Explain about join and split

operations in red-black trees.

4

9 List the properties of Red-Black 2

Page 37: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 36

trees?

V

1 Define m-way search tree. List

its properties.

2

CO5

2 What are the properties of B-trees.

2

3 Illustrate the process of

inserting an element into a B-

Tree.

6

4 Illustrate the process of deleting

an element into a B-Tree.

6

5 Illustrate the process of

inserting an element into a B+-Tree.

6

6 What is a B-Tree? 3

7 Illustrate the process of deleting an element into a B+-Tree.

6

VI

1 Define a digital search tree. List

and explain the operations on

digital search tree.

4

CO6

2 Explain about insert, delete

operations on binary tries.

4

3 Explain about insert, delete

operations on multi-way tries.

4

4 Describe prefix based search

with example.

4

5 Differentiate compressed tries

with skip fields and compressed tries with labeled edges.

4

6 How tries are useful in internet

packet forwarding? Explain.

4

7 Compare and contrast fixed

stride tries with variable stride tries.

7

8 Give the analysis of Tries search

algorithm?

3

FREELY ACCESSIBLE INTERNET SITES: 1. https://www.geeksforgeeks.org/advanced-data-structures

2. https://www.udemy.com/course/introduction-to-data-structures

NPTEL https://nptel.ac.in/courses/106103069/#

https://nptel.ac.in/courses/106105085/

RECOMMENDED BOOKS 1. File Structures :An Object oriented approach with C++, 3rd ed, Michel

J Folk, Greg Riccardi, Bill Zoellick

2. C and Data Structures: A Snap Shot oriented Treatise with Live

examples from Science and Engineering, NB Venkateswarlu & EV Prasad, S Chand, 2010.

Prepared by

Mr.B.Ramakrishna, Asst.Professor-CSE Dept, KHIT

Page 38: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 37

Course Title COMPUTER ORGANIZATION

Course Code C212

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

4 - - 3

Course Coordinator Ms. S. Sri Lakshmi Parvathi

Module Coordinator Dr. B. Srikanth

Course Coordinator E-mail ID

[email protected]

Course Coordinator

Availability

Pre-requisites

Courses Digital Logic Design

Course Description:

The course stress the hierarchical structure of a computer. It incorporates a

simple assembly language to serve as an example of how the various

components interact. The logic design part of the outline is specific and essential to this course. The functional logic design level is emphasized

rather than circuit details, which will be covered in engineering courses. The

functional level provides the student with an understanding of the mechanics of information transfer and control within the computer system.

Overview of learning activities:

5. Lecture and Class Discussions. 6. Assignment work.

7. Tutorial/Quiz sessions

8. Power Point Presentations Course Assessment Method:

Sessional Marks

Universit

y End-Exam

Marks

Total Marks

Descriptive + Quiz + Assignment = 15 + 10 + 5 = 30 Marks

70 100 Mid Term

Max Marks-15

Online Quiz

Max Marks-10

Assignment

Max Marks-05

Mid-1 Mid-2 Quiz-

1

Quiz-

2

Assign-

1

Assign-2

15 15 10 10 5 5

COURSE OBJECTIVES

The students will understand the architecture of a modern computer with

its various processing units. Also the Performance measurement of the computer system and the memory management system of computer.

COURSE OUTCOMES (COs)

Upon Completion of the course, the students will be able to have CO 1: Express a view of computer system from user’s perspective and

Page 39: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 38

discuss different data representations.

CO2: Explain about Machine Instructions and Programs. CO3: Illustrate the type of instructions

CO4: Describe the Input /Output organization.

CO5: Distinguish among various memories in digital computer

system. CO6: Discuss about Micro programmed Control and Processing Unit.

Overview of learning resources: Prescribed & Suggested Text Books

1. Computer Organization, Carl Hamacher, Zvonks Vranesic, Safea

Zaky, 5th Edition, McGraw Hill.

2. Computer Architecture and Organization, John P. Hayes, 3rd Edition, McGraw Hill.

Reference Books

1. Computer Organization and Architecture – William Stallings Sixth Edition, Pearson/PHI

2. Structured Computer Organization – Andrew S. Tanenbaum, 4th

Edition PHI/Pearson

Overview of assessment: Internal Test. Quiz

Assignments. University Exams.

VERIFIED BY

Course Coordinator

Module Coordinator

Program Coordinator

HOD

Ms. S. Sri

Lakshmi Parvathi

Dr.B.Srikanth Mr.N.Md.Jubair

Basha

Dr.K.Venkata

Subba Reddy

SYLLABUS

UNIT-I Basic Structure Of Computers: Functional unit, Basic Operational concepts,

Bus structures, System Software, Performance, The history of computer

development. UNIT-II

Machine Instruction and Programs: Instruction and Instruction Sequencing:

Register Transfer Notation, Assembly Language Notation, Basic Instruction Types, Addressing Modes, Basic Input/output Operations, and The role of

Stacks and Queues in computer programming equation. Component of

Instructions: Logic Instructions, shift and Rotate Instructions. UNIT-III

Type of Instructions: Arithmetic and Logic Instructions, Branch

Instructions, Addressing Modes, Input/output Operations.

UNIT-IV Input/Output Organization: Accessing I/O Devices, Interrupts: Interrupt

Hardware, Enabling and Disabling Interrupts, Handling Multiple Devices,

Direct Memory Access, Buses: Synchronous Bus, Asynchronous Bus, Interface Circuits, Standard I/O Interface: Peripheral Component

Interconnect (PCI) Bus, Universal Serial Bus (USB)

Page 40: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 39

UNIT-V

The Memory Systems: Basic memory circuits, Memory System Consideration, Read- Only Memory: ROM, PROM, EPROM, EEPROM, Flash

Memory, Cache Memories: Mapping Functions, interleaving Secondary

Storage: Magnetic Hard Disks, Optical Disks,

UNIT-VI Processing Unit: Fundamental Concepts: Register Transfers, Performing an

Arithmetic or Logic Operation, Fetching a Word from Memory, Execution of

Complete Instruction, hardwired Control. Micro programmed Control: Microinstructions, Micro program Sequencing,

Wide Branch Addressing Microinstructions with next –Address Field.

TEXT BOOKS: 1. Computer Organization, Carl Hamacher, Zvonks Vranesic, Safea Zaky,

5th Edition, McGraw Hill.

2. Computer Architecture and Organization, John P. Hayes, 3rd Edition, McGraw Hill.

REFERENCE BOOKS:

1. Computer Organization and Architecture – William Stallings Sixth

Edition, Pearson/PHI 2. Structured Computer Organization – Andrew S. Tanenbaum, 4th Edition

PHI/Pearson

3. Fundamentals or Computer Organization and Design, - Sivaraama Dandamudi Springer Int. Edition.

4. “Computer Organization and Design: The Hardware/Software Interface”

by David A. Patterson and John L. Hennessy. Mapping of COs with Pos

Course Outcomes

PO

1

PO

2

PO

3

PO

4

PO

5

PO

6

PO

7

PO

8

PO

9

PO

1

0

PO

1

1

PO

1

2

PSO

1

PSO

2

PSO

3

CO1: Express a view of

computer system from

user’s perspective and

discuss different data representations.

3

3

3

CO2: Explain about

Machine Instructions and

Programs.

3

1

3

3

CO3: Illustrate the

type of instructions 2 2 3 3

CO4: Describe the

Input /Output organization.

3 3 3

CO5: Distinguish

among various

memories in digital computer system.

3

3

3

Page 41: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 40

LESSON PLAN

UNIT

No. TOPIC NAME

No. of classes

required

Total

UNIT-I

I

Basic Structure Of Computers: Introduction

2

8 Functional unit 1

Basic Operational concepts 1

Bus structures 1

System Software 1

Performance 1

The history of computer development 1

UNIT-II

II

Machine Instruction and Programs: Introduction

1

14

Instruction and Instruction

Sequencing:

1

Register Transfer Notation 1

Assembly Language 1

Basic Instruction Types 2

Addressing Modes 2

Basic Input/output Operations 1

The role of Stacks and Queues in

computer

1

Component of Instructions: 1

Logic Instructions 2

shift and Rotate Instructions 1

UNIT-III

III

Type of Instructions: Introduction 1

8

Arithmetic and Logic Instructions 2

Branch Instructions 2

Addressing Modes, 2

Input/output Operations 1

UNIT-IV

IV

Input/Output Organization: Introduction

1

12

Accessing I/O Devices 1

Interrupts: Interrupt Hardware 1

Enabling and Disabling Interrupts 1

Handling Multiple Devices 1

Direct Memory Access 1

Buses: Synchronous Bus 1

CO6: Discuss about

Micro programmed

Control and Processing Unit.

3

3

3

AVG 2.8

3

1.

5 3 3

Page 42: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 41

Asynchronous Bus 1

Interface Circuits 1

Standard I/O Interface: 1

Peripheral Component Interconnect

(PCI) Bus

1

Universal Serial Bus (USB) 1

UNIT-V

V

The MEMORY SYSTEMS:

Introduction

2

14

Basic memory circuits 1

Memory System Consideration 1

Read- Only Memory: ROM 2

PROM 1

EPROM 1

EEPROM 1

Flash Memory 1

Cache Memories: Mapping Functions 1

INTERLEAVING 1

Secondary Storage: Magnetic Hard

Disks

1

Optical Disks 1

UNIT-VI

VI

Processing Unit: Introduction 1

10

Fundamental Concepts: Register Transfers

2

Performing An Arithmetic Or Logic

Operation

1

Fetching a Word from Memory 1

Execution of Complete Instruction 1

Hardwired Control 1

Micro programmed Control:

Microinstructions

1

Micro program Sequencing 1

Wide Branch Addressing

Microinstructions with next –Address

Field

1

Total No. of classes 66

QUESTION BANK

Unit No. S.No. Questions

Bloom’s Taxonomy

level

Mapped

with CO

I

UNIT-I

CO1

1 Explain Basic Structure Of

Computers.

4

2 Explain Functional units of

computer system.

6

3 Describe basic Operational

concepts

4

4 Discuss in detail about bus 4

Page 43: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 42

structures

5 Define System Software 2

6 Write about Performance measurements in detail

8

7 Explain the history of computer

development

6

II

UNIT-II

CO2

1 Explain about Instruction and

Instruction Sequencing

6

2 Describe Register Transfer Notation

4

3 Discuss Assembly Language

Notations

4

4 Illustrate Basic Instruction Types with examples

8

5 Illustrate Addressing Modes

with examples

8

6 Explain Basic Input/output Operations

6

7 Explain the role of Stacks and

Queues in computer

4

8 Write in detail about Component of Instructions

9

UNIT-III

III

1 Explain in detail about Arithmetic and Logic

Instructions

6

CO3 2

Explain in detail about Branch

Instructions

6

3 Illustrate various Addressing

Modes with examples

8

4 Discuss briefly about

Input/output Operations

4

IV

UNIT-IV

Describe how to Access I/O

Devices 4

CO4

1 Explain Interrupts and Interrupt Hardware

4

2 Explain Enabling and Disabling

Interrupts

6

3 Discuss about Handling Multiple

Devices

4

4 Explain Direct Memory Access 6

5 Discuss about Synchronous Bus 4

6 Discuss about Asynchronous Bus

4

7 Sketch various Interface

Circuits and explain

6

8 Explain about Standard I/O

Interface 6

Page 44: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 43

9 Explain Peripheral Component

Interconnect (PCI) Bus

6

10 Explain Universal Serial Bus (USB)

6

V

UNIT-V

CO5

1 Describe Basic memory circuits 4

2 Explain briefly about Memory

System Considerations

6

3 Explain various types of ROM 4

4

Illustrate various Cache

Memory: Mapping Functions

with examples

4

5 Discuss about interleaving 2

6

Discuss various Secondary

Storage devices -Magnetic Hard

Disks, Optical Disks

8

VI

UNIT-VI

CO6

1 Explain how to Perform An

Arithmetic Or Logic Operation

6

2 Describe about Fetching a Word from Memory

4

3 Describe Execution of Complete

Instruction

4

4 Explain Hardwired Control 6

5 Explain Micro programmed

Control: Microinstructions

6

6 Explain Micro program Sequencing

6

7

Explain Wide Branch

Addressing Microinstructions

with next –Address Field

6

Question-Papers html

7. http://www.khitguntur.ac.in/cse.php#cseqp.php

8. http://www.manaresults.co.in/download.php?subcode=RT22054 Recommended books

1. Computer Organization- Carl Hamcher, ZvonkoVranesic McGraw

Hill 5th Edition.

2. Computer Organization and Design - David A Patterson, John N Hennessy, Morgan Kaufmann Publishers 5th Edition .

Prepared By

Ms. S. Sri Lakshmi Parvathi, Assistant professor,

Dept. of CSE, KHIT.

Page 45: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 44

Course Title Formal Languages and Automata Theory

Course Code C212

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

4 - - 3

Course Coordinator Mr. B. Satyanarayana Reddy / Mr. K. Kranthi Kumar

Module Coordinator Mr. B. Satyanarayana Reddy

Course Coordinator E-mail ID

[email protected]

Course Coordinator

Availability

Pre-requisites

Courses Fundamentals of discrete mathematics

Course Description:

The course introduces some fundamental concepts in automata theory and

formal languages including grammar, finite automaton, regular expression,

formal language, pushdown automaton, and Turing machine. Not only do they form basic models of computation, they are also the foundation of

many branches of computer science, e.g. compilers, software engineering,

concurrent systems, etc. The properties of these models will be studied and various rigorous techniques for analyzing and comparing them will be

discussed, by using both formalism and examples

Overview of learning activities: 9. Lecture and Class Discussions.

10. Assignment work.

11. Tutorial/Quiz sessions 12. Power Point Presentations

Course Assessment Method:

Sessional Marks

University End-

Exam

Marks

Total

Marks

Descriptive + Quiz + Assignment

= 15 + 10 + 5 = 30 Marks

70 100 Mid Term

Max Marks-15 Online Quiz

Max Marks-10 Assignment

Max Marks-05

Mid-1 Mid-2 Quiz-

1

Quiz-

2

Assign-

1

Assign-2

15 15 10 10 5 5

COURSE OBJECTIVES

Introduce the student to the concepts of Theory of computation in

computer science.

The students should acquire insights into the relationship among

formal languages, formal Grammars and automata.

Page 46: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 45

COURSE OUTCOMES (COs)

Upon Completion of the course, the students will be able to have CO 1: Explain the model of various finite automata and design them.

CO2: Discuss about Regular expressions, finite automata, regular

grammars and equivalence among them.

CO3: Classify Grammars and describe about Context Free Grammars. CO4: Discuss about Push down automata.

CO5: Design Turing machines.

CO6: Explain computability theory. Overview of learning resources:

Prescribed & Suggested Text Books

3. Introduction to Automata Theory, Languages and Computation, J.E.Hopcroft, R.Motwani and J.D.Ullman, 3rd Edition, Pearson,

2008.

4. Theory of Computer Science - Automata,Languages and Computation, K.L.P.Mishra and N.Chandrasekharan, 3rd Edition,

PHI, 2007.

Reference Books

1. Formal Language and AutomataTheory, K.V.N.Sunitha and N.Kalyani, pearson, 2015.

2. Introduction to Automata Theory, Formal Languages and

Computation, Shyamalendu Kandar, Pearson, 2013. 3. Theory of Computation, V.Kulkarni, Oxford University Press, 2013.

4. Theory of Automata, Languages and Computation, Rajendra

Kumar, McGraw Hill, 2014. Freely Accessible Internet Sites

1. http://nptel.ac.in/courses/106106049/

2. https://www.slideshare.net/marinasantini1/automata-45326059 Overview of assessment:

Internal Test. Quiz

Assignments. University Exams.

VERIFIED BY

Course Coordinator

Module Coordinator

Program Coordinator

HOD

Mr.B.Satyanarayan

a Reddy

Mr.B.Satyanarayan

a Reddy

Mr.N.Md.Jubai

r Basha

Dr.K.Venkat

a Subba

Reddy

SYLLABUS

UNIT – I: Finite Automata

Why Study Automata Theory? The Central Concepts of Automata Theory,

Automation, Finite Automation, Transition Systems, Acceptance of a String by a Finite Automation, DFA, Design of DFAs, NFA, Design of NFA,

Equivalence of DFA and NFA, Conversion of NFA into DFA, Finite Automata

with E-Transition, Minimization of Finite Automata, Mealy and Moore Machines, Applications and Limitation of Finite Automata.

Page 47: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 46

UNIT – II: Regular Expressions

Regular Expressions, Regular Sets, Identity Rules, Equivalence of two Regular Expressions, Manipulations of Regular Expressions, Finite

Automata, and Regular Expressions, Inter Conversion, Equivalence between

Finite Automata and Regular Expressions, Pumping Lemma, Closers

Properties, Applications of Regular Expressions, Finite Automata and Regular Grammars, Regular Expressions and Regular Grammars.

UNIT – III: Context Free Grammars Formal Languages, Grammars, Classification of Grammars, Chomsky

Hierarchy Theorem, Context Free Grammar, Leftmost and Rightmost

Derivations, Parse Trees, Ambiguous Grammars, Simplification of Context Free Grammars-Elimination of Useless Symbols, EProductions and Unit

Productions, Normal Forms for Context Free Grammars-Chomsky Normal

Form and Greibach Normal Form, Pumping Lemma, Closure Properties, Applications of Context Free Grammars.

UNIT – IV: Pushdown Automata

Pushdown Automata, Definition, Model, Graphical Notation, Instantaneous Description Language Acceptance of pushdown Automata, Design of

Pushdown Automata, Deterministic and Non – Deterministic Pushdown

Automata, Equivalence of Pushdown Automata and Context Free Grammars Conversion, Two Stack Pushdown Automata, Application of Pushdown

Automata.

UNIT – V: Turing Machine

Turing Machine, Definition, Model, Representation of Turing Machines-

Instantaneous Descriptions, Transition Tables and Transition Diagrams, Language of a Turing Machine, Design of Turing Machines, Techniques for

Turing Machine Construction, Types of Turing Machines, Church’s Thesis,

Universal Turing Machine, Restricted Turing Machine.

UNIT – VI: Computability

Decidable and Un-decidable Problems, Halting Problem of Turing Machines,

Post’s Correspondence Problem, Modified Post’s Correspondence Problem, Classes of P and NP, NPHard and NP-Complete Problems.

TEXT BOOKS: 1. Introduction to Automata Theory, Languages and Computation,

J.E.Hopcroft, R.Motwani and J.D.Ullman, 3rd Edition, Pearson,

2008. 2. Theory of Computer Science-Automata, Languages and

Computation, K.L.P.Mishra and N.Chandrasekharan, 3rd Edition,

PHI, 2007. REFERENCES:

3. Formal Language and Automata Theory, K.V.N.Sunitha and

N.Kalyani, Pearson, 2015.

4. Introduction to Automata Theory, Formal Languages and Computation, Shyamalendu Kandar, Pearson, 2013.

5. Theory of Computation, V.Kulkarni, Oxford University Press, 2013.

Page 48: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 47

6. Theory of Automata, Languages and Computation, Rajendra

Kumar, McGraw Hill, 2014.

Mapping of COs with Pos

LESSON PLAN

S. No. Title No of Classes

Required

Total

I

UNIT – I: Finite Automata

Why Study Automata Theory? The Central Concepts of

Automata Theory, Automation

1

1

5

Finite Automation, Transition Systems, Acceptance of

a String by a Finite Automation

1

DFA, Design of DFAs 2

NFA, Design of NFA 1

Equivalence of DFA and DFA 2

Conversion of NFA into DFA 1

Finite Automata with E-Transition 2

Minimization of Finite Automata 2

Course Outcomes

PO

1

PO

2

PO

3

PO

4

PO

5

PO

6

PO

7

PO

8

PO

9

PO

1

0

PO

1

1

PO

1

2

PSO

1

PSO

2

PSO

3

CO1: Explain the

model of various finite

automata and design them.

2

3

3

1

2

CO2: Discuss

about Regular expressions, finite

automata,

regular grammars

and equivalence among

them.

2

3

3

1

2

CO3: Classify Grammars and

describe about

Context Free Grammars.

2

3

3

1

2

CO4: Discuss about

Push down automata.

2

3

3

1

2

CO5: Design

Turing machines.

2 3 3 1 2

CO6: Explain computability

theory.

2 3 3 1 2

AVG 2 3 3 1 2

Page 49: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 48

Mealy and Moore Machines 2

Applications and Limitation of Finite Automata. 1

II

UNIT – II: Regular Expressions

Regular Expressions, Regular Sets 2

1

1

Identity Rules, Equivalence of two Regular Expressions 1

Manipulations of Regular Expressions,

Inter Conversion, Equivalence between Finite Automata and Regular

Expressions,

3

Pumping Lemma, Closure Properties, Applications of

Regular Expressions,

2

Finite Automata and Regular Grammars, 2

Regular Expressions and Regular Grammars. 1

III

UNIT – III: Context Free Grammars

Formal Languages, Grammars,

Classification of Grammars,

Chomsky Hierarchy Theorem

1

9 Context Free Grammar, Leftmost and Rightmost Derivations,

Parse Trees, Ambiguous Grammars

1

Simplification of Context Free Grammars-Elimination of Useless

Symbols, EProductions and Unit Productions

3

Normal Forms for Context Free Grammars-Chomsky

Normal Form and Greibach Normal Form

3

Pumping Lemma, Closure Properties, Applications of

Context Free Grammars.

1

IV

UNIT – IV: Pushdown Automata

Pushdown Automata, Definition, Model, Graphical

Notation, Instantaneous Description Language Acceptance of

pushdown Automata

2

9

Design of Pushdown Automata, 2

QUESTION BANK

Unit

No.

Q. N

o

Questions

Blooms

Taxonomy Level

Course

Outcome

1 Define finite automaton? Enumerate various applications of finite automata.

2

Page 50: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 49

2 Define DFA? Design the DFA for the following

i) L={w/w has both an even number of 0’s and an

even number of 1’s} ii) That accepts the word only aa over Σ = {a, b}.

iii) (a+b) (a+b)*

iv) L1={ x/x ends with 01 } v) The number of b’s are divisible by 3.

9

3 Design a DFA equivalent for the NFA given in the

following

table:

9

NPTEL http://www.nptel.iitm.ac.in/downloads/106106049/

Question-Papers html

1. http://www.khitguntur.ac.in/cse.php#cseqp.php Recommended books

1. A Text Book on Automata Theory, Nasir S.F.B, P.K. Srimani,

Cambridge university Press. 2. Introduction to Automata Theory, Formal languages and

computation, Shamalendu kandar, Pearson

Prepared by

Mr. B. Satyanarayana Reddy,

Professor,

Dept. of CSE, KHIT

Page 51: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 50

Course Title Principles of Programming Languages

Course Code C214

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

4 - - 4

Course Coordinator Mr. Ch. Samsonu

Module Coordinator Dr Umar Khan

Course Coordinator

Mobile Number +91-9849268278

Course Coordinator

E-mail ID [email protected]

Course Coordinator

Availability

Wednesday: 1:00 pm to 2:00 PM

Friday: 1:00 pm to 2:00 PM

Pre-Requisites of

the Course

C Programming, C++ and Java

COURSE DESCRIPTION:

This course surveys the range of programming paradigms in current use, including imperative, functional, object-oriented, database and

concurrent paradigms. Students learn the relative strengths and

weaknesses of the different styles, and are able to apply this knowledge to choose the right paradigm for a particular programming task. The

emphasis is on individual written justifications, supported by technical

knowledge.

OVERVIEW OF LEARNING ACTIVITIES:

1. Lecture and Class Discussions. 2. Assignment work.

3. Tutorial/Quiz sessions

4. Power Point Presentations

COURSE ASSESSMENT METHOD:

Session Marks

University

End-Exam

Marks

Total Marks

Descriptive+Objective+Assignment =15+10+5=30 Marks

70 100 Mid Term Max Marks-15

Online Quiz Max Marks-10

Assignment Max Marks-05

Mid-1 Mid-2 Quiz-

1

Quiz-

2

Assign

-1

Assign

-2

15 15 10 10 5 5

Page 52: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 51

COURSE OBJECTIVES:

1. To understand and describe syntax and semantics of programming languages.

2. To understand data, data types, and basic statements

3. To understand call-return architecture and ways of

implementing them 4. To understand object-orientation, concurrency, and event

handling in programming languages

5. To develop programs in non-procedural programming paradigms

COURSE OUTCOMES:

CO1:Describe syntax and semantics of programming languages. CO2:Explain, analyze data, data types, and basic statements of

programming languages.

CO3:Design and implement subprogram constructs. CO4:Apply object - oriented, concurrency, and event handling

programming constructs.

CO5:Develop programs in Scheme, LISP and ML. CO6:Develop programs in logic programming and Prolog.

OVERVIEW OF LEARNING RESOURSES:

TEXT BOOKS:

Prescribed & Suggested Text Books

1. Robert W. Sebesta, “Concepts of Programming Languages”, Tenth Edition, Addison Wesley, 2012.

2. Programming Langugaes, Principles & Paradigms, 2ed, Allen B

Tucker, Robert E Noonan, TMH.

REFERENCE BOOKS: 3. R. Kent Dybvig, “The Scheme programming language”, Fourth Edition,

MIT Press, 2009.

4. Jeffrey D. Ullman, “Elements of ML programming”, Second Edition,

Prentice Hall, 1998

5. Richard A. O'Keefe, “The craft of Prolog”, MIT Press, 2009.

6. W. F. Clocksin and C. S. Mellish, “Programming in Prolog: Using the

ISO Standard”, Fifth Edition, Springer, 2003

Freely Accessible Internet Sites

• https://en.wikipedia.org/wiki/Programming_language

• http://nptel.ac.in/courses/106102067/

OVERVIEW OF ASSESSMENT: Internal Test. Quiz Assignments. University Exams.

Page 53: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 52

VERIFIED BY

Course Coordinator

Module Coordinator

Program Coordinator

HOD

Ch Samsonu Dr.Umarkhan Mr.N.Md.Jubair Basha

Dr.K.Venkata Subba Reddy

SYLLABUS

OBJECTIVES:

To understand and describe syntax and semantics of programming

languages

To understand data, data types, and basic statements

To understand call-return architecture and ways of implementing them

To understand object-orientation, concurrency, and event handling in

programming languages To develop programs in non-procedural programming paradigms

UNIT -I: SYNTAX AND SEMANTICS Evolution of programming languages, describing syntax, context, free

grammars, attribute grammars, describing semantics, lexical analysis,

parsing, recursive - decent bottom - up parsing. UNIT II: DATA, DATA TYPES, AND BASIC STATEMENTS

Names, variables, binding, type checking, scope, scope rules, lifetime and

garbage collection, primitive data types, strings, array types, associative

arrays, record types, union types, pointers and references, Arithmetic expressions, overloaded operators, type conversions, relational and boolean

expressions , assignment statements , mixed mode assignments, control

structures – selection, iterations, branching, guarded Statements. UNIT III: SUBPROGRAMS AND IMPLEMENTATIONS

Subprograms, design issues, local referencing, parameter passing,

overloaded methods, generic methods, design issues for functions, semantics of call and return, implementing simple subprograms, stack and

dynamic local variables, nested subprograms, blocks, dynamic scoping

UNIT IV: OBJECT- ORIENTATION, CONCURRENCY, AND EVENT HANDLING

Object – orientation, design issues for OOP languages, implementation of

object, oriented constructs, concurrency, semaphores, Monitors, message passing, threads, statement level concurrency, exception handling, event

handling.

UNIT V: FUNCTIONAL PROGRAMMING LANGUAGES

Introduction to lambda calculus, fundamentals of functional programming languages, Programming with Scheme, – Programming with ML,

UNIT VI: LOGIC PROGRAMMING LANGUAGES

Introduction to logic and logic programming, – Programming with Prolog,

Page 54: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 53

multi - paradigm languages

OUTCOMES: 6. To describe syntax and semantics of programming languages

7. To explain data, data types, and basic statements of programming

languages

8. To design and implement subprogram constructs, Apply object - oriented,concurrency, and event handling programming constructs

9. Develop programs in Scheme, ML, and Prolog

10. Understand and adopt new programming languages

TEXT BOOKS:

1. Robert W. Sebesta, “Concepts of Programming Languages”, Tenth Edition, Addison Wesley, 2012.

2. Programming Langugaes, Principles & Paradigms, 2ed, Allen B

Tucker, Robert ENoonan, TMH REFERENCE BOOKS:

1. R. Kent Dybvig, “The Scheme programming language”, Fourth

Edition, MIT Press, 2009.

2. Jeffrey D. Ullman, “Elements of ML programming”, Second Edition, Prentice Hall, 1998. Richard A. O'Keefe, “The craft of Prolog”, MIT

Press, 2009.

3. W. F. Clocksin and C. S. Mellish, “Programming in Prolog: Using the ISO Standard”, Fifth Edition, Springer, 2003

Mapping of COs with POs

Course Outcomes

PO

1

PO

2

PO

3

PO

4

PO

5

PO

6

PO

7

PO

8

PO

9

PO

1

0

PO

1

1

PO

1

2

PS

O

1

PS

O

2

PS

O

3

CO1:Describe syntax

and semantics of

programming languages.

3 1 2 2 2

CO2:Explain, analyze

data, data types, and

basic statements of programming

languages.

3 2 1 2 2 2

CO3:Design and implement

subprogram

constructs.

3 2 3 2 1 1 1

CO4:Apply object - oriented, concurrency,

and event handling

programming constructs.

3 2 3 2 2 1 2

CO5:Develop

programs in Scheme, LISP and ML.

3 2 1 2 2 1

Page 55: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 54

LESSON PLAN

S.NO UNIT NO Topics to be Covered No.of

Periods Total

UNIT-I

SYNTAX AND SEMANTICS

10

1 Evolution of programming

languages 1

2 describing syntax 2

3 Context Free Grammars 1

4 Attribute grammars 1

5 describing semantics 1

6 Lexical analysis 1

7 Parsing 1

8 recursive – decent parsing 1

9 bottom - up parsing 1

10

UNIT-II

Names, variables 1

13

11 binding, type checking 1

12 scope, scope rules 1

13 lifetime and garbage collection 1

14 primitive data types 1

15 Strings, array types, associative

arrays 1

16 record types, union types 1

17 pointers and references,

Arithmetic expressions 1

18 overloaded operators, type

conversions, 1

19 relational and Boolean

expressions, assignment

statements

1

20 mixed mode assignments 1

21 control structures – selection 1

22 iterations, branching, guarded

Statements 1

UNIT-III

SUBPROGRAMS AND

IMPLEMENTATIONS

08

23 Subprograms, design issues 1

24 local referencing, parameter passing

1

25 overloaded methods, generic

methods 1

26 design issues for functions, semantics of call and return

1

CO6:Develop

programs in logic

programming and Prolog.

3 2 1 2 2 1

Page 56: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 55

27 implementing simple

subprograms 1

28 stack and dynamic local variables, nested subprograms

2

29 Blocks and dynamic scoping 1

30

UNIT-IV

Object – orientation 1

13

31 design issues for OOP

languages 1

32 implementation of object

oriented constructs 1

33 Concurrency, Semaphores 2

34 Monitors, message passing 2

35 Threads, statement level concurrency

2

36 exception handling 2

37 Event handling 2

UNIT-V

FUNCTIONAL PROGRAMMING

LANGUAGES

08

38 Introduction to lambda

calculus, 2

39 fundamentals of functional programming languages

2

40 Programming with Scheme 2

41 Programming with ML 2

UNIT VI

LOGIC PROGRAMMING LANGUAGES

08 42 Introduction to logic and logic

programming 2

43 Programming with Prolog 3

44 Multi - paradigm languages 3

Total No. of Periods 60

QUESTION BANK

Uni

t No.

Sl.

No. Questions

Bloom’s

Taxonomy level

Mapped

with CO

I

1. Explain how is the order of

evaluation of attributes determined for the tree of a given grammar

4

CO1 2. Discuss in detail about the attribute

grammars 8

3. What is attribute grammar? Give 2

Page 57: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 56

the syntax directed definition for a

desktop calculator.

4. Compare and contrast between the special purpose and general

purpose programming languages

1

5. Explain about lexical analysis. 3

6. Write short notes on context free grammar.

9

7. Give an example of left recursive

rule in CFG. What is the

significance of left Recursive rule?

2

8. How do you describe the meanings

of programs using dynamic

semantics?

1

9. With a neat diagram, explain the structure of LR parser and also

discuss the merits and demerits of

LR parsers.

2

II

1. What is a variable? What are the

attributes of a variable? Elaborate

on address of a variable.

2

CO2

2. Explain in detail about overloaded operators.

4

3. Explain the conditional statements

and its implementation with examples.

4

4. Explain the scope and lifetime of

variables. Illustrate when they

would coincide and when they don’t.

2

5. Explain various primitive data types

with suitable examples. 3

6. Discuss about type-checking and control structures?

7

7. Explain in detail arrays, indices,

subscript bindings, and array categories.

4

8. Define unconditional branching.

What are the problems with

unconditional branching?

2

9. Explain about the pretest and

posttest loop statements with an

example.

2

III

1 Define a function. What are the

design issues for functions? Explain 4

CO3 2 Explain how subprogram is

overloaded? Give examples. 4

3 Explain how subprograms names

are passed as parameters. 4

Page 58: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 57

4. Define sub program. What are the

distinct categories of Subprograms? 4

5. Define a subprogram. Write the semantics of call and return of a

subprogram

7

6. Discuss about nested subprograms with examples.

8

7.

Discuss how generic methods are

implemented with suitable

examples.

4

8. Explain the importance of dynamic

scoping with an example. 3

9.

Explain about the Overloaded

subprograms and Generic subprograms.

3

IV

1.

Define a Thread. How are threads

different from processes? Explain java threads with examples.

2

CO4

2.

Define monitor. Explain how

cooperation synchronization and

competition synchronization are implemented using monitors.

2

3.

How message passing is

implemented in Ada? Explain with examples.

4

4.

What is an event? How the events

are handled in various OOP

languages.

3

5.

Compare and contrast the

cooperation synchronization and

competition synchronization in message passing.

6

6. Explain the basic concepts of

exception handling. 2

7. Discuss the design issues of Exception Handling.

6

8. Explain in detail abstract data types

in java with examples. 4

9. Write about Constructors and Destructors in C++.

5

V

1. Explain the principles of ML? 2

CO5

2. Explain about fundamentals of

FPL? 4

3. Explain about scheme functional

programming language. 4

4. Discuss how Haskell differs from

ML 8

5. Give comparison of Functional and

Imperative Languages. 3

Page 59: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 58

6. Explain the control structure of a

PROLOG program. 2

7. How ML is different from other functional programming languages?

2

8. Why were imperative features added

to most dialects of LISP? 4

VI

1. Explain about Logic programming.

3

CO6

2. Discuss in brief about the Basic

elements of Prolog. 8

3. Discuss about basic elements of

Prolog. 6

4.

Explain different types of

propositions present in logic programming.

4

5.

Explain how RDBMS and expert

systems are helped using logic programming.

5

6. Discuss Terms and Goal statements

in Prolog with examples 4

7

How PROLOG is different from other logic programming languages? Give

an example for each feature.

2

8 Explain Prolog interfacing process. 4

9.

Write a Prolog program that implements quick sort.

8

Question Papers HTML:

https://files.jntufastupdates.com/download/principles-of

programming-languages-april-2019/

FREELY ACCESSIBLE INTERNET SITES:

1. https://lecturenotes.in/subject/126/principles-of-programming-

languages-ppl 2. https://www.iare.ac.in/sites/default/files/PPT/PPL_ppt%27s_5un

its_2016-17_0.pdf

NPTEL

1. http://nptel.ac.in/courses/106102067/

2. http://nptel.ac.in/courses/106102067/25

3. http://www.nptel.ac.in/courses/106102067/40 RECOMMENDED BOOKS

1. R. Kent Dybvig, “The Scheme programming language”, Fourth Edition, MIT Press, 2009.

2. Jeffrey D. Ullman, “Elements of ML programming”, Second Edition, Prentice Hall, 1998.

3. Richard A. O'Keefe, “The craft of Prolog”, MIT Press, 2009. 4. W. F. Clocksin and C. S. Mellish, “Programming in Prolog:

Using the ISO Standard”, Fifth Edition, Springer, 2003

Prepared by

Chukka Samsonu, Associate Professor-CSE Dept, KHIT

Page 60: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 59

Course Title Advanced Data Structures Lab

Course Code C215

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

3 - - 2

Course Coordinator Mr.B.Ramakrishna

Module Coordinator Mr.Ch.Samson

Course Coordinator

Mobile Number +91-9290046742

Course Coordinator

E-mail ID

[email protected]

Course Coordinator

Availability

Wednesday: 10:00 Am to 12:30 PM

Friday: 11:00AM to 12:30 PM

Pre-Requisites of the Course

Data Structures Lab

COURSE DESCRIPTION:

Fundamental Data Structures and Advanced Data Structures are very

important concepts for many programming languages to implement most of

the real time applications in the world. In this course some advanced data structured are introduced to make students as developers for real time

applications using advanced data structures.

COURSE OBJECTIVES:

1. To understand heap and various tree structures like AVL, Red-black, B and Segment trees.

2. To understand the problems such as line segment intersection,

convex shell and Voronoi diagram.

COURSE OUTCOMES:

CO-1: Implement various operations on AVL trees.

CO-2: Implement various operations on Binary Heap.

CO-3: design the solutions with Prim’s algorithm and

Krushkal’s algorithm.

CO-4: develop the solutions with Dijkstra’s algorithm CO-5: solve the problems with Hashing techniques.

CO-6: develop the solutions with Huffmann coding and B-Trees

concepts. VERIFIED BY

Course Coordinator

Module Coordinator

Program Coordinator

HOD

Mr.B.Ramakrishna Mr.Ch.Samson Mr.N.Md.Jubair Basha

Dr.K.Venkata Subba Reddy

Page 61: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 60

ADVANCED DATA STRUCTURES LAB

List of Programs: 1. To perform various operations i.e., insertions and deletions on AVL trees.

2. To implement operations on binary heap.

i) Vertex insertion

ii) Vertex deletion iii) Finding vertex

iv) Edge addition and deletion

3. To implement Prim’s algorithm to generate a min-cost spanning tree. 4. To implement Krushkal’s algorithm to generate a min-cost spanning tree.

5. To implement Dijkstra’s algorithm to find shortest path in the graph.

6.To implementation of Static Hashing (Use Linear probing for collision resolution)

7. To implement of Huffmann coding.

8. To implement of B-tree. OUTCOMES:

• Implement heap and various tree structure like AVL, Red-black, B and

Segment trees

• Solve the problems such as line segment intersection, convex shell and Voronoi diagram Project, Management, Software Project Management

activities, Challenges in software projects, Stakeholders, Objectives & goals

Project Planning: Step-wise planning, Project Scope, Project Products & deliverables, Project activities, Effort estimation, Infrastructure

Mapping of COs with POs

Prepared by

Mr.B.Ramakrishna, Asst.Professor-CSE Dept, KHIT

Course

Outcomes PO

-1

PO

-2

PO

-3

PO

-4

PO

-5

PO

-6

PO

-7

PO

-8

PO

-9

PO

-10

PO

-11

PO

-12

PS0-1

PS0-2

PS0-3

CO-1: Implement

various operations

on AVL trees.

1 1 2 2 3 3 1 2

CO-2: Implement

various operations

on Binary Heap.

1 2 2 1 3 3 1 2

CO-3: design the

solutions with

Prim’s algorithm and Krushkal’s

algorithm.

1 1 2 2 3 3 1 2

CO-4: develop the

solutions with

Dijkstra’s algorithm.

1 1 2 2 3 3 1 2

CO-5: solve the problems with Hashing techniques.

1 1 2 2 3 3 1 2

CO-6: develop the solutions with Huffmann coding and B-Trees concepts.

1 2 2 1 3 3 1 2

Page 62: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 61

Course Title Java Programming Lab

Course Code C216

Regulation R-16 JNTUK

Course Structure Lectures Tutorials Practicals Credits

- - 3 2

Course Coordinator Mr. P.Lakshmikanth

Module Coordinator Dr.MD. Umar Khan

Course Coordinator

Mobile Number +91-9885022246

Course Coordinator

E-mail ID [email protected]

Course Coordinator

Availability

Wednesday: 10:00 Am to 12:30 PM

Friday: 11:00AM to 12:30 PM

Pre-Requisites of

the Course C Programming and CPP Programming.

Aim of Course:

The course will introduce students to object oriented programming using

Java. It assumes that students know the basics of scalar types (integers,

stings, and booleans) and fundamental control structures in procedural programming (loops, assignment statements, conditional expressions). It will

focus on more sophisticated features such as design of classes, interfaces,

packages and APIs. It also covered concepts like multithreading and

IOStreams in Java. It will finally include the Java Graphical user interfaces using Applets, AWT, Swings and Event Handling mechanism.

Objectives of Course: At the end of this lab, the learner will be able to:

1. Focus on object oriented concepts and java program structure and its installation (JDK 1.6) Introduction to OOP.

2. Comprehension of java programming constructs, control structures in

Java Programming Constructs. 3. Implementing Object oriented constructs such as various class

hierarchies, interfaces and exception handling.

4. Understanding of Thread concepts and I/O in Java.

5. Being able to build dynamic user interfaces using applets and Event handling in java.

6. Understanding of various components of Java AWT and Swing and

writing code snippets using them Abstract Window Toolkit.

Course Outcomes:

Page 63: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 62

1. Able to write and execute simple java programs.

2. Able to implement programs using classes with different class elements, create objects and also develop logics using control

structures.

3. Able to develop programs by using inheritance, packages (creation,

importing) and also exception handling. 4. Able to implement the programs on multithreading and also

IOStreams in java.

5. Able to design user interfaces using Applet and also handle the events using event handling mechanism.

6. Able to design user interfaces using Abstract Window Toolkit, Swing

(classes & interfaces) and also differentiate both.

Syllabus:

List of Experiments (Sixteen experiments to be done)

Exercise

No PROGRAM NAME

1

Exercise - 1 (Basics)

a). Write a JAVA program to display default value of all primitive data type of JAVA

b). Write a java program that display the roots of a quadratic

equation ax2+bx=0. Calculate the discriminate D and basing on value of D, describe the nature of root.

c). Five Bikers Compete in a race such that they drive at a

constant speed which may or may not be the same as the other. To qualify the race, the speed of a racer must be more than the

average speed of all 5 racers. Take as input the speed of each

racer and print back the speed of qualifying racers. d) Write a case study on public static void main(250 words)

2

Exercise - 2 (Operations, Expressions, Control-flow, Strings)

a). Write a JAVA program to search for an element in a given list of elements using binary search mechanism.

b). Write a JAVA program to sort for an element in a given list of

elements using bubble sort (c). Write a JAVA program to sort for an element in a given list of

elements using merge sort.

(d) Write a JAVA program using StringBufferto delete, remove character.

3

Exercise - 3 (Class, Objects)

a). Write a JAVA program to implement class mechanism. – Create a class, methods and invoke them inside main method.

b). Write a JAVA program to implement constructor.

c).Write a JAVA program Illustrating Multiple catch clauses

Page 64: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 63

4

Exercise - 4 (Methods)

a). Write a JAVA program to implement constructor overloading.

b). Write a JAVA program implement method overloading.

5

Exercise - 5 (Inheritance)

a). Write a JAVA program to implement Single Inheritance b). Write a JAVA program to implement multi level Inheritance

c). Write a java program for abstract class to find areas of

different shapes

6

Exercise - 6 (Inheritance - Continued)

a). Write a JAVA program give example for “super” keyword.

b). Write a JAVA program to implement Interface. What kind of Inheritance can be achieved?

7

Exercise - 7 (Exception) a).Write a JAVA program that describes exception handling

mechanism

b).Write a JAVA program Illustrating Multiple catch clauses

8

Exercise – 8 (Runtime Polymorphism)

a). Write a JAVA program that implements Runtime

polymorphism b). Write a Case study on run time polymorphism, inheritance

that implements in above problem

9

Exercise – 9 (User defined Exception)

a). Write a JAVA program for creation of Illustrating throw b). Write a JAVA program for creation of Illustrating finally

c). Write a JAVA program for creation of Java Built-in Exceptions

d).Write a JAVA program for creation of User Defined Exception

10

Exercise – 10 (Threads)

a). Write a JAVA program that creates threads by extending

Thread class .First thread display

“Good Morning “every 1 sec, the second thread displays “Hello “every 2 seconds and the

third display “Welcome” every 3 seconds ,(Repeat the same by

implementing Runnable) b). Write a program illustrating isAlive() and join ()

c). Write a Program illustrating Daemon Threads.

11

Exercise - 11 (Threads continuity)

a).Write a JAVA program Producer Consumer Problem

b).Write a case study on thread Synchronization after solving the

above producer consumer problem

12

Exercise – 12 (Packages)

a). Write a JAVA program illustrate class path b). Write a case study on including in class path in your os

environment of your package.

c). Write a JAVA program that import and use the defined your

Page 65: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 64

package in the previous Problem

13

Exercise - 13 (Applet)

a).Write a JAVA program to paint like paint brush in applet. b) Write a JAVA program to display analog clock using Applet.

c). Write a JAVA program to create different shapes and fill colors

using Applet.

14

Exercise - 14 (Event Handling)

a).Write a JAVA program that display the x and y position of the

cursor movement using Mouse.

b).Write a JAVA program that identifies key-up key-down event user entering text in a Applet.

15

Exercise - 15 (Swings) a).Write a JAVA program to build a Calculator in Swings

b). Write a JAVA program to display the digital watch in swing

tutorial.

16

Exercise – 16 (Swings - Continued)

a). Write a JAVA program that to create a single ball bouncing

inside a JPanel. b). Write a JAVA program JTree as displaying a real tree upside

down.

Mapping of COs with POs

After the completion of the above laboratory student able to

Course

Outcomes PO

1

PO

2

PO

3

PO

4

PO

5

PO

6

PO

7

PO

8

PO

9

PO

10

PO

11

PO

12

PSO

1

PSO

2

PSO

3

CO1: Write

and execute simple java

programs.

3 1 3 3 3 1 3

CO2: Implement

programs

using classes with different

class

elements, create

objects and

also develop

logics using control

structures.

3 2 3 3 3 3 1 3

Page 66: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 65

VERIFIED BY

Course Coordinator

Module Coordinator

Program Coordinator

HOD

Mr. P.Lakshmikanth

Dr. MD.Umar Khan

Mr.N.Md.Jubair Basha

Dr.K.Venkata Subba Reddy

CO3:

Develop

programs by using

inheritance,

packages and

exception

handling.

3 1 3 3 3 3 1 3

CO4:

Implement

the programs

on multithreadi

ng and also

IOStreams in java.

3 1 3 3 3 3 1 3

CO5: Design

user interfaces

using Applet

and also

handle the events using

event

handling mechanism.

3 1 3 3 3 3 1 3

CO6: Design

user interfaces

using

Abstract

Window Toolkit,

Swing

(classes & interfaces)

and also

differentiate both.

3 1 3 3 3 3 1 3

AVG 3 1.1

6

3 3 3 3 1 3

Page 67: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 66

Equipments & Software required:

Software: i. JDK1.6

Hardware Configuration:

1. RAM - 2GB 2. HDD - 500GB

3. Processor - Intel I3

References: 1. The complete Reference Java, 8th edition, Herbert Schildt, TMH.

2. Programming in JAVA, Sachin Malhotra, SaurabhChoudary, Oxford.

3. Introduction to java programming, 7th edition by Y Daniel Liang, Pearson. E-Learning materials:

1. https://www.geeksforgeeks.org/java-tutorials/

2. https://www.tutorialspoint.com/java/index.htm 3. https://www.w3schools.com/java/

4. https://www.javatpoint.com/java-tutorial

5. https://www.guru99.com/java-tutorial.html

Pre-cautions: 1. Care should be taken while executing the experiment

2. Loose connections must be avoided

3. Students should inform the Lab-in charge in the case of any hardware

problems

Prepared by

Mr. P. Lakshmikanth, Assistant Professor, CSE Dept, KHIT

Page 68: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 67

NON-PROGRAMMING LABORATORY COURSES ASSESSMENT

GUIDELINES

The number of experiments in each laboratory course shall be as per the

curriculum in the scheme of instructions provided by JNTUK. Mostly the

number of experiments is 10 in each laboratory course under semester

scheme. The students will maintain a separate note book for observations in

each laboratory course.

In each session the students will conduct the allotted experiment and

enter the data in the observation table. The students will then complete the

calculations and obtain the results. The course coordinator will certify the

results in the same session. The students will submit the record in the next

class. The evaluation will be continuous and not cycle-wise or at semester

end.

The internal marks of 25 are awarded in the following manner:

Laboratory record - Maximum Marks 15

Test and Viva Voce- Maximum Marks 10

Laboratory Record: Each experimental record is evaluated for a score of 50.

The rubric parameters are as follows:

Write up format - Maximum Score 15

Experimentation Observations & Calculations - Maximum Score 20

Results and Graphs - Maximum Score 10

Discussion of results - Maximum Score 5

While (a), (c) and (d) are assessed at the time of record submission,(b) is

assessed during the session based on the observations and calculations.

Hence if a student is absent for an experiment but completes it in another

session and subsequently submits the record, it shall be evaluated for a

score of 30 and not 50. The 15 marks of laboratory record will be scaled

down from the TOTAL of the assessment sheet.

The test and viva voce will be scored for 10 marks as follows:

Internal Test - 6 marks

Viva Voce/Quiz - 4 marks

The assessment of each experiment is recorded in the following format for

every student.

Exp.

No.

Title

of the

Exp

Date

conducted

Date

submitted

Observations

and

Calculations

(20)

Write

up

(15)

Results

and

Graphs

(10)

Discussion of

Results (5)

Total

(50)

1

2

3

Total

Avg.(Total/No of experiments conducted as per curriculum)

Scaled down to 15 marks(Avg./50 * 15)

Page 69: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 68

PROGRAMMING LABORATORY COURSES ASSESSMENT GUIDELINES

The number of experiments/programs/sessions in each laboratory

course shall be as per the curriculum in the scheme of instructions

provided by JNTUK.

The students will maintain a separate note book for each laboratory

course in which all the related work would be done. In each session the

students will complete the assigned tasks of process development, coding,

compiling, debugging, linking and executing the programs. The students will

then execute the programme and validate it by obtaining the correct output

for the provided input. The course coordinator will certify the validation in

the same session.

The students will submit the record in the next class. The evaluation

will be continuous and not cycle- wise or at semester end.

The internal marks of 25 are awarded in the following manner:

Laboratory record - Maximum Marks 15

Test and Viva Voce - Maximum Marks 10

Laboratory Record: Each experimental record is evaluated for a score of 50.

Write up format - Maximum Score 20

Process development and coding - Maximum Score 10

Compile, debug, link and execute program -Maximum Score 15

Process validation through input-output - Maximum Score 5

While (a) is assessed at the time of record submission, (b), (c) and (d) are

assessed during the session based on the performance of the student in the

laboratory session. Hence if a student is absent for any laboratory session

but completes the program in another session and subsequently submits

the record, it shall be evaluated for a score of 20 and not 50.

The 15 marks of laboratory record will be scaled down from the TOTAL of

the assessment sheet.

The test and viva voce will be scored for 10 marks as follows:

Internal Test - 6 marks

Viva Voce / Quiz - 4 marks

The assessment of each experiment is recorded in the following format for

every student.

The rubric parameters are as follows:

Exp.

No.

Title of

the

Exp

Date

conducted

Date

submitted

Process

Development

and coding

(10)

Compilati

on,Debugging,

Linking and

Executing

(Max 15)

Process

Validation

(Max 5)

Write up

format

(Max20)

Total

Score

(Max

50)

1

2

Total

Page 70: Computer Science & Engineering II B.Tech. - II Semester ...

II-II Course Handout-R16 A.Y:2019-20

Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 69

Page 71: Computer Science & Engineering II B.Tech. - II Semester ...

Powered by TCPDF (www.tcpdf.org)Powered by TCPDF (www.tcpdf.org)