BCA Syllabus (MSU) - SEMESTER 4
Semester Paper Course Code Course Title Th/Pr Credits (MM-100) Min Marks
IE UE UE Total
BCA-4 SEM 1 0427001 Web Development Using PHP TH 4 25 75 25 40
2 0427002 Introduction to Python TH 4 25 75 25 40
3 0427003 Software Engineering TH 4 25 75 25 40
4 0427004 Introduction to DBMS TH 4 25 75 25 40
5 0427005 Optimization Techniques TH 4 25 75 25 40
6 0427080 PHP, Python Prog. & DBMS LAB PR 4 - 100 40 -

Course Name: Web Development using PHP

Course Code: 0427001   |   Internal/External Marks: 25/75   |   Credit: 4

UNIT-I: Introduction to PHP
Introduction to PHP, History of PHP, Versions of PHP, Features of PHP, Advantages of PHP over Other Scripting Languages, software requirements, Installation and Configuration of PHP, Installing and Configuring Apache to use PHP on Windows, Basic HTML, Embedding PHP in HTML, PHP Basic syntax, data types, comments, variables and constants, scope of variables, PHP arrays: creating array and accessing array elements, PHP String, PHP operators, precedence of operators, expressions, creating a PHP Script, running a PHP script.
UNIT-II: PHP Control Structures and Functions
PHP conditional statements, switch case, PHP looping statements, while, for and do while loop, break, continue, exit, PHP functions: built-in and user defined function, declaration and calling of a function, function argument with call by value, call by reference, string manipulation, mathematical, date and time functions.
UNIT-III: Web Forms and Data Handling
Introduction to a web form, processing a web form, capturing form data, passing information between pages, PHP $_GET, PHP $_POST, with multi value fields, validating a web form, input validation, exception and error handling, introduction to cookies and session handling.
UNIT-IV: Database Connectivity with PHP
Working with database: PHP supported databases, using PHP & MySQL: Installation and configuration of MySQL on windows, checking configuration, connecting to database, selecting a database, adding table and altering table in a database, inserting, deleting and modifying data in a table, retrieving data, performing queries, processing result sets.
UNIT-V: Advanced PHP Concepts
Code re-use, require(), include(), and the include_path, PHP file permissions, working with files: opening, closing, reading, writing a file, file system functions and file input and output, working with directory: creating, deleting, changing a directory, file uploads, introduction to object oriented programming with PHP.

Course Name: Introduction to Python

Course Code: 0427002   |   Internal/External Marks: 25/75   |   Credit: 4

UNIT-I: Planning the Computer Program
Concept of problem solving, problem definition, program design, debugging, types of errors in programming, documentation. Techniques of problem solving: flowcharting, decision table, algorithms, structured programming concepts, programming methodologies viz. Top-down and bottom-up programming. Overview of programming: structure of a Python program, elements of Python memory.
UNIT-II: Introduction to Python
Python interpreter, using Python as calculator, Python shell, indentation. Atoms, identifiers and keywords, literals, strings, operators (arithmetic operator, relational operator, logical or Boolean operator, assignment operator, ternary operator, bitwise operator, increment or decrement operator). Creating Python programs: input and output statements, control statements (branching, looping, conditional statement, exit function, difference between break, continue and pass.), defining functions, default arguments, errors and exceptions. Iteration and recursion: conditional execution, alternative execution, nested conditionals, the return statement.
UNIT-III: Recursion and Strings
Recursion, stack diagrams for recursive functions, multiple assignment, the while statement, tables, two-dimensional tables. Strings and lists: string as a compound data type, length, traversal and the for loop, string slices, string comparison, a find function.
UNIT-IV: Lists and Object-Oriented Programming
Looping and counting, list values, accessing elements, list length, list membership, lists and for loops, list operations, list deletion. Cloning lists, nested lists. Object-oriented programming: introduction to classes, objects and methods, standard libraries.
UNIT-V: Data Structures and Searching/Sorting
Data structures: arrays, list, set, stacks and queues. Searching and sorting: linear and binary search, bubble, selection and insertion sorting.

Course Name: Software Engineering

Course Code: 0427003   |   Internal/External Marks: 25/75   |   Credit: 4

UNIT-I: Software Engineering
Definition and paradigms, A generic view of software engineering.
UNIT-II: Requirements Analysis
Statement of system scope, isolation of top-level processes and entities and their allocation to physical elements, refinement and review. Analyzing a problem, creating a software specification document, review for correctness, consistency, and completeness.
UNIT-III: Designing Software Solutions
Refining the software specification; application of fundamental design concepts for data, architectural, and procedural designs using software blueprint methodology and object-oriented design paradigm. Creating design document: review of conformance to software requirements and quality.
UNIT-IV: Software Implementation
Relationship between design and implementation, implementation issues and programming support environment, coding the procedural design, good coding style and review of correctness and readability.
UNIT-V: Software Maintenance
Maintenance as part of software evaluation, reasons for maintenance, types of maintenance (Perceptive, Adaptive, Corrective), designing for maintainability, techniques for maintenance.
UNIT-VI: Case Studies and Configuration Management
Comprehensive examples using available software platforms/case tools, configuration management.

Course Name: Introduction to DBMS

Course Code: 0427004   |   Internal/External Marks: 25/75   |   Credit: 4

UNIT-I: Introduction
Characteristics of database approach, data models, DBMS architecture, and data independence.
UNIT-II: E-R Modeling
Entity types, Entity set, attribute and key, relationships, relation types, roles and structural constraints, weak entities, enhanced E-R and object modeling, Subclasses, Superclasses, inheritance, specialization, and generalization.
UNIT-III: File Organization
Indexed sequential access files; implementation using B & B++ trees, hashing, hashing functions, collision resolution, extendible hashing, dynamic hashing approach implementation and performance.
UNIT-IV: Relational Data Model
Relational model concepts, relational constraints, relational algebra. SQL: SQL queries, programming using SQL.
UNIT-V: EER and ER to Relational Mapping
Database design using EER to relational language.
UNIT-VI: Data Normalization & Concurrency Control
Functional Dependencies, Normal form up to 3rd normal form. Concurrency Control: Transaction processing, locking techniques and associated database recovery, security, and authorization. Recovery Techniques, Database Security.

Course Name: Optimization Techniques

Course Code: 0427005   |   Internal/External Marks: 25/75   |   Credit: 4

UNIT-I: Linear Programming
Central Problem of Linear Programming, various definitions, statements of basic theorem and their properties, simplex methods, primal and dual simplex method, transport problem, tic-tac problem, and its solution. Assignment problem and its solution. Graphical Method Formulation, Linear Programming Problem.
UNIT-II: Queuing Theory
Characteristics of queuing system, classification of Queuing Model, Single Channel Queuing Theory, generalization of steady state M/M/1 queuing models (Model-I, Model-II).
UNIT-III: Replacement Theory
Replacement of items that deteriorate, replacement of items that fail. Group replacement and individual replacement.
UNIT-IV: Inventory Theory
Cost involved in inventory problem - single item deterministic model, economic lot size model without shortage and with shortage having production rate infinite and finite.
UNIT-V: Job Sequencing
Introduction, solution of sequencing problem, Johnson’s algorithm for n jobs through 2 machines.