computer science & engineering ii b.tech. - ii semester
TRANSCRIPT
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
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
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.
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.
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
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
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
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
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
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
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.
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
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
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
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
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
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
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.
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
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.
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
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
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
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
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
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
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
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
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:
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
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-
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
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
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
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
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
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
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
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
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)
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
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
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
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
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.
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
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.
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.
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.
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
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
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
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
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.
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,
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
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
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
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
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
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
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
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
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
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:
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
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
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
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
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
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)
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
II-II Course Handout-R16 A.Y:2019-20
Department of CSE, Kallam Haranadhareddy Institute of Technology, Guntur Page 69
Powered by TCPDF (www.tcpdf.org)Powered by TCPDF (www.tcpdf.org)