簡易檢索 / 詳目顯示

研究生: 魏伯陞
Wei, Po-Sheng
論文名稱: 改善軟體可維護性的撰寫文件框架
A Documentation Framework in Imporving Software Maintainability
指導教授: 焦惠津
Jiau, Hewijin Christine
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 電腦與通信工程研究所
Institute of Computer & Communication Engineering
論文出版年: 2009
畢業學年度: 97
語文別: 英文
論文頁數: 34
中文關鍵詞: 設計模式文件框架程式文件軟體可維護性
外文關鍵詞: framework, software maintainability, pattern comment, program documentation
相關次數: 點閱:67下載:1
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 軟體可維護性 (Software Maintainability) 是用來評估軟體品質
    (Software Quality)的指標之一。有品質的軟體文件可用來協助軟
    體維護人員修改軟體,進而增加軟體的可維護性。然而,程式設計
    師不一定了解甚麼程式文件是有必要的,此外,撰寫程式文件
    (Program Documentation) 本身也是一個複雜且費力的過程。為了
    解決該撰寫文件的問題,本論文提出一個 Documentation For
    Maintenance 框架 (DFM Framework) 來產生與程式保持一致的程式
    文件,以提升軟體的可維護性。為了示範 DFM 框架的使用,本論文
    實作了一個應用於撰寫設計模式文件 (Design Pattern Comment)
    的工具 PAttern Comment Assistant (PACA)。最後,本論文亦實行
    了一個案例研究來評估藉由使用 PACA 工具所能減少的工作量。研
    究結果顯示 PACA 可以有效地減少在撰寫設計模式文件上所需要花
    費的工作量。

    Software maintainability is one of the important indicators to estimate software qual-
    ity. Software documentation with quality is one of the means that assists maintainers in
    modifying software, and thus improves software maintainability. However, programmers
    may not understand what program documentation is needed. Moreover, documenting
    program is complex. To resolve the documentation issues, this thesis proposed Documen-
    tation For Maintenance (DFM) framework. DFM framework aims at improving software
    maintainability through creating documentation that is consistent with program. A PAt-
    tern Comment Assistant (PACA) tool is implemented to demonstrate the realization of
    DFM framework. Finally, this thesis conducts a case study to estimate the effort re-
    duction on by using PACA. The result shows that PACA can greatly reduce effort on
    documenting pattern comments.

    1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1 Software Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2 Program Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3 The DFM Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.2 Component Collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.3 Recipe to Build Application . . . . . . . . . . . . . . . . . . . . . . . . . 12 4 PACA: PAttern Comment Assistant . . . . . . . . . . . . . . . . . . . . 15 4.1 Issues on Documenting Pattern Comment . . . . . . . . . . . . . . . . . 15 4.2 Practices to Fill Slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.3 Tool Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 5.1 Effort Reduction Estimation . . . . . . . . . . . . . . . . . . . . . . . . . 25 5.2 Summary of Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 A Detailed Design of DFM Framework . . . . . . . . . . . . . . . . . . . . 31 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    [1] S. C. B. de Souza, N. Anquetil, and K. M. de Oliveira, “A Study of the Documen-
    tation Essential to Software Maintenance,” Proceedings of the 23rd Annual International
    Conference on Design of Communication, pp. 68–75, Sept. 2005.
    [2] S. Huang and S. Tilley, “Towards a Documentation Maturity Model,” Proceedings of
    the 21st Annual International Conference on Documentation, pp. 93–99, Oct. 2003.
    [3] B. Thomas and S. Tilley, “Documentation for Software Engineers: What is Needed
    to Aid System Understanding?,” Proceedings of the 19th annual International Conference
    on Computer Documentation, pp. 235–236, Oct. 2001.
    [4] A. Forward and T. C. Lethbridge, “The Relevance of Software Documentation, Tools
    and Technologies: A Survey,” Proceedings of the 2002 ACM Symposium on Document
    Engineering, pp. 26–33, Nov. 2002.
    [5] J. Raskin, “Comments are More Important than Code,” ACM Queue, vol. 3, no. 2,
    pp. 62–64, Mar. 2005.
    [6] L. Prechelt, B. Unger-Lamprecht, M. Philippsen, and W. Tichy, “Two Controlled
    Experiments Assessing the Usefulness of Design Pattern Documentation in Program
    Maintenance,” IEEE Transactions on Software Engineering, vol. 28, no. 6, pp. 595–
    606, June 2002.
    [7] J. Sametinger and M. Riebisch, “Evolution Support by Homogeneously Documenting
    Patterns, Aspects and Traces,” Proceedings of 6th European Conference on Software
    Maintenance and Reengineering, pp. 134–140, Mar. 2002.
    [8] R. P. Buse and W. R. Weimer, “Automatic Documentation Inference for Excep-
    tions,” Proceedings of the 2008 International Symposium on Software Testing and
    Analysis, pp. 273–282, July 2008.
    [9] Eclipse, http://www.eclipse.org/, 2009.
    [10] J. Kerievsky, Refactoring to Patterns. Addison-Wesley, 2005.
    [11] M. Torchiano, “Documenting Pattern Use in Java Programs,” Proceedings of International
    Conference on Software Maintenance, pp. 230–233, Oct. 2002.
    [12] E. Baniassad, G. Murphy, and C. Schwanninger, “Design Pattern Rationale Graphs:
    Linking Design to Source,” Proceedings of 25th International Conference on Software
    Engineering, pp. 352–362, May 2003.
    33
    [13] JHotDraw, http://www.jhotdraw.org/, 2009.

    下載圖示 校內:2014-08-27公開
    校外:2019-08-27公開
    QR CODE