找回密码
 注册
Simdroid-非首页
查看: 126|回复: 4

怎样验证大型的复杂程序是否正确

[复制链接]
发表于 2011-1-14 19:29:18 | 显示全部楼层 |阅读模式 来自 LAN
验证大型程序,输入数据,输出结果和精确值不一致,不知道程序错在哪一步,不知道各位有什么好方法来验证程序吗,
所有的中间过程值都不知道,虽然程序可以运行,但是也不知道算得对不对,这种情况下只有整个程序编好之后才能验证,整个编好非常花时间,编好之后也不知道对不对,发现不对的话反过头检查每一步又不知道从哪里开始,各位是怎么解决这个问题的呢
发表于 2011-1-15 13:21:27 | 显示全部楼层 来自 上海
Simdroid开发平台
一些建议:
如果是写大型复杂程序,那就不能单纯考虑代码因素了。需要涉及到软件架构,软件工程,测试用例、单元测试、集成测试等等内容了。
好的大型程序,70%以上都不是功能代码,而是容错代码,测试代码等等看似边缘性的工作。

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2011-1-15 17:42:52 | 显示全部楼层 来自 天津
不是很清楚 楼主所谓的 "验证大型程序" 有多大?
目前我做的都是些小程序组而已, 前段时间涉及一个从数据库读数,显示,处理,分析,和结果发布等基本功能的界面化程序, 有12个matlab程序(当然里面也有欠套的function),4个exe程序,总共也就3000余行(不多).我的做法是对每个程序都能做到独立运行(结果正确)并支持其他程序调用. 在m程序中,多加点if...end等条件判断. 在某些可能问题上,对特殊变量进行实时显示(去掉后面的";").
try...catch...end也是个挺好的程序调试模块.
就想cwit版主说的测试用例、单元测试等.

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2011-1-18 22:10:13 | 显示全部楼层 来自 浙江绍兴

本帖最后由 狗头军师 于 2011-1-18 22:21 编辑

验证大型程序当然是拿现有的正确的算例去进行复算了,感觉楼上的几位好像将重心都放到了代码上了,而忽视了一个算法的效能,在分析一个程序是否正确当然是要了解这个算法功能,用算例去检验是最好的方法。记得我在上大学时我的有限元老师曾说过不要过分去依赖软件,而是将其作为一个计算的工具而已,他说在使用一个软件前,首先要了解这个软件的使用前提,然后再用现有的算例去难证并估算其计算效能。他指出现在在工程中都有现成的正确的算例,这些算例各个细节都完整,可以根据数据比对来复算程序。

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2011-1-19 21:12:24 | 显示全部楼层 来自 香港
可以用完整算例 或者 部分部分地验证
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-5 03:22 , Processed in 0.042447 second(s), 19 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表