知名百科  > 所屬分類  >  科技百科    百科詞條   

自動程序設計

自動程序設計指的是用自動化手段進行編程的技術和過程。后來擴展到用自動化手段進行軟件開發的技術和過程。在后一種意義上,應該叫軟件自動化。其目的是提高軟件生產率和軟件產品質量。

目錄

定義概念 編輯本段

自動編程這個詞有很多意思。從廣義上講,自動編程就是盡可能地使用計算機系統(尤其是自動編程系統)開發軟件的過程。軟件開發是指從問題的非正式描述到軟件功能的正式規格說明的過程、設計規范,到可執行程序代碼、調試,及至確認、交付和使用的全過程。

自動程序設計是從正式的軟件功能規范到可執行程序代碼的過程的自動化。按照縱向的理解,底層自動化是從軟件設計規范到可執行程序代碼這一過程的自動化,系統只扮演程序員的角色;中間自動化是軟件功能的正式規范、設計規范表明,在可執行程序代碼的過程實現自動化之前,系統不僅扮演程序員的角色,還扮演設計者的角色、系統分析師的角色;高級自動化是從非正式的問題描述到正式的軟件功能規格說明、軟件設計規范表明,在可執行程序代碼的全過程自動化之前,系統不會只有程序員、軟件設計人員、除了系統分析師的角色之外,還扮演一部分領域專家的角色。按照橫向理解,在上述縱向理解層次上,根據人工干預的程度,可以區分出不同的自動化水平。

技術實現 編輯本段

從關鍵技術的角度來看,自動程序設計的實現可以概括為演繹綜合、程序轉換、實例推廣和流程實現。

①演繹綜合。其理論基礎是數學定理的構造性證明可以等價于程序推導。用戶將其輸入提供給要生成的程序、輸出數據必須滿足的條件,該條件是用某種形式語言表示的(如謂詞演算)陳述。對于所有這些滿足條件的輸入,要求定理證明程序證明存在一個滿足輸出條件的輸出,從這個證明中提取出要生成的程序。這種方法的優點是有堅實的理論基礎,但迄今為止只分析了少數小樣本,難以用于大規模程序。

②程序轉換。將一個規范或程序轉換成另一個功能等同的規范或程序。從抽象層次的異同,可以區分出縱向轉化和橫向轉化。前者是將抽象程度較高的規范或程序轉化為與其功能相當的抽象程度較低的規范或程序;后者是同一抽象層次的規范或程序之間的功能等價轉換。

③實例推廣。用反映程序行為的例子構建一個程序。一般有兩種方法。一種是輸入/輸出對法:通過給出一組輸入/輸出對,逐步衍生出適合一類問題的程序。另一種是部分程序軌跡法:通過給出實例的運行軌跡,逐步導出程序。這種方式的想法很吸引人,受到用戶的好評,但是要總結出一定規模的節目還是相當困難的。

④過程實現。在對應的規范中對應的組件明確,對應的轉換映射也明確的前提下,可以借助流程實現映射。目前一般都是設計非常高級的語言(如SETL),其中包含全稱量詞存在量詞等,以便編寫軟件設計規范的組件。然而,SETL本身不是函數式規范語言,也不是函數式語言。這種方式實現效率高,難點在于從非算法構件到算法構件的轉換。因此,迄今為止采用這種方法的系統一般自動化程度不高,難以實現從功能規范到可執行程序代碼的自動轉換。


附件列表


0

詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫學等領域),建議您咨詢相關領域專業人士。

如果您認為本詞條還有待完善,請 編輯

上一篇 智能控制    下一篇 自動規劃

同義詞

暫無同義詞
主站蜘蛛池模板: 国产AV一区二区三区无码野战| 无遮挡亲胸捏胸激吻视频| 国产精品国产精品国产专区不卡| 亚洲欧美日韩成人高清在线一区| www四虎在线高清| 男女一边摸一边做爽爽| 成人免费高清完整版在线观看| 四虎影院永久免费观看| 中文天堂最新版www| 美国毛片亚洲社区在线观看| 手机看片1024旧版| 再深点灬舒服灬太大了一进一出| 一级成人毛片免费观看| 粗喘撞吟np文古代| 在线观看亚洲免费视频| 亚洲欧美日韩中文在线制服| 2018天天操| 果冻传媒电影免费看| 国产成a人亚洲精v品无码性色| 久久精品无码专区免费东京热| 骚视频在线观看| 成黄色激情视频网站| 午夜成人理论福利片| gogo全球高清大胆亚洲| 波多野结衣上班族| 国产精品内射久久久久欢欢| 亚欧洲精品在线视频免费观看 | 91精品国产免费久久国语蜜臀 | 欧美最猛黑人xxxx黑人| 国产精品女人在线观看| 久久综合亚洲色hezyo国产| 超碰97久久国产精品牛牛| 成人免费观看一区二区| 人善交另类欧美重口另类| 68日本xxxⅹxxxxx18| 日韩精品无码人妻一区二区三区| 国产午夜激无码av毛片| 一本加勒比hezyo东京re高清| 波多野结衣久久| 国产成人精品久久一区二区小说| 久久一本岛在免费线观看2020|