1.软件产品构成的主要部分
1.客户需求
2.产品说明书
3.进度表
4.软件设计文档
包括:结构文档;数据流图:状态转换图;流程图;代码注释等
5.测试文档
包括:测试计划;测试用例;缺陷报告;测试工具和自动测试;质量、统计和总结。
2.软件测试清单
1.帮助文档
2.用户手册
3.样本和示例
4.标签和不干胶
5.产品支持信息
6.图标和标志
7.错误信息
8.广告和宣传资料
9.安装
10.说明文件
3.软件开发生命周期
- 大爆炸模式
- 边写边改模式
- 瀑布模式
- 螺旋模式
3.1.大爆炸模式
- 优点:简单。
- 缺点:计划、进度安排和正规开发过程几乎没有,所有精力都花在开发软件和编写代码上。没有测试,就算有也是挤在产品发布前,发现缺陷会大概率因为不能回头修复不了了之。
3.2.边写边改模式
- 优点:相较于大爆炸模式考虑了产品需求。
- 缺点:测试员和程序员会陷入无休止的循环往复,几乎每天都会拿到新的软件版本测试。有时候新版本出来,旧的版本还未测试完成。
- 产品发布:最后,终于有机会对所有功能进行测试,并发现软件的缺陷越来越少,这时某人决定发布该软件。
3.3.瀑布模式
- 优点:简捷、精致,很有意义,在合适的项目中效果显著。
- 特征:
- 瀑布模式非常强调产品的定位。
- 瀑布模式各步骤是分立的,没有交叉。
- 瀑布模式无法回溯。
- 缺点:因为测试仅仅在最后进行,一些可能出现在早期的问题直到发布产品前才能发现。
3.4.螺旋模式
- 特征:从小开始,定义重要功能,努力实现这些功能,接受客户反馈,然后进入下一阶段。重复上述过程,直至得到最终产品。
- 步骤:
- 确定目标、可选方案和限制条件
- 明确并化解风险
- 评估可选方案
- 当前阶段开发和测试
- 计划下一阶段
- 确定进入下一阶段的方法
3.5.敏捷软件开发(Agile Software Development)
又快速原型、极限编程或进化开发等