C++ · OOP · Duo Micro Project · Dec 2021 – Jan 2022

Travel Document Management System
C++ OOP Records & Eligibility System

C++ OOP (encapsulation / inheritance / polymorphism) File I/O persistence Console application

About the project

A 3rd-semester B.Tech IT college micro (duo) project: a menu-driven console records system for passenger travel documents — passport details, VISA information, vaccination status, and criminal records — with an automated international travel-eligibility check, modelled with classes and inheritance.

What I built / how it worked

  • Core OOP design — a base Details class holding encapsulated protected fields, with derived classes Passport, Visa and Others using virtual display()/modifier() methods (polymorphism) and friend functions (search, sort, eligibility, saver).
  • Data fields — name, age, passport number, countries visited with per-country visit counts and VISA status, vaccination dose count + vaccine name, criminal-record status, passport issue/expiry, and Normal vs VIP passport type.
  • File persistence — records read from a plain text file and written back out to a new file after updates (database-less persistence).
  • Travel-eligibility engine — declares a passenger eligible/ineligible based on passport validity, at least 2 vaccination doses, no open criminal record, an active VISA for the destination, and a per-year visit cap (≤ 3) for Normal passports.
  • Renewal & VISA flows — passport renewal (re-issued with new validity), VISA renew/apply, and record updates for vaccination and criminal status.
  • Menu-driven flow — search by name/passport number, sort by countries visited, with error/exception handling for missing input files.

Feature highlights

  • OOP class + inheritance modelling of passenger travel documents (passport, VISA, vaccination, criminal records).
  • Automated travel-eligibility check with explicit business rules.
  • Console menu covering search, sort, passport renewal, VISA renew/apply, and record updates.
  • Virtual functions (polymorphism), friend functions, and exception handling.
← Back to all projects