JOISIE (Journal Of Information Systems And Informatics Engineerin. Vol. No. Juni 2025. Hlm 246-259 Received: 15 Junuari 2025 Revised: 5 Februari 2025. Accepted: 29 Juni 2025 p- ISSN: 2503-5304 e- ISSN: 2527-3116 IMPLEMENTATION OF FLUTTER AND FIREBASE TECHNOLOGIES IN MODERN LIVE STREAMING APPLICATION DEVELOPMENT Fauzi Hidayatul Anmi. Muhammad Jazman. Anofrizen. Eki Saputra. Syafril Siregar. Khairil Ahsyar. 1,2,3,4,5,6 Fakultas Sains dan Teknologi. Universitas Islam Negeri Syarif Kasim Riau. Jl. Soebrantas Km. 15 Panam. Pekanbaru. Riau email: 11850311422@students. uin-suska. id, jazman@uin-suska. id, anofrizen@uin-suska. saputra@uin-suska. id, syafrilsrg@gmail. com, tengkukhairil@uin-suska. Abstract Live streaming applications play a vital role in entertainment, education, and business communication. Despite their growing adoption, developing efficient and scalable live streaming applications remains challenging, particularly in ensuring real-time data synchronization, cross-platform compatibility, and optimal user experience under varying network conditions. This study addresses these challenges by designing and implementing a live streaming application using Flutter and Firebase, leveraging their advantages in cross-platform development and backend services. The research employs an Agile-Scrum methodology to iteratively develop and refine the application, incorporating essential features such as real-time video streaming, user authentication, live chat, and voice changers. Performance evaluation is conducted through direct user testing to assess functionality, responsiveness, and network adaptability. The results demonstrate that Flutter effectively streamlines the development of cross-platform interfaces, while Firebase ensures seamless real-time data synchronization and authentication. However, challenges persist in optimizing the application for low-spec devices and ensuring high-quality video streaming under limited bandwidth conditions. This study contributes to the field by providing a structured development approach for real-time live streaming applications, offering insights into best practices for integrating Flutter and Firebase. Future enhancements may explore automatic video quality adjustment and artificial intelligence-driven user interaction improvements to further refine the user experience. Keywords: Flutter. Firebase. Agile-Scrum. Live Streaming. INTRODUCTION Live streaming applications have become essential in various sectors, including entertainment, education, business communication, and social activities. Their popularity continues to rise with increasing internet penetration and the widespread adoption of smart devices. According to a Grand View Research report . , the global live streaming application market is projected to reach USD 247. 3 billion by 2027, with an annual growth rate of 28. 3% from 2020 to 2027. However, developing live streaming applications poses challenges, including ensuring performance efficiency, scalability, and integrating complex Flutter, a cross-platform framework, has gained prominence due to its development efficiency and ability to create consistent user experiences across various platforms. Features like "hot-reload" and a flexible user interface make Flutter a preferred choice for modern application developers ( Z o u & D a r u s , 2 0 2 4 ) . Additionally. Firebase, a backend-as-a-service platform developed by Google, provides comprehensive solutions for real-time applications, including user authentication, data storage, and synchronization. FirebaseAos scalability supports the efficient management of extensive streaming data (K. Singh et al. , 2. Combining Flutter and Firebase presents a cost effective, reliable solution for building complex applications (C. Sharma et al. , 2. The Agile-Scrum methodology complements real-time application development by offering flexibility, rapid iteration, and enhanced team collaboration. Research demonstrates that Scrum allows developers to dynamically adjust priorities based on user feedback and technical challenges (Crum. Li, & Kou, 2. This structured approach has proven beneficial for distributed software project management (Al-Ahmari et al. , 2. Examples include leveraging Scrum for effective team coordination in Flutter and Firebase-based projects and using Flutter for single code based real-time applications (Chancusig-Chisag. Martinez-Freire, https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. 247 | Jurnal JOISIE. Volume 9. Nomor 1. Juni 2025 Cantuya-Flores, & Banda Casa, 2. FirebaseAos real-time synchronization capabilities further enhance the integration process in Flutter applications (Martins et al. , 2. Despite the growing adoption of Flutter and Firebase in live streaming application development, comprehensive documentation on their integration remains limited. This study aims to document the design and development processes of a live streaming application using Flutter and Firebase, providing a valuable reference for future developers. METHODS The study employed an Agile-based software development approach, specifically the Scrum Agile was chosen for its high flexibility, rapid iteration capability, and focus on user needs. the context of live streaming application development, this method allows the team to dynamically adjust priorities based on user feedback and technical challenges encountered during the development process (Alsharari. Zainon. Letchmunan. Mohammed, & Alsharari, 2. Previous studies have shown that the Scrum approach enhances the efficiency of software project management through structured task allocation and effective collaboration (Chang & Wongwatkit, 2. The software development process in this study followed the Scrum stages as described below : Sprint Planning At this stage, the main features of the live streaming application were identified and planned. These features included real-time streaming, user authentication, and user data management. Each feature was broken down into specific tasks to be completed during the sprint (Yan, 2. Sprint Execution Sprint Execution, was conducted in two-week sprint cycles. Tasks were allocated as follows: frontend development was carried out using Flutter, selected for its cross-platform compatibility and efficient UI Backend development was managed via Firebase, which was chosen for its real-time database capabilities, scalability, and authentication services. Additionally, the integration of SDKs, particularly the ZEGOCLOUD SDK, ensured seamless live streaming functionalities, including low-latency video transmission and multi-user interactions. Flutter was chosen for its efficient cross-platform capabilities, while Firebase was selected for its scalability in handling real- time request and robust support for cloudbased application development (K. Singh et al. , 2. Sprint Review and Retrospective a Sprint Review and Retrospective session was conducted. In this phase, the developed prototypes were tested by users to gather direct feedback. The team analyzed performance metrics and identified areas for Based on these findings, necessary adjustments were incorporated into subsequent sprint cycles to refine application functionality and enhance the user experience (Visescu. Larusdottir, & Islind. The testing phase utilized black-box testing, focusing on validating key functionalities based on specific input and output scenarios. The primary test cases included user registration, login authentication, live streaming initialization, and multi-user interactions. Each of these test cases was executed, and all were successfully completed as expected. Each sprint produced clear deliverables, ranging from initial protorypes to user-testable applications. The final outcome of this process was a stable version of the live streaming application that met user needs and delivered optimal performance. This iterative process ensured that the application was developed with high quality and responsiveness to market demands. The Scrum approach proved relevant in the context of modern software development, especially in applying technologies like Flutter and Firebase for real- time applications (Zmudczynska & Chen, 2. RESULT AND DISCUSSION The implementation of live streaming technology using Flutter. Firebase, and Zego SDK follows a structured and systematic workflow to ensure security, efficiency, and real-time user engagement (Bartlett. Kabir, & Han, 2. Refer to the image below : https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. Anmi. Implementation Of Flutter And Firebase Technologies In Modern Live Streaming Application Development, 246-. 248 Figure 1. Live streaming workflow The process begins with the Flutter frontend, which functions as the primary user interface for initiating requests to access live streaming sessions (Achilleos et al. , 2. Upon user interaction, the Flutter application communicates with the Firebase backend to request the generation of a temporary authentication token. Firebase processes this request by creating a secure and time-limited token, which is encrypted and uniquely tied to the specific session or user. This token is then returned to the Flutter application to facilitate subsequent steps in the process (Sarker. Jesser, & Speidel, 2. After the token is received, the Flutter application employs the token to request entry into the live streaming room through the ZEGOCLOUD SDK. At this stage, the ZEGOCLOUD SDK plays a critical role in validating the token by verifying its authenticity and ensuring that it has not expired (Dua. Reddy. Vishnoi. Tomar, & Dua, n. This validation process safeguards the live streaming session by restricting access to authorized users, thereby maintaining the session's security and integrity (S. Sharma et al. , 2. Once the token validation is successfully completed, the ZEGOCLOUD SDK establishes a connection to the live streaming room. The Flutter application then transitions to the live streaming interface, enabling users to participate in real-time video broadcasting or viewing (Kim. Ko. Choi, & Lee, 2. Additionally, interactive features such as live chat further enhance user engagement during the session. The integration of Flutter. Firebase, and ZEGOCLOUD SDK leverages the unique strengths of each Flutter, as a cross-platform development framework, ensures compatibility across multiple devices (Android and iOS) while maintaining a responsive and intuitive user interface. Firebase provides robust backend functionalities, including secure authentication, token management, and seamless real-time data synchronization, which are essential for managing user interactions and ensuring application reliability (D. Singh. Agarwal. Marwaha. Mishra, & Pathak, 2. Meanwhile, the ZEGOCLOUD SDK incorporates advanced live streaming capabilities, delivering minimal latency and dependable video transmission for an optimal user experience. After explaining the basic workflow of live streaming technology using Flutter. Firebase, and ZEGOCLOUD SDK, it is essential to understand how this technology facilitates real-time interaction among multiple users within a single virtual room. Figure 2 illustrates the multi-user communication scheme, demonstrating how two or more users can simultaneously participate in a live streaming session with the assistance of ZEGOCLOUD SDK. The following section provides a detailed explanation of the processes involved in this scheme. https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. 249 | Jurnal JOISIE. Volume 9. Nomor 1. Juni 2025 Figure 2. Multi-user workflow In a live streaming system based on ZEGOCLOUD SDK, real-time communication between two or more users is carried out through a structured workflow. The presented diagram illustrates how two users, namely User A and User B, interact within a live streaming room using the streaming mechanism provided by the ZEGOCLOUD SDK. Below is a scientific explanation of the process: Initialization of the engine by User A User A begins the process by initializing the ZEGOCLOUD SDK engine. This step prepares the application to communicate with the ZEGOCLOUD server. The initialization includes initial configuration and connection setup, enabling the system to send or receive streaming data. User A joins the live streaming room After completing the initialization. User A sends a request to join a specific live streaming room. This request is transmitted through the ZEGOCLOUD SDK to the server, which validates the request and allows User A to enter the room. Initialization of the engine by User B In parallel. User B begins the process by performing a similar step, initializing the ZEGOCLOUD SDK This step ensures that User B establishes the same connection with the server and gains access to the streaming features provided. User B joins the same room After successfully initializing the engine. User B sends a request to join the same room as User A. The ZEGOCLOUD server processes this request, allowing User B to join the room and connect with other User B start live streaming After joining the room. User B begins streaming by publishing real-time audio or video data. This process is managed through the ZEGOCLOUD SDK, which handles the transmission of streaming data from User B's device to the server for distribution to other users in the room. Callback onRoomStreamUpdate to User A Once User B starts streaming, the ZEGOCLOUD SDK sends a callback named onRoomStreamUpdate to User A's device. This callback contains information about the streamID of the live stream published by User B. The streamID is used to uniquely identify the live stream within the room. User A plays the stream from User B Using the streamID information received. User A can play the live stream published by User B. This process enables two-way or multi- way real-time communication, whether in the form of video, audio, or a combination of both. https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. Anmi. Implementation Of Flutter And Firebase Technologies In Modern Live Streaming Application Development, 246-. 250 This mechanism enables efficient and structured interactive communication within a live streaming Through engine initialization, room management, streamID callbacks, and the ability to play live streams. ZEGOCLOUD SDK creates an environment that seamlessly supports real-time interaction between users. This implementation is highly relevant for applications requiring multi-user collaboration and communication, such as webinars, virtual conferences, or entertainment platforms based on live streaming. The standardized workflow ensures that streaming data is handled with minimal latency and high quality, delivering an optimal user experience. SYSTEM REQUIREMENTS ANALYSIS The system requirements analysis involves determining the hardware needed for software The hardware used in this research is detailed in the tables below : Table 1. PC Hardware Hardware Specifications Processor AMD Ryzen 3 RAM 4 GB RAM Hard Drive 1 TB For mobile hardware, specific requirements are essential to ensure the compatibility and performance of the application on mobile devices. The details of the mobile hardware used in this research are as Table 2. Mobile Hardware Hardware Specifications Processor 0 GHz Octa-core RAM 4 GB RAM Internal Memory 64 TB Android Version The software used in this research is listed in the table below : Table 3. Software Specifications Software Specifications Operating System Windows 10 Programming Language Dart Framework Flutter 3. Database Firebase SPRINT PLANNING The sprint planning phase is an essential step in agile development, designed to ensure that the team has a clear roadmap for completing the sprint objectives (Hoffmann, 2. During this phase, the scrum team holds structured meetings or briefings at the start of each team member to complete their assigned https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. 251 | Jurnal JOISIE. Volume 9. Nomor 1. Juni 2025 The primary goal of these seesions is to establish a realistic and achievable plan that aligns with the sprintAos overall objectives while accounting for team capacity and resource availability. The table below provides an overview of the estimated time allocated for each critical feature planned for the sprint. These estimates were carefully determined based on the complexity and priority of each feature. Table 4. Sprint Planning Result Item Priority Estimasi . Register Page High Login Page High Live Streaming Page High Register page This feature involves creating a user registration interface that allows users to input their and securely create an account. The priority level for this feature is high as it serves as the entry point for new users. The development of this feature is estimated to take 3 days, considering the design, coding, dan initial testing Login page This feature enables users to securely access their accounts by providing credentials. As a high-priority task, it is crucial for the overall functionality of the application. The estimated time for completion is also 3 days, which includes implementation and ensuring seamless integration with the backend for user Live streaming page This feature is central to the applicationAos functionality, allowing users to access or host live streaming As the most complex feature in this sprint, it has been assigned the highest estimated time of 6 This estimate covers the design of the interface, coding, integration of live streaming capabilities, and rigorous testing to ensure a smootsh user experience. The combined estimates ensure that each feature is given adequate time for development and testing within the sprint timeframe (Pham & Neumann, 2. This planning process promotes efficiency and alignment within the team, reducing the risk of delays or bottlenecks during execution. By adhering to these timeframes, the team ensures that the sprintAos deliverables are completed with high quality and meet the projectAos objectives. SPRINT EXECUTION The sprint execution phase is a critical component of agile development, during which the scrum team schedules tasks and allocates time estimates to efficiently complete the goals outlined in the sprint planning phases (Choetkiertikul et al. , 2. Each sprint is structured to span 6 days, with 6 working hours per day, ensuring a focused and manageable workload for the team. This phase emphasizes task execution, collaboration, and timely delivery of incremental features. The table below details the tasks and their respective time estimates for sprint 1, which focuses on login and registration functionalities: Table 5. Sprint 1 Sprint 1 Task Login/Register Database Setup Interface Coding Testing Total Estimasi . https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. Anmi. Implementation Of Flutter And Firebase Technologies In Modern Live Streaming Application Development, 246-. 252 Database setup : allocated 6 hours, this task involves designing and configuring the database to support user registration and login functionality. This includes schema creation and data storage implementation. Interface : allotted 8 hours, this task focuses on designing and developing the user interface for the registration and login pages, ensuring a user-friendly experience. Coding : assigned 14 hours, this task involves implementing the logic and backend processes required for login dan registration, including authentication and data validation. Testing : with 8 hours allocated, this task validates the functionality and reliability of the implemented features, ensuring they meet the defined requirements. Upon completing sprint 1, which delivers the login and registration features, the team proceeds to Sprint 2 centers on developing and refining the live streaming page. The estimated tima allocation for sprint 2 is as follows : Table 6. Sprint 2 Sprint 2 Task Estimasi . Live Streaming Database Setup Interface Coding Testing Total Databases setup : this task involves configuring the database to manage data for live streaming sessions, such as stream scheduling and participation. Interface : this task focuses on designing and implementing the user interface for the live streaming page, ensuring it is visually appealing and intuitive. Coding : the most time-intensive task, this involves writing the code to enable live streaming functionality, and ensuring stable performance. Testing : this task ensures the live streaming page operates as intended, addressing potential issues such as buffering, and UI responsiveness Once the tasks in sprint execution are comleted, the process transitions to a review phase where all the features prepared during the sprint are evaluated (Becker, 2. This review involves testing the functionality, identifying any issues or bugs, and ensuring that the features meet the initial design and user Based on the findings during the review, further refinements or adjustments may be made before progressing to the next development sprint. This iterative process ensures continuous improvement and adherence to project goals. SPRINT REVIEW During the sprint review, the results of each completed sprint are demonstrated and evaluated to ensure the features meet the requirements and function as intended (Myrvang & van den Tillaar, 2. Below are the outcomes of the review process, highlighting the key application pages and their functionalities : Register Page The register page demonstrates the process for users to register for users to register and create an account within the application. This page ensures that users can input the required details accurately and securely. https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. 253 | Jurnal JOISIE. Volume 9. Nomor 1. Juni 2025 Figure 3. Register page Login Page The login page illustrates the steps for users to login to the application securely. This page includes fields for user credentials and features secure authentication mechanisms. Figure 4. Login page Main Page The main page showcases the core features of the application. It acts as the central hub, providing users access to various functionalities such as navigationg to live streaming, checking schedules, or managing their profiles. Figure 5. Main page https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. Anmi. Implementation Of Flutter And Firebase Technologies In Modern Live Streaming Application Development, 246-. 254 Live Streaming Schedule Page The live streaming schedule page displays posts containing all the schedules for upcoming live streaming This page ensures users can view and manage upcoming events with ease. Figure 6. Schedule page Live Streaming Schedule Details The schedule details page appears after a user clicks on a specific post or schedule. This page provides detailed information about the selected live streaming session, including time, topic, dan host details. Figure 7. Schedule details page Join Live Streaming Page The join live streaming page is displayed after users click the AuJoinAy button. This page enables the host to broadcast live sessions while allowing audiences to watch the stream, participate in live chat, and use the voice changer feature for an enhanced interactive experience. https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. 255 | Jurnal JOISIE. Volume 9. Nomor 1. Juni 2025 Figure 8. Live streaming page The sprint review process is crucial for validating the progress of each sprint. It provides an opportunity to test and refine features while gathering feedback to address any issues before moving to the next development phase. Each demonstrated page ensures that the application aligns with the project goals and delivers an optimal user experience. SOFTWARE TESTING The software testing conducted in this study utilized the black-box testing method. This method focuses on examining the functionality of the software without considering its internal structure or coding The purpose of this testing approach is to ensure that the software meets its functional requirements as intended. The result of the black-box testing are detailed in the table below: Table 7. Software Testing Result Expected Result Test Case Register Data is saved to the firebase, and the page redirects to the login page Result Success Login succeeds and the user is directed to the main page Login Live streaming schedule Success Displays the live streaming schedule page Success Details of a live streaming schedule page Displays the details of the selected live streaming schedule page Success Join live streaming Display the live streaming room Success https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. Anmi. Implementation Of Flutter And Firebase Technologies In Modern Live Streaming Application Development, 246-. 256 The black-box testing methodology was employed to validate key functionalities of the software, focusing on user interactions and outputs based on specific input scenarios (Hassija et al. , 2. The black-box testing results demonstrated that all testet features of the applications met the expected This validates the softwareAos readiness for deployment, ensuring that the critical functionalities operate effectively to deliver an optimal user experience (Denden. Tlili. Salha, & Abed, 2. In addition to validating the core functionalities of the application, the study also evaluated the live streaming performance across various network types and device specifications. The results of the performance testing are summarized in the table below: Table 8. Live streaming performance testing Test Skenario Live streaming on Wi-Fi (High-end Live streaming on 4G network (High-end Live streaming on Wi-Fi (Low-end Live streaming on 4G network (Low-end Device Specification Streaming Expected Latency . Latency . Result GHz Octa- core, 6 GB RAM O 200 Success GHz Octa- core, 6 GB RAM O 200 Success O 300 Success O 300 Success O 600 Success O 700 Success GHz Quad- core, 2 8 GHz Quad- core, 2 GB RAM Live streaming on 3G network (High-end 0 GHz Octa- core, 6 GB RAM Live streaming on 3G network (Low-end GHz Quad- core, 2 Test Scenario. The test scenario explains the specific conditions being tested, such as the use of the application with particular network types (Wi-Fi, 4G, or 3G) and device configurations. Purpose: To ensure the application provides optimal live streaming performance under various network and device Relevance: These scenarios simulate real-world situations experienced by users in different environments, ensuring the application performs well universally. The network type refers to the type of internet connection used during testing, which influences the speed and stability of live streaming. Wi-Fi: The fastest and most stable connection, ideal for home or office use. 4G: A fast mobile network with low latency, though performance may vary depending on the signal strength of the carrier. 3G: A slower connection used to simulate low-bandwidth network conditions. Analysis: The application's performance on Wi-Fi is expected to be optimal, while testing on 3G evaluates its tolerance to less ideal network Device specifications, include the hardware configurations used during testing, which can affect the device's ability to handle live streaming processes. High-end Device: 0 GHz Octa-core processor with 6 GB of RAM. This configuration provides strong performance and is ideal for testing on premium devices. Low-end Device: 1. 8 GHz Quad-core processor with 2 GB of RAM. https://doi. org/10. 35145/joisie. JOISIElicensed under a Creative Commons Attribution-ShareAlike 4. 0 International License (CC BY-SA 4. 257 | Jurnal JOISIE. Volume 9. Nomor 1. Juni 2025 This configuration simulates entry-level devices with limited capabilities, often used by users with basic Analysis: Comparing performance on high-end and low-end devices allows evaluation of the application's compatibility across device classes. Streaming latency is the measured time . n millisecond. between a user's action and the corresponding data response displayed in a live streaming session. Low: Streaming latency under 200 ms ensures smooth and real- time interactions. Moderate: Latency between 200Ae600 ms is acceptable for most streaming applications but may exhibit slight delays. High: Latency above 600 ms can disrupt the user experience, particularly in interactive features like live chat. Analysis: Streaming latency data is used to assess the application's performance under varying network and device conditions. Expected Latency. The acceptable latency threshold is defined based on specific performance criteria to ensure an adequate streaming experience for users. O 200 ms: Ideal for stable networks like Wi-Fi and high- end devices. O 300 ms: Still acceptable for low-end devices or 4G networks. O 600 ms: Suitable for slower networks like 3G. Analysis: By establishing these thresholds, the testing process identifies areas that may require optimization. The Results column indicates whether the live streaming performance in each scenario meets Success: The application meets the expected latency thresholds for all tested scenarios. Analysis: All tests in the table showed "Success," indicating the application is well-designed to handle a variety of conditions. Conclusion This table demonstrates that the live streaming application: Provides optimal performance on Wi- Fi with high-end devices, achieving latency as low as 150 ms. Remains reliable on low-end devices and 3G networks, with slightly higher latency that is still within acceptable limits. Utilizes Firebase as the underlying technology to maintain consistent application performance across various conditions. If further optimization is needed, efforts can focus on reducing latency for 3G networks or improving efficiency on low-end devices. This table confirms that the application is suitable for use by a diverse range of users in various environments and on different devices. CONCLUSION This study successfully developed an Android-based live streaming application using Flutter and Firebase through the Agile- Scrum approach. The application effectively implemented core features such as real-time streaming, user authentication, live chat and voice changer functionalities. Flutter enabled efficient cross-platform development, while Firebase supported reliable real-time data synchronization. The study is relevant for the development of similar applications in the future, with potential adaptations in various sectors such as education and entertainment. However, there are limitations, including compatibility with low-spec devices and the adjustment of features for diverse network conditions, which present opportunities for further research. Recommendations for future development include optimizing the application for low-spec devices, integrating automatic video quality adaptation features, and applying artificial intelligence to enhance user This study is expected to serve as a reference for developers looking to implement similar REFERENCES