深圳大学软件工程实验报告:模块过程设计与程序流程图
需积分: 0 149 浏览量
更新于2024-08-04
收藏 323KB DOCX 举报
在本篇深圳大学计算机与软件学院的软件工程实验报告中,学生沈晨玙(学号2019092121)针对2021年12月28日的实验任务进行了详细的阐述。实验项目名为“模块过程设计”,旨在通过分析和实践来深入理解软件工程中的关键概念。
实验的主要目标包括:
1. 了解模块过程分析方法:通过实际操作,学生能够掌握如何分解复杂的程序逻辑为可管理的模块,以及如何设计和组织这些模块以实现软件结构的清晰和高效。
2. 掌握程序流图绘制:实验要求学生使用Visio等工具创建程序流程图,这有助于可视化程序的控制流,帮助理解代码执行的路径和逻辑顺序。
3. 学习基于图覆盖的测试方法:学生需要设计测试用例以确保每个程序块至少被执行一次,同时利用JUnit等自动化测试工具分析语句覆盖率,这对于软件质量保证和调试至关重要。
具体到实验内容,沈晨玙选择了分析并修复C++或Java源代码(可以选择isLeap或isValid函数或incDays/decDays其中之一)。报告中展示了几个测试用例,例如输入1(1)、0、8、10和7,其中0、1和2的阶乘计算结果正确,而8、10和7的结果存在错误,反映出代码中潜在的bug。
在分析过程中,沈晨玙发现了代码中部分逻辑问题,尤其是对于阶乘计算的错误处理。他们意识到,理解算法原理并找出bug的关键在于仔细审查核心算法,即从高位开始逐位计算阶乘,同时考虑进位规则。然而,由于某些边界情况处理不当,导致了错误的结果。
在执行测试用例并分析语句覆盖率时,沈晨玙注意到除了一小段特定代码外,其他部分由于没有判断分支,语句覆盖率已经达到了100%。他们通过自动化测试对1-1000的范围进行了测试,发现随着输入值num的增加,语句覆盖率也随之提升。
最终的实验结论是,沈晨玙通过这次实验不仅掌握了模块过程分析和程序流程图绘制的方法,还体验了基于测试驱动开发的实践,以及理解了如何通过自动化测试工具提高代码质量和维护效率。通过解决实际问题,他们加深了对软件工程核心概念的理解和应用能力。
2022-08-03 上传
2022-08-03 上传
2024-11-05 上传
2024-11-05 上传
2024-11-05 上传
2024-11-05 上传
2024-11-05 上传
2024-11-05 上传
郭逗
- 粉丝: 31
- 资源: 318
最新资源
- 探索AVL树算法:以Faculdade Senac Porto Alegre实践为例
- 小学语文教学新工具:创新黑板设计解析
- Minecraft服务器管理新插件ServerForms发布
- MATLAB基因网络模型代码实现及开源分享
- 全方位技术项目源码合集:***报名系统
- Phalcon框架实战案例分析
- MATLAB与Python结合实现短期电力负荷预测的DAT300项目解析
- 市场营销教学专用查询装置设计方案
- 随身WiFi高通210 MS8909设备的Root引导文件破解攻略
- 实现服务器端级联:modella与leveldb适配器的应用
- Oracle Linux安装必备依赖包清单与步骤
- Shyer项目:寻找喜欢的聊天伙伴
- MEAN堆栈入门项目: postings-app
- 在线WPS办公功能全接触及应用示例
- 新型带储订盒订书机设计文档
- VB多媒体教学演示系统源代码及技术项目资源大全