176
社区成员
Course for This Assignment | EE308FZ Software Engineering https://bbs.csdn.net/forums/ssynkqtd-04 |
---|---|
Team Name | FZU Flying Club |
Assignment Requirements | https://bbs.csdn.net/topics/617593156 |
Objectives of This Assignment | Understanding Extreme Programming, improving software development literacy, fostering teamwork, and improving software programming efficiency |
Other References | None |
https://github.com/HenzieTorre/Extreme-programming
The number of commits: 25+
The screenshots contains only part of the commits record:
Project repository creator:
First of all each person needs to create a user for himself, from the login meet jump to the registration interface, the user's account password will be stored by us in the database, each newly created user's account password exists in the database. After successfully registering a user and logging in, the user can jump to the scientific calculator. Front-end using CSS, JS, HTML, back-end using JAVA language (servlet, mybatis), database using mySQL.
For The Interest Rate Calculator Function 1: Interest rate calculator contains "Calculate", "Clear", "Modify", "Back "four buttons, two input boxes "enter the amount (yuan)", "enter the length of time (months)", the output box is "interest (yuan)". The user can calculate the interest rate by clicking the "Calculate" button. The interest rate is divided into "Deposit" and "Loan", and the interest rate for deposit and loan is different, which is saved in two separate data tables. Among them, the deposit includes fixed-term and demand, their interest rates are also different, see the first table of the project requirements.
For Interest Rate Calculator Function 2: The backend is implemented using the nodejs express framework, Database using mysql, Add a Modify Interest Rate button to the Interest Rate Calculator to implement the function of interest rate modification and modify the data in the tables to meet the task requirements.
Scientific Calculator is not only capable of simple four operations, but also some complex mathematical operations, such as trigonometric functions and squaring functions. In addition, the scientific calculator is able to call the user's history, scientific calculator to do to be able to view the history of each registered user, to do a user corresponds to a history, different users have different history. The front-end uses HTML, CSS and JS files, back-end using JAVA language (servlet, mybatis), and the database uses mySQL.
[video(video-uLja9Fli-1700407883244)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=578662289)(image-https://img-blog.csdnimg.cn/img_convert/79990a4465d0efc33ec5c0f561386642.jpeg)(title-Demonstration Of User registration and login interface and scientific calculator)]
Interest rate calculator:
[video(video-9TMZvtp9-1700404180466)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=536207778)(image-https://img-blog.csdnimg.cn/img_convert/3ade2bf8b429d022fdbe8c45117bbcbd.jpeg)(title-Interest rate calculator)]
[video(video-ea0Drmv5-1700404210852)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=833665216)(image-https://img-blog.csdnimg.cn/img_convert/3b0d1970274726835cc4614b8413ff03.jpeg)(title-Modified interest rate)]
Zhang Qin: User login module UI design, user registration module UI design, user login front-end code implementation
Zhang Jiayang: User Login Front-end Code Implementation, User Registration Front-end Code Implementation
Peng Houming: User registration front-end code implementation
Chen Yuheng: User Login Registration Module Backend Database Implementation
Zhao Pan: Interest rate calculator UI design, Interest rate calculator front-end code implementation
Yin Xiangbin: Front-end code implementation of interest rate calculator
Chen Zhenggang: Back-end database implementation of Interest Rate Calculator
Chen Jinghua: Database implementation of interest rate calculator backend
Yi Li: UI design of scientific calculator, front-end code implementation of scientific calculator
Hu Jiachen: Scientific calculator front-end code implementation
Liu Yiqi: Scientific calculator back-end database implementation
Student ID | Name | Work Description | Contribution |
---|---|---|---|
832102212 | 张钦(QIN ZHANG) | User login module UI design, user registration module UI design, user login front-end code implementation | 10% |
832102227 | 彭厚铭(HOUMING PENG) | User registration front-end code implementation | 6% |
832101223 | 胡佳辰(JIACHEN HU) | Scientific calculator front-end code implementation | 6% |
832101221 | 易立(LI YI) | UI design of scientific calculator, front-end code implementation of scientific calculator | 6% |
832102221 | 赵攀(PAN ZHAO) | Interest rate calculator UI design, Interest rate calculator front-end code implementation | 6% |
832102213 | 张嘉扬(JIAYANG ZHANG) | User Login Front-end Code Implementation, User Registration Front-end Code Implementation | 11% |
832102214 | 陈正罡(ZHENGGANG CHEN) | Back-end database implementation of Interest Rate Calculator | 11% |
832102215 | 陈宇恒(YUHENG CHEN) | User Login Registration Module Backend Database Implementation | 11% |
832102219 | 陈敬华(JINGHUA CHEN) | Database implementation of interest rate calculator backend | 11% |
832102205 | 尹相斌(XIANGBIN YIN) | Front-end code implementation of interest rate calculator | 11% |
832102206 | 刘译祺(YIQI LIU) | Scientific calculator back-end database implementation | 11% |
Problem 1: In the pre-extreme programming phase, communication between team members was not very smooth, and everyone's schedules were cumbersome and inconvenient.
Solution: A team meeting was held to briefly communicate the task assignments with describing the task requirements clearly to ensure that everyone understood the requirements and goals of the task. And coordinate the time to set the deadline time for each task.
Problem 2: I also encountered technical challenges in the programming tasks, such as understanding the database and how to implement the user login function, as well as how to create a reasonable and comfortable UI interface.
Solution: I will support and share my experience with each other and with team members, and participate in the discussions of the development team. In short, when encountering technical difficulties, I will seek help and find solutions together.
Problem 3: In terms of time management, due to extreme programming, there is not much time left for our team to complete the project, the deadline is relatively advanced, and the tasks need to be completed in a short period of time, which leads to increased pressure on my time management.
Solution: I divide my personal tasks into small manageable parts, check progress regularly, create a good and reasonable timetable to complete my tasks, and make timely adjustments to the plan based on the progress of the tasks to ensure that I complete the tasks within the given time.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | 10 | 10 |
• Estimate | 10 | 10 |
Development | 240 | 300 |
• Analysis | 15 | 15 |
• Design Spec | 5 | 5 |
• Design Review | 10 | 10 |
• Coding Standard | 10 | 10 |
• Design | 20 | 20 |
• Coding | 140 | 200 |
• Code Review | 30 | 30 |
• Test | 10 | 10 |
Reporting | 30 | 30 |
• Test Repor | 15 | 15 |
• Size Measurement | 10 | 10 |
• Postmortem & Process Improvement Plan | 5 | 5 |
Sum | 280 | 340 |
In Extreme Programming, I initially struggled to adapt to pair programming. However, continuous communication and guidance from team members helped me overcome this challenge.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | ||
• Estimate | 30 | 30 |
Development | ||
• Analysis | 30 | 40 |
• Design Spec | 10 | 15 |
• Design Review | 5 | 5 |
• Coding Standard | 10 | 10 |
• Design | 20 | 20 |
• Coding | 120 | 120 |
• Code Review | 30 | 30 |
• Test | 20 | 15 |
Reporting | 60 | 90 |
• Test Repor | 10 | 10 |
• Size Measurement | 20 | 10 |
• Postmortem & Process Improvement Plan | 20 | 20 |
Sum | 385 | 415 |
Problems:
Solutions:
Personal Software Process Stages | Estimated time (minutes) | Actual time (minutes) |
---|---|---|
Planning | 10 | 5 |
Estimate | 10 | 10 |
Development | 60 | 90 |
Analysis | 30 | 20 |
Design Spec | 30 | 20 |
Design Review | 30 | 10 |
Coding Standard | 30 | 5 |
Design | 30 | 20 |
Coding | 60 | 50 |
Code Review | 30 | 30 |
Test | 30 | 40 |
Test Report | 10 | 20 |
Size Measurement | 10 | 10 |
Postmortem & Process Improvement Plan | 30 | 20 |
Total | 400 | 350 |
At the beginning of the project, the requirements were not explained simply and clearly enough, resulting in differences in understanding among members. It was only after a period of time that it was discovered that many of the things written could not be combined for use. After discovering the problem, the team increased the number of team meetings and requested a simple and intuitive description of how the project needs to proceed at each meeting to ensure that the team has the same direction.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | 30 | 20 |
• Estimate | 30 | 20 |
Development | 70 | 70 |
• Analysis | 10 | 10 |
• Design Spec | 15 | 15 |
• Design Review | 5 | 5 |
• Coding Standard | 5 | 5 |
• Design | 15 | 15 |
• Coding | 15 | 15 |
• Code Review | 5 | 5 |
• Test | 10 | 10 |
Reporting | 20 | 20 |
• Test Repor | 10 | 10 |
• Size Measurement | 5 | 5 |
• Postmortem & Process Improvement Plan | 5 | 5 |
Sum | 120 | 120 |
Communication problems: Team members may have communication problems in terms of requirements understanding, implementation details, etc.
Requirements Changes: Requirements may change as the project progresses, which can lead to uncertainty about the direction of the team.
Insufficient Iteration Time: The time for each iteration may be underestimated, resulting in tasks not being completed on time.
Inadequate Test Coverage: Due to time pressure, tests may be neglected, leading to a drop in code quality.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | 20 | 25 |
• Estimate | 20 | 25 |
Development | 135 | 140 |
• Analysis | 20 | 25 |
• Design Spec | 10 | 10 |
• Design Review | 15 | 15 |
• Coding Standard | 15 | 15 |
• Design | 20 | 20 |
• Coding | 35 | 35 |
• Code Review | 10 | 10 |
• Test | 10 | 10 |
Reporting | 15 | 15 |
• Test Repor | 5 | 5 |
• Size Measurement | 5 | 5 |
• Postmortem & Process Improvement Plan | 5 | 5 |
Sum | 170 | 180 |
This assignment is to add an interest rate calculator to our second calculator assignment. The more difficult part is the interaction code between the front-end and the database. Since I have never learned the database before, I referred to some materials and codes on the b website and roughly understood the mode and code of interaction between the preceding paragraph and the database.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | ||
• Estimate | 10 | 10 |
Development | ||
• Analysis | 15 | 15 |
• Design Spec | 5 | 5 |
• Design Review | 10 | 10 |
• Coding Standard | 10 | 10 |
• Design | 20 | 20 |
• Coding | 240 | 300 |
• Code Review | 30 | 30 |
• Test | 10 | 10 |
Reporting | ||
• Test Repor | 15 | 15 |
• Size Measurement | 10 | 10 |
• Postmortem & Process Improvement Plan | 5 | 5 |
Sum | 380 | 440 |
This assignment is to add the function of calculating interest rate on the basis of separating the front and back end of the computer. We think the main difficulty of this programming is how to add this function to the calculator. We determined the implementation method through discussion, and at the same time learned and wrote the relevant code, and successfully completed the goal.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | ||
• Estimate | 10 | 10 |
Development | ||
• Analysis | 15 | 15 |
• Design Spec | 5 | 5 |
• Design Review | 10 | 10 |
• Coding Standard | 10 | 10 |
• Design | 20 | 20 |
• Coding | 200 | 240 |
• Code Review | 30 | 30 |
• Test | 10 | 10 |
Reporting | ||
• Test Repor | 15 | 15 |
• Size Measurement | 10 | 10 |
• Postmortem & Process Improvement Plan | 5 | 5 |
Sum | 340 | 380 |
Difficulties encountered: use of databases, writing of sql statements
Solution: Check the database study notes
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | 40 | 30 |
• Estimate | 30 | 20 |
Development | 20 | 10 |
• Analysis | 10 | 20 |
• Design Spec | 20 | 30 |
• Design Review | 30 | 40 |
• Coding Standard | 40 | 30 |
• Design | 30 | 20 |
• Coding | 20 | 10 |
• Code Review | 10 | 20 |
• Test | 20 | 30 |
Reporting | 30 | 40 |
• Test Repor | 40 | 30 |
• Size Measurement | 30 | 40 |
• Postmortem & Process Improvement Plan | 30 | 20 |
Sum | 400 | 390 |
when I write user login and registration, I do not know how to jump to another page, and then I see the explanation of others in CSDN to know how to write, and when writing with other front-end writers, I need to wait for others' git upload to see the overall web page, and we can only quickly write their own pages.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | 30 | 30 |
• Estimate | 30 | 30 |
Development | 245 | 255 |
• Analysis | 30 | 40 |
• Design Spec | 10 | 15 |
• Design Review | 5 | 5 |
• Coding Standard | 10 | 10 |
• Design | 20 | 20 |
• Coding | 120 | 120 |
• Code Review | 30 | 30 |
• Test | 20 | 15 |
Reporting | 60 | 90 |
• Test Repor | 10 | 10 |
• Size Measurement | 10 | 10 |
• Postmortem & Process Improvement Plan | 20 | 20 |
Sum | 375 | 415 |
During the cooperation process, some front-end parts failed to connect with the back-end. Solve the problem after many negotiations.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | ||
• Estimate | 60 | 65 |
Development | ||
• Analysis | 10 | 10 |
• Design Spec | 20 | 10 |
• Design Review | 20 | 15 |
• Coding Standard | 40 | 40 |
• Design | 60 | 80 |
• Coding | 40 | 60 |
• Code Review | 10 | 20 |
• Test | 10 | 30 |
Reporting | ||
• Test Repor | 15 | 10 |
• Size Measurement | 10 | 8 |
• Postmortem & Process Improvement Plan | 10 | 10 |
Sum | 305 | 368 |
Problem: Web page maladaptation and browser caching issues make debugging difficult.
Solution: Problem solving through csdn and google searches.
Personal Software Process Stages | Estimated Time(minutes) | Actual Time(minutes) |
---|---|---|
Planning | ||
• Estimate | 30 | 35 |
Development | ||
• Analysis | 10 | 10 |
• Design Spec | 20 | 10 |
• Design Review | 20 | 15 |
• Coding Standard | 40 | 40 |
• Design | 60 | 80 |
• Coding | 40 | 60 |
• Code Review | 10 | 20 |
• Test | 10 | 30 |
Reporting | ||
• Test Repor | 15 | 10 |
• Size Measurement | 10 | 8 |
• Postmortem & Process Improvement Plan | 10 | 10 |
Sum | 275 | 338 |