|
前言
算法是程序的灵魂。实际情况里往往蕴含着远比我们预期要复杂得多的问题和算法。遗憾的是我们对算法程序的分析、测试、开发和维护,至今仍只能依赖可读性较差、一维的文字性程序。“读程序难,读别人的程序更难。”一直是困扰软件行业的一个难题。它严重影响软件工程师整体结构性思维和解决复杂问题的能力。“软件开发成功率低、开发周期长、成本大、可靠性和可维护性差”已成为当前软件业的通病。一个重要原因是,计算机语言说到底主要不是给人,而是给计算机系统里的编译程序读的。受形式语言和编译技术的制约,计算机语言并非是人性化、理想的语言。
科学伟人爱因斯坦说的好:“Think in pictures rather than words.”又说:“If I can’t picture it, I can’t understand it.”[12]。翻译成中文,意思说:“要用图思维,不要用文字思维。”又说:“如果我不能将考虑的对象变成图,我也无法理解它。”。
“要用图思维”,这是解决因文字性程序给我们带来困难的正确途径。
杭州思图软件科技有限公司创办人斯传根老师长期致力于SI-NS图软件技术的研究、开发和应用。目前产品软件“思图程序开发维护工具软件V1.0” 可以与任何主流开发平台实现无缝链接,随时将开发和维护中的C/C++程序自动变换成清晰、规范、可读性远胜于文字性程序的二维结构化程序框图(SI-NS图)。再复杂的程序一经变换成SI-NS图,程序的总体结构、嵌套关系、执行路径,具体细节都一目了然。
它改变了程序开发维护的传统理念,在程序设计、开发、测试、文档、维护的软件生存周期中,从此可以用图而不再是文字性程序分析和思维。
软件工程师终于有了自己的图形化工程语言,彼此可以用图代替文字性程序分析并进行交流和切磋。
它是程序测试和维护的理想平台,无论是静态测试的代码审查、代码走查(Code Walkthrough),还是动态测试采用的白盒测试,无论是程序测试用例的编写,还是对测试错误结果的分析,面对SI-NS图都变得简单明了。软件工程师甚至无需计算机就可以在SI-NS图上执行和诊断程序。
一个软件企业倘若采用这项技术,它对于改善企业软件开发维护环境,提高开发效率,降低开发成本,开发出高质量、高可靠、高可信的程序,都起到立竿见影的效果。企业多年辛勤付出积累起来的软件程序,将以SI-NS图文档形式被妥善保存,再也不会因开发人员跳槽等原因而付之东流。
学校的软件教学倘若采用这项技术,教师可以与学生轻易交流较大规模和难度的编程实例,并借此可以传授解题方法、步骤和经验。计算机软件教学中目前普遍存在的“程序实例大多不超过一页,只能传授知识,难以培育能力”的问题,有望得到解决。
软件人机界面友好,操作使用简单方便。
目前这项技术已申请国家发明专利,并获得了科技部创新基金资助(立项代码:09C26213304026)。
|