Process control analysis of super hot software project management on GitHub

Preface

Software project management refers to the efficient planning, organization, guidance and control of software projects in the process of software project research and development. The research and development tasks are closely related to the company's relevant departments and related personnel, so that the departments and staff have clear goals and performance Clear. Project management emphasizes the role of the project leader and the spirit of teamwork. Its organization is flexible, pays more attention to the human factor, pays attention to customers and serves customers, and focuses on improving the efficiency and quality of software project development, which is reflected in a kind of workflow management .

1. Project startup phase

The task of the project initiation stage is to identify the content of the customer's needs, and conduct feasibility analysis, evaluation and project approval of the content of the needs proposed by the customer.

1. Project identification

After receiving the business requirements from the business department, the science and technology department confirms the content of the business requirements, conducts feasibility study and analysis of the business requirements, and communicates with the business department and analyzes and evaluates the achievable and unachievable contents of the requirements. A consensus was reached on the content, and the confirmed requirements of the science and technology department were incorporated into the company's overall project management system, and a detailed project requirement specification was written in cooperation with the business department.

2. Project establishment

After the software project has passed the review, the project can be established and the demand development task book can be prepared. After the software company receives the project task, the company’s project management office first establishes information files for the new project, compiles the project code, and initiates the project development work in accordance with the company’s IT project management process.

2. Project planning stage

The task of the project planning stage is to develop a detailed solution for the software project to be developed and prepare a work plan for various deliverables.

1. Project scope planning

  • Project background description : Through the analysis of the project implementation background, understand the background of the business requirements, so as to better grasp the stakeholders that the requirements may involve.

  • Project goal description : mainly includes three aspects: one is the achievement goal, that is, what kind of system is to be developed (such as developing a cost software management system); the second is the duration goal, which is the estimated time of completion of the project (for example: April 2007 January 1st-June 30th, 2007, for a period of 3 months); The third is the cost target, that is, the total investment amount of the budgeted project (for example, the project cost is 300,000 yuan).

  • Project Work Structure Breakdown (WBS) : The function of WBS is to arrange and define the various components of the project scope and combine them according to deliverables. According to the division of responsibilities of the team members, the project manager gradually decomposes the complex work into element work, making the work of the project members specific, easy to operate and easy to control. Usually software projects use deliverables as the first level, and specific tasks as the second level. Each drop in a level means a more detailed description of the project’s deliverables. Follow the target system as the leading and the project system description as the basis, from top to bottom, from coarse to fine, as shown in Figure 1.

    Figure 1 WBS structure of cost software project

     

  • Milestone plan : A milestone is a sign of completion of phased work. According to the scope of the project in the WBS structure chart, define the time for completion of each task (see Table 1).

    Table 1 Milestone plan of cost software management project

     

  • Work responsibility distribution matrix : Its role is to divide the work of project team members and clarify their roles and responsibilities. Through this relationship matrix, the responsibilities of each member of the project team can be intuitively reflected and clarified, so that each specific task of the project can be implemented on the team members participating in the project, ensuring that everything is done and everyone is involved in the project development process. There is something to do (see Table 2). The work responsibility distribution matrix can list in detail the time taken by the person in charge of each work and the content of work participation.

    Table 2 Cost software management project work responsibility distribution matrix

     

2. Preparation of project work plan

The preparation of the project work plan should be based on the contract’s agreement and requirements for the construction period, milestone plan, WBS, and refer to the historical information of the company's similar projects, the internal and external conditions of the project, various resource conditions, etc., to prepare the project work plan. The commonly used technical method is PERT Network technology, Gantt chart method.

  • Project progress plan : According to the WBS work item, formulate the duration of each work task in the project in detail, design the content of the project progress report, and formulate various project progress report release channels and release times.

  • Project human resource plan : According to the overall goal of the project and the time required for each job, determine the personnel needed to complete the project, and according to different job requirements, staff in different positions, such as engineers, testers and project management personnel.

  • Develop project cost budget, as shown in Table 3 for example :

    • ①Allocate all costs to each work to obtain a cost baseline for measuring project execution;
    • ② Divide the cost budget into human resource costs, other costs, drawn risk funds and project bonuses;
    • ③The main basis of budget is software project estimation technology (function point method and DelPhi method), experience estimation, work breakdown structure WBS and schedule, cost and resource plan.

       

      Table 3 Schedule of cost software management projects, human resources and expenses

  • Risk control plan : "Everything is planned in advance, and if not, the project will be abandoned." Only by effectively analyzing and assessing the risks that may occur in the project in advance, and taking effective prevention and response measures, can the project objectives be successfully achieved. According to the characteristics of the software project, formulate and improve the risk management process, and do a good job in risk identification, analysis, planning, tracking, response, improvement, and supervision and evaluation. For software project development that uses outsourcing, it is necessary to choose a software company with a good reputation, large scale, high management level and good service in the industry as the developer.

  • Quality control plan : The project team members formulate project design, coding, testing, production and preparation of related project document quality standards in accordance with the company’s software project R&D comprehensive quality control requirements, and stipulate that the project team submits various project information and definitions required for quality control Review activities during project development.

  • Project procurement plan : According to the IT equipment and application software system that the project needs to purchase, in accordance with the company's procurement management method and project schedule plan, prepare the project procurement plan, and make a contract management plan with the supplier.

  • Training plan : formulate technical and business training methods, training content, training objects and training time before project development and after project completion and before production.

  • Program evaluation plan : After the project planning is completed, the company’s project management office needs to organize technical and business experts in related fields to review the various plans and implementation plans formed during the project planning stage to ensure the rationality and correctness of the content.

