程序分析
程序分析,是指以整个生产过程为研究对象,研究分析完整的工艺程序,从第一个工作地到最后一个工作地,是否存在多余、重复、不合理的作业,作业顺序是否合理,搬运是否太多,等待是否太长等现象,并制定改进方案的一种分析技术。[1]对计算机程序行为进行自动分析的过程,主要包括静态分析和动态分析两种策略。
中文名
程序分析
外文名
Program Analysis
拼音
chéng xùfēn xī
注音
ㄔㄥˊ ㄒㄩˋㄈㄣ ㄒㄧ
简介
程序分析主要应用在程序优化、程序正确性验证等方面。相关技术包括类型系统、抽象解释、程序验证和模型检查等等。
程序分析是以某种语言书写的程序为对象,对其内部的运作流程进行分析。程序分析的目的主要有三点:一是通过程序内部各个模块之间的调用关系,整体上把握程序的运行流程,从而更好地理解程序,从中汲取有价值的内容。二是以系统优化为目的,通过对程序中关键函数的跟踪或者运行时信息的统计,找到系统性能的瓶颈,从而采取进一步行动对程序进行优化。最后一点,程序分析也有可能用于系统测试和程序调试中。当系统跟踪起来比较复杂,而某个BUG又比较难找时,可以通过一些特殊的数据构造一个测试用例,然后将分析到的函数调用关系和运行时实际的函数调用关系进行对比,从而找出错误代码的位置。
概念
程序分析是对产品生产过程的工序状态进行记录、分析和改善的必要有效的IE手法,它是把工艺过程中的物流过程及人的工作流程以符号形式进行记录、设计的方法,通过它可以反映工序整体的状态,从而有效地掌握现有流程的问题点,并研究制定改善对策,以提高现有流程效率。
这里特别强调的是程序分析的目的性,任何工作开始之前最为重要的是要抱有鲜明的目的,才能在工作中明确方向达到目标。因此我们要明确IE程序分析的目的是消除产品生产过程中的全部浪费与不合理,从而提高效率。所以加工、检查、停滞、搬运任何工序并不因为其存在而合理,衡量的标准是创造价值的合理,否则是浪费。由此看来除加工以外的任何过程都有浪费的嫌疑。掌握全部生产过程包括工艺过程、检验过程、运输过程的实际状态发现并去除过程浪费与不合理,是程序分析的主要目的和作用。
目的
程序分析的目的有如下几点:
1、准确掌握工艺过程的整体状态
工艺流程的顺序; 明确工序的总体关系; 各工序的作业时间确认; 发现总体工序不平衡的状态。2、发现工序问题点
发现并改进产生浪费的工序; 发现工时消耗较多的工序,重排简化此工序; 减少停滞及闲余工序; 合并一些过于细分或重复的工作。
所谓程序调试,是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。这是保证计算机信息系统正确性的必不可少的步骤。编完计算机程序,必须送入计算机中测试。
程序调试分以下,几步进行:
第一步,用编辑程序把编制的源程序按照一定的书写格式送到计算机中,编辑程序会根据使用人员的意图对源程序进行增、删或修改。
第二步,把送入的源程序翻译成机器语言,即用编译程序对源程序进行语法检查并将符合语法规则的源程序语句翻译成计算机能识别的“语言”。如果经编译程序检查,发现有语法错误,那就必须用编辑程序来修改源程序中的语法错误,然后再编译,直至没有语法错误为止。
第三步,使用计算机中的连接程序,把翻译好的计算机语言程序连接起来,并扶植成一个计算机能真正运行的程序。在连接过程中,一般不会出现连接错误,如果出现了连接错误,说明源程序中存在子程序的调用混乱或参数传递错误等问题。这时又要用编辑程序对源程序进行修改,再进行编译和连接,如此反复进行,直至没有连接错误为止。
第四步,将修改后的程序进行试算,这时可以假设几个模拟数据去试运行,并把输出结果与手工处理的正确结果相比较。如有差异,就表明计算机的程序存在有逻辑错误。如果程序不大,可以用人工方法去模拟计算机对源程序的这几个数据进行修改处理;如果程序比较大,人工模拟显然行不通,这时只能将计算机设置成单步执行的方式,一步步跟踪程序的运行。一旦找到问题所在,仍然要用编辑程序来修改源程序,接着仍要编译、连接和执行,直至无逻辑错误为止。
以上就是关于什么是程序分析全部的内容,包括:什么是程序分析、什么是程序调试、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)