vicent

学习积累

知识的积累需要时间,那就一步一步记录下来吧

Summary of Rapid Development of Software Development Projects

Summary of Rapid Development of Software Development Projects#

No matter what happens during the project, any discussions, meetings, etc. should only focus on the project, not on individuals. Because a project is a whole, the shortcomings of one person are the shortcomings of the entire project. Let's encourage each other~

Introduction#

The purpose of writing this document is twofold:

  1. To help myself clarify the process and issues to pay attention to in project management.
  2. To help those who want to transition to project management or start software development project management with some matters.

Explanation#

The process of software development projects (such as Android, iOS, Web, etc.) is basically universal. If you don't understand it, you can start by using it as a template and understand what each position should do at each time point step by step, clarify the task goals, and allocate tasks reasonably to achieve the goal of rapid project delivery.

Process#

The software project development process includes: project initiation, business function analysis, defining product prototypes, defining project testing outlines, determining project development plans, development process, testing process, quality acceptance, and project delivery. The above is the main content of project development, and details will be explained later. It generally involves functional positions (product managers, product owners, UI designers, testers, developers, quality assurance).

Project Initiation#

Whether it is an outsourced project or an in-house company project, the source of project requirements is nothing more than a third party or the company's market research or feedback. Once determined, a project initiation meeting is held to determine the project content, direction, and relevant personnel.

Since our participation in the project may not necessarily be from the beginning, the project initiation is explained separately.

Others#

PhaseContentPerson in ChargeRemarks
Function ListLed by the product manager, assisted by the product owner, based on market or third-party requirements or feedback, organize relevant requirements and determine the project function list.Product ManagerAssisted by the product owner
Product PrototypeResponsible by the product manager, based on the function list.Product Manager
Testing OutlineThe testers compile the testing outline based on the function list, and some can be combined with the product prototype. Testing needs to consider full scenario coverage and other issues.Testers
Development PlanThe development team evaluates the work tasks based on the product prototype, determines the person in charge and tasks for each module, and improves the development plan.Developers
Development ProcessDuring the project development process, development and testing are carried out simultaneously; development is divided into stages; testing is divided into stages; after all functions are developed, full-function development is carried out.TeamSee specific development process instructions
Quality AcceptanceSubmitted by the project owner, accepted by professional product quality to determine whether the results are qualified and up to standard.Product Quality
Project SummaryRegardless of the quality of the project delivery, a project summary must be conducted afterwards. Summarize the advantages and disadvantages of the development process.ALL

Example:#

Suppose we now want to develop a shopping mall project (long-term project) that covers all platforms (Android, iOS, web). We skip factors such as project initiation and market and directly enter the project development process. Then our specific tasks are:

  1. Organize the current requirements received; discuss and determine the goals of the first phase delivery (since it is a long-term project, we set a 2-month iteration, in simple terms, one version every 2 months); based on the delivery goals, determine and refine the specific project function list;

    Requirements (to be completed within 1-2 days):
    	1. Add flash sale function
    	2. Add third-party payment function
    	3. Add coupon function
    
  2. After determining the function list, organize a meeting for discussion. Objectives:

    Function list same as above requirements (to be completed within 1-2 days)
    
    • Project team members understand the project content
    • Determine whether the requirements are reasonable and whether the functions can be implemented, or whether additional conditions are required.
    • Each function of the project must have a unified understanding, because different understandings may cause the project development direction to deviate, leading to project accidents (this requirement is relatively high and needs to be gradually improved)
    • Repeat this step until the function list is completely determined and everyone's understanding is basically consistent.
  3. The product manager designs the prototype based on the function list. Meeting discussion:

    No need to draw the prototype. Determine the completion time based on the workload (for a 2-month project cycle, 2 days is usually enough)
    
    • Whether the prototype design is reasonable (interaction, etc.)
    • Whether it can be implemented (factors such as cognitive deviation)
    • Repeat this step until the prototype is completely determined and everyone's understanding is basically consistent.
  4. Testing outline (to be completed within 1-2 days), this task is parallel to the product prototype, and details can be discussed with the product and development teams during the process. Mainly write the testing outline based on the function list. Meeting discussion:

    • Determine whether the testing outline is reasonable
    • Determine whether the testing scenarios are well-covered
    • Clarify the testing stages and testing time
    • Repeat this step until it is completely determined and everyone's understanding is basically consistent.
  5. Development plan (to be completed within 1-2 days) (four platforms: Android, iOS, web, backend), parallel to the testing outline. Based on the function list, product prototype, testing outline, and self-function decomposition, evaluate the work content and time, and improve the development plan. Meeting discussion:

    • Determine task assignments
    • Clarify task deadlines
    • The smaller the granularity of function decomposition, the better. During the development process, adjust according to the situation. Submit ordinary function development in about 2 days, and submit difficult tasks according to the evaluation time. After each submission, it should be tested promptly by the testers.
  6. Development process:

    • Develop and submit functions according to the plan at fixed time points.
    • Testers join the testing at fixed time points according to the plan.
    • Main content of development: function development, testing, and bug fixing (under normal circumstances, we require that bugs related to functions be fixed in the next development stage. Special bugs that take a long time and have a small impact can be handled later.)
    • Testing content: Testing tasks are relatively heavy throughout the entire process, almost throughout the development process, in order to discover and solve problems and improve project quality.
      • Function testing (determined based on the project timeline. It is recommended to conduct 3 function tests in a 2-month project cycle), bug testing, bug acceptance.
      • After all functions are developed, enter full-function testing (2-3 rounds of full-function testing, development testing time is about 3 days, adjust according to the actual situation), testing time is 2-3 days.
      • After full-function testing, evaluate the project quality and enter system testing.
      • System testing (generally within 2 rounds, the project should not have major changes). Determine whether it is qualified. If it is not qualified, consider cutting off the unqualified functions to ensure the task deadline and ensure smooth acceptance of quality.
      • After passing system testing, it is accepted by the product quality.
    • Product acceptance: Accept the project product based on the test report and testing outline.
  7. Project summary

    • Summarize the problems encountered during the project process
    • Each person shares the problems and shortcomings found during the project process
    • Discuss solutions to the problems in the project
    • Share the advantages found during the project process
    • The project owner summarizes the pros and cons.
  8. Other instructions:

    • What should we do if there are temporary requirements during the project process?

    Based on the current project timeline, functions, and evaluation of priority, adjust based on priority. The principle is: the time box remains unchanged, and the project development functions are replaced or cut off.

Conclusion#

In the project development process, no matter what happens, it is all done by people, and people are prone to making mistakes. Therefore, as the project owner, you should always pay attention to abnormal situations in the project and have discussions or make adjustments according to the situation. No matter what happens during the project, any discussions, meetings, etc. should only focus on the project, not on individuals. Because a project is a whole, the shortcomings of one person are the shortcomings of the entire project. Let's encourage each other~

Note:

I'm not good at writing, this is my personal experience. If you don't like it, please don't criticize.

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.