The first experiment of the semester in software engineering -- some service suppose to manage boat dock
There is a boat dock in a park. The owner wants to develop a boat management system. The requireemnts are: When toursts rent boats, the adminstator imputs S to start the rent circle; when the toursts return boats, the admin inputs E to end the circle. When a day is over, we need to print the renting number and the average renting time.
This is the original requirements and teacher give the Algorithm ( pseudo code ) in class, like this:
Number = Total_time = 0;
GetMessage;
While(!End_of_stream){
if(Code == S){
Number++;
Total_time -= Start_time;
}
else
Total_time += End_time;
GetMessage;
}
Print Number;
If (Number > 0) Average_time = Total_time/Number
}
Then he came up with some new requirements, like this:
- Output thelongest renting time in a day.
- Output based on the morning and afternoon.
- When the communication has problems, the incomplete renting messages can he deleted.
Because teacher required we to give a gui interface, I'm not familiar with javafx and c# ( although we learn them last semester😅 ), so I choose swift to project a ios application ( and i regret soon... )
In fact , during the National Day holiday, I roughly completed the requirements, like
- The return of the boat and the loaned animation. ( UI drawing and adaptation took a lot op work, but it didn't make sense, and that's when I realized use swift wasn't a good chioce, this is just a classroom experiment🦉 )
- Realize the data storage. This can be easily implemented using Userdefaults, and data can keep when next time open this app, I think it's important in actual use.
Emm, probably these features, but it took me a lot of time, I also reviewed and learned many about swift development 😄
After returning to school, I continued to complete the layout and display of the infomation display to admins interface. This was handy because the data storage was done.
I relearned the layout of the controls, which I wasn't really familiar with, and I usually chose to program directly in a '.swift' file, but I know this is not the right way to study, so I am gradually learning.
Today we took a presentation, and the students used various ways to implement it. I learned a lot and came up with many ways to improve my project. At the same time, I realized that I had misunderstood requirement 3, so i have to continue update this project , also i already tired this project...
This time i maybe migrate this ios applicatition to macos application, because i think mobie screen isn’t fit to show all infomation and maybe application in pc is more convenient for admins? maybe