176
社区成员




EmoGenius Crew —— Beta sprint summary essay
Which course does this assignment belong to | 2301-MUSE Community |
---|---|
Assignment Requirement | Teamwork——Beta Sprint |
Team name | EmoGenius Crew |
The goal of this assignment | To finish the Beta Sprint Essay |
Topical Collection Essay | EmoGenius Crew - Beta Sprint Topical Collection of Essays |
Other references | No reference |
Expected complete functionality | Completeness |
---|---|
Optimize page style and interaction for consistent visual design across all pages. | Completed |
Adjust UI layout of the main interface, introduce two new function buttons, and modify the display of personal information. | Completed |
Refine UI design of the "Emotion Diary" module: adjust inner padding of diary text and page font. | Completed |
Enhance emotional calendar interface, enrich interface design and functionality of emotion diary. | Half done |
Deploy the recording playback module within the emotional forum module, as well as the voice change module. | Half done |
Optimize the UI interface of the emotional forum interface to make the interface more warm | Completed |
Deploy the music player module and optimize the music player interface. | Completed |
Optimize the dataset for emotional recognition to reduce recognition errors. | Completed |
Optimize the emotional recognition algorithm to accelerate recognition speed. | Completed |
Add the user's default profile picture to avoid new users being unable to enter the personal information module | Completed |
Incomplete function description:
When using Fmod to implement voice modulation, the following technical difficulties were encountered:
Integration issues: Ensuring correct configuration and integration of the Fmod library into the Android Studio project.
Cross-platform: Implementing a cross-platform build system using CMake.
Code implementation: Potential issues with implementing the voice modulation, requiring correct invocation of Fmod's interfaces and data processing.
Reasons for inability to achieve implementation include:
Technical complexity: In-depth understanding of cross-platform technology, audio processing, and Android development knowledge is required for integrating and using Fmod.
Lack of documentation and examples: Insufficient detailed documentation and examples specifically for integrating Fmod with Android Studio, making it difficult to find the correct implementation approach.
Progress level:
Import the Fmod library and change the timbre in JIN by adjusting sound parameters
Expected new features | Completeness |
---|---|
Introduce animated playback to enhance interface dynamics. | Not finished yet (At present, only some basic jump animations have been completed, and no complex dynamic UI has been implemented.) |
Register an account, purchase a server; apply for a domain, configure resolution services, and bind IP; apply for an SSL certificate; deploy the server; upgrade the interaction between the frontend and backend to HTTPS requests. | Not finished yet (We are currently applying for a certificate review. In order not to delay the progress of the project, we will temporarily deploy the backend on Alibaba Cloud using the http protocol.) |
Additional application operation manual should be added, so that new users can quickly understand the product functions and use methods | Completed |
It realizes the encryption protection when the password is input, and protects the user's privacy security | Completed |
The mailbox format is checked to ensure the correctness of the user's mailbox | Completed |
Improvement plan | Completion |
---|---|
Plan the UI layout in detail to avoid the need for UI reset during development. | Completed |
The front-end developers introduce the actual development results to the UI designers in detail, especially the difference between the planning plan and the actual development, to ensure that the UI designers can understand the layout issues during development. | Completed |
The team leader actively inquires and checks the development progress of the team members, understands whether the team members encounter problems and can solve them independently, and avoids the team members' default in work, which will hinder the overall progress. | Completed |
The team leader actively summarizes the code completed by team members and integrates it into the overall project file to avoid excessive arrears and unintegrated code, which may lead to confusion in some functions. | Completed |
Reasonably distribute the workload and balance the tasks of the UI group, front-end group and back-end group. Ensure that the front-end team is not overburdened with tasks and resolve uneven task distribution as early as possible. | Completed |
Adequate pre-project preparation: Clarify the project goals, requirements and scope to avoid delays and conflicts caused by changes in requirements or poor communication later. | Completed |
Develop a detailed project plan that considers possible risks and issues and allows for buffer time. | Completed |
Set reasonable checkpoints: Set checkpoints in the project plan to monitor and evaluate project progress to ensure it proceeds as expected and problems are resolved in a timely manner. | Completed |
Strengthen change communication and collaboration: During the change management process, strengthen communication and collaboration within and outside the team, including information sharing and coordination and cooperation among team members, to ensure the smooth implementation and follow-up of changes. | Completed |
Our application has cleverly designed two login and registration methods, one is the traditional account password login, and the other is the efficient face recognition login, aiming to better meet the diverse needs of users and improve the overall user experience. In addition, in order to let new users understand our products faster, we provide the corresponding application operation manual.
Method 1: Username/Password
Users can enter the system by registering an account and setting a password. When registering, the user must ensure that the password entered twice is the same; In order to facilitate users to log in quickly, we provide a "remember password" function; At the same time, the front and back end communication ensures the uniqueness of registered accounts and the accuracy of passwords when logging in. Finally, we ensure the privacy of the account by setting the password to *
Method 2: Facial Recognition Login
The unique face recognition login method brings users a more amazing experience. The system intelligently saves the user's face information, so that the user can quickly complete the login through face recognition in the subsequent login process
Users can freely modify their profile picture, name, personal signature, gender, age and other personal information on their personal homepage. This enables users to show their personality and unique characteristics. In addition, any changes to avatars and personal signatures will be synced on the app's home page, which also serves as a "postcard" for forum socializing, allowing the software to better reflect the user's personal style and interests.
In the Emotion Diary module, users can write a diary and store their mood skillfully. Our project uses a deep learning model to analyze the emotional polarity of diary contents, which not only helps users record their emotional history, but also provides warm emotional feedback and intimate suggestions. In order to make emotional expression more colorful, we have developed rich text editing functions on the basis of text input, and users can set font styles and embed vivid photos in the diary to promote the depth management and vivid expression of emotions. In addition, our emotion analysis model algorithm supports both Chinese and English input, and both Chinese and English diaries can realize emotion recognition. Finally, we add voice diary module, users can input today's feelings through voice, quickly complete today's emotional record.
The Emotion diary module mainly covers the following functions: write a diary, save it and view and delete it at any time (history), quickly get the emotion polarity and related suggestions based on the diary content, and the interface will be presented in a unique way as different emotions change. In addition, we introduced a rich text editor that allows users to adjust font styles, highlight key information, and even add eye-catching images to add more layers and dimensions to emotional expression.
In order to better present the diversity of emotions in the forum, we designed and launched the Emotion forum module. The emotion forum is mainly divided into positive emotion zone and negative emotion zone, and the emotion in different zones is the same, and the post content of the corresponding emotion polarity is displayed.
Posts posted by users are emotion recognized on the back end, and posts are posted in different partitions based on emotional polarity. At the same time, interactive operations such as "like" and "comment" can be carried out in the forum to promote support, sharing and emotional resonance between users, create a positive atmosphere, and give sad souls companionship and a sense of belonging.
The deep learning model used in the back end is a hot pre-training model in the field of natural language processing in recent years. Based on the work of Alpha Sprint, our team climbed and marked thousands of texts with bright emotional colors as data sets for training, and the final accuracy was as high as 94.588%
The chatbot module uses the relevant API of OpenAI to design a chatbot suitable for emotional communication by adjusting the relevant parameters. Users can also choose to adjust the robot's mental activity and choose different models to meet their conversation needs.
Such a design brings many benefits. First of all, users can choose to communicate with the robot according to their emotional state, so as to obtain emotional catharsis and relief. Secondly, users can adjust the robot's thinking activity and choose different models according to their own preferences and needs, making the dialogue more close to the user's expectations. Such personalized design improves the user experience, enhances the interaction and emotional connection between the user and the robot, and helps to improve user satisfaction and stickiness.
Emotional calendar has display and record function. When the user enters the screen, the calendar of the current month is displayed, and the date of the current day is marked with orange. Depending on the mood of the day, users can choose to be happy or sad, and the color of the date will change accordingly. Users can input daily diary and save, every day you can view the day or previous emotional diary, and provide query, add and delete functions, convenient for users to manage and review their emotional records. This design makes it easy for users to record and track their emotional changes, helping them to better understand their emotional state.
When you are immersed in recalling the emotional diary of the whole year, or creating the same emotional resonance with others in the emotional forum or emotional assistance, one soothing song after another must be the best choice. Users can create different categories of mood music in our player and save their favorite music in it. At the same time, we also provide a simple music download channel for users to play offline.
Name | Sprint experience | Sprint harvest | Experience |
---|---|---|---|
WangYifan | During the whole beta testing phase, I served as the general project leader and the front-end team leader. As the general manager of the project, I reasonably grasps the overall progress of the project and makes a more detailed plan before the sprint begins. At the same time, I comprehensively consider the ability and expertise of team members, and assign tasks in a targeted manner, so as to make the best of them. As the frontend team leader, the main task of this beta sprint was to achieve HTTPS communication, real machine debugging, and improve and fix small bugs in the project. I took HTTPS communication as the focus of the first phase, but the backend deployment of HTTPS protocol was too late. Finally, I adjusted my strategy in time and sacrificed a certain amount of network information security to preserve the progress of the whole project. In the testing phase, I actively participated in the user testing, modified the problems in the debugging of the real machine, and additionally improved the product functions. | As the general manager of the project, I realize that a team should always maintain cohesion and unity; Actively explore the ability of each team member, assign appropriate tasks to him; Actively adjust the task contradictions and conflicts in the group to avoid the failure of work docking; Plan the progress of the project properly and leave enough buffer. Adjust the strategy in time to the obstacles that hinder the progress of the project. As the front-end team leader, I was responsible for most of the core functions of the whole front-end: personal information, sentiment diary, portrait recognition, sentiment analysis, etc. In this process, I have mastered more skills of Android development: database operation, network communication protocol, UI production, front-end and back-end communication, etc. | During the beta sprint, I learned a lot about the importance of front-end interaction and collaboration between team members. At this stage, the team works more closely, and everyone gives full play to their expertise and solves problems together. As a person in charge, I not only accumulated my own software knowledge, but also learned how to effectively grasp the overall progress and know when to push the progress of the project. I deeply realize that a tacit and efficient team can better deal with challenges under pressure and work together to push the project forward. I felt a great sense of accomplishment when I successfully completed the software, but also some regret that I didn't achieve 100% of it |
Zheng Haoyuan | In this beta test, I have a new understanding of software development real machine testing, know how to deal with the problems that users may encounter in a short time. | Deploy the music player into the app, and optimize the UI page of the player, so that users can also hear wonderful music when using other functions. Modified the content of the rich text section to make the diary form more rich and diverse. | In this beta test, I got a lot of inspiration and learned a lot of software development knowledge, especially how to solve various problems that the software may encounter in the final sprint stage, how to cooperate with team members, coordinate all the code, complete the real machine test and user test, and finally collect user feedback and make the final summary. |
Zhang Xindan | During the beta testing sprint phase,e I was the UI group leader in the software engineering team. We were primarily responsible for ensuring the UI design was compatible with different real devices. In the beginning, we encountered challenges with the linear and relative layout, which caused the UI pattern to exceed the screen or distort its position on smaller screens. However, after several attempts, we eventually used constraint layout to modify all the layout interfaces, resulting in better adaptability for the UI on different sized screens. | At the end of the sprint phase, our team successfully solved the UI compatibility issue, receiving positive feedback and evaluations during the testing phase. Our product could run smoothly on different devices, allowing users to use and operate it normally. Along the way, we also gained valuable experience and skills, such as how to quickly solve problems, coordinate with the team, and complete tasks within a tight timeline. | Throughout the entire sprint phase, we faced numerous challenges but also learned a lot. We learned how to solve problems as quickly as possible, how to allocate tasks and resources effectively, and how to maintain team morale. Most importantly, we realized that a good team can achieve outstanding results. Therefore, in our future work, we will place more emphasis on team cooperation and collaboration. |
Wu Guohua | When reviewing the beta sprint phase of the entire project, our back-end team focused more on the optimization of previous functions and the integration of new functions in the second phase than in the alpha phase. This sprint has made me deeply aware of the importance of teamwork, especially in solving those functions that have not been realized before. At this stage, we have successfully solved many of the issues that were not addressed in the previous phase, such as cloud servers, and added some personalization features. During the sprint, the cooperation between our teams is more tacit and the communication is more efficient. As the head of the back-end team, this is the first time I have fully led a project, the whole process is full of challenges, but also let me learn a lot of new knowledge and skills. | My study on the server has given me a better understanding of how to deploy the system more efficiently and stably. By optimizing server configuration and application performance, I learned how to handle different data loads and traffic requirements. This is not only a technical improvement, but also a full preparation for future work to better cope with increasingly complex technical challenges. | Although I feel a little tired in the process, the successful completion of this software project makes me feel very satisfied and a sense of accomplishment. I look forward to more opportunities to further optimize the software in the future to make it more perfect, but also look forward to continuing to learn and improve their skills. This project experience has laid a solid back-end development foundation for me and made me more confident to meet the challenges of the future. |
Shi Tianjun | In this beta testing phase, I gained a deeper understanding of how to handle bugs in extreme scenarios and developed a certain level of proficiency in coding for communication transmission. | I optimized the UI of the forum, improved the limitations on the chatbot, and established connections between other modules and the forum module, resulting in enhanced stability in the operation of the app. | During this beta testing, I found the experience to be enlightening and educational. Dealing with challenging bugs provided valuable insights into troubleshooting and debugging. The optimization of the forum's user interface and the refinement of the chatbot's limitations were successful endeavors. The integration of various modules with the forum demonstrated the importance of a cohesive and interconnected system. Overall, the beta testing process significantly contributed to my skills in software development and problem-solving. |
Lu Yuhao | In the sprint of this project, as a member of the back-end team, I have experienced rich and valuable experience. This period of time is a challenging and learning process for me. As a back-end developer, I have accumulated a lot of valuable experience in this project, especially in dealing with data transmission and system optimization has made great progress. At the same time, it has improved my ability to solve problems. By facing the challenges in the project, I learned how to manage data transmission more effectively and optimize the system to improve performance and stability. From the optimization of database query to the optimization of processing request response, these experiences have given me a deeper understanding of system architecture and back-end technology. | In dealing with databases, I learned how to design database structures to better support application requirements, and improve database performance by optimizing queries and indexes. This has led to a significant improvement in my skills in data storage and management. At the same time, by writing, managing and debugging back-end code, I have mastered more practical practice to ensure the maintainability and scalability of the code. | I am deeply honored to be part of the back-end development team of this project and have learned a lot through this project. In the process of solving various technical problems, I have continuously improved my technical ability. In the future work or study, I will continue to strive to grow in order to be able to better contribute to the team. I hope to apply the experience and knowledge gained in this sprint to future work or other projects to create more value for them. |
Zheng Binyue | Compared to the Alpha Sprint, the core of this sprint is iterative optimization. During real-machine testing of our UI design modifications, our team encountered many aesthetic issues, mainly manifested in visible layout problems and large deviations on virtual machines, even resulting in image overlap. These issues were mainly caused by different screen resolutions on various phone models, and our team's previous layouts were mostly LinearLayout or RelativeLayout, which use positioning methods that can only target a specific screen ratio and are difficult to adapt to varying ratios. After team discussion, we urgently modified most pages to use constraintlayout, fortunately meeting the deadline and achieving a satisfactory visual experience for our users. | We only began to give importance to these UI design issues when the project deadline was approaching, but at the same time, it also helped us to develop our ability to solve big problems in a short amount of time (especially in modifying layouts and related sizes and proportion settings in Android Studio), as well as our teamwork and communication skills. | When faced with seemingly insurmountable difficulties, it is important not to always try to avoid them. Instead, we should confront the challenges head-on, actively seek solutions, and communicate with team leaders and members to explore possible ways to solve them. Additionally, considering the lesson learned from this rushed deadline, I believe that conducting real-machine testing earlier in future development projects is crucial, and any issues discovered should be addressed promptly. |
Wang Zhaoyou | In this beta sprint, the UI team I was in was mainly responsible for optimizing the original UI interface. We need to consider the overall consistency of the software to modify the UI style. Later in this beta sprint, we also found the UI layout error during the real machine dem. We chose to integrate a new layout to solve this problem. Finally, the new functional modules added to the software are equipped with a new UI interface. In addition, I was also responsible for writing part of the sprint diary. | Our UI work this time mainly cooperated with the development of functional modules by back-end personnel and solved UI problems encountered by testers during testing. Therefore, the achievement of this time is that we have successfully solved or optimized a series of interface problems. It builds on our expertise and our ability to work as a team. | The experience of this team sprint is that when the team enters the final stage, it is still necessary to maintain a serious attitude, which more tests the cooperation of the team and the division of labor and cooperation of each member. |
Wang Yanbo | In this β sprint, I acquired a deeper understanding of UI design, continuously honing my skills while experiencing the joy of collaborative teamwork. | Throughout this sprint, I progressed from simply placing components on relevant pages to learning how to replace component backgrounds, incorporate various click animations, and address screen adaptation issues across different ratios. In summary, I gained a more profound knowledge of the field. | Through constant learning and effective communication within the team, I discovered that some seemingly insurmountable challenges were not as daunting as initially imagined. With the assistance of my team members, I successfully completed my tasks and gleaned valuable experiences and lessons in the process. |
Fan Jingzhen | During this beta sprint, I expanded the recording feature to include history tracking, deletion, and renaming functionalities. I encountered some challenges, but through learning and experimentation, I successfully completed the full recording feature. However, when attempting to use Fmod to implement voice modulation, I faced complex technical issues, such as CMake cross-platform and importing the Fmod library, which involved difficulties in understanding Fmod and integrating it with Android Studio. | Although I didn't fully achieve voice modulation, I gained valuable knowledge about recording and audio processing during this process. I also became aware of my technical shortcomings and developed a deeper ability to think through and solve technical problems. | This experience has highlighted the importance of teamwork and the constant nature of technical challenges. Despite the difficulties, I am committed to continuing to learn and improve my technical skills to better tackle future challenges. |
Li Guandong | In this sprint stage, I further learned about Android front-end knowledge, became familiar with software processes, and completed the production of an emotional calendar. | I have completed the production of the emotional calendar, improved its functionality and UI, and deployed it in the overall software | In this beta test, I found the experience to be enlightening and educational. Dealing with challenging errors has provided me with valuable insights into troubleshooting and debugging. The optimization and improvement of the emotional calendar have been successful. Overall, the beta testing process significantly improved my software development and problem-solving skills. |
Xue Yiyang | Compared to the alpha phase, the beta phase mainly summarizes and expands the functions of the previous phase. At this stage, our team successfully solved many functions that were not implemented in the previous stage and added some new features. This sprint encountered some challenges, but through learning and experimentation, the complete functionality was successfully completed. | Through this sprint, I not only became familiar with and mastered the functions of the front-end UI, but also was able to flexibly apply and complete assignments. I also realized my technical shortcomings and learned the ability to think more deeply and solve technical problems. | Through this cooperation, the relationship between our members has become more harmonious. This experience has made me understand the importance of teamwork and also made me realize that technical challenges are the norm. |
This table demonstrates the Team Division of Labor of Assignment 5(Not the overall project, just Assignment 5).
Student ID | Work distribution | Contribution |
---|---|---|
Wu Guohua | Back-end development, Front and Back end communication docking, Software Testing | 12% |
Wang Yifan | Front-end development, Front and Back end communication docking, Blog essay, Project Management, Software Testing | 10% |
Shi TianJun | Front-end development, Front and Back end communication docking, Software Testing | 10% |
Zhang Xindan | UI Graphics Deployment & Design, Blog essay , Front-end development | 9% |
Zheng Haoyuan | UI Graphics Design, Blog essay, Front-end development | 9% |
Lu Yuhao | Back-end development, Front and Back end communication docking, Blog essay, Software Testing | 8% |
Zheng Binyue | UI Graphics Design, Blog essay | 8% |
Li Guandong | Front-end development, Blog essay | 8% |
Wang zhaoyou | UI Graphics Design, Blog essa | 8% |
Wang Yanbo | UI Graphics Design | 8% |
Fan Jinzheng | Front-end development | 6% |
Yiyang Xue | UI Graphics Design | 4% |