void run_scrum() { const int Sprint_Length = 10; int velocity = get_past_performance();
// Scrum roles Role team, product_owner, ScrumMaster;
// Scrum 中的制品 Product_Backlog product_backlog; Sprint_Backlog sprint_backlog; Burndown_Chart sprint_burndown_chart, release_burndown_chart;
Product_Increment product_increment;
//开始项目的三个准备条件 setup_team(team); define_Definition_of_Done(team, product_owner); initial_project(&product_backlog ); //标红的为输出参数,将带回值,下同
//每一次while 循环为一次迭代 while (!is_empty(product_backlog)) { run_sprint_planning_meeting(product_backlog, velocity, &sprint_backlog);
//每一次for循环为一个工作日 for(num_of_day = 1; num_of_day <= Sprint_Length; num_of_day ++){ run_daily_scrum_meeting(&sprint_burndown_chart); do_development_activity(sprint_backlog, &product_increment); }
run_sprint_review_meeting(product_backlog, product_increment); run_retrospective_meeting();
update_product_backlog(&product_backlog, &release_burndown_chart); update_velocity(&velocity); } }