软件开发过程 引言 统一过程 敏捷方法介绍
软件开发过程 引言 统一过程 敏捷方法介绍
内容提要 ▣软件开发存在的问题 ▣软件开发过程:Unified Process ▣迭代开发(Iterative development) ▣敏捷方法(Agile Practices)
内容提要 软件开发存在的问题 软件开发过程: Unified Process 迭代开发(Iterative development) 敏捷方法(Agile Practices)
Software Development Tasks Place Order Problem Inventory Shipping Space Descriptions of problem Business Process (Human:Requirements) Natural Language A Gap between two Spaces Descriptions of solution Programming Language (Human:Designing Program Execution of program 建造 Solution Computer System Space
Software Development Tasks Problem Space Business Process Place Order Inventory Shipping Computer System Descriptions of problem (Human: Requirements) Natural Language Descriptions of solution (Human: Designing Program ) Programming Language Solution Space Execution of program A Gap between two Spaces
Problems 当前软件开发存在的问题: 症状 原因 对用户要求的理解不正确 需求管理不充分 难于适应变化的需求 交流含糊、不严密 模块组合性差 架构脆弱 软件难于维护和扩展 复杂性没有控制和管理 软件致命缺陷发现晚 在需求、设计和实现间存在不一致 软件质量差 测试差 软件性能差 评估主观 开发团队成员间难于配合 瀑布式开发模式 构造和发布过程不可信 没有有效地控制变更 自动化程度不高
Problems
以往软件开发经验: ▣用户需求总是在变化→修改代码 口改动一个函数乃至函数使用的数据→引起对 其他函数的严重破坏 ▣维护和调试阶段的大天部分时间不是化在修改 错误上,而是化在寻找错误和考虑如何避免 在修改中再次引发错误BUG上 →如何适应用户变化的需求?
以往软件开发经验: 用户需求总是在变化 Æ 修改代码 改动一个函数乃至函数使用的数据 Æ引起对 其他函数的严重破坏 维护和调试阶段的大部分时间不是化在修改 错误上 ,而是化在寻找错误和考虑如何避免 在修改中再次引发错误BUG 上 Æ 如何适应用户变化的需求 ?