-
自动程序设计 编辑
自动程序设计,是采用自动化手段进行程序设计的技术和过程。后引申为采用自动化手段进行软件开发的技术和过程。在后一种意义上宜称为软件自动化。其目的是提高软件生产率和软件产品质量。按广义的理解,自动程序设计是尽可能借助计算机系统(特别是自动程序设计系统)进行软件开发的过程。按狭义的理解,自动程序设计是从形式的软件功能规格说明到可执行的程序代码这一过程的自动化。自动程序设计在软件工程,流水线控制等领域均有广泛应用。
广义含义
按广义的理解,自动程序设计是尽可能借助计算机系统(特别是自动程序设计系统)进行软件开发的过程。软件开发指的是,从问题的非形式描述,经形式的软件功能规格说明、设计规格说明,到可执行的程序代码、调试,及至确认、交付使用的全过程。
狭义含义
按狭义的理解,自动程序设计是从形式的软件功能规格说明到可执行的程序代码这一过程的自动化。
纵向理解
按纵向理解,低级自动化是从软件设计规格说明到可执行的程序代码这一过程的自动化,系统只起程序人员的作用;中级自动化是从形式的软件功能规格说明、设计规格说明,直到可执行的程序代码这一过程的自动化,系统除了起程序人员的作用外,还起设计人员、系统分析人员的作用;高级自动化是从非形式的问题描述 ,经形式的软 件功能规 格说明 、软件设计规格说明,直到可执行的程序代码这一全过程的自动化,系统除了起程序人员、软件设计人员、系统分析人员的作用外,还起领域专家的部分作用。
横向理解
按横向理解,在上述各种纵向理解级别上,根据人工干预的程度,又可区分各种不同的自动化级别。
自动程序设计的任务是设计一个程序系统,它接受关于所设计的程序要求实现某个目标非常高级描述作为其输入,然后自动生成一个能完成这个目标的具体程序。在某种意义上说,编译程序实际上就是去做“自动程序设计”的工作。编译程序是接受一段有关干某件事情的源码说明(源程序),然后转换成一个目标码(目的程序)程序去完成这件事情。而这里所说的自动程序设计相当于一种“超级编译程序”,它要求能对高级描述进行处理,通过规划过程,生成的到所需的程序。因而自动程序设计所涉及的基本问题与定理证明和机器人学有关,要用到人工智能的方法来实现,它也是软件工程和人工智能相接合的课题。
自动编出的一份程序来获得某种指定结果的任务同论证一份给定的程序将获得某种指定结果的任务是紧密相关的,前者也称程序综合,后者称为程序验证。许多自动程序设计系统将产生一份输出程序的验证作为额外的收益。
1、本站所有文本、信息、视频文件等,仅代表本站观点或作者本人观点,请网友谨慎参考使用。
2、本站信息均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。
3、对任何由于使用本站内容而引起的诉讼、纠纷,本站不承担任何责任。
4、如有侵犯你版权的,请来信(邮箱:baike52199@gmail.com)指出,核实后,本站将立即删除。