3. Design project realization plan

  • Project technical implementation plan : Based on a comprehensive analysis of the existing business requirements processing level and processing flow, according to the current system architecture requirements, in the design process of the implementation plan, it is necessary to consider issues from the perspective of business personnel and also from technology Consider the problem from the perspective of personnel. It is necessary to consider the convenience of business implementation, and at the same time, fully consider the cost and impact of the implementation of the plan on the overall system resources, such as system operating efficiency, transaction response speed, etc., and use the simplest and practical method to design business requirements implementation plans. Therefore, when the requirements are transformed into the realization scheme design, spend more time in the design work of the realization scheme, and try to consider the long-term, so that the realization scheme design can be inherited and improved in the subsequent projects of the system, and avoid the situation of overthrowing .
  • Project development plan : According to the software project realization plan, schedule plan, cost plan and resource plan, formulate project development plan, design development environment, and coordinate project development tasks.
  • Project test plan : According to the project development plan, formulate the project test plan, reasonably arrange the test environment, organize the unit test, integration test and acceptance test.

4. Determine information communication and disclosure channels

  • ① Confirm the channels and methods of project communication for different project stakeholders;
  • ②As a project manager, you must understand that communication must meet the needs of the information receiver, and provide different project information according to the needs of different project stakeholders;
  • ③ Establish a project information disclosure mechanism, and provide real-time feedback on project delays, cost increases, and quality issues, and communicate as soon as possible to explain the reasons so that senior managers and customers can understand them in a timely manner and adjust related plans.

5. Project Information Management

The establishment of project management information files can realize the management of numerous software projects. An information file is established for each project number through a dedicated project management software, which records in detail the project information generated at each stage of the project life cycle, requires the project team to submit project information at any time, and gradually builds a project information management knowledge base.

3. Project implementation stage

The project execution stage is the specific implementation of the various work content formulated in the project plan. It is the process with the most work content, the longest time and the most resources in the project life cycle.

1. Clear the team composition form

For commercial banks, if they are developing software projects on their own, it is suitable to choose a strong matrix organization structure model, especially for the development of a large software project, because the project involves multiple business departments such as accounting, credit, savings, bank cards, foreign exchange, etc. The application subsystem also involves the connection with external company systems and other aspects of work. It requires the close cooperation of the company’s business and technical teams to complete. Therefore, the use of a strong matrix management model can more fully mobilize the resources of the company’s various departments to complete this project. If the software R&D project is outsourced, it is more appropriate to adopt a project management method, and set up a project manager to be responsible for the entire process of each software project development.

2. Establish a project development team

According to the business requirements development task book, the requirements for project completion time and cost, confirm the number of project development team personnel, clarify the project manager, and establish a development team with the project manager as the project leader. After the team is formed, the project manager organizes the team members to communicate and learn and familiarize themselves with each other, explain the project tasks, goals, scale, personnel composition, rules and regulations and code of conduct, personal positions and responsibilities, and establish the initial contact and mutual relationship between the team and the outside world. Establish the team's authority, establish the team's performance management mechanism, strive for support from all aspects of the company, assign responsibilities according to the characteristics of the team members, and collect relevant project information.

3. Implement project development testing

According to the company's software project design and development system requirements and software project management specifications, implement the plan according to the needs to prepare for the specific development of the project.

  • ①The technical staff shall design the functional specification of the detailed realization of the project under the framework of the project realization plan;
  • ② Prepare the development environment and test environment according to the actual requirements of the project;
  • ③Programmers write program codes, testers design test plans and application cases;
  • ④ It is to review the requirement realization function specification, test plan, and test case;
  • ⑤ Write test problem reports and correct software bugs;
  • ⑥Submit relevant project management information materials regularly as required.

4. Implement project procurement

According to the company's procurement system and process control requirements, the project manager and project members understand the software product supplier market, consult the market inquiries, purchase bids and sign contracts with the winning supplier. Participate in the system supplier bidding meeting to understand the situation of the supplier. When the supplier is determined, the project manager and team members will communicate with the supplier in detail and explain the structure of the application system and the project and the supplier. The association of other application systems, the time arrangement for the realization of the project plan, the communication methods of technical issues, etc., while listening to the system supplier's detailed introduction of the system functions and related technical requirements. Through the communication between the two, suppliers are familiar with the content of requirements and project schedules, and provide corresponding software project development documents within a predetermined time. At the same time, the bank itself does a good job in the construction of the procurement system equipment and application technology environment.

5. Project information archive management

