(i) Vision and objectives
1. What problems does our software solve? Is the definition clear? Do you have a clear description of typical users and typical scenarios?
Our software mainly solves the problem of never knowing when to do something, or always forgetting to do something, by adding an event and choosing a reminder mode to remind. Defined clearly, through analysis, the typical users and typical scenarios have a clearer description.
2. Do you have enough time to plan?
The time to complete the project is not very short, the time to plan is sufficient, but we do not carefully make detailed plans, in the process of completing the project, but also in the ongoing planning.
3. How does the team solve the different opinions of their colleagues about the plan during the planning phase?
Under PM's leadership, each member is able to listen carefully to the different views given by other members, and to resolve the issue through mutual discussion and negotiation to achieve consensus.
User volume, is the user's acceptance of important functions consistent with our prior assumptions? Are we closer to the target?
After the use of the alpha version for some users, found that users of the software important features of the acceptance and we anticipate the difference is not too much, the important function is still very interested in, the user is interested in, also realized a part of the function, feel closer to the target.
What lessons do you have? If history does it again, what improvements will we make?
There is no clear understanding of the user's real idea of the software, nor a good understanding of the user's needs. The first step is to give the user a detailed description of the software function, let them understand what we want to make the software is what, let them do based on the user's real comments, give us some useful suggestions, stand in the user's perspective to make users willing to use the software.
(ii) Plan
1. Have you finished your original work? If there's anything unfinished, why?
The original work was basically finished.
2. Did you find that you did something that didn't seem necessary or valuable afterwards? This phase of the alarm clock function is basically the same as the mobile phone, can not attract users, not much value.
3. Is there a clearly defined and measurable deliverable for each task? There are relatively clear definitions and measurable deliverables
4. Is the whole process of the project in accordance with the plan? Not as planned, the software development part of the Android phone is more difficult to learn, so this part of the progress is relatively slow.
5. Are there any buffers left in the plan, and does the buffer function? No, the night before the show was barely finished and could be used.
6. What changes will be made to future plans? (example: definition of buffer, overtime)The next part of the development of the adaptation team members to complete the capacity of the plan, in strict accordance with the plan, set aside a certain buffer period for testing.
What have we learned? If history does it again, what improvements will we make? The first step is to make a plan and implement it in strict accordance with the plan. The team members have to talk about their progress every day, to prevent the occurrence of non-practical things.
(iii) Resources
1.
do we have enough resources to do all the work? No, mainly in the development of Android phone completely blank, need to learn from the beginning, more blind, feel more, but finally learned very little, no substantive understanding, will not be used.
2. How is the time and other resources required for each task estimated and how accurate? There is no clear basis for estimating, and there is little precision in the discussion about how much time and resources are needed to make the plan.
3. Is the test time, manpower and software/hardware resources sufficient? Do you underestimate the difficulty of resources that do not require programming (artwork design/copywriting)? No buffers are tested, so no tests. Underestimated the difficulty, this thought beautification is very simple, the result does not achieve the expected effect.
4. Do you feel that what you do can be done by others (more efficient)? Yes, for people who are familiar with Android or a bit of experience, the entire first-stage implementation may be completed in less than a day, and is highly efficient.
What lessons do you have? If history does it again, what improvements will we make? First of all to find good resources, understand the relevant technical difficulties, according to the time and ability to predict whether the software can be completed.
(iv) Change management
1. Every relevant employee is informed of the change in time? The changes are the result of discussions with the team members, so the changes can be informed in a timely manner.
2. What approaches have we adopted to determine the "deferred" and "must be" functions? Depending on the technical difficulty required to complete the order, the simple must be achieved, the difficult can be postponed.
3. The export conditions of the project (exit criteria– What do you mean "done") have a clear definition? Yes, the basic realization of the expected function is even done.
4. Can a contingency plan be developed for possible changes? There are no contingency plans, and there are no emergency situations to consider.
5. Are employees able to effectively handle unexpected job requests? has been carried out in accordance with the original plan and no unexpected requests were made.
What have we learned? If history does it again, what improvements will we make? Think about possible changes in advance, make contingency plans for each situation, and periodically look for unexpected requests from users, and group discussions to see if they are added.
(v) Design/implementation
1. When and by whom is the design work done? Is it the right time for the right person? The design work was initially discussed by the group. Is the right time for the right person.
2. Is there any ambiguity in the design work and how does the team solve it? Yes, in the user survey, did not understand the user's true ideas, we are mostly through their own imagined situation to analyze.
3. Does the team use unit test, test-driven development (TDD), UML, or other tools to help design and implement? Do these tools work? Not used. It should be more effective.
4. What features produce the most bugs, why? What important bugs were found after the release? Why didn't we think of these when we were designing/developing? Jump Page section produces the most bugs, mainly is not very familiar with the use of functions. The added alarm was not closed after the publication and the process was not shut down. It was possible to implement the function at that time, and did not care about these situations.
5. How is code Review performed, and is code specification strictly enforced? No code review, code is not standard.
What have we learned? If history does it again, what improvements will we make? To unit test the program, fix the bug in a timely manner by completing part of the test.
(vi) test/release
1. Does the team have a test plan? Why not? No plan, just a look at the ability to implement the function. For the first time teamwork, I don't know if we have a test plan.
2. Have you conducted a formal acceptance test? No, just a demonstration of the function in the class.
3. Does the team have testing tools to help test? Virtual machines and phones.
4. How does the team measure and track the performance of the software? Is it useful to see how the software actually works? What should be improved? Tested only on virtual machines and phones, with no measurement and tracking software. Useful, more use of measurement and tracking software, can be more timely detection of software problems and improve.
5. What unexpected problems were found during the release process? The alarm cannot be closed after adding, the process cannot be shut down.
What have we learned? If history does it again, what improvements will we make? Testing is important to learn to help us improve with some software that helps to optimize functionality.
(vii) Summary
What grade do you think the current state of the team belongs to in Cmm/cmmi? belongs to the CMM phase.
which stage of the budding/running/spec/creative stage Do you think the team is in? At present, is in the running-in phase, is running between each other, communication or not enough.
What do you think the team has improved in this milestone compared to the previous milestone? Recognizing maturity, the problem is not as simple as imagined, considering the problem is slightly more comprehensive than before, there is some communication.
What do you think is the most necessary improvement in the present? Plan, focus on the user experience, modify the plan according to their needs and opinions.
Alpha Phase Project Postmortem meeting Summary