1、Agile Methods and the Application in Web Projects答辩人: 校外指导:Principal Nathaniel B. Kirby, Practical Strategies, Inc校内指导: 厦门大学软件学院背景我们的开发方式 AgilePlanner演示案例分析总结内容提要传统软件工程方法学 试图避免“编码/修复”的混乱 在软件开发过程中采用井然有序的过程 目的是让开发更有效与更容易预测 受工程学的启发,强调“计划”在事实面前: 当遇到困难时,测试与文档被稍稍抽走了 需求时常变化:1.随着开发的进展,客户对于他们真实想要的软件了解更深入了2.商
2、业环境的变化 开发者在预测客户将来的需求,他们把“ ” 进了 统 人与 于过程与工 工 的软件 于 的文档 客户 于 变 于 我们开发软件的方式 编程: 变化:我们的实 AgilePlanner编程: 的 划currency1currency1“用户需的 统currency1currency1fi事程序fl的工 currency1currency1 测试开发TDD 结对编程 的 划currency1currency1“CreatedReadyCustomer: Add/Remove StoriesIn ProgressManager: StartTeam: PlanCustomer: Add/
3、Remove StoriesValidatingManager: SubmitCustomer: RejectCustomer: Accept计划需求变更用户需的 统currency1currency1fi事Created UnscheduledCustomer: CreateWhole Team: Estimate Ideal Days UndividedCustomer: Assign IterationReadyWhole Team:Break into TasksIn ProgressEngineers:StartInvestigationException OccursVerifyi
4、ngEngineers: SubmitStory Owner: RejectIn QAStory Owner: AcceptQA: RejectValidatingQA: AcceptCustomer: RejectCustomer: AcceptEngineers:Problem Understood Engineers: Add Tasks计划程序fl的工 currency1currency1 CreatedEngineers: Create ReadyEngineers: EstimateIn ProgressEngineers: StartBlockedException OccursEngineers: Problem ResolvedEngineers: DropVerifyingEngineers: SubmitStory Owner: RejectStory Owner: Accept