During the research and development process of the project, a lot of information and documents required for project management from different levels and customers will be generated. The project information is collected in a timely and correct manner and put into the project information management file for unified management in order to track the progress of the project. 、Improve project control ability, post-project evaluation and project performance assessment to lay a solid foundation.

4. Project control stage

The task of the project control stage is to regularly monitor and measure the progress of the various work in the project implementation stage, identify whether there are deviations from the plan, and promptly discover and take corrective measures for problems that occur during the project implementation to ensure that the project goals are achieved.

1. Project control process

The software project control flow chart is shown as in Fig. 2.

 

Figure 2 Project process control

2. Project progress and cost control

  • Do a good job in project schedule and cost analysis, the main method used is project earned value analysis : this method analyzes the overall project progress and payment status by comparing the actual consumption and completion of each work with the plan. Completion.
    • The deviation between the expected cost and the actual cost CV=BCWP-ACWP, where BCWP represents the budgeted cost of the completed work, and ACWP represents the actual cost of the completed work. CV>1 means the actual cost is less than the budget cost; CV<1 means the actual cost is greater than the budget cost; CV=1 means the actual cost is equal to the budget cost.
    • The deviation between the expected progress and the actual progress SV=BCWP-BCWS, where BCWP represents the budget cost of the completed workload, and BCWS represents the budget cost of the project calculation workload. SV>1 means the actual progress exceeds the budget progress; SV<1 means the actual progress is behind the budget progress; SV=1 means the actual progress equals the budget progress.
  • Writing project progress reports : According to the company’s project management requirements, regular project progress reports are prepared. The report content includes: project progress reports, task completion reports, project progress control reports (earned value analysis), project status execution reports, and major emergencies Reports, project progress control reports, project management reports and problem tracking reports.
  • Regular project work meetings are held every week : the project progress is continuously monitored on a weekly basis , and the test results are compared with the project execution plan. If the schedule is normal, it will be executed as originally planned; if the schedule is lagging, it will be necessary to analyze the reasons, find out the solutions, and take the milestone plan as the stage goal, and work hard to achieve the entire project goal.
  • Milestone meeting : According to the requirement analysis completion time, system design completion time, coding completion time, test completion time and production completion time established in the milestone plan, a meeting will be held when each stage is completed to confirm whether the work is completed as planned.
  • Communication meetings with project outsourcers : According to the project development plan, hold meetings with software project development outsourcers to exchange project development progress and other related matters, and solve existing problems in a timely manner.

3. Control of project resources

The resources of the project include human resources, development environment resources, test environment resources, equipment resources, etc. During the project development process, the project manager should optimize resource allocation according to the project development progress, rationally arrange the development and testing environment used by the project, and adjust the development. The number and work content of personnel and testers are optimized through project resource optimization to ensure project development progress and quality.

4. Procurement process and contract control

In the process of supervising and controlling the procurement of software projects, it is necessary to ensure that the supplier’s bidding and winning bids work in accordance with the process, whether the supplier’s qualifications meet the requirements, and whether the required documentation is complete. For the supplier that has won the bid, contract management should be done to ensure that the seller meets the requirements, and the buyer should do a good job in project phase payment and contract content change management according to the progress of the project.

5. Demand change management

In the development process of software projects, rapid response is required for changes in demand content. This requires the development of corresponding change management workflows to control changes from all aspects, and at the same time update the content of the project plan, and update the project information in time The data is stored in the project information management file.

6. Project risk control

According to the identification and response strategies of different risks in the project development process during the project planning stage, the project "real-time monitoring, real-time inquiry, and timely disclosure" system is implemented. In the process of project development, the risks that arise must be reported to the superiors and customers in a timely manner, and measures must be taken to reduce the risks to a minimum. For outsourcers, project managers need to closely monitor the implementation of the project.

7. Project quality control

According to the quality assurance plan, the quality controller will track the quality control points in the project development process throughout the process, remind the project manager to submit the quality information required for project management, and notify the project manager to correct any problems found.

V. Project closing stage

The final stage of the project is the final stage of the project life cycle. The main tasks of this stage include the following aspects.

1. Project acceptance

  • Business requirements are proposed by the department through acceptance testing to verify whether the functions implemented by the software project meet the requirements of the requirements;
  • For the functional acceptance of the outsourcing software project product, it is also necessary to check whether the corresponding technical documentation provided by the outsourcer is complete and the content is complete and correct.

2. Project handover

For software projects developed by outsourcing, after the completion of the inspection and acceptance, according to the requirements of the contract, the relevant project materials provided by the outsourcing developers shall be received. For self-developed projects, in accordance with the company's project management requirements, the project team must provide project-related technical documents.

3. Expense settlement

According to the contract and the actual project acceptance, fund settlement with the project outsourcing software developer.

4. Post-project evaluation

  • Submit the project summary report. At the end of project development, the project development team needs to write a project report, summarize and analyze the entire project research and development work, analyze the causes of problems and solutions during project development, and write a project summary analysis report to provide reference for future project research and development.
  • Project performance appraisal, according to the company's project appraisal indicators to calculate and measure the overall situation of the project.
  • Organize project information and save it into project information management files.

 

 

Guess you like

Origin blog.csdn.net/mrchaochao/article/details/108586771