Cartesian Planes (Airlines System)
Data Structures and Algorithmic Logic in a User-Centered Interface
Cartesian Planes is a two-part software development project that translates complex data management into a functional, conversational airline reservation system. By combining Parts 1 (Search & Navigation) and 2 (Passenger & Resource Management), I developed a comprehensive Python application that performs real-time data lookups while prioritizing a polished, user-friendly command-line experience.
Project Specifications
Role: Lead Software Developer
Context: CSC 201: Data Structures and Algorithm Analysis | University of Tampa
Tech Stack: Python, Thonny, MacBook Air
Key Deliverables: Integrated Flight & Passenger Management System
The Vision: A Conversational Data System
The objective was to move beyond a simple list-traversal assignment and build a cohesive brand for a flight company. I approached the coding process by designing a conversational interface, making the program feel like an interaction with a real airline representative rather than a static database query.
Key Coding & Logic Objectives:
Efficient Data Traversal: Implementing algorithms to search through lists of destinations, flight numbers, and passenger details with minimal latency.
Information Architecture: Organizing complex nested data (flights, passengers, meal assignments) into a logical hierarchy that is easy for the user to navigate.
Personalized Interaction: Designing a prompt-based system that allows users to interact with the data through their numerical input.
The Process: Problem Solving Through Code
This project challenged me to integrate advanced data structures into a seamless, multi-step user journey:
Part 1: The Foundation (Search & Discovery): I built the core system to browse flight locations and descriptions. I implemented a search algorithm that allowed users to look up flights by destination or view a complete list of current flights, ensuring the output was formatted like a professional travel site.
Part 2: Expansion (Passenger & Resource Management): I expanded the system's complexity by adding passenger tracking and resource allocation. This required creating additional data layers to store passenger names, assign specific meals, and retrieve individual passenger info without disrupting the existing flight data.
Creative Problem Solving: To make the terminal output more engaging, I added personalized airline branding and dialogue. I solved the challenge of data density by creating clean, readable printouts that displayed only the specific flight details requested by the user.
Algorithmic Maintenance: I focused on keeping the code organized and modular, ensuring that the new Part 2 features integrated perfectly with the Part 1 search logic without creating bugs or data conflicts.
Reflection: What I Learned
This project was a great way to strengthen my Computer Science skills because it forced me to think about how data is organized and how users interact with it. I really enjoyed the problem-solving aspect of adding passenger and meal data into the existing flight list without making the code messy. It taught me that even a technical Data Structures assignment can have a creative side if you focus on making the final output feel like a real-world product.
Looking Ahead: Predictive Systems & UX
Developing this airline system gave me a deeper understanding of Data Visualization, which is a significant part of my Honors Thesis research. In my thesis, I am looking at how users process digital content, and I would love to take the logic I used here and combine it with eye-tracking to see which parts of an airline search results page users focus on first. In the future, I want to explore how AI and Machine Learning can be used to make these booking systems even smarter, like predicting which meal a passenger might want or automatically suggesting the best flights based on their past choices.