Skip to content

A comprehensive Database Management System (DBMS) project designed to demonstrate core database concepts, architecture, and practical implementation. This repository is intended for academic, research, and practical learning purposes.

Notifications You must be signed in to change notification settings

De-Coder05/Blood-Bank-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

DBMS Project

A comprehensive Database Management System (DBMS) project designed to demonstrate core database concepts, architecture, and practical implementation. This repository is intended for academic, research, and practical learning purposes.


Table of Contents


Project Overview

This project provides an end-to-end demonstration of a Database Management System, covering the essential components, layered architecture, and practical database operations. The aim is to showcase how a DBMS manages, secures, and optimizes data for various users and applications.


Features

  • Data definition, manipulation, and retrieval (CRUD operations)
  • Transaction management with ACID properties
  • Data security and integrity controls
  • Multi-user concurrency support
  • Data backup and recovery mechanisms
  • Performance optimization (indexing, partitioning, caching)
  • User roles: Administrator, Developer, End-user

DBMS Architecture

The project follows the standard three-tier DBMS architecture:

Layer Description
External Layer User interface/views; allows different users to see data as per their requirements
Conceptual Layer Logical structure of the database; defines entities, relationships, and constraints
Internal Layer Physical storage of data; handles indexing, partitioning, and low-level data organization

Components of the DBMS

Component Description
Hardware Physical devices (servers, storage, network, I/O devices)
Software DBMS software (e.g., MySQL, Oracle), OS, network software, application programs
Data User data, metadata (data about data), application metadata
Procedures Instructions for setup, backup, recovery, access control, and report generation
Database Access Language SQL or similar languages for querying and manipulating data
People DB administrators, developers, end-users

Data Model & Schema

  • Entity-Relationship (ER) model for conceptual design
  • Relational schema for logical design
  • Example entities: User, Product, Order, Transaction
  • Relationships: One-to-many (User–Order), Many-to-many (Product–Order)
  • Constraints: Primary keys, foreign keys, unique, not-null

Functional Requirements

  • User registration and authentication
  • Data entry, update, and deletion with validation
  • Querying data with filters and sorting
  • Transaction support (commit, rollback)
  • Access control based on user roles
  • Reporting and analytics (e.g., sales reports, user activity)
  • Backup and restore functionality

Implementation Details

  • Tables created using SQL DDL statements
  • CRUD operations via SQL queries
  • Transaction management ensuring ACID properties:
    • Atomicity: All steps in a transaction complete or none do
    • Consistency: Database remains in a valid state
    • Isolation: Concurrent transactions do not interfere
    • Durability: Completed transactions are permanent
  • Indexes and partitions for performance
  • Triggers and stored procedures for automation

Optimization & Security

  • Indexing and data partitioning for fast access
  • Caching frequently accessed data
  • Access control: Role-based permissions
  • Data encryption and audit trails for security
  • Validation rules to ensure data integrity

Backup & Recovery

  • Regular automated backups (full and incremental)
  • Recovery scripts to restore data after failure
  • Backup verification and logs

Deployment & Usage

  1. Install a compatible DBMS (e.g., MySQL, PostgreSQL, Oracle)
  2. Execute procedures and queries as needed
  3. Use provided sample queries for testing and reporting

Contributors

  • Devansh Wadhwani
  • Arianna Vohra, Aaditi Verma, Ananya

References

About

A comprehensive Database Management System (DBMS) project designed to demonstrate core database concepts, architecture, and practical implementation. This repository is intended for academic, research, and practical learning purposes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published