標題: 物件導向軟體的高階程式分析之研究
A Study of High-Level Program Analyses for Object-Oriented Software
作者: 陳俊良
Chen, Jiun-Liang
王豐堅
Feng-Jian Wang
資訊科學與工程研究所
關鍵字: 物件導向;程式分析;程式相依圖;類別關係;軟體工程;object orientation;program analysis;program dependency graph;class relationship;software engineering
公開日期: 1997
摘要: 高階程式分析技術在軟體工程上的應用相當廣泛,譬如軟體的除錯,測試及 程式特性驗證 等.近來由於物件導向技術所引進抽象化,封裝,繼承與多 型等高階特性到軟體的製作,再 加上資訊系統的規模越來越複雜且龐大, 增加解析程式的困難,因而造成軟體測試與維護 的成本大幅提昇.本論文 研究的目的是提出程式分析技術來解析高階語言所撰寫的程式, 可用來 協助軟體測試與維護以降低軟體發展的成本.本研究針對物件導向軟體.分 別提出 以相依為基與流程為基的高階程式分析技術.在相依為基的分析 技術中,我們設計物件導 向程式相依關係圖來表示程式中物件與訊息傳 遞之間的各種相依關係;此相依圖可以表達 封裝在物件內部的複雜結構. 可提供較準確的相依關係分析,如程式切片.物件導向程式 的類別雖然 具有高度模組化的特性,但是類別之間仍可透過繼承,關連與群集的關係流 模型將類別之間傳遞的隱含資訊表示繼承流,關連流,以及群集流;這些類 別關係流可以用來 分析物件導向程式類別庫的特性.此兩種分析技術可 進一步應用在物件導向軟體工程上的 程式解析,除錯,測試與維護工具之 製作. High-level program analysis techniques have been applied in various fields of software engineering,such as debugging, testing,and proof of correctness properties.Recently,the object-oriented (OO) paradigm introduced the features of object abstraction,encapsulation,inheritance,and polymorphism to software construction;and more and more large-scale software applications proliferated rapidly.These might complicate program analyses in software testing and maintenance.In this thesis,the techniques of program analyses are studied in order to faciliate software testing and maintenance.The analysis techniques include a denpendency-based approach by a dependency graph model,and a flow- based approach,a flow model is presented to express the implicit information propagated among classes via inheritance,association,and aggregation relationships.The flow model,called class relationship flow model,consists of inheritance flow,association flow,and aggreation flow corresponding to the class relationships to provide flow analysis of class libaries.Both analysis approaches can be the common techniques to develop the tools of understanding,debugging,testing,and maintence in OO software engineering.
URI: http://140.113.39.130/cdrfb3/record/nctu/#NT860392011
http://hdl.handle.net/11536/62739
顯示於類別:畢業論文