Implemented Features - G33-Moviles-2026-1/Wiki GitHub Wiki
List of Implemented Features (IF)
This sprint delivered the core functionality of AndeSpace across both mobile implementations (Flutter and Kotlin), together with the supporting analytics pipeline and context-aware behaviors. The implemented features are grouped below by platform and functional area.
1. Flutter Implementation
The Flutter team implemented features related to room discovery, authentication, schedule-based recommendations, bookings, analytics instrumentation, and context-aware adaptation, following a Clean Architecture + Feature-First approach with Repository Pattern, Use Cases, Dependency Injection, and DTO-based data handling. :contentReference[oaicite:0]{index=0}
1.1 Core Screens Implemented
The following screens were implemented in Flutter:
- Homepage
- Header
- Footer
- Bookings
- Schedule screens (3)
- Login
- Sign Up
- Room Detail
- Search Results
1.2 Authentication Features
The Flutter version includes the following authentication-related features:
- User sign up
- User login
These features were integrated as part of the app’s access and personalization flow.
1.3 Room Discovery and Search Features
The Flutter team implemented functionality for helping users discover available spaces on campus, including:
- Search results view for rooms
- Room detail visualization
- Nearby room recommendations based on user location
- Top available rooms ordered by estimated walking time
- Location-based recommendation flows for nearby rooms
These features support the project goal of helping students quickly find suitable and available spaces during free gaps between classes. :contentReference[oaicite:1]{index=1}
1.4 Booking Features
The Flutter implementation includes booking-related functionality such as:
- Bookings screen
- Support for booking analytics
- Tag-based booking analysis
- Room usage classification through booking tags
- chilling
- studying
- teaching
This functionality supports business analysis on how rooms are used by building and time window.
1.5 Schedule Features
The Flutter team implemented schedule-related capabilities, including:
- Schedule screens
- Schedule upload/import flow
- Schedule-based recommendation support
- Gap-based room recommendation
- Integration with backend-connected smart recommendations based on the uploaded schedule
These features allow the application to detect free schedule gaps and recommend rooms accordingly.
1.6 Context-Aware Features
Flutter includes context-aware adaptations using phone sensors and user context:
- GPS-based context awareness
- Recommendations based on the user’s current location
- Light/Dark mode adaptation
- Frontend implementation of theme switching
- Location-based smart features
- Nearby room suggestions in the frontend
1.7 Smart Features
The Flutter version also implemented smart recommendation features such as:
- Gap-based room recommendation with fixed weights
- Schedule-based smart room recommendation connected to the backend
- Nearby recommendation logic based on approximate user position
1.8 Analytics Features Implemented in Flutter
The Flutter implementation instrumented events for the following analytics/business questions:
- Most used booking tags by building and time window
- Most common schedule import method
- Schedule import drop-off by step
Tracked analytics events include:
booking_createdschedule_import_step
These events are part of the app analytics pipeline and feed the backend aggregation endpoints and Power BI dashboards.
2. Kotlin Implementation
The Kotlin team implemented features focused on room filtering, nearby room discovery, authentication, schedule handling, analytics instrumentation, and UI behavior, using an MVVM architecture with patterns such as Repository, Singleton, and Observer.
2.1 Core Screens Implemented
The following screens were implemented in Kotlin:
- Homepage
- Header
- Footer
- Bookings
- Results
- Room Detail
- Upload Your Schedule
- View Your Schedule
- Login
- Sign Up
2.2 Authentication Features
The Kotlin version includes:
- User sign up
- User login
These were implemented across both frontend and backend integration.
2.3 Room Discovery and Search Features
The Kotlin implementation includes discovery and recommendation features such as:
- Results screen
- Room detail screen
- Room matching based on a specific schedule gap and utilities
- Nearby recommendations
- Location-based room recommendations in the frontend
2.4 Filtering Features
The Kotlin team implemented features related to filter usage and analysis, including support for filters such as:
- Place
- Time
- Utilities
- Close to me
These filters also support the corresponding analytics question regarding which filters are applied most often.
2.5 Schedule Features
The Kotlin version includes:
- Upload your schedule
- View your schedule
- Support for schedule-based features
- Schedule-related authentication and backend integration
2.6 Context-Aware Features
The Kotlin app also includes context-aware features:
- GPS-based recommendations
- Nearby context-aware suggestions
- Light sensor–based dark mode switching
This enables the application to adapt to environmental conditions and user context.
2.7 Smart Features
Implemented smart features in Kotlin include:
- Nearby room recommendation
- User-based room suggestions
- Schedule- and utility-aware room matching
2.8 Analytics Features Implemented in Kotlin
The Kotlin implementation instrumented analytics to answer questions such as:
- Which filters are applied most often
- Where users spend the most time browsing in the app
Tracked analytics events include:
open_screen_timestamphome_filters_opened
These events are used later in dashboards and backend aggregations.
3. Shared Analytics and Data Pipeline Features
Beyond the mobile features themselves, the sprint also implemented an end-to-end lightweight analytics pipeline to support the project’s business questions.
3.1 Event Collection
The application sends analytics events from the frontend to the backend using:
POST /analytics/events
Implemented analytics event categories include:
- Screen browsing behavior
- Filters usage
- Bookings / booking purpose
- Schedule import funnel
3.2 Backend Analytics Endpoints
The backend exposes analytics-focused endpoints that transform and aggregate the collected data, including:
GET /analytics/screen-time-statsGET /analytics/events?event_name=...GET /analytics/schedule-import-funnel
3.3 Visualization Layer
The sprint also included support for Power BI dashboards for:
- Screen time analysis
- Filters usage
- Booking tags
- Schedule import funnel
This allows the collected events to be transformed into dashboards for decision-making and project validation.
4. Architectural and Technical Features Implemented
The sprint also established the architectural foundations of the system.
4.1 Flutter Architecture
Flutter was implemented using:
- Clean Architecture
- Feature-First organization
- Repository Pattern
- Use Case Pattern
- Dependency Injection
- DTO / Data Model Pattern
- Reactive state management with controllers/notifiers :contentReference[oaicite:2]{index=2}
4.2 Kotlin Architecture
Kotlin was implemented using:
- MVVM
- Repository Pattern
- Singleton Pattern
- Observer Pattern
These architectural choices improve maintainability, separation of concerns, testability, and scalability.
5. Summary of Implemented Features in This Sprint
In summary, this sprint implemented:
- Authentication features (sign up and login)
- Core navigation screens
- Room search and room detail screens
- Bookings features
- Schedule upload and schedule visualization
- Location-based recommendations
- Gap-based and schedule-based smart recommendations
- Light/Dark mode adaptations
- Analytics event tracking
- Backend analytics endpoints
- Power BI dashboard integration
- Scalable architectural foundations for both Flutter and Kotlin
Overall, the sprint delivered a functional vertical slice of the AndeSpace solution, covering both user-facing features and technical infrastructure required for personalization, recommendations, analytics, and future scalability. :contentReference[oaicite:3]{index=3}