SRI VENKATESWARA UNIVERSITY: TIRUPATI – 517 502 4-Year B.Tech (CSE), V Semester Choice Based Credit System (CBCS) (With effect from the academic year 2008-09)
Scheme of Instruction and Examinations
Course No.
Instruction hours per week
Course Title
L
T
P
No. of Credits
Total L+T Practical
CS 351
Theory of Computation
3
1
---
4
4
---
CS 352
Operating Systems
2
1
---
3
3
---
CS 353
Design and Analysis of Algorithms
3
1
---
4
4
CS 354
Data Base Management Systems
3
1
---
4
4
---
CS 355
Software Engineering
2
1
---
3
3
---
CS 356
Data Communications
2
---
---
2
2
---
PRACTICALS CS 352P
Operating Systems Laboratory
---
---
2
2
---
1
CS 353P
Design and Analysis of Algorithms Laboratory
---
---
2
2
---
1
CS 354P
Data Base Management Systems Laboratory
---
---
2
2
---
1
CS 357P
Soft Skills Laboratory
---
---
2
2
---
1
CS 358P
Shell Programming Laboratory
---
---
2
2
---
1
15
5
9
29
20
5
TOTAL
L: Lectures
T: Tutorials
P: Practical
NOTE: For each Course: Sessional Marks: End Semester Examination Marks: Total Marks: Duration of End Semester Examination:
40 60 100 3 Hours
CS 351
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
THEORY OF COMPUTATION No. of Credits: 4 Instruction Weeks / Semester: 15
Instruction Hours / Week: 4
UNIT I Review of Basic Mathematical Objects: Sets, Logic, Functions, Relations, Languages. Review of Mathematical Induction and Recursive Definitions: Proofs, Mathematical Induction, Recursive Definitions, Structural Induction. Regular Expressions and Finite Automata: Regular languages, Regular expressions, Memory requirement for language recognition, Finite automata, Distinguishing strings, Unions, Intersections, and Complements. Finite Automata with Output: Moore machine, Mealy machine, Moore versus Mealy, Transducers as models of sequential circuits.
UNIT II Nondeterminism and Kleene’s Theorem: Nondeterministic finite automata (NFA), NFA with Λtransitions, Kleene’s theorem. Regular and Nonregular Languages: A criterion for regularity, Minimal finite automata, Pumping lemma for regular languages, Decision problems, Regular languages versus programming languages.
UNIT III Contex-Free Grammars: Definition, Examples, Regular grammars, Derivation trees and ambiguity, An unambiguous CFG for algebraic expressions, Simplified forms and normal forms. Pushdown Automata: Definition, Deterministic pushdown automata, Pushdown automata versus context-free grammar, Parsing.
UNIT IV Context-Free and Non-Context-Free Languages: Pumping lemma for context-free languages, Intersections and Complements of context-free languages, Decision problems involving contextfree languages. Turing Machines: Definition, Examples, Computing a partial function with a Turing machine, Combining Turing machines, Multi-tape Turing machines, Non deterministic Turing machines, Universal Turing machines, Models of computation and the Church-Turing thesis.
UNIT V Recursively Enumerable Languages: Recursively enumerable and recursive, Enumerating a language, More general grammars, Context-sensitive languages and the Chomsky hierarchy, Not recursively enumerable languages. Unsolvable Problems: Non-recursive languages and unsolvable problems, Reducing one problem to another – Halting problem, Other unsolvable problems involving Turing machines, Rice’s theorem, Post’s correspondence problem, Unsolvable problems involving context-free languages. Computable Functions: Primitive recursive functions, Primitive recursive predicates and some bounded operations, Unbounded minimalization and μ-recursive functions, Gödel numbering, Computable functions versus μ-recursive functions, Non-numeric functions and computability.
Text Book: Martin J C, Introduction to Languages and the Theory of Computation, 3rd edition, Tata McGraw-Hill, 2003.
Reference Books: 1.
Hopcroft J E, Motwani R, and Ullman J D, Introduction to Automata Theory, Languages, and Computation, 3rd edition, Pearson Education, 2008.
2.
Azad S K, Theory of Computation – An Introduction to Automata, Formal Languages, and Computability, Dhanpat Rai & Co, 2005.
3.
Cohen D I A, Introduction to Computer Theory, 2nd edition, John Wiley, 2000.
4.
Sipser M, Introduction to the Theory of Computation, Thomson Brooks/Cole, 1997.
5.
Linz P, An Introduction to Formal Languages and Automata, 2nd edition, Narosa, 1997.
CS 352
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
OPERATING SYSTEMS No. of Credits: 3 Instruction Weeks / Semester: 15
Instruction Hours / Week: 3
UNIT I Introduction: Definition of operating system, User view, System view, Computer system organization, Computer system architecture, Operating system structure, Operating system operations, Process management, Memory management, Storage management, Protection and security, Distributed systems, Special purpose systems, Computing environments. System Structures: Operating system services, User – Operating system interface, System calls, Types of system calls, System programs, Operating system design and implementation, Structure, Implementation, System generation, System boot.
UNIT II Process Concept: Process scheduling, Operations on processes, Interprocess communication, Communication in client server systems. Multithreaded Programming: Multitheading models, Thread libraries, Threading issues, Examples. Process Scheduling: Basic concepts, Scheduling criteria, Scheduling algorithms, Multiple-processor scheduling, Thread scheduling, Examples. Inter-process Communication: Race conditions, Critical Regions, Mutual exclusion with busy waiting, Sleep and wakeup, Semaphores, Mutexes, Monitors, Message passing, Barriers, Classical IPC Problems - Dining philosophers problem, Readers and writers problem.
UNIT III Memory-Management Strategies: Introduction, Swapping, Contiguous memory allocation, Paging, Segmentation, Examples. Virtual Memory Management: Introduction, Demand paging, Copy-on-write, Page replacement, Frame allocation, Thrashing, Memory-mapped files, Kernel memory allocation, Examples.
UNIT IV Deadlocks: Resources, Conditions for resource deadlocks, Ostrich algorithm, Deadlock detection and recovery, Deadlock avoidance, Deadlock prevention. File Systems: Files, Directories, File system implementation, management and optimization.
Secondary-Storage Structure: Overview of disk structure, and attachment, Disk scheduling, RAID structure, Stable storage implementation.
UNIT V System Protection: Goals of protection, Principles and domain of protection, Access matrix, Access control, Revocation of access rights. System Security: Introduction, Program threats, System and network threats, Cryptography for security, User authentication, Implementing security defenses, Firewalling to protect systems and networks, Computer security classification. Case Studies: Linux, Microsoft Windows XP, and Vista.
Text Books: 1.
Silberschatz A, Galvin P B, and Gagne G, Operating System Principles, 7th edition, WileyIndia, 2006.
2.
Tanenbaum A S, Modern Operating Systems, 3rd edition, Pearson Education, 2008. (for Interprocess Communication, File systems, and Case studies)
Reference Books: 1.
Deitel H M, Deitel P J, and Choffnes D R, Operating Systems, 3rd edition, Pearson Education, 2004.
2.
Stallings W, Operating Systems – Internals and Design Principles, 5th edition, Prentice-Hall of India, 2005.
3.
Nutt G, Operating Systems, 3rd edition, Pearson Education, 2004.
CS 353
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
DESIGN AND ANALYSIS OF ALGORITHMS No. of Credits: 4 Instruction Weeks / Semester: 15
Instruction Hours / Week: 4
UNIT I Introduction: Notion of algorithm, Fundamentals of algorithmic problem solving, Important problem types – sorting, searching, string processing, graph problems, combinatorial problems, geometric problems, numerical problems. Fundamentals of the Analysis of Algorithm Efficiency: Analysis framework, Asymptotic notations and basic efficiency classes, Mathematical analysis of recursive and non-recursive algorithms, Example-fibonacci numbers, Empirical analysis of algorithms, Algorithms visualization.
UNIT II Brute Force Methods: Selection sort and bubble sort, Sequential search and brute-force string matching, Closest-pair and convex-hull problems by brute force, Exhaustive search. Divide-and-Conquer: Mergesort, Quicksort, Binary search, Binary tree traversals, Multiplication of large integers, Strassen’s matrix multiplication, Closest-pair and convex-hull problems by divideand-conquer. Decrease-and-Conquer: Depth-first search and breadth-first search, Topological sorting, Algorithms for generating combinatorial objects, Decrease-by-a-constant-factor algorithms, Variable-sizedecrease algorithms.
UNIT III Transform-and-Conquer: Presorting, Gaussian elimination, Balanced search trees, Heaps and heapsort, Horner’s rule, and binary exponentiation, Problem reduction. Space and Time Tradeoffs: Sorting by counting, Input enhancement in string matching, Hashing, Btrees. Dynamic Programming: Computing a binomial coefficient, Warshall’s and Floyd’s algorithms, Optimal binary search trees, Knapsack problem and memory functions.
UNIT IV Greedy Technique: Prim’s Algorithm, Kruskal’s algorithm, Dijkstra’s algorithm, Huffman trees. Limitations of Algorithm Power: Lower bound arguments, Decision trees, P, NP, and NP-complete problems, Challenges of numerical algorithms.
Coping with the Limitations of Algorithm Power: Backtracking, Branch-and-bound, Approximation algorithms for NP-hard problems, Algorithms for solving nonlinear equations.
UNIT V Introduction to Parallel Algorithms and Architectures: Design of parallel algorithms, Architecture constraints, Computing dot product on EREW PRAM versus the 2-dimensional mesh, Pseudocode conventions for PRAMs and interconnection network models, Performance measures of parallel algorithms. Parallel Sorting: Sorting on CRCW and CREW PRAMS, Odd-even merge sort on EREW PRAM, Sorting on one and two dimensional meshes, Sorting networks.
Text Books: 1.
Levitin A, Introduction to the Design and Analysis of Algorithms, Pearson Education, 2003. (for UNITS I to IV)
2.
Berman K A, and Paul J L, Fundamentals of Sequential and Parallel Algorithms, Thomson Brook/Cole, 1997. (Chapters 5 and 6, for UNIT V)
Reference Books: 1.
Horowitz E, Sahni S, and Rajasekaran S, Fundamentals of Computer Algorithms, 2nd edition, Universities Press, 2007.
2.
Cormen T H, Leiserson C E, Rivest R L, and Stein C, Introduction to Algorithms, 2nd edition, Prentice-Hall of India, 2001.
3.
Dave P H, and Dave H B, Design and Analysis of Algorithms, Pearson Education, 2008.
CS 354
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
DATABASE MANAGEMENT SYSTEMS No. of Credits: 4 Instruction Weeks / Semester: 15
Instruction Hours / Week: 4
UNIT I Databases and Database Users: Database approach, its characteristics, and advantages, A brief history of database applications, When not to use a DBMS. Database System Concepts and Architecture: Data models, Schemas, and Instances, Three-schema architecture, Data independence, Database languages, Centralized and client-server architectures for DBMS, Classification of DBMSs. Data Modeling using Entity-Relationship (ER) Model: High level conceptual data models, Entity types, Entity sets, Attributes, Keys, Relationship types, Relationship sets, Roles, Structural constraints, Weak entity types, ER diagrams, Naming conventions, Design issues, UML class diagrams, Higher degree relationship types. The Enhanced Entity-Relationship (EER) Model: Subclasses, Super classes, Inheritance, Specialization, Generalization, Design choices, Formal definitions, Representing specialization and generalization in UML class diagrams, Data abstraction, Knowledge representation, Ontology concepts.
UNIT II The Relational Data Model and Relational Database Constraints: Relational model concepts, Constraints, Schemas, Update operations, Transactions, Dealing with Constraint violations. The Relational Algebra and Relational Calculus: Relational operations, Queries in relational algebra, Tuple relational calculus, Domain relational calculus. Relational Database Design by ER- and EER-to-Relational Mapping: ER-to-relational mapping, Mapping EER model constructs to relations. SQL 99 Schema Definition, Constraints, Queries and Views: SQL data definitions, data types, Specifying constraints, Schema change statements, Basic queries, Assertions and Triggers, Views. Introduction to SQL Programming Techniques: Database programming, Embedded SQL, Dynamic SQL, SQLJ, Function calls – SQL/CLI and JDBC, Database stored procedures, SQL/PSM.
UNIT III Functional Dependencies and Normalization for Relational Databases: Informal design guidelines for relation schemas, Functional dependencies, Normal forms, 2nd and 3rd normal forms, BoyceCodd normal form.
Relational Database Design Algorithms and Further Dependencies: Properties of relational decompositions, Algorithms for relational database schema design, Multivalued dependencies, 4th normal form, Join dependencies, 5th normal form. Practical Database Design Methodology and Use of UML Diagrams: Role of information systems in organizations, Database design and implementation process, Use of UML diagrams as an aid to database design specification, Rational rose – a UML based design tool, Automated database design tools.
UNIT IV Algorithms for Query Processing and Optimization: Translating SQL queries into relational algebra, Algorithms for various SQL operations, Using heuristics in query optimization, Using selectivity and cost estimates in query optimization, Overview of query optimization in Oracle, Semantic query optimization. Introduction to Transaction Processing Concepts and Theory: Introduction, Transaction and system concepts, Desirable properties of transactions, Characterizing schedules based on recoverability, and serializability, Transaction support in SQL. Concurrency Control Techniques: Two phase locking techniques for concurrency control, Concurrency control based on time stamp ordering, Multiversion concurrency control techniques, Validation concurrency control, Granularity of data items and multiple granularity locking, Using locks for concurrency control in indexes. Database Recovery Techniques: Recovery concepts, Recovery techniques based on deferred update, and immediate update, Shadow paging, ARIES recovery algorithm, Recovery in multidatabase systems, Database backup, recovery from catastrophic failures.
UNIT V Object-Relational and Extended-Relational Systems: Object-relational features of SQL and Oracle, Nested relational model. Database Security: Introduction, Discretionary access control, Mandatory access control, Rolebased access control, Introduction to statistical database security, Introduction to flow control, Encryption, Public key infrastructures, Privacy issues and preservation, Challenges of database security. Distributed Databases and Client-Server Architectures: Distributed database concepts, Data fragmentation, Replication, Allocation techniques for distributed database design, Types of distributed database systems, Query processing in distributed databases, Overview of concurrency control and recovery, An overview of 3-tier client-server architecture, Distributed databases in Oracle.
Text Book: Elmasri R, and Navathe S B, Fundamentals of Database Systems, 5th edition, Pearson Education, 2008. (Chapters 1, 2, 3, and 4 for Unit I; Chapters 5, 6, 7, 8, and 9 for Unit II; Chapters 10, 11, and 12 for Unit III; Chapters 15, 17, 18, and 19 for Unit IV; Chapters 20, 22, 23, and 25 for Unit V)
Reference Books:
1.
Silberschatz A, Korth H F, and Sudarshan S, Database System Concepts, 5th edition, McGraw-Hill, 2006.
2.
Ramakrishnan R, and Gehrke J, Database Management Systems, 3rd edition, McGraw-Hill, 2003.
3. 4.
Date C J, An Introduction to Database Systems, 7th edition, Pearson Education, 2000. Rob P, Database Systems – Design, Implementation, and Management, 7th edition, Thomson, 2007.
CS 355
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
SOFTWARE ENGINEERING No. of Credits: 3 Instruction Weeks / Semester: 15
Instruction Hours / Week: 3
UNIT I Introduction to Software Engineering: Software evolution, Legacy software, Software myths. A Generic View of Process: Software engineering layers, Process frame work, Capability Maturity Model Integration (CMMI), Process patterns, and assessment, Personal software process (PSP), Team software process (TSP) models. Process Models: Prescriptive models, Waterfall model, Incremental model, RAD model, Spiral model, Concurrent development model, Formal methods model, Unified process. An Agile view of Process: Definition, Extreme programming, Adoptive software development (ASD), Dynamic system development method (DSDM), Scrum, Crystal, Feature driven development, Agile modeling (AM).
UNIT II Software Engineering Practice: Principles, Communication practices, Planning practices, Analysis modeling principles, Design modeling principles, Coding principle and practice, Testing principles, Deployment. System Engineering: Computer-based systems, System modeling, System simulation, Business process engineering overview, Product engineering overview, Hatley-Pirbhai modeling, System modeling with UML. Requirements Engineering: Requirements engineering tasks, Initiation, Eliciting requirements, Developing use-cases, Building the analysis model, Negotiating and validating requirements.
UNIT III Building the Analysis Model: Requirements analysis, Analysis modeling approaches, Data modeling concepts, Object-oriented analysis, Scenario-based modeling, Flow-oriented modeling, Class-based modeling, Creating a behavioral model. Design Engineering: Design process, Design quality, Design concepts, Design model, Pattern-based software design.
UNIT IV Creating an Architectural Design: Software architecture, Data design, Architectural styles and
patterns, Architectural design, Assessing alternative architectural designs, Mapping data flow into a software architecture. Modeling Component-level Design: Nature of component, Designing class-based components, Conducting component level design, Object constraint language, Designing conventional components. Performing User Interface Design: The rules, User interface analysis, User interface design, Design evaluation.
UNIT V Testing strategies: A strategic approach to software testing, Test strategies for conventional software, Test strategies for object-oriented software, Validation testing, System testing, Art of debugging. Testing Tactics: Software testing fundamentals, Black-box and white-box testing, Basis path testing, Control structure testing, Object-oriented testing methods, Class level testing methods, Interclass test case design, Testing for special cases, Testing patterns. Product Metrics: Software quality, Product metrics, Metrics for the analysis model, Metrics for the design model, Metrics for source code, Metrics for testing, Metrics for maintenance.
Text Book: Pressman R S, Software Engineering-A Practitioner’s Approach, 6th edition, McGraw-Hill, 2005. (Chapters 1, 2, 3, and 4 for Unit I; Chapters 5, 6, and 7 for Unit II; Chapters 8 and 9 for Unit III; Chapters 10, 11, and 12 for Unit IV; Chapters 13, 14, and 15 for Unit V)
Reference Books: 1.
Sommerville I, Software Engineering, 5th edition, Pearson Education, 1996.
2.
Jawadekar W S, Software Engineering – Principles and Practice, Tata McGraw-Hill, 2004.
3.
Behforooz A, and Hudson F J, Software Engineering Fundamentals, Oxford University Press, 1996.
CS 356
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
DATA COMMUNICATIONS No. of Credits: 2 Instruction Weeks / Semester: 15
Instruction Hours / Week: 2
UNIT I Data Communications and Networking Overview: Introduction, Communications model, Data communications, Networking. Protocol Architecture: Justification, A simple protocol architecture, OSI, TCP/IP.
UNIT II Data Transmission: Concepts and terminology, Analog and digital data transmission, Transmission Impairments, Channel Capacity. Guided Transmission Media: Twisted pair, Coaxial cable, Optical fiber.
UNIT III Unguided Transmission Media: Wireless transmission, Antennas, Microwave, Broadcast radio, Wireless propagation, Line-of-site transmission, Multipath, Refraction. Signal Encoding Techniques: Digital data, Digital Signal; Digital data, Analog Signal; Analog data, Digital Signal; Analog data, Analog Signal.
UNIT IV Digital Data Communication Techniques: Asynchronous and synchronous transmission, Error detection and correction, Line configurations, Interfacing. Data Link Control Protocols: Flow control, Error control, High level data link control.
UNIT V Multiplexing: Frequency division multiplexing, Synchronous time division multiplexing, Statistical time division multiplexing, Asymmetric digital subscriber line, xDSL. Spread Spectrum: Introduction, Frequency hopping spread spectrum, Direct sequence spread spectrum, Code division multiple access.
Text Book:
Stallings W, Data and Computer Communications, 7th edition, Pearson Education, 2004.
Reference Books: 1.
Halsall F, Data Communications, Computer Networks, and Open Systems, 4th edition, Pearson Education, 1996.
2.
Forouzan B, Data Communications and Networking, 4th edition, Tata McGraw-Hill, 2007.
3.
Guptha P C, Data Communications and Computer Networks, Prentice-Hall of India, 2006.
4.
Shay W A, Understanding Data Communications and Networks, 2nd edition, Brooks/Cole Thomson Learning, 1999.
CS 352P
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
OPERATING SYSTEMS LABORATORY No. of Credits: 1 Instruction Weeks / Semester: 15
Ø
Instruction Hours / Week: 2
At least 10 assignments are to be given covering the topics of the course, “Operating Systems”.
CS 353P
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
DESIGN AND ANALYSIS OF ALGORITHMS LABORATORY No. of Credits: 1 Instruction Weeks / Semester: 15
Ø
Instruction Hours / Week: 2
At least 10 assignments are to be given covering the topics of the course, “Design and Analysis of Algorithms”.
CS 354P
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
DATABASE MANAGEMENT SYSTEMS LABORATORY No. of Credits: 1 Instruction Weeks / Semester: 15
Instruction Hours / Week: 2
Ø
At least 7 assignments are to be given covering the topics of the course, “Database Management Systems”.
Ø
A mini project is to be given, to implement a simple database application using either 2-tier or 3-tier client/server architecture. An appropriate graphical user interface, with input screens and report generation facility is to be incorporated.
CS 357P
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
SOFT SKILLS LABORATORY No. of Credits: 1 Instruction Weeks / Semester: 15
Instruction Hours / Week: 2
At least the following activities are to be undertaken in this lab: Preparing for a Technical Presentation: Literature survey Development of reading skills Development of listening skills Internet browsing Vocabulary development Effective organization of technical material Technical Speaking: Slide Preparation Effective speaking, with proper accent, and intonation. Correct pronunciation Effective body language Interaction with audience Technical Writing: Effective technical writing Preparing effective e-mails Preparing effective curriculum vitae Team Activities: Debate Group discussion
Brain storming
CS 358P
TOP
SRI VENKATESWARA UNIVERSITY :: TIRUPATI B.Tech (CSE) - V SEMESTER (CBCS) (With effect from the academic year 2008 – 09)
SHELL PROGRAMMING LABORATORY No. of Credits: 1 Instruction Weeks / Semester: 15
Instruction Hours / Week: 2
At least 10 assignments are to be given covering the following: Ø
Unix Shell Programming: Fundamentals, Basic shell commands, Shell environment, Shell variables, Shell constructs, Shell functions, Writing shell scripts.
Ø
Embedded awk and perl scripting.
Ø
Basics of Microsoft Windows Power Shell.
Text Books: 1.
Kochan S G, Unix Shell Programming, 3rd edition, Pearson Education, 2003.
2.
Kopczynski T, Windows Power Shell Unleashed, Pearson Education, 2007.
Reference Books: 1.
Ball B, Using Linux, PHI, 1998.
2.
Forouzan B A, and Gilberg R F, Unix and Shell Programming, Thomson, 2003.
3.
Das S, Unix Concepts and Applications, 2nd edition, TMH, 1998.
4.
Muster J, Unix Made Easy, 3rd edition, TMH, 2002.
5.
Kernighan, and Pike, The Unix Programming Environment, PHI,
6.
Perl , O’Railly,
7.
Wilson, Windows Power Shell Scripting Guide, PHI, 2008.