Degree
Bachelor of Science (Computer Science)
Department
Department of Computer Science
School
School of Mathematics and Computer Science (SMCS)
Advisor
Dr. Tariq Mahmood, Professor, Department of Computer Science, School of Mathematics and Computer Science (SMCS)
Keywords
Machine Learning, Pipeline, Containerization, Python, Flask, Prediction, PostgreSQL
Abstract
Purpose: We needed to establish a satisfactory baseline for a reliable, intelligent Default Prediction System within the financial terrain of Pakistan. It needed to be aligned with the ethical ruling & logistical patterns of Islamic Banking. It would allow major banks to assess credit effectively & efficiently Objective: We wished to create an intuitive, data-rich frontend tailored specifically for the Loan Approval Department at Meezan, along with an ML product delivering real-time default predictions. This would be coupled with a safe, scalable database aligned with Meezan's data governance architecture. Contributions: The system has been thoroughly tested on past data, & it would have flagged half the defaults that happened within the past. Furthermore, the pipeline automates most of the process, thereby virtually eliminating the need for human intervention
Tools and Technologies Used
Python, Scikit-learn, Pandas, NumPy, Matplotlib, Google Collab, Kaggle, AWS EC2, Flask, PostGreSQL, Docker,
Methodology
We used a modular, tiered development methodology with a focus on maintainability, security, and scalability. By dividing issues among the frontend, business logic, backend services, and data storage layers, we implemented an N-tier architectural pattern.
Frontend Development: We developed a secure, lightweight user interface tailored for credit officers using Flask. SHA-256 hashing and salting were used in login-based access control to enforce security. Data entry and visualization of prediction results are made easy by interactive input forms and dashboards.
Machine Learning Model: A Random Forest model trained on historical financial data forms the basis of the system. To guarantee model robustness, input data is subjected to preprocessing procedures like normalization, categorical encoding, and missing value imputation. Clients are categorized by default risk using the risk probabilities and classifications that the model produces.
Backend Services: To manage stateless communication between the frontend and backend, we developed RESTful APIs in Flask. This layer records all interactions for monitoring and traceability, routes requests, and controls user sessions. Data Management: To safely store transactional data, user credentials, and prediction logs, a Dockerized PostgreSQL database is used to implement data persistence. Strict access controls and encryption guarantee data security in line with institutional guidelines. The system was developed iteratively, with testing and validation integrated at every stage. This included end-to-end functional testing of the user interface and backend communication, as well as an assessment of model performance on historical datasets. This approach guarantees a secure, scalable, and reliable system that is adapted to the operational requirements of financial institutions in Pakistan.
Document Type
Restricted Access
Submission Type
BSCS Final Year Project
Recommended Citation
Saeed, M. H., Ali Mughal, Z., Ahmed, S., Khalid, M., & Patel, M. (2025). Default Prediction System. Retrieved from https://ir.iba.edu.pk/fyp-bscs/10
COinS