Sixth Semester

BPA 423: Computer Applications

This course aims to provide students with a fundamental knowledge of data storage and management technology. It familiarizes students with flat file system, relational DBMS and some newer concepts like NoSQL and ways to access data programmatically using Python. It makes them proficient in using RDBMS system. Students should be able to parse and extract useful information from raw data for management and administration using DBMS.


  1. Introduction
    • Characteristics and definition of database and database management system
    • Database history
    • Organization of records
    • File organizations
  2. Database Systems, Concepts and Architecture
    • Database environment
    • DBMS architecture and data independence
    • Data models
    • E-R model; Entity types, attributes, keys and relationship types
    • Codd’s Rule
    • Relational Model: Introduction to relational db; Relational algebra and kinds of relation
    • Integrity constrains, and integrity violations
    • Transactions and ACID properties
    • Access control and authorization; Security and views
    • Parallel processing in RDBMS and NoSQL
  3. Information storage technologies
    • Data storage in unstructured, semi-structured and structured format
    • Introduction to Flat files and types of data stored: TXT, CSV, XML, JSON, YAML
    • Parsing and accessing different types of flat file through Python
    • Introduction to RDBMS
    • Web and big data: web event data and customer behavior, large Data set
    • NoSQL – column, document, key-value, graph
    • Comparison between different types of databases
  4. Introduction to SQL
    • DDL, DML and DQL
    • SELECT, WHERE, LIKE, ORDER BY, GROUP BY, Having clause, DISTINCT, AND/OR operator
    • CRUD operations in Python
    • Null values, is, like, =, between etc.
    • Database connection with python
  5. Introduction to Advanced SQL
    • Constraints
    • Views
    • Joined relation
    • Set operations

Lab Works

  • Parsing CSV, JSON etc. with Python
  • Simple SQL commands: SQL Introduction, SELECT query, WHERE, LIKE, ORDER BY, GROUP BY, HAVING, DISTINCT keyword, AND, OR operator
  • Introduction to Advanced SQL commands: Set operations, joins, views
  • CRUD operation with Python

Project work: Applications of Database Systems in Organizations

Students themselves will have to study and submit the report on database systems of any one of the Nepalese origination (such as payroll, inventory, airlines reservations, online banking systems).


  • Date, C.J., An introduction to Database Systems, New Delhi: Pearson Education
  • Hansen, Giary W. and Hansen, James V., Database Management and Design, New Delhi: Prentice Hall of India Pvt. Ltd.
  • Silbersphatz, Alraham, Database Systems Concepts, New York, McGraw Hill Company