软件工程:解决程序TRIANGLE测试数据的挑战
需积分: 0 84 浏览量
更新于2024-07-13
收藏 3.5MB PPT 举报
"该资源是清华大学软件工程课程的课件,重点关注了程序TRIANGLE的测试数据,用于验证其处理不同类型的三角形的能力,包括等边、等腰、不等边、非三角形和退化情况。测试数据包括各种边界值和异常输入,如零数据和负数。"
在软件工程领域,测试数据的选择对于确保程序的正确性和可靠性至关重要。在程序TRIANGLE的案例中,测试数据设计涵盖了多种三角形的特性,以检查程序是否能正确识别和处理这些特性:
1. 等边三角形 - 测试数据如(10, 10, 10),所有边长相等,程序应识别出这是一个等边三角形。
2. 等腰三角形 - 比如(10, 10, 17),其中两边相等,应被识别为等腰三角形。
3. 不等边三角形 - 如(8, 10, 12),所有边长均不相同,应识别为不等边三角形。
4. 非三角形 - 数据如(10, 10, 21),由于不满足两边之和大于第三边的条件,不应被视为三角形。
5. 退化情况 - 包括(10, 5, 5)这样的数据,表示两线重合或一点接触,可能被视为退化的三角形。
6. 零数据和负数 - 如(0, 0, 0)和(0, 10, 12),测试程序对无效输入的处理能力。
软件工程是解决传统软件开发过程中出现的问题,如软件危机,它在60年代末期开始受到关注。软件危机体现在以下几个方面:
1. 成本和进度估算不准确 - 软件项目的规模和复杂性经常超出预期。
2. 用户满意度低 - 完成的软件系统未能满足用户需求。
3. 质量问题 - 软件产品往往不稳定,难以保证质量。
4. 不可维护性 - 软件难以进行修改和更新。
5. 缺乏文档 - 缺乏必要的文档使得软件理解和维护困难。
6. 成本占比增加 - 随着技术发展,软件成本在系统总成本中的比例不断上升。
7. 生产率提升滞后 - 软件开发效率无法跟上计算机应用的增长速度。
为应对软件危机,采取了以下解决途径:
1. 实践中的成功技术和方法 - 将已验证的开发方法应用于实际项目。
2. 开发和使用更好的软件工具 - 通过自动化工具提高开发效率和质量。
3. 组织管理措施 - 引入项目管理,规范软件开发过程。
软件工程学和程序设计方法学应运而生,前者侧重于工程化的开发方法、工具和管理,后者则专注于程序设计的理论和数学基础。1968年的NATO会议标志着软件工程这一概念的正式提出,强调了软件开发的系统化和工程化方法。
2021-07-08 上传
2021-06-13 上传
2021-06-12 上传
2021-03-10 上传
2021-05-30 上传
2021-04-17 上传
2022-09-23 上传
欧学东
- 粉丝: 774
- 资源: 2万+
最新资源
- C++ Qt影院票务系统源码发布,代码稳定,高分毕业设计首选
- 纯CSS3实现逼真火焰手提灯动画效果
- Java编程基础课后练习答案解析
- typescript-atomizer: Atom 插件实现 TypeScript 语言与工具支持
- 51单片机项目源码分享:课程设计与毕设实践
- Qt画图程序实战:多文档与单文档示例解析
- 全屏H5圆圈缩放矩阵动画背景特效实现
- C#实现的手机触摸板服务端应用
- 数据结构与算法学习资源压缩包介绍
- stream-notifier: 简化Node.js流错误与成功通知方案
- 网页表格选择导出Excel的jQuery实例教程
- Prj19购物车系统项目压缩包解析
- 数据结构与算法学习实践指南
- Qt5实现A*寻路算法:结合C++和GUI
- terser-brunch:现代JavaScript文件压缩工具
- 掌握Power BI导出明细数据的操作指南