Upload
others
View
11
Download
0
Embed Size (px)
Citation preview
Department of
Computer Science & Engineering
II B.Tech. - II Semester
Course Handouts (2017 – 18)
Name of the student
Roll No.
Kallam Haranadhareddy Institute of Technology NH-5, Chowdavaram, Guntur-522 019
Approved by AICTE, New Delhi; Affiliated to JNTUK, Kakinada) Accredited by NAAC with ‘A’ Grade & An ISO 9001:2015 Certified Institution
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur
Department of Computer Science
II B.Tech
Course
Kallam Haranadhareddy Institute of Technology
NH-5, Chowdavaram, Guntur
Approved by AICTE, New Delhi; Affiliated to JNTUK, Kakinada)
Accredited by NAAC with ‘A’ Grade & An ISO
E, Kallam Haranadhareddy Institute of Technology, Guntur - 19
Department of Computer Science & Engineering
I B.Tech - II Semester
Course Handouts (2017 – 18)
Kallam Haranadhareddy Institute of Technology
5, Chowdavaram, Guntur-522 019
Approved by AICTE, New Delhi; Affiliated to JNTUK, Kakinada)
Accredited by NAAC with ‘A’ Grade & An ISO 9001:2015 Certified Institution
Engineering
Approved by AICTE, New Delhi; Affiliated to JNTUK, Kakinada)
9001:2015 Certified Institution
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19
INDEX
S.No Description Page No
1 College Vision & Mission 1
2 Department Vision & Mission 1
3 Program Educational Objectives (PEOs) 1
4 Graduate Attributes (GAs) 1
5 Program Outcomes (POs) 2
6 Program Specific Outcomes (PSOs) 2
7 JNTUK Academic Calendar 3
8 Department Academic Process Calendar 4
9 Course Structure 5
10 Evaluation Pattern 5
11 Quality of Internal Question Papers and Assignment Questions 6
12 Timetable 7
13 Full Details of All Theory & Lab Courses as per Course Structure
Theory: SE, JAVA, ADS, CO, FLAT, PPL
Labs: ADS, JAVA
8
14 Programming Laboratory Courses Assessment Guidelines 55
15 Laboratory Course Evaluation Rubrics 56
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 1
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 standard.
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:
Imparting 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 computational global real time
challenges.
CSE Mission:
To impart quality technical education through training in fundamentals of theoretical
computer science.
To educate students to be life-long learners and successful leaders who contributes to
economic growth of the nation.
To develop ethical values in students to lead the life with good human values.
PROGRAM EDUCATIONAL OBJECTIVES (PEOs)
PEO 1 Graduates shall effectively apply their engineering knowledge for analysis of real
computing problems and design, implementation of solutions.
PEO 2
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
PEO 3 Graduates shall continue to enhance technical skills through lifelong learning,
exhibit social and ethical responsibilities and effective communication skills
PEO 4 Graduates shall be employed in software and hardware industries or pursue higher
studies or become entrepreneurs
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
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 2
ix. Individual & Team work
x. Communication
xi. Lifelong Learning
xii.Project management & Finance
PROGRAM OUTCOMES (POs)
PO 1: Engineering knowledge: Apply the knowledge of mathematics, science, engineering
fundamentals, and an engineering specialization to the solution of complex engineering
problems.
PO 2: Problem analysis: Identify, formulate, review research literature, and analyze
complex engineering problems reaching substantiated conclusions using first principles of
mathematics, natural sciences, and engineering sciences.
PO 3: Design/development of solutions: Design solutions for complex engineering
problems and design system components or processes that meet the specified needs with
appropriate consideration for the public health and safety, and the cultural, societal, and
environmental considerations.
PO 4: Conduct investigations of complex problems: Use research-based knowledge and
research methods including design of experiments, analysis and interpretation of data, and
synthesis of the information to provide valid conclusions.
PO 5: Modern tool usage: Create, select, and apply appropriate techniques, resources, and
modern engineering and IT tools including prediction and modeling to complex engineering
activities with an understanding of the limitations.
PO 6: The engineer and society: Apply reasoning informed by the contextual knowledge
to assess societal, health, safety, legal and cultural issues and the consequent responsibilities
relevant to the professional engineering practice.
PO 7: Environment and sustainability: Understand the impact of the professional
engineering solutions in societal and environmental contexts, and demonstrate the
knowledge of, and need for sustainable development.
PO 8: Ethics: Apply ethical principles and commit to professional ethics and
responsibilities and norms of the engineering practice.
PO 9: Individual and team work: Function effectively as an individual, and as a member
or leader in diverse teams, and in multidisciplinary settings.
PO 10: Communication: Communicate effectively on complex engineering activities with
the engineering community and with society at large, such as, being able to comprehend and
write effective reports and design documentation, make effective presentations, and give and
receive clear instructions.
PO 11: Project management and finance: Demonstrate knowledge and understanding
of the engineering and management principles and apply these to one’s own work, as a
member and leader in a team, to manage projects and in multidisciplinary environments.
PO 12: Life-long learning: Recognize the need for, and have the preparation and ability
to engage in independent and life-long learning in the broadest context of technological
change
PROGRAM SPECIFIC OUTCOMES (PSOs)
PSO 1: The CSE graduates will be able to use programming methodologies to solve
problems by suitable open source softwares.
PSO 2: The CSE graduates will be able to interpret the fundamental concepts, functionality
of hardware and software aspects of computer systems.
PSO 3: The CSE graduates will be able to implement software engineering practices and
methodologies for the analysis, design, development, operation & maintenance of software.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 3
JNTUK Academic Calendar for II B.Tech 2016 Batch
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 4
KALLAM HARANADHAREDDY INSTITUTE OF TECHNOLOGY COMPUTER SCIENCE & ENGINEERING DEPARTMENT
B.Tech II - IV YEAR II Semester– ACADEMIC CALENDAR 2017-18
SNO Event / Activity Scheduled Date
1 Commencement of Class work 20-11-2017
2 Submission of List of Students not reported up to 21-12 -2017 22-12-2017
3 Submission of attendance up to 31-12-2017 04-01-2018
4 Assignment – I Submission Date 05-01-2018
5 Mid-1 ( Online & Descriptive) B.Tech II & III Year 15-01-2018 to 20-01-2018
6 Distribution of Corrected Scripts of Mid Test- I and Online Entry
of Mid-1 Marks ( B.Tech II, III Year) 23-01-2018
7 Mid-1 ( Online & Descriptive) B.Tech IV Year 22-01-2018 to 27-01-2018
8 Distribution of Corrected Scripts of Mid Test- I and Online Entry of Mid-1 Marks ( B.Tech IV Year)
31-01-2018
9 Submission of attendance up to 31-01-2018 05-02-2018
10 Meeting / counseling with parents of students having less than
65% of aggregate attendance 13-02-2018 to 15-02-2018
11 Submission of attendance up to 28-02-2018 05-03-2018
12 Issue of Progress Report and meeting with parents of
underperforming students of II, III and IV years 13-03-2018 to 15-03-2018
13 Feedback 26-03-2018 to 28-03-2018
14 Mid-2 ( Online & Descriptive) B.Tech II & III Year 19-03-2018 to 24-03-2018
15 Submission of Final Attendance Statements 21-03-2018
16 Display of Class Test II Marks, Final Attendance and Detention
List 23-03-2018
17 Last Date of Instruction (B.Tech II & III Year) 24-03-2018
18 Mid-2 ( Online & Descriptive) B.Tech IV Year 26-03-2018 to 31-03-2018
19 Commencement of Practical Examination( B.Tech II & III Year) 26-03-2018 to 31-03-2018
20 Commencement of Theory Examinations ( B.Tech II & III Year) 02-04-2018 to 14-04-2018
21 Commencement of Theory Examinations ( B.Tech IV Year) 09-04-2018 to 21-04-2018
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 5
B.TECH. COMPUTERSCIENCE AND ENGINEERING II Year II Semester
COURSE STRUCTURE
S.No Subject Code Subject T P C
1 C209 Software Engineering 4 - 3
2 C210 Java Programming 4 - 3
3 C211 Advanced Data Structure 4 - 3
4 C212 Computer Organization 4 - 3
5 C213 Formal Languages and Automata Theory 4 - 3
6 C214 Principles of Programming Languages 4 - 3
7 C215 Advanced Data Structures Lab - 3 2
8 C216 Java Programming Lab - 3 2
TOTAL CREDITS 22
EVALUATION PATTERN
Distribution and weightage 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.
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 tests. The weightage of
internal marks for 30 consists of Descriptive - 15, Assignment – 05, Objective – 10
(Conducted at College level with 20 multiple choice question with a weightage of
1/2Mark each). The objective examination is for 20 minutes duration. The subjective
examination is for 90 minutes duration conducted for 15 marks. 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. 80% for the best of two and 20% for the other will be taken for
internal marks. As the syllabus is framed for 6 units, the 1st 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 70
marks. Part - A contains a mandatory question (Brainstorming / Thought provoking/
case study) for 14 marks. 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 14 marks
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 10 marks
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
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 6
internal evaluation (20 marks for day to day work and 10 marks for internal test) and
70 marks 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. 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 taxanomy 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 taxanomy 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 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%.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 7
TIME TABLE
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 8
Course Title: Software Engineering
Sub Code : C209
Contact Hours per week : 3(L) + 1(T)
Course Coordinator : Mrs. P. Nagalakshmi
Course Advisor (if any) : Mrs. P. Nagalakshmi
Module Coordinator : Mr. V Rajiv Jetson
Course coordinator phone : 9666073198
Course coordinator e-mail : lakshmip29.gmail.com
Course coordinator location : Room No.: 2S-01
Course Coordinator availability : Monday 10.00am – 11.00am
Thursday 4:00pm - 5:00pm
Resource link: :
Pre-requisite Courses : Computer programming
Course Description:
In this course students will learn about the fundamentals of software engineering, process
models, requirement analysis and specifications, function- oriented design, coding, testing
software reliability and maintenance.
Overview of learning activities:
1. Lecture and Class Discussions.
2. Assignment work.
3. Tutorial/Quiz sessions
4. Power Point Presentations
Overview of learning resources: Prescribed & Suggested Text Books
1. Software Engineering -A Practitioner’s Approach, Roger S. Pressman, Seventh
Edition, McGrawHill International Edition.
2. Fundamentals of Software Engineering, Rajib Mall, Third Edition, PHI.
3. Software Engineering, Ian Sommerville, Ninth edition, Pearson education.
Software Links:
1. http://nptel.ac.in/downloads/106105087/
2. http://www.nptel.ac.in/courses/Webcoursecontents/IIT%20Kharagpur/Soft%20
Engg/New_index1.html.
3. http://engineeringppt.blogspot.in/2011/12/software-engineering-pressman-ppt-
pdf.html
Overview of assessment: Internal Test.
Quiz
Assignments.
University Exams
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.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 9
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 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.
TEXT BOOKS:
1. Software engineering A practitioner’s Approach, Roger S. Pressman, Seventh Edition
McGrawHill International Edition.
2. Fundamentals of Software Engineering, Rajib Mall, Third Edition, PHI.
3. Software Engineering, Ian Sommerville, Ninth edition, Pearson education.
REFERENCE BOOKS:
1. Software Engineering : A Primer, Waman S Jawadekar, Tata McGraw-Hill, 2008
2. Software Engineering, A Precise Approach, Pankaj Jalote, Wiley India, 2010.
3. Software Engineering, Principles and Practices, Deepak Jain, Oxford University Press.
4. Software Engineering1: Abstraction and modeling,Diner Bjorner, Springer International
edition, 2006.
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.
To understand the implementation issues, validation and verification procedures.
To understand the maintenance of software
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 10
COURSE OUTCOMES (COs):
1. Discuss about process and various process models in software development.
2. Describe requirements analysis, specifications and design process.
3. Explain Function oriented design and user interface design
4. Verify and Validate a software using various testing techniques.
5. Discuss about Software reliability and quality management concepts.
6. Explain about Software maintenance and reuse concepts.
Mapping of COs with POs, PSOs:
LESSON PLAN
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
PS
O3
CO1: Discuss about
process and various
process models in
software
development.
2 3 3
CO2:Describe
requirements
analysis,
specifications and
design process.
2 3 3 3 3
CO3:Explain
Function oriented
design and user
interface design.
2 2 3 3 3
CO4:Verify and
Validate a software
using various testing
techniques.
2 1 3 2 3
CO5: Discuss about
Software reliability
and quality
management
concepts.
2 1 3 3
CO6: Explain about
Software
maintenance and
reuse concepts.
2 3 1 3
S. No. Title
No of
Classes
Required
Total
I
Introduction to software and software engineering 1
The Nature of Software, The Unique Nature of WebApps 2
Software Engineering, Software Process, Software Engineering Practice,
Software Myths.
3
Process Models: A Generic Process Model, Process Assessment and 2
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 11
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
Improvement 13
Prescriptive Process Models, Specialized Process Models, The Unified
Process, Personal and Team Process Models
3
Process Terminology, Product and Process 2
II
Requirements Analysis And Specification: Requirements Gathering and
Analysis,
2
10
Software Requirement Specification (SRS), Formal System
specification.
2
Software Design:Overview of the Design Process, How to characterize
of a design
2
Cohesion and Coupling Approaches to Software Design 2
Layered Arrangement of Modules 2
III
Function-Oriented Software Design: Overview of SA/SD Methodology,
Structured Analysis,
2
12
Developing the DFD Model of a System, Structured Design, Detailed
Design,
2
Design Review, over view of Object Oriented design. 2
User Interface Design: Characteristics of Good User Interface, Basic
Concepts,
2
Types of User Interfaces, Fundamentals of Component-based GUI
Development,
2
A User Interface Design Methodology 2
IV
Coding And Testing: Coding, Code Review, 2
13
Software Documentation, Testing, Unit Testing, Black-Box Testing,
White-Box Testing, Debugging,
4
Program Analysis Tool, Integration Testing, 2
Testing Object-Oriented Programs, 2
System Testing, Some General Issues Associated with Testing 3
V
Software Reliability And Quality Management: Software Reliability,
Statistical Testing,
3
16
Software Quality, Software Quality Management System, 2
ISO 9000, SEI Capability Maturity Model. 2
Computer Aided Software Engineering: Case and its Scope, Case
Environment, Case Support in Software Life Cycle,
4
Other Characteristics of Case Tools, Towards Second Generation CASE
Tool,
3
Architecture of a Case Environment 2
VI
Software Maintenance: Software maintenance, Maintenance Process
Models,
3
10
Maintenance Cost, Software Configuration Management. 3
Software Reuse: what can be Reused? Why almost No Reuse So Far? 2
Basic Issues in Reuse Approach, Reuse at Organization Level. 2
TOTAL: 74
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 12
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
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 respect to
software? 4 CO4
5 Explain general issues associated with Testing 3 CO4
6 Explain Integration testing 4 CO4
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 13
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
E-learning materials:
Question-Papers html
1. http://www.khitguntur.ac.in/cse.php#cseqp.php
Prepared by
Mrs. P Nagalakshmi
Assistant Professor, CSE
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 14
Course Title: Java Programming
Sub Code : C210
Contact Hours per week : 3(L) + 1(T)
Course Coordinator : Dr. MD. UMAR KHAN
Course Advisor (if any) : Dr. MD. UMAR KHAN
Module Coordinator : Dr. MD. UMAR KHAN
Course coordinator phone : 9440012145
Course coordinator e-mail : [email protected]
Course coordinator location : Room No.: 2S-01
Course Coordinator availability : Monday 3:00pm - 4:00pm
Friday 11.00am – 12.00pm
Resource link: :
Pre-requisites Courses : C, C++
Course Description:
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. Upon completion students should be able to
design, code, test, and debug JAVA language programs.
Overview of learning activities:
1. Lecture and Class Discussions.
2. Assignment work.
3. Tutorial/Quiz sessions
4. Power Point Presentations
Overview of learning resources: Prescribed & Suggested 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. Freely Accessible Internet Sites
1. https://www.slideshare.net/VeerabadraBadra/introduction-to-java-9266993
2. http://www.nptelvideos.com/java/java_video_lectures_tutorials.php
3. http://www.iitk.ac.in/esc101/08Jul/notes.html
4. https://lecturenotes.in/subject/73/java-programming
Computer Software
jdk-7-windows-i586
jdk-1_5_0_05-windows-i586-p
Overview of assessment: Internal Test.
Quiz
Assignments.
University Exams.
SYLLABUS
UNIT-I:Introduction to OOP, procedural programming language and object oriented language,
principles of OOP, applications of OOP, history of java, java features, JVM, program structure.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 15
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, 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, 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, userdefined exceptions, Assertions.
UNIT-IV: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: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: introduction, components and containers, Button, Label, Checkbox,
Radio Buttons, List Boxes, Choice Boxes, Container class, Layouts, Menu and Scrollbar.
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.
COURSE OBJECTIVES:
1. Understanding the OOP’s concepts, classes and objects, threads, files, applets, swings
and act.
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 an
middleware development
COURSE OUTCOMES (COs):
CO1:Discuss the Object oriented programming and fundamentals of Java programming
language.
CO2:Describe and Use classes, objects, constructors in Java programming language.
CO3: Explain about various types of Inheritance and exceptional handling mechanism.
CO4: Illustrate about multithreading and use I/O files concepts in java language.
CO5:Develop applets by using event handling mechanisms.
CO6:Discuss and develop applications using Abstract Window Toolkit concepts.
Mapping of COs with POs, PSOs:
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
PS
O3
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 16
LESSON PLAN
Unit/To
pic No.
Topic Name No of
Classes
Requir
ed
I UNIT-I
1.1 Introduction to OOP 1
1.2 procedural programming language and object oriented language 1
1.3 Principles of OOP
of OOP
1
1.4 applications of OOP, history of java 1
1.5 java features 1
1.6 JVM, program structure 1
1.7 Variables, primitive data types 1
1.8 identifiers, literals 1
1.9 Operators 2
1.10 expressions, precedence rules and associativity
associativity
1
1.11 primitive type conversion and casting 1
1.12 flow of control 2
II UNIT-II
2.1 Classes and objects, class declaration 1
2.2 creating objects 1
2.3 Creating methods 1
2.4 Creating constructors 1
2.5 Constructor overloading 1
CO1 Discuss the Object
oriented programming
and fundamentals of
Java programming
language.
3 2 3 1
CO2:Describe and Use
classes, objects,
Constructors in Java
programming
language..
2 1 1 2 2 3 1
CO3: Explain about
various types of
Inheritance and
exceptional handling
mechanism.
3 2 1 1 3 1
CO4: Illustrate about
multithreading and use
I/O files concepts in
java language.
2 1 1 3 1
CO5:Develop applets
by using event handling
mechanisms.
3 2 3 2 3 2
CO6:Discuss and
develop applications
using Abstract Window
Toolkit concepts.
3 2 3 2 3 2
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 17
2.6 garbage collector, importance of static keyword 1
2.7 Examples 2
2.8 this keyword, arrays, 1
2.9 command line arguments 1
2.10 nested classes
1
III UNIT-III
3.1 Inheritance, 1
3.2 types of inheritance 1
3.3 super keyword, examples 1
3.4 final keyword, examples 1
3.5 overriding and abstract class 1
3.6 Interfaces, 1
3.7 creating the packages, using packages 1
3.8 importance of CLASSPATH 1
3.9 java.lang package
package.
3
3.10 Exception handling 1
3.11 importance of try, catch, throw, throws and finally block 1
3.12 Userdefined exceptions, Assertions 1
IV UNIT-IV
4.1 Multithreading: introduction 1
4.2 thread life cycle, 1
4.3 creation of threads 2
4.4 thread priorities, thread synchronization 2
4.5 communication between threads 2
4.6 Reading data from files and writing data to files 1
4.7 random access file, 1
V UNIT-V
5.1 Applet class, 2
5.2 Applet structure, 1
5.3 Applet life cycle, 1
5.4 sample Applet programs 2
5.5 Event handling: event delegation model 1
5.6 sources of event 1
5.7 Event Listeners 1
5.8 adapter classes 1
5.9 inner classes 1
VI UNIT-VI
6.1 AWT: introduction, 2
6.2 components and containers 1
6.3 Button, Label, Checkbox 2
6.4 Radio Buttons 1
6.5 List Boxes, Choice Boxes, 2
6.6 Container class, 1
6.7 Layouts, 1
6.8 Menu and Scrollbar 2
TOTAL 70
QUESTION BANK
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 18
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 object destruction?
Justify your answer
2 CO2
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 3 CO4
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 19
and character streams? How are they used to capture input
from the user?
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
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
Recommended books
1. The complete Reference Java, 8th edition, Herbert Schildt, TMH
2. Introduction to java programming, 7th edition by Y Daniel Liang, Pearson.
Prepared by
Dr. MD. Umarkhan
Professor, CSE
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 20
Course Title: Advanced Data Structures
Sub Code : C211
Contact Hours per week : 3(L) + 1(T)
Course Coordinator : Mr. B. Satyanarayana Reddy
Course Advisor (if any) : Mr. B. Satyanarayana Reddy
Module Coordinator : Mr. P. Laxmikanth
Course coordinator phone : 9963585097
Course coordinator e-mail : [email protected]
Course coordinator location : Room No.: 2S-01
Course Coordinator availability : Wednesday 4.00pm - 5.00pm
Thursday 4.00pm - 5.00pm
Resource link: :
Pre-requisites Courses : C Programming, Data Structures
Course Description:
The course included some concepts belongs to Data structures like Trees, External Sorting
techniques etc. and also introduces more advanced concepts of Data structures like Hash tables,
directories, AVL Trees, Heaps, Binomial Queues, Red-Black Trees, Tries and some concepts
regarding files and operations on files. In Computer Science, Data structures play a vital role.
After completion of this course, students will be able to design and develop applications using
advanced data structures.
Overview of learning activities:
1. Lecture and Class Discussions.
2. Assignment work.
3. Tutorial/Quiz sessions
4. Power Point Presentations
Overview of learning resources: Prescribed & Suggested Text Books
1. Data Structures, a Pseudocode Approach, Richard F Gilberg, Behrouz A. Forouzan,
Cengage
2. Fundamentals of Data Structures in C++, Ellis Horowitz, Sartaj Sahni and Dinesh
Mehta, 2nd Edition, Universities Press (India) Pvt. Ltd
3. Data structures and Algorithm Analysis in C++, 2nd Edition, Mark Allen Weiss,
Pearson. Reference 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 Freely Accessible Internet Sites
1. https://www.slideshare.net/shakil0304003/advanced-data-structure Computer Software
1. LINUX or TURBO C
Overview of assessment:
Internal Test.
Quiz
Assignments.
University Exams
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 21
SYLLABUS
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
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- 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- ixed-Stride Tries-Variable-Stride Tries.
TEXT BOOKS:
1. Data Structures, a Pseudocode Approach, Richard F Gilberg, Behrouz A Forouzan, Cengage
2. Fundamentals of Data Structures in C++, Ellis Horowitz, Sartaj Sahni and Dinesh Mehta,
2nd Edition, Universities Press (India) Pvt. Ltd
3. Data structures and Algorithm Analysis in C++, 2nd Edition, Mark Allen Weiss, Pearson
REFERENCES:
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
Course 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.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 22
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.
Course Outcomes:
1) Describe various external sorting techniques.The student will be familiar with
advanced data structures such as hash tables.
2) Identify the use of hash table data structure.
3) Discuss about priority queues such as heaps, binomial queues.
4) Explain about efficient binary search trees such as AVL Trees, RED-BLACK Trees.
5) Illustrate about multi-way search tree and its applications.
6) Discuss about digital search trees and their applications.
MAPPING OF COs WITH POs, PSOs:
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
PS
O3
CO1: Describe various external
sorting
techniques.
3 2 3 2 2 2 3
CO2: Identify the
use of hash table
data structure.
3 2 3 2 2 2 2
CO3:Discuss
about priority
queues such as
heaps, binomial
queues.
3 2 3 2 2 2
CO4: Explain about efficient
binary search trees
such as AVL
Trees, RED-
BLACK Trees.
3 2 3 2 2 2
CO5: Illustrate about multi-way
search tree and its
applications.
3 2 3 2 2 2
CO6: Discuss
about digital
search trees and
their applications.
3 3 2 2 2 3
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 23
LESSON PLAN
S. No. Title
No of
Classes
Required
Total
I
UNIT-I: SORTING
External Sorting- Introduction 1
10 K-way Merging 2
Buffer Handling for parallel Operation 2
Run Generation 2
Optimal Merging of Runs. 2
TUTORIAL-1 1
II
UNIT-II: HASHING
Introduction- 1
11
Static Hashing- Hash Table 1
Hash Functions- Secure Hash Function 1
Overflow Handling 2
Theoretical Evaluation of Overflow Techniques, 1
Dynamic Hashing- Motivation for Dynamic Hashing 1
Dynamic Hashing Using Directories 2
Directory less Dynamic Hashing, 1
TUTORIAL-2 1
III
UNIT-III: PRIORITY QUEUES (HEAPS)
Model, Simple Implementation, 1
10
Binary Heap-Structure Property-Heap-Order Property 1
Basic Heap Operations- Other Heap Operation 2
Applications of Priority Queues- The Selection Problem Event
Simulation Problem
1
Binomial Queues- Binomial Queue Structure 1
Binomial Queue Operation 2
Implementation of Binomial Queues 1
TUTORIAL-3 1
IV
UNIT-IV: EFFICIENT BINARY SEARCH TREES
Optimal Binary Search Trees, 1
11
AVL Trees, 3
Red-Black Trees, Definition- Representation of a Red- Black Tree- 1
Searching a Red-Black Tree- 1
Inserting into a Red Black Tree- 1
Deletion from Red-Black Tree- 1
Joining Red-Black Trees, 1
Splitting a Red-Black tree. 1
TUTORIAL-4 1
V
UNIT-V: MULTIWAY SEARCH TREES
M-Way Search Trees, Definition and Properties 1
12
Searching an M-Way Search Tree, 1
B-Trees, Definition and Properties, Number of Elements in a B-
tree
1
Insertion into B-Tree 2
Deletion from a B-Tree 2
B+-Tree Definition, Insertion into B+-tree 2
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 24
QUESTION BANK
Unit No.
Q. No
Questions
Blooms
Taxonomy
Level
Course Outcome
I
1 Explain the difference between external
sorting and internal sorting
7
CO1
2 Describe the process of K-way merging
of the given sorted runs with an example.
4
3 What is the need of buffers in external
sorting? Discuss about buffer handling.
4
4 Illustrate the run generation methods
with suitable examples.
6
5 Explain the process of optimal merging
of runs
4
II
1 Define hashing. Explain different types
of hash functions.
4
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
2 List and explain the basic binary heap 4
Searching a B+-Tree- , Deletion from a B+-Tree. 2
TUTORIAL-5 1
VI
UNIT-VI: DIGITAL SEARCH STRUCTURES
Digital Search Trees, Definition 1
15
Search, Insert and Delete 1
Binary tries and Patricia, Binary Tries, Compressed Binary Tries-
Patricia,
2
Multiway Tries- Definitions- Searching a Trie 1
Sampling Strategies- Insertion into a Trie- Deletion from a Trie 2
Keys with Different Length- Height of a Trie 1
Space Required and Alternative Node Structure- Prefix Search and
Applications
1
Compressed Tries- Compressed Tries With Skip Fields 1
Compressed Tries With Labeled Edges, Space Required by a
Compressed Tries, Tries
1
Internet Packet Forwarding ,- IP Routing 1
1-Bit Tries- fixed-Stride Tries-Variable-Stride Tries. 2
TUTORIAL-6 1
TOTAL 69
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 25
operations.
CO3
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 Explain about the operations on binomial
queues.
4
6 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
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 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
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 26
E-learning materials
NPTEL
http://www.nptelvideos.com/computer_science/datastructures_algorithms.php
Question-Papers html
1. http://www.khitguntur.ac.in/cse.php#cseqp.php
Recommended books
1. Data Structures using C by Reema Thareja,Second Edition, OXFORD University
Press
2. Data Structures and Algorithms, Concepts, Techniques and Applications by GAV
PAI, McGrawHill Edition.
Prepared by
Mr. B. Satyanarayana Reddy,
Professor, Dept. of CSE, KHIT
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 27
Course Title: Computer Organization
Sub Code : C212
Contact Hours per week : 3(L) + 1(T)
Course Coordinator : Mr. B.SRIKANTH
Course Advisor (if any) : Mr. B.SRIKANTH
Module Coordinator : Mr. B.SRIKANTH
Course coordinator phone : 9963480304
Course coordinator e-mail : srikanth.busa @gmail.com
Course coordinator location : Room No.: 2S-01
Course Coordinator availability : Saturday 4:00pm - 5:00pm
Friday 3.00pm – 4.00pm
Resource link: :
Pre-requisites Courses : Mathematics
Course Description:
The course should stress the hierarchical structure of a computer. It should incorporate 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:
1. Lecture and Class Discussions.
2. Assignment work.
3. Tutorial/Quiz sessions
4. Power Point Presentations
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
3) Fundamentals or Computer Organization and Design, - Sivaraama Dandamudi Springer
Int. Edition.
4) “Computer Organization and Design: The Hardware/Software Interface” by David A.
5) Patterson and John L. Hennessy.
6) J .P. Hayes, "Computer Architecture and Organization", McGraw-Hill, 1998. Freely Accessible Internet Sites
https://www.tutorialspoint.com/computer_organization/index.asp
SYLLABUS
UNIT -I:Basic Structure Of Computers: Functional unit, Basic Operational concepts, Bus
structures, System Software, Performance, The history of computer development.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 28
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)
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.
5. J .P. Hayes, "Computer Architecture and Organization", McGraw-Hill, 1998.
COURSE OBJECTIVES:
Understand the architecture of a modern computer with its various processing units.
Also the Performance measurement of the computer system.
In addition to this the memory management system of computer.
COURSE OUTCOMES (COs):
CO1: Express a view of computer system from user’s perspective and 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.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 29
Mapping of COs with POs,PSOs:
LESSON PLAN
Unit/To
pic No.
Topic Name No of
Classes
Require
d
I UNIT-I 8
1.1 Basic Structure Of Computers: Introduction 2
1.2 Functional unit 1
1.3 Basic Operational concepts 1
1.4 Bus structures 1
1.5 System Software 1
1.6 Performance 1
1.7 The history of computer development 1
II UNIT-II 14
2.1 Machine Instruction and Programs: Introduction 1
2.2 Instruction and Instruction Sequencing: 1
2.3 Register Transfer Notation 1
2.4 Assembly Language
Notation
1
2.5 Basic Instruction Types 2
2.6 Addressing Modes 2
2.7 Basic Input/output Operations 1
2.8 The role of Stacks and Queues in computer
programming equation
1
2.9 Component of Instructions: 1
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
PS
O3
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
CO6: Discuss about
Micro programmed
Control and Processing
Unit.
3 3 3
AVG 2.83 1.5 3 3
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 30
2.10 Logic Instructions 2
2.11 shift and Rotate Instructions 1
III UNIT-III 8
3.1 Type of Instructions: Introduction 1
3.2 Arithmetic and Logic Instructions 2
3.3 Branch Instructions 2
3.4 Addressing Modes, 2
3.5 Input/output Operations 1
IV UNIT-IV
4.1 INPUT/OUTPUT ORGANIZATION: Introduction 1 12
4.2 Accessing I/O Devices 1
4.3 Interrupts: Interrupt Hardware 1
4.4 Enabling and Disabling Interrupts 1
4.5 Handling Multiple Devices 1
4.6 Direct Memory Access 1
4.7 Buses: Synchronous Bus 1
4.8 Asynchronous Bus 1
4.9 Interface Circuits 1
4.10
.4.11
Standard I/O Interface: 1
4.11 Peripheral Component Interconnect (PCI) Bus 1
4.12 Universal Serial Bus (USB) 1
V UNIT-V 14
5.1 The MEMORY SYSTEMS: Introduction 2
5.2 Basic memory circuits 1
5.3 Memory System Consideration 1
5.4 Read- Only Memory: ROM 2
5.5 PROM 1
5.6 EPROM 1
5.7 EEPROM 1
5.8 Flash Memory 1
5.9 Cache Memories: Mapping Functions 1
5.10 INTERLEAVING 1
5.11 Secondary Storage: Magnetic Hard Disks 1
5.12 Optical Disks 1
VI UNIT-VI 10
6.1 Processing Unit: Introduction 1
6.2 Fundamental Concepts: Register Transfers 2
6.3 Performing An Arithmetic Or Logic Operation 1
6.4 Fetching a Word from Memory 1
6.5 Execution of Complete Instruction 1
6.6 Hardwired Control 1
6.7 Micro programmed Control: Microinstructions 1
6.8 Micro program Sequencing 1
6.9 Wide Branch Addressing Microinstructions with next –
Address Field
1
TOTAL
66
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 31
QUESTION BANK
Unit
No. SL.No. Questions
Bloom’s
Taxonomy
level
Mapped
with CO
I
1 Explain different functional units of a digital com
puter with neat sketch.
4
CO1
2 Discuss the advantages, disadvantages, and
applications of i) Excess – 3 code ii) Gray Code
(Illustrate with one example each)
6
3 Perform the following:
i) (110.101) 2= ( )10 ii) (1.10101)2= ( )10
iii) (11010.1)2= ( )10 iv) 110.10 x 10.1
8
4 Discuss various generations of computer with the
technological features and devices that
characterized each generation.
2
5 What is a bus? Explain single bus and multiple bus
structure used to interconnect functional units in
the computer system.
4
6 Distinguish between error detection and error
correction. Explain with an example how
Hamming code is used for error detection.
7
7 Describe basic operational concepts of computer in
detail
3
8 “Parity checking can be used for error detection” –
Justify your answer with an example.
6
9 With the help of a block diagram, explain the
process of addition/subtraction using two’s
complement number
4
10 Describe about the Fixed point representation of
numbers with an example
3
II
1 Explain memory reference instructions with an
example each.
3
CO2
2 Write short note on i) BUN ii) BSA iii)ISZ 3
3 Distinguish between circular shift and arithmetic
shift with proper example.
7
4 Explain the design of accumulator logic. 3
5 Explain the following with respect to logic micro
operations i) Selective Set ii) Selective
Complement
iii) Selective Clear iv) Mask
3
6 Explain various computer instruction formats with
neat sketches
2
7 Explain the following with neat sketches
i) 4 – bit Binary adder ii) Binary Adder -
Subtractor
4
8 Explain various phases of instruction cycle with an
Example
4
9 Draw the block diagram of arithmetic logic shift u
nit and explain its operations
4
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 32
10 Explain the instruction cycle with an example 3
III
1 What do you mean by addressing mode? Explain
the following addressing modes with examples.
i) Index addressing mode ii) Relative addressing
mode
4
CO3
2 Explain clearly the three types of CPU
organizations with examples
3
3 Distinguish the characteristics of RISC and CISC 4
4 Explain the three basic types of data manipulation
instructions.
4
5 Draw and explain the micro-programmed control
unit.
2
6 Explain various types of interrupts in detail. 3
7 Explain how registers are connected to common
bus in the computer with a neat diagram.
3
8 What do you mean by addressing mode? Explain
the following addressing modes with examples.
i)Direct Addressing Mode
ii) Immediate Addressing Mode
3
9 What do you mean by Addressing modes?
Explain the following addressing modes:
i) Immediate Addressing mode
ii) ii)Direct Addressing mode
3
10 Compare the hard wired control unit and micro
programmed control unit
7
IV
1 Perform floating point addition using the numbers
0.5 and 0.4375 use the floating point addition
algorithm.
6
CO4
2 Explain the multiplication of positive numbers
using array multiplier with a neat sketch.
4
3 Given signed decimal number +86 and -17.
Perform (using 8 – bit representation)
i) 2’s complement Addition
ii) 2’s complement Subtraction
6
4 Explain the steps for Floating Point Multiplication
with neat diagram and suitable example.
3
5 Perform the restoring division for the binary
numbers 1010 and 11. Draw the circuit
arrangement for binary division.
6
6 What are the steps involved in the addition of 2’s
complement notation. Explain with an example.
4
7 Explain subtraction of binary numbers in one’s
complement notation with examples.
4
8 Perform the following:
i) (110.101) 2= ( )10 ii) (1.10101)2= ( )10
ii) 1010.01 x 11.1 iv) 110.10 x 10.1
6
9 Show the step by step multiplication process using
Booth algorithm when the following binary
numbers are multiplied (+15) * (-13). Assume 5-
bit registers that hold signed numbers and draw the
flow chart for the corresponding example
4
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 33
10 Draw the flow chart for division algorithm 3
V
1 What is virtual memory? With the help of neat
sketch explain the method of virtual to physical
address translation.
3
CO5
2 Explain the READ and WRITE operations in
Associative Memory
3
3 Draw a neat block diagram of memory hierarchy
in a computer system. Compare the parameters
size, speed and cost per bit in the hierarchy.
3
4 Explain ROM and RAM with respect to their
block diagrams
4
5 A computer system has a MM capacity of a total
of 1M 16 bits words. It also has a 4K words cache
organized in the block set associative manner, with
4 blocks per set & 64 words per block. Calculate
the number of bits in each of the TAG, SET &
WORD fields of MM address format.
6
6 Explain the following
i) Memory management using segmentation
ii) Memory management using paging
4
7 Explain the following mapping techniques used
for cache mapping:
i) Associative mapping cache ii)Direct mapping
cache
iii) Block-set-associative mapping cache
4
8 Write short note on
i) Magnetic Disks ii) Magnetic tapes
2
9 Compare and contrast between Asynchronous
DRAM and Synchronous DRAM.
7
10 What is cache memory? Explain the different
mapping
Functions
3
VI
1 Draw the block diagram of a DMA controller and
explain its functioning?
3
CO6
2 Discuss any five key differences between
subroutine
and interrupt service routines
7
3 Explain in detail on
i) Vectored Interrupt ii) Interrupt Nesting
4
4 Discuss on the following with neat sketches
i) Time – Shared Common bus
ii) Multistage Switching Network
3
5 Explain in detail i) Interrupt
ii) An exception with an example
4
6 Differentiate serial arbitration logic and parallel
arbitration logic with neat sketch
7
7 Explain the role of interrupts in Computer
Organization.
3
8 Discuss the following interconnection structures
i) Crossbar Switch ii) Hypercube system
3
9 What do you mean by inter process arbitration? 4
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 34
Explain how it is implemented in multiprocessor
architecture.
10 Explain the method of DMA transfer. How does a
DMA controller improve the performance of a
computer
3
E-learning materials
Question-Papers html
1. http://www.khitguntur.ac.in/cse.php#cseqp.php
2. 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
Mr. B Srikanth
Associate Professor, CSE
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 35
Course Title: Formal Languages and Automata Theory
Sub Code : C213
Contact Hours per week : 3(L) + 1(T)
Course Coordinator : Ms. S. Sri Lakshmi Parvathi
Course Advisor (if any) : Ms. S. Sri Lakshmi Parvathi
Module Coordinator : Ms. S. Sri Lakshmi Parvathi
Course coordinator e-mail : [email protected]
Course coordinator location : Room No.: 1F-08
Course Coordinator availability : Wednesday 4.00pm-5.00pm
Thursday 4.30pm-5.20pm
Resource link: :
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:
1. Lecture and Class Discussions.
2. Assignment work.
3. Tutorial/Quiz sessions
4. Power Point Presentations
Overview of learning resources: Prescribed & Suggested 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. Reference Books
1. Formal Language and Automata Theory, 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.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 36
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.
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:
1. Formal Language and Automata Theory, 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.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 37
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.
Course Outcomes
1. Explain the model of various finite automata and design them.
2. Discuss about Regular expressions, finite automata, regular grammars and equivalence
among them.
3. Classify Grammars and describe about Context Free Grammars.
4. Discuss about Push down automata.
5. Design Turing machines.
6. Explain computability theory.
MAPPING OF COs WITH POs, PSOs
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
PS
O3
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
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 38
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
17
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
TUTORIAL- I (DFA,NFA) 1
Finite Automata with E-Transition 2
Minimization of Finite Automata 2
Mealy and Moore Machines 2
TUTORIAL- I (TRANSDUCERS) 1
Applications and Limitation of Finite Automata. 1
II
UNIT – II: Regular Expressions
Regular Expressions, Regular Sets 2
13
Identity Rules, Equivalence of two Regular Expressions 1
Manipulations of Regular Expressions, Inter Conversion,
Equivalence between Finite Automata and Regular Expressions,
3
TUTORIAL- II ( Equivalence of Finite Automata and Regular
Expressions)
1
Pumping Lemma, Closure Properties, Applications of Regular
Expressions,
2
Finite Automata and Regular Grammars, 2
Regular Expressions and Regular Grammars. 1
TUTORIAL- II ( Equivalence of Finite Automata and Regular
Grammar)
1
III
UNIT – III: Context Free Grammars
Formal Languages, Grammars, Classification of Grammars,
Chomsky Hierarchy Theorem
1
11
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
TUTORIAL- III (Simplification of Context – Free Grammar) 1
Normal Forms for Context Free Grammars-Chomsky Normal
Form and Greibach Normal Form
3
TUTORIAL- III (Normal Forms ) 1
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
Design of Pushdown Automata, 2
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 39
QUESTION BANK
Unit
No.
Q.
No
Questions
Blooms
Taxonomy
Level
Course
Outcome
1 Define finite automaton? Enumerate various applications of
finite automata.
2
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
TUTORIAL- IV ( Design of pushdown Automata) 1 11
Deterministic and Non – Deterministic Pushdown Automata, 1
Equivalence of Pushdown Automata and Context Free Grammars
Conversion
2
TUTORIAL- IV ( Equivalence of Pushdown Automata and
Context Free Grammars Conversion)
1
Two Stack Pushdown Automata, Application of Pushdown
Automata.
2
V
UNIT – V: Turing Machine
Turing Machine, Definition, Model, Representation of Turing
Machines-Instantaneous Descriptions, Transition Tables and
Transition Diagrams, Language of a Turing Machine,
1
9 Design of Turing Machines,. 3
TUTORIAL- V ( Design of Turing machines) 1
Techniques for Turing Machine Construction, 1
Types of Turing Machines, 1
Church’s Thesis, 1
Universal Turing Machine, Restricted Turing Machine 1
VI
UNIT – VI: Computability
Decidable and Un-decidable Problems, 2
7 Halting Problem of Turing Machines, 1
Post’s Correspondence Problem, Modified Post’s Correspondence
Problem,
2
Classes of P and NP, NPHard and NP-Complete Problems. 2
TUTORIAL-VI (Computability) 1
TOTAL 69
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 40
I
4 Construct the NFA for the following regular expression, 0* +
1* + 2*.
9
CO1
5 Define NFA with Є moves? Explain with example. 4
6 Explain about the minimization of the finite automata with
example.
4
7 Construct the minimum state finite automaton for the following
finite automata:
2
8 Convert the following mealy machine into equivalent Moore
machine.
4
9 Differentiate between DFA and NFA with examples 4
II
1 Define regular expression? what are the operations of regular
expressions?
2
CO2 2 Write the regular expression for the following
i) The set of strings of 0’s and 1’s whose tenth symbol from the
right end is 1.
ii) The set of string of 0’s and 1’s with at most one pair of
consecutive 1’s.
iii) Language of 0’s and 1’s that has odd length.
iv) L be the set of length 6.
6
3 Construct an NFA for the regular expression (a+b)* (aa+bb)
(a+b)*
6
4 Write the general procedure to transform a grammar to regular
expression and vice-versa.
6
5 Enumerate the applications of regular expressions 2
6 Define pumping lemma for regular languages. 2
III
1 Define formal language? Give the classification of Formal
languages.
4
CO3
2 Explain Chomsky hierarchy of grammars. 4
3 Define derivation? Explain types of derivation. 4
4 Define Ambiguous grammar? How to eliminate it. 6
5 Discuss about left linear and right linear grammars with
examples.
4
6 Write the steps required to obtain a right linear grammar
equivalent to a given left linear grammar? Explain with
example.
6
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 41
7 Define CNF? Find an equivalent grammar in CNF of the
following grammar.
S → bA / aB
A → bAA / aS / a
B → aBB / bS /b
4
8 Explain the use of simplification of CFG? What is the
procedure to simplify the CFG? Explain
4
9 Discuss about normalization of CFG? What is the use of
normalization? What are the different normal forms? Explain
4
IV
1 Write a short note on PDA with an example 5
CO4
2 Design a PDA to accept the following language
L={ ai bj ck / i≠ j or j ≠ k}.
9
3 Discuss about push down Automata? Show how context free
language is accepted by push down automata.
4
4 Write a short note on Equivalence of PDA’s and CFG’s 6
5 Design a deterministic pushdown automata for the following
language L = { 0n 1 2n / n >=1 }
9
6 Explain types of pushdown automata. 4
7 Enumerate the applications of pushdown automata? 2
V
1 Describe the formal definition of TM? What are the
components of TM? What is id of TM?
2
CO5
2 Differentiate between PDA and TM with respect to: halt state
and final state
4
3 Design a Turing Machine “Parantheses Checker” that outputs 1
or 0 depending on whether the sequence is properly formed or
not?
9
4 list out the different types of TMs? Explain. 4
5 List out the components of turing machine. 2
6 Discuss about the restricted grammar 4
7 Define universal language? Explain how these can be accepted
by universal turing machine with an example
4
8 Define Church’s hypothesis? Discuss. 4
9 Explain about restricted turing machine? 4
10 Explain about Halting problem 4
VI
1 Discuss about decidable and un-decidable problem. 2
CO6 2 Define modified post correspondence problem(MPCP)? Can
MPCP be reduced to PCP.
7
3 Discuss the factors on which a problem can be categorized as
decidable or undecidable.
4
4 Define class P and NP problems 2
5 Explain about NP-hard and NP-Complete problems. 4
6 Explain about the Computable functions. 4
E-learning materials:
NPTEL
http://www.nptel.iitm.ac.in/downloads/106106049/
Question-Papers html
1. http://www.khitguntur.ac.in/cse.php#cseqp.php
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 42
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
Ms. S. Sri Lakshmi parvathi,
Assistant professor, CSE
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 43
Course Title: Principles of Programming Languages
Sub Code : C214
Contact Hours per week : 3(L) + 1(T)
Course Coordinator : Mr. Ch. Samsonu
Course Advisor (if any) : Mr. Ch. Samsonu
Module Coordinator : Dr Md. Umar Khan
Course coordinator phone : 9849268278
Course coordinator e-mail : [email protected]
Course coordinator location : Room No.: 2F-04
Course Coordinator availability : Wednesday 4:00pm - 5:00pm
Friday 4.00pm – 5.00pm
Resource link: :
Pre-requisites Courses : 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
Overview of learning resources: 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
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 Freely Accessible Internet Sites
https://www.slideshare.net/TauszfJamal/ppl-ppt
http://nptel.ac.in/courses/106102067/
Overview of assessment: Internal Test.
Quiz
Assignments.
University Exams.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 44
SYLLABUS
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, multi - paradigm
languages
TEXT BOOKS: 1. Robert W. Sebesta, “Concepts of Programming Languages”, Tenth Edition, Addison
Wesley, 2012.
2. Programming Languages, Principles & Paradigms, 2ed, Allen B Tucker, Robert E
Noonan, TMH
REFERENCES:
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
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
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 45
COURSE OUTCOMES (COs):
Upon Completion of the course, the students will be able to
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.
Mapping of COs with POs,PSOs:
LESSON PLAN
Unit/To
pic No.
Topic Name No of
Classes
Require
d
I SYNTAX AND SEMANTICS 10
1.1 Evolution of programming languages 1
1.2 describing syntax 1
1.3 Context Free Grammars 2
1.4 Attribute grammars 1
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
PS
O3
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
CO6:Develop programs in
logic programming and
Prolog.
3 2 1 2 2 1
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 46
1.5 describing semantics 1
1.6 Lexical analysis 1
1.7 Parsing 1
1.8 recursive – decent parsing 1
1.9 bottom - up parsing 1
II DATA, DATA TYPES, AND BASIC STATEMENTS 13
2.1 Names, variables 1
2.2 binding, type checking 1
2.3 scope, scope rules 1
2.4 lifetime and garbage collection 1
2.5 primitive data types 1
2.6 Strings, array types, associative arrays 1
2.7 record types, union types 1
2.8 pointers and references, Arithmetic expressions 1
2.9 overloaded operators, type conversions, 1
2.10 relational and Boolean expressions, assignment statements 1
2.11 mixed mode assignments 1
2.12 control structures – selection 1
2.13 iterations, branching, guarded Statements 1
III SUBPROGRAMS AND IMPLEMENTATIONS 8
3.1 Subprograms, design issues 1
3.2 local referencing, parameter passing 1
3.3 overloaded methods, generic methods 1
3.4 design issues for functions, semantics of call and return 1
3.5 implementing simple subprograms 1
3.6 stack and dynamic local variables, nested subprograms 2
3.8 Blocks and dynamic scoping 1
IV OBJECT- ORIENTATION, CONCURRENCY, AND
EVENT HANDLING
12
4.1 Object – orientation 1
4.2 design issues for OOP languages 1
4.3 implementation of object oriented constructs 1 4.4 Concurrency 1
4.5 Semaphores 1
4.6 Monitors 1
4.7 message passing 1
4.8 Threads 1
4.9 statement level concurrency 1
4.10 exception handling 1
4.11 Event handling 2
V FUNCTIONAL PROGRAMMING LANGUAGES 9
5.1 Introduction to lambda calculus, 2
5.2 fundamentals of functional programming languages 2
5.3 Programming with Scheme 2
5.4 Programming with ML 3
VI LOGIC PROGRAMMING LANGUAGES 8
6.1 Introduction to logic and logic programming 2
6.2 Programming with Prolog 3
6.3 Multi - paradigm languages 3
TOTAL
60
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 47
QUESTION BANK
Unit
No.
Sl.
No. Questions
Bloom’s
Taxonomy
level
Mapped
with CO
I
1. What is the difference between syntax & semantics? 2
CO1
2. What are associatively and precedence? Why are they
significant in parse trees? 2
3. What is meant by ambiguity? Give example. 2
4. What is the difference between a sentence and a
sentential form in a CFG? 1
5. Explain the process of compilation in each phase of a
compiler. 4
6. Discuss about Context-free grammar and regular
expression? Give the parse tree of a following
statement: A = (B+C) * (D / E). 9
7. Give an example of left recursive rule in CFG. What
is the significance of left recursive rule 2
8. What are the main features of the programming
paradigm with examples? 1
9. Define CFG? What does it mean for CFG to be
ambiguous? 2
10. Define grammars, derivation and a parse tree 1
11.
7
12. Explain language evaluation criteria and the
characteristics that affect them. 4
13.
7
14. Describe differences between Top-Down and
Bottom-Up Parsers. 4
15. Explain about lexical analysis. 4
II
1. What are the merits of sub range types 1
CO2
2. Explain in detail various design issues of character
string types 2
3. What is a variable and what are the attributes of a
variable? Elaborate on address of a variable 6
4. What is meant by type checking? Differentiate
between static type checking and dynamic type
checking and give their relative advantages 2
5. What are dangling pointers and lost heap-dynamic
variables? How are they created? 2
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 48
6. Explain various primitive data types with suitable
examples 4
7. Explain about control structures 4
8. Define Coercion, Typeerror, Typechecking and
Strong Typing 2
9. Explain structure of an associative array? 3
10. Define name and structure type compatibility. What
are relative merits of these two 2
11 What is primary use of attribute grammar?
2
12 Explain about static, fixed stack dynamic, fixed heap
dynamic and dynamic arrays
3
13 List and explain design issues of pointers. 2
III
1 Define sub program. What are the distinct categories
of Subprograms? 4
CO3
2 What is an overloaded subprogram? Explain with an
example 4
3 Explain different parameter passing methods with an
example 4
4. Explain two methods for implementing blocks 4
5. Describe deep access and shallow access methods for
implementing dynamic scoping 7
6. Explain how subprograms names are passed as
parameters 4
7. Explain about Co-Routines with an example 4
8. Explain design issues of functions 2
9. Explain the difference between virtual and non-
virtual methods 3
10.
Define sub program. What are the distinct categories
of Subprograms?
4
IV
1. Explain features of Object-Oriented Programming
Languages 2
CO4
2.
Explain the following terms :
a)Message passing
b) Concurrency in Ada
c) Monitors.
2
3. What is exception handling? How exceptions are
handled in C++ and JAVA 4
4. Discuss in detail overloaded operators 8
5. Explain Thread class in JAVA and its methods 2
6. Discuss the design issues of Exception Handling. 2
7. Implement Producer and Consumer problem using
Semaphores 6
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 49
8. Explain in detail abstract data types in java with
examples. 4
V
1. How functions are defined in Scheme 2
CO5
2. Explain the principles of ML 3
3. Explain about Predicate functions in Scheme 5
4. Explain about primitive functions in Scheme 3
5. Explain about list functions in Scheme 3
6. How functions are defined in ML 2
7. Write factorial function using COMMON LISP 4
8. Explain about data objects in LISP?
4
9. Write a LISP function that computes nth Fibonacci
number 4
VI
1. Explain about Logic programming 3
CO6
2. Explain the Basic elements of Prolog 3
3. Explain list structures and Goal statements in
PROLOG 4
4. Explain generate and test programming strategy in
PROLOG 4
5. Explain how backtracking works in PROLOG 5
6. Explain about fact and rule statements in PROLOG 4
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
Mr.Ch. Samsonu
Associate Professor,CSE
.
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 50
SUBJECT TITLE: ADVANCED DATA STRUCTURES LAB
FACULTY MEMBER: Mr. B. Satyanarayana Reddy
Course Objectives:
1. To understand heap and various tree structures like AVL, Red-black, B and Segment trees
Course Outcomes:
1. Develop programs to implement AVL trees.
2. Design applications that uses binary heap.
3. Write a program to generate minimum cost spanning tree.
4. Describe and implement algorithm to find shortest path in the graph.
5. Write a program to implement static hashing.
6. Develop programs to implement huffmann coding technique and balanced trees.
Mapping of COs with POs,PSOs:
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
PS
O3
CO1: Develop
programs to
implement AVL
trees.
3 2 3 3
3
2 3 1
CO2: Design
applications
that uses binary
heap
3 2 3 3
3
2 3 1
CO3: Write a
program to
generate
minimum cost
spanning tree.
3 2 3 3
3
2 3 1
CO4: Describe
and implement
algorithm to find
shortest path in
the graph.
3 2 3 3
3
2 3 1
CO5: Write a
program to
implement
static hashing
3 2 3 3
3
2 3 1
CO6: Develop
programs to
implement
huffmann coding
technique and
balanced trees.
2 2 2 3
3
2 3 1
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 51
SYLLABUS
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.
Equipments and Software required:
i.) Computer Systems with latest specifications
ii) Intel based desktop PC
iii) LINUX
Prepared by
Mr. B. Satyanarayana Reddy,
Professor, Dept. of CSE, KHIT
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 52
SUBJECT TITLE: JAVA PROGRAMMING LAB
FACULTYMEMBER: Dr. Md.Umar Khan
Aim and objective of the course:
Students should know how to implement and execute the different Java Programs in
the machine(Computer)
Objectives of Course:
At the end of this lab, the learner will be able to:
Know the importance of implementing application in JAVA
Understand and Execute applications through JAVA (at core level)
Implements concurrent execution of processes (threads), handling exceptions and OOP
principles
Introduce the base for developing GUI based applications
Course Outcomes: 1. Develop java programs for various mathematical concepts,searching and sorting
techniques.
2. Develop java programs for classes,constructors,overloading, concepts.
3. Develop programs by using inheritance, interfaces, packages and exception handling.
4. Implement the programs on multithreading and also I/O Streams in java.
5. Design user interfaces using Applet and also handle the events using event handling
mechanism.
6. Design user interfaces using AbstractWindowToolkit, Swing (classes & interfaces)
Mapping of COs with POs, PSOs:
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
PS
O2
CO1: Develop java
programs for various
mathematical
concepts,searching and
sorting techniques.
3 2 3 3 3 2 2
CO2: Develop java programs
for
classes,constructors,overloa
ding, concepts.
3 2 3 3 3 2 2
CO3: Develop programs by
using inheritance, interfaces,
packages and exception
handling.
3 2 3 3 3 2 2
CO4: Implement the
programs on multithreading
and also I/O Streams in java.
3 2 3 3 3 2 2
CO5: Design user interfaces
using Applet and also
handle the events using
event handling mechanism.
3 2 3 3 3 2 2
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 53
Syllabus
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)
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.
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.
Exercise - 4 (Methods)
a). Write a JAVA program to implement constructor overloading.
b). Write a JAVA program implement method overloading.
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
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?
Exercise - 7 (Exception)
a).Write a JAVA program that describes exception handling mechanism
b).Write a JAVA program Illustrating Multiple catch clauses
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
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
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 ()
CO6: Design user interfaces using AbstractWindowToolkit, Swing (classes & interfaces)
3 2 3 3 3 2 2
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 54
c). Write a Program illustrating Daemon Threads.
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
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 package in the previous
Problem
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.
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.
Exercise - 15 (Swings)
a).Write a JAVA programto build a Calculator in Swings
b). Write a JAVA program to display the digital watch in swing tutorial.
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
Equipments and Software required:
1. JDK Software or J2SE Software
2. Computer Systems
Prepared by
Dr. Md. Umar Khan
Professor, CSE
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 55
PROGRAMMING LABORATORY COURSES ASSESSMENT GUIDELINES
i. The number of experiments/programs/sessions in each laboratory course shall be as
per the curriculum in the scheme of instructions provided by JNTUK.
ii. The students will maintain a separate note book for each laboratory course in which
all the related work would be done.
iii. In each session the students will complete the assigned tasks of process
development, coding, compiling, debugging, linking and executing the programs.
iv. 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.
v. The students will submit the record in the next class. The evaluation will be
continuous and not cycle- wise or at semester end.
vi. The internal marks of 25 are awarded in the following manner:
a. Day to Day performance and record - Maximum Marks 15
b. Test and Viva Voce - Maximum Marks 10.
vii. Laboratory Record: Each experimental record is evaluated for a score of 50.
The rubric parameters are as follows: a. Write up format - Maximum Marks 20
b. Process development and coding - Maximum Marks 10
c. Compile, debug, link and execute program - Maximum Marks 15
d. Process Validation - Maximum Marks 05
e.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.
viii. The 15 marks of laboratory record will be scaled down from the TOTAL of the
assessment sheet.
ix. The test and viva voce will be scored for 10 marks as follows:
Internal Test - 7 marks
Viva Voce / Quiz - 3 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
Process
Development
and coding
(10)
Compilation,
Debugging,
Linking and
Executing
(Max 15)
Process
Validation
(Max 5)
Write
up
format
(Max
20)
Total
Score
(Max
50)
1
2
3
Total
Dept. of CSE, Kallam Haranadhareddy Institute of Technology, Guntur - 19 Page 56
LABORATORY COURSE EVALUATION RUBRIC
Category Outstanding
(Up to 100%)
Accomplished (Up
to 75%)
Developing
(Up to 50%)
Beginner
(Up to 25%)
Write up
format
Aim, Apparatus,
material requirement,
theoretical basis, procedure of
experiment, sketch of
the experimental setup
etc. is demarcated and presented in clearly
labeled and neatly
organized sections.
The write up follows
the specified format but a couple of the
specified parameters
are missing.
The report follows
the specified format
but a few of the formats are missing
and the experimental
sketch is not included in the report
The write up does not follow the
specified format
and the presentation is
shabby.
Observations
and
Calculations
The experimental
observations and
calculations are recorded in neatly
prepared table with
correct units and significant figures.
One sample
calculation is
explained by substitution of
values
The experimental
observations and
calculations are recorded in neatly
prepared table with
correct units and significant figures
but sample calculation
is not shown
The experimental
observations and
calculations are recorded neatly but
correct units and
significant figures are not used.
Sample calculation
is also not shown
The experimental
observations and results are
recorded
Carelessly. Correct units significant
figures are not
followed and
sample calculations not shown
Results and
Graphs
Results obtained are correct within
reasonable limits.
Graphs are drawn
neatly with labeling of the axes. Relevant
calculations are
performed from the graphs. Equations are
obtained by
regression analysis or curve
fitting if relevant
Results obtained are
correct within reasonable limits.
Graphs are drawn
neatly with labeling of
the axes. Relevant calculations from the
graphs are incomplete
and equations are not obtained by regression
analysis or curve
Fitting
Results obtained are
correct within reasonable limits.
Graphs are not
drawn neatly and or labeling is not
proper. No
calculations are
done from the graphs and
equations are not
obtained by regression analysis
or curve fitting
Results obtained
are not correct within reasonable
limits. Graphs are
not drawn neatly and or labeling is
not proper. No
calculations are
done from the graphs and
equations are not
obtained by regression analysis
or curve fitting
Discussion
of
Results
All relevant points of
the result are
discussed and justified in light of
theoretical
expectations. Reasons for divergent results
are identified and
corrective
measures discussed.
Results are discussed
but no theoretical
reference is mentioned. Divergent
results are identified
but no satisfactory reasoning is given for
the same.
Discussion of results is incomplete and
divergent results
are not identified.
Neither relevant
points of the results are
discussed nor
divergent results identified