MU-SE: Course summary
This is the summary blog for EE308FZ, written by Hanlin CAI.
|The Link Your Class||Main class|
|The Link of Requirements of This Assignment||Requirement|
|MU STU ID & FZU STU ID||20122161 & 832002117|
|Video Demo Link||Demo for Lab 2|
|Video Demo Link||Demo for Lab 3|
|GitHub Repo Link||Github for Lab 2|
|GitHub Repo Link||Github for Lab 3|
(1) The CSDN links of each Lab:
【Lab1-1】：Self-Introduction | Hanlin Cai
【Lab1-2】：File Read and Count Keyword (C++)
【Lab2-1】：Android App for Traditional Bobing (Prototype)
【Lab2-2】：Brilliant Android App for Bobing Game (APK)
【Lab3-1】：IoT Garbage Manager (Topic Selection)
【Lab3-2】：IoT Garbage Manager (Sprint Summary)
(2) Summary and harvest
During the EE308FZ course, I have completed a variety of programming practices and achieved a rich harvest. Through many development scenarios in individual programming, pair-programming and team project, I have learned various new development technologies and improve my coding skill. Besides, thanks to the team project, I train my ability to lead a team and complete outstanding works. Finally, the most improtant is the experience to work with my deer partners, we help, encourage and support each other!
2.1 Personal programming
First and foremost, I would like to mention the personal programing, mainly in the Lab1-2. We were required to implement a program to finish the task for text file read and keyword count.
In the past, when I was given a programming task, I would just rush to code directly. However, such rashness did not lead to good results, and the time complexity of programming without analysis was much greater.
Through this EE308FZ course, I learned how to analyze programming tasks, how to dismantle tasks step by step, and I can implement complex coding work by using process models. Finally, I utilized C++ to realize the program. The following Figure 1 (poster) is designed for my individual EE308FZ Github Repo.
Figure 1 Poster for my Github Repo
2.2 Pair programming
Second is the pair programming, I work with Qiguo Qing and we implemented a traditional Bobing Gaming application. The following Figure 2 illustrates the poster for our brilliant Android Bobing App.
By the way, here is the demo video for our Bobing app. If you are interested in it, you can try to download the apk for our Bobing game.
Figure 2 Poster for our Bobing App
2.3 On-site programming
Then, I would like to talk about the on-site programming, which is really helpful in our tech-meeting.
When I am talking with my parters, we would write some pseudocode, to clearly describe specific ideas for software functions in a development session. The following Figure 3 shows our meeting scenario.
Figure 3 Tech-meeting scenario
2.4 Team project
Finally, the team project is the most challenging task during the EE308FZ course. In this project, I lead our team to resolve many challenging problems, and finally, we realize a remarkable work.
In the process of cooperation, we have realized the significance of software engineering in the actual project development. In the process of building the project, we gradually made the project professional and industrial progress, and also laid the foundation for future work.
I would like to experss my sincere gratitude to our team members, who are friendly, hard-working and outstanding. It is my great honor to be able to progress with you all!
Figure 4 Group photo in team project
(3) Technology and tools
3.1 Prototyping Tools (Modao)
The prototype is useful to illustrate the main function of the software at the stage of beginning. During the experience in EE308FZ course, I mainly utilized Modao to realized prototyping design. As an online prototyping tool, modao is easy to use and quick to get started. It really helped me a lot in the process of software modeling. The following Figure 5 shows the prototype of our Bobing app in Lab 2-1.
Figure 5 Prototype of our Bobing app
3.2 Back-end development (Springboot, SpringMVC)
During Lab2-2, I am responsible for the bank-end development. I adopt the java-based tool such as Springboot and Spring MVC to realize the main functions of our app, as shown in the Figure 6.
Figure 6 Flow Chart of Our Bobing App
3.3 Technology Clusters
In Lab 3-2, we aim to establish an intelligent IoT garbage management system for urban communities——Garbage Manager. In this project, to implement the main function of our system, a variety of development technology are used, such as ResNet, PolarDB, Vuejs and MySQL (Figure 7).
It really took a lot of time to get familiar with these tools. Although it is difficult at the beginning, we push ourselves to finish a remarkable work.
Figure 7 Flow Chart for our IoT system
(4) something I want to say
4.1 Course suggestions
The first is to strengthen the relationship between teaching assistants and students.
Because much of the semester is conducted online, TA are nearly absent in this course, only present in defence. I really suggested that in the next academic year, maybe each TA can lead several teams in the form of PK, which may be able to connect TA with students.
Second, we hope that there can be more interaction in the lectures.
Some non-key chapters can be signed up by students to speak on stage (in the form of “flipped classroom”). In a word, there can be more interesting interaction in the class. Thanks!
First and foremost, I gratefully acknowledge our lecturer Mr. Lin for his generous guidance and support during this work. And I hope to thank Dr. Chin-Hong Wong and Dr. Zhicong Chen for their constructive suggestions.
Also, I would like to express my sincere gratitude to my team partners during the whole EE308FZ experience. None of this work would have been possible without your support and encouragement!
Lastly, thanks to Linshi, who always believes in me ten times more than I do.
(5) Video link and Github link for team project
Demo video link1 (short version):
Demo video link2 (long version):
Figure 8 Thank you EE308FZ !
Written by Hanlin CAI.
Latest update: 2023/01/09