Database Management System
Introduction to DBMS
Introduction : Basic concepts, Advantages of DBMS over file processing systems, Data abstraction,
Database languages, Data models, Data independence, Components of a DBMS, Overall structure of
DBMS, Multi-user DBMS architecture, System catalogs, Data Modeling: Basic concepts, Entity, attributes,
relationships, constraints, keys.
Relational Model
ER and EER diagrams: Components of ER model, Conventions, Converting ER diagrams into tables
Relational Model: Basic concepts, Attributes and Domains, Codd’s rules.
Relational Integrity: Nulls, Entity, Referential integrities, Enterprise constraints, Views, Schema
diagram
Introduction to SQL - PL/SQL
Introduction to SQL: Characteristics and advantages SQL Data Types, Literals, DDL, DML, SQL
Operators Tables: Creating, Modifying, Deleting, Views: Creating, Dropping, Updation using Views,
Indexes, Nulls.
SQL DML Queries: SELECT query and clauses, Set operations, Tuple Variables, Set comparison,
Ordering of Tuples , Aggregate Functions, Nested Queries, Database Modification using SQL Insert,
Update, Delete Queries, Stored Procedure, Triggers, Programmatic SQL : Embedded SQL, Dynamic
SQL, ODBC
Database Design & Query Processing
Relational Databases Design: Purpose of Normalization, Data Redundancy and Update Anomalies,
Functional Dependencies. The process of Normalization: 1NF, 2NF, 3NF, BCNF. Introduction to
Query Processing: Overview, Measures of Query cost, Selection and Join operations, Evaluation of
Expressions
Introduction to Query optimization: Estimation, Transformation of Relational Expression
Transaction & Concurrency Control
Transaction Management: Basic concept of a Transaction, Properties of Transactions, Database
Architecture, Concept of Schedule, Serial Schedule.
Serializability: Conflict and View, Cascaded aborts Recoverable and Non-recoverable Schedules.
Concurrency Control: Need Locking methods Dead locks, Time stamping Methods. Optimistic
Techniques, Multi-version Concurrency Control.
Different crash recovery methods: Shadow-Paging, Log-based Recovery: Deferred and Immediate,
Check Points
Advanced Databases
Database Architectures: Centralized and Client-Server Architectures, 2 Tier and 3 Tier Architecture,
Introduction to Parallel Databases, Key elements of Parallel Database Processing, Architecture of
Parallel Databases, Introduction to Distributed Databases, Architecture of Distributed Databases,
Distributed Database Design.
Emerging Database Technologies: Introduction, No SQL Databases- Internet Databases, Cloud
databases, Mobile Databases, SQLite database, XML databases
Software Engineering
Introduction To Software Engineering
Software Engineering Fundamentals: Nature of Software, Software Engineering Practice,
Software Process, Software Myths.
Process Models : A Generic Process Model, Linear Sequential Development Model, Iterative
Development Model, The incremental Development Model
Agile software development: Agile manifesto, agility principles, Agile methods, myth of planned
development, Introduction to Extreme programming and Scrum.
Agile Practices: test driven development, pair programming, continuous integration in DevOps ,
Refactoring
Requirements Engineering & Analysis
Requirements Engineering: User and system requirements, Functional and non-functional
requirements, requirements engineering (elicitation, specification, validation, negotiation)
prioritizing requirements (Kano diagram), requirement traceability matrix(RTM)
Software Requirements Specification (SRS): software requirements Specification document,
structure of SRS, writing a SRS, structured SRS for online shopping,
Requirements Analysis: Analysis Model, data modeling, scenario based modeling, class based
modeling, Flow oriented modeling, behavioral modeling-Introduction to UML diagrams
Design Engineering
Design Engineering : Design Process & quality, Design Concepts, design Model, Pattern-based
Software Design. Architectural Design :Design Decisions, Views, Patterns, Application
Architectures,
Component level Design: component, Designing class based components, conducting
component-level design, User Interface Design: The golden rules, Interface Design steps&
Analysis, Design Evaluation
Project Planning, Management And Estimation
Project Planning: Project initiation, Planning Scope Management, Creating the Work Breakdown
Structure, scheduling: Importance of Project Schedules, Developing the Schedule using Gantt
Charts, PERT/ CPM
Project Management: The Management Spectrum, People, Product, Process, Project, The W5HH
Principle, Metrics in the Process and Project Domains, Software Measurement: size &function-
oriented metrics(FP & LOC), Metrics for Project
Project Estimation: Software Project Estimation, Decomposition Techniques, Cost Estimation
Tools and Techniques, Typical Problems with IT Cost Estimates.
Software Quality And Testing
Quality Concepts: Quality, software quality, Quality Metrics, software quality dilemma, achieving
software quality
Software Testing: Introduction to Software Testing, Principles of Testing, Test plan, Test case,
Types of Testing, Verification & Validation, Testing strategies, Defect Management, Defect Life
Cycle, Bug Reporting, debugging.
Formal Methods Recent Trends In Software Engineering
Recent Trends in SE : SCM, Risk Management, Technology evolution, process trends, collaborative
development, software reuse, test-driven development, global software development challenges,
CASE – taxonomy, tool-kits, workbenches, environments, components of CASE, categories (upper,
lower and integrated CASE tools), Introduction to agile tools Jira, Kanban