- Introduction
The client for this project is WestJet, a Canadian airline headquartered in Calgary, Alberta. WestJet has over 15,000 employees and in 2025 served more than 22.6 million guests.[1] The objective is to build an extensible and secure, self-serve user interface (UI) that allows non-technical administrators to perform data management tasks. This includes viewing and handling guest transaction data and data related to guest rewards accounts.
Currently, operations like inspecting cache states or toggling application features require direct database access or requests for manual developer support. By building these self-serve interfaces, this project will streamline operational workflows and improve organizational efficiency in a safe and maintainable way.
2. Minimum Viable Product
The core focus of the capstone project will be the end-to-end design, implementation, and testing of two primary administrative modules within the existing dashboard infrastructure:
- Redis Cache Lookup Interface: a user-friendly frontend interface that integrates with Digital Platform Services (DPS) endpoints to read and display active cache content, allowing administrators to inspect stale or problematic data visually.
- Feature Flag Control UI: a management interface that fetches application feature flag configurations stored as JSON arrays in Azure Blob Storage. It will render flags dynamically in a filterable table, permit authorized users to toggle states, preview the structural JSON modifications, and atomically persist changes back to cloud storage.
3. Software Engineering Process
The project will follow a Scrumban methodology. Scrumban is the combination of two popular Agile frameworks, Scrum and Kanban. This approach will utilize the structured backlog refinement of Scrum with the continuous, visual flow control of Kanban. Processes within Scrumban include:
- Gitflow Workflow: Version control will utilize a structured branching strategy to isolate new features in dedicated branches. Once fully developed, tested, and reviewed, code is merged into a staging environment for integration before being officially tagged and released to production, ensuring a highly organized and traceable deployment pipeline.
- Backlog & Estimation: Requirements will be broken down into individual user stories within Jira, assigned story point estimates, and tracked visually through development, code review, and QA columns.
- Weekly Touch Bases: Progress tracking, blockers, and iterative milestone reviews will be managed via a weekly stakeholder sync.
4. Implementation Roadmap & Timeline
The 16-week distribution plan accurately accounts for research, active development blocks, and academic review phases:
- Week 0: Training
- Train up on the tech-stack and tooling.
- Weeks 1 – 2: Foundation, Architecture & Requirements
- Conduct API contract reviews with the Digital Platform Services (DPS) team to verify endpoint structures for cache clearing and lookup.
- Refine user stories in Jira and estimate story points using the Scrumban methodology.
- Set up the local development environment using Vite, Yarn, Git, and Storybook.
- Weeks 3 – 6: Module 1 Development — Redis Cache Lookup
- Build isolated frontend user interface components within Storybook for cache data presentation.
- Implement state management and asynchronous server-state fetching using Pinia and Tanstack Query for Vue.
- Integrate the lookup logic with protected backend endpoints provided by DPS.
- Establish success and failure feedback toast notifications for user interactions.
- Implement component and store unit tests using Vitest and Vue Testing Library, aiming for 80%+ code coverage on critical paths.
- Weeks 7 – 10: Module 2 Development — Feature Flag Management
- Develop a sortable, filterable UI data table to fetch and display feature flag JSON schemas from Azure Blob Storage.
- Implement user interface toggle controls to adjust flag states safely.
- Build a preview configuration modal that renders a JSON diff to allow administrators to verify structural changes before saving.
- Write the persistence logic to save atomic JSON updates back to cloud storage.
- Implement component and store unit tests using Vitest and Vue Testing Library, aiming for 80%+ code coverage on critical paths.
- Weeks 11 – 13: Testing, Security & Quality Assurance
- Verify role-based access control (RBAC) visibility, ensuring specific administration buttons disable or hide depending on token claims.
- Run integration tests to verify session persistence, idle timeouts, and logout synchronization.
- Collaborate with the Profile Apps Business-As-Usual (BAU) team for internal QA support.
- Weeks 14 – 16: Final Review, Documentation & Academic Assessment
- Compile formal design analysis and implementation of documentation outlining the engineering process.
- Conduct an internal review and live feature demo with the digital technology team stakeholders.
- Record and edit the final video walkthrough, demonstrating the software’s end-to-end functionality for academic evaluation.
- Submit the complete package for final grading and employer evaluation.
6. References
[1] WestJet. (2026). WestJetting Since ‘96. Retrieved from https://www.westjet.com/en-ca/who-we-are/brand