Publications-Theses

題名 應用設計樣式於元件式系統開發之研究--以會計總帳系統為例
作者 俞君翰
貢獻者 曾淑峰
俞君翰
關鍵詞 物件導向
設計樣式
軟體元件
Object-Oriented
Design Pattern
Software Component
日期 2002
上傳時間 18-Sep-2009 14:23:31 (UTC+8)
摘要 系統設計階段的主要目的是將系統分析模型轉換成足以規範實作人員進行程式撰寫的設計模型,以提昇系統效能及再用效益。並且讓設計結果符合非功能需求、實作環境以及效能需求等限制。其重心應放在將系統的設計最佳化,並確保設計模型已涵蓋全部的需求。但對於物件導向程式設計經驗較為不足的開發人員而言,這樣的過程不但費時費力,而且往往浪費資源於解決已有標準解答的問題。若是能將設計樣式的概念融入元件式系統的設計過程中,將可導引系統設計人員快速的將前人所累積的物件導向程式設計經驗應用於開發中元件式系統的設計上,避免無謂的資源浪費。本研究將以Gamma等四位學者所提出的二十三個設計樣式為基礎,發展一套設計樣式導入流程。並以一雛型系統為例,說明系統設計者如何在進行元件式系統設計時,以本研究提供的設計樣式導入流程,將設計樣式逐步導入開發中系統,藉此縮短系統開發時程、提升系統功能擴充性和元件再用性、降低日後維護系統的困難度,並可在系統開發過程中,對所有曾採用的設計樣式進行記錄,做為專案管理以及日後開發類似系統的重要參考。
The primary purpose of system design phase is to transform the analysis model into the design model which is definite enough to generate programming code. Besides, the result of design should satisfy the nonfunctional requirement, implementation environment and efficiency requirement. The focus should be on the optimization of design to ensure the design model satisfying all kinds of requirements. However, the inexperienced object-oriented system designers usually spend a lot of time and energy to solve problems which already have standard answers. The concept of design patterns can be used in the design phase to guide system designers to apply the accumulated object-oriented programming experience to avoid wasting resources. This research intends to establish a systematic approach for applying the design patterns to the component-based system development process. This approach is based on the most popular twenty-three design patterns provided by Gamma et al. A prototype is also established to demonstrate the step by step process in adopting the design patterns during the component-based system development process. The proposed approach should increase the software reusability and maintenance, as well as reduce the developing schedule and cost. Furthermore, the systematic approach of adopting the design patterns can be incorporated into the project management guidelines as the important reference for future system development.
參考文獻 中文部份
1.楊智欽,民89,運用設計樣版於網頁式決策支援架構之探討—以資金轉撥計價應用為例,國立政治大學資訊管理研究所碩士論文。
2.葉文崎,民90,元件式系統開發方法研究—以郵務應用為例,國立政治大學資訊管理研究所碩士論文。
3.朱明強,民91,以企業樣版為基礎之需求分析架構,國立政治大學資訊管理研究所碩士論文。
4.軟體產業服務團,民89,軟體元件定義與發展現況,企業軟體元件發展與應用—觀念篇(經濟部工業局主辦,中華名國資訊軟體協會—軟體產業服務團執行)。
5.李于青譯,戶松豊和著,2002,Java2物件導向技術專題, Design Pattern、Framework、Multithread、Concurrent,台北,碩博文化股份有限公司。
6.李于青譯,結城浩著,2002,Design Patterns於Java語言上的實習應用,台北,碩博文化股份有限公司。
7.葉秉哲譯,2001,物件導向設計模式,可再利用物件導向軟體之要素,台北,普林帝斯霍爾國際出版有限公司(Gamma, E., Helm, R., Johnson, R. and Vlissides, J., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.)。
英文部份
1.Allen, P. and Frost, S., Component-Based Development For Enterprise Systems, Cambridge University Press, 1998.
2.Alexander, C. Timeless Way of Building, New York: Oxford University Press, 1979.
3.Alhir, S. S. UML In A Nutshell, O’Reilly, 1999.
4.Beck, K. “Using a Pattern Language for Programming, Workshop on Specification and design”, ACM SIGPLAN Notices, p.16, 1988.
5.Booch, G., Rumbaugh, J. and Jacobson, I., The Unified Modeling Language User Guide, Addison-Wesley, 1999.
6.Brown, A., W., Editor, Component-Based Software Engineering, IEEE Computer Society, 1996.
7.Brown, A., and Short, K., “On Components and Objects: The Foundations of Component Based Development”, proc. 5th Int’1 Symp. Assessment of Software Tools and Technologies, IEEE CS Press, 1997, pp.112-121.
8.Coplien, J. Advanced C++ : Programming Styles and Idioms, Addison Wesley, 1992.
9.Cunningham, W. “Panel on Design Methodology”, ACM SIGPLAN Notices, pp:94-95.,1993.
10.Eriksson, H. E. and Penker, M. Business Modeling with UML –Business Patterns at Work, John Wiley & Son, Inc., 2000.
11.Gamma, E. “Object-Oriented Software Development based on ET++:Design Patterns, Class Library, Tools”, PhD thesis, University of Zurich, 1991.
12.Gamma, E., Helm, R., Johnson, R. and Vlissides, J., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.
13.Herzum, P., and Sims, O., Business Component Factory, Willey Computer Publishing, 2000.
14.IBM Online Document., IBM San Francisco Online Document, http://www.ibm.com, 2001.
15.IEEE Standards Collection, Software Engineering, IEEE, 1993.
16.Jacobson, I., Griss, M., and Jonsson, P., Software Reuse, Addison-Wesley, 1997.
17.Jacobson, I., Booch, G., and Rumbaugh, J., The Unified Software Development Process, Addison-Wesley, 1999.
18.James O. Colplien. Advanced C++ Programming Styles and Idioms. Addison-Wesley, Reading, MA, 1992.
19.Larman, G. Applying UML and Patterns, 2nd edition, Prentice Hall PTR, 2002.
20.Morton, S. The State of the Art of Research, The Information Systems Research, Poston: Harvard Business School Press, 1984, pp.13-41.
21.Laitkorpi, M., and Jaaksi, A., “Extending the Object-Oriented Software Process with Component-Oriented Design”, JOOP, MARCH/APRIL, 1999, pp. 41-50.
22.Object Management Group. OMG Unified Modeling Language Specification, www.omg.org, 2001.
23.Phillippe, K., The Rational Unified Process An Introduction, 2nd edition, Addison-Wesley, 2000.
24.Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W., Object-Oriented Modeling and Design. Prentice-Hall, 1991.
25.Sprague R. H. and Carlson, E. D. Building Effective Decision Support Systems, Prentice-Hall, Englewood Cliffs, 1982.
26.Szyperski, C., Component Software: Beyond Object-Oriented Programming, ACM Press, Addison-Wesley, 1997.
27.Wendy, B., Michael, B., Mastering UML with Rational Rose 2002, Sybex, 2002.
描述 碩士
國立政治大學
資訊管理研究所
90356019
91
資料來源 http://thesis.lib.nccu.edu.tw/record/#G0090356019
資料類型 thesis
dc.contributor.advisor 曾淑峰zh_TW
dc.contributor.author (Authors) 俞君翰zh_TW
dc.creator (作者) 俞君翰zh_TW
dc.date (日期) 2002en_US
dc.date.accessioned 18-Sep-2009 14:23:31 (UTC+8)-
dc.date.available 18-Sep-2009 14:23:31 (UTC+8)-
dc.date.issued (上傳時間) 18-Sep-2009 14:23:31 (UTC+8)-
dc.identifier (Other Identifiers) G0090356019en_US
dc.identifier.uri (URI) https://nccur.lib.nccu.edu.tw/handle/140.119/35187-
dc.description (描述) 碩士zh_TW
dc.description (描述) 國立政治大學zh_TW
dc.description (描述) 資訊管理研究所zh_TW
dc.description (描述) 90356019zh_TW
dc.description (描述) 91zh_TW
dc.description.abstract (摘要) 系統設計階段的主要目的是將系統分析模型轉換成足以規範實作人員進行程式撰寫的設計模型,以提昇系統效能及再用效益。並且讓設計結果符合非功能需求、實作環境以及效能需求等限制。其重心應放在將系統的設計最佳化,並確保設計模型已涵蓋全部的需求。但對於物件導向程式設計經驗較為不足的開發人員而言,這樣的過程不但費時費力,而且往往浪費資源於解決已有標準解答的問題。若是能將設計樣式的概念融入元件式系統的設計過程中,將可導引系統設計人員快速的將前人所累積的物件導向程式設計經驗應用於開發中元件式系統的設計上,避免無謂的資源浪費。本研究將以Gamma等四位學者所提出的二十三個設計樣式為基礎,發展一套設計樣式導入流程。並以一雛型系統為例,說明系統設計者如何在進行元件式系統設計時,以本研究提供的設計樣式導入流程,將設計樣式逐步導入開發中系統,藉此縮短系統開發時程、提升系統功能擴充性和元件再用性、降低日後維護系統的困難度,並可在系統開發過程中,對所有曾採用的設計樣式進行記錄,做為專案管理以及日後開發類似系統的重要參考。zh_TW
dc.description.abstract (摘要) The primary purpose of system design phase is to transform the analysis model into the design model which is definite enough to generate programming code. Besides, the result of design should satisfy the nonfunctional requirement, implementation environment and efficiency requirement. The focus should be on the optimization of design to ensure the design model satisfying all kinds of requirements. However, the inexperienced object-oriented system designers usually spend a lot of time and energy to solve problems which already have standard answers. The concept of design patterns can be used in the design phase to guide system designers to apply the accumulated object-oriented programming experience to avoid wasting resources. This research intends to establish a systematic approach for applying the design patterns to the component-based system development process. This approach is based on the most popular twenty-three design patterns provided by Gamma et al. A prototype is also established to demonstrate the step by step process in adopting the design patterns during the component-based system development process. The proposed approach should increase the software reusability and maintenance, as well as reduce the developing schedule and cost. Furthermore, the systematic approach of adopting the design patterns can be incorporated into the project management guidelines as the important reference for future system development.en_US
dc.description.tableofcontents 目 錄
第一章 緒論 1
1.1 研究動機 1
1.2 研究目的 2
1.3 研究方法與流程 2
1.4 研究範圍與限制 4
第二章 文獻探討 5
2.1 設計樣式(Design Pattern) 5
2.1.1 樣式的演進 5
2.1.2 GoF設計樣式 5
2.2 UML(Unified Modeling Language) 8
2.2.1 UML定義和演進 8
2.2.2 UML軟體架構觀點 8
2.2.3 UML圖形 10
2.3元件式系統開發程序 12
2.3.1軟體元件的定義 12
2.3.2元件式系統開發程序 13
第三章 研究架構 19
3.1 元件式系統設計流程 19
3.2 設計樣式導入流程 21
第四章 應用設計樣式開發元件式系統—以會計總帳系統為例 43
4.1會計總帳系統簡介 43
4.2會計總帳系統開發 43
4.2.1系統分析 43
4.2.1.1系統功能 43
4.2.1.2系統使用案例圖 45
4.2.1.3系統使用案例說明 46
4.2.1.4系統概念類別圖 51
4.2.1.5系統循序圖 55
4.2.2 系統設計 58
4.2.2.1定義系統初步設計類別圖 59
4.2.2.2精製系統設計類別圖 63
4.2.2.3設計軟體元件 68
第五章 會計總帳系統雛型展示 76
第六章 結論與未來研究方向 86
參考文獻 88
圖 目 錄
圖2?1 設計樣式關係圖 8
圖2-2 4+1觀點 9
圖2-3 修改後的OMT++軟體開發程序 14
圖2-4 設計階段加入介面設計 14
圖2-5 元件建立及測試和元件整合 14
圖2-6 RUP流程架構圖 16
圖2-7 兩個子程序間的互動關係 17
圖2-8 San Francisco Roadmap Process 18
圖3-1 元件式系統設計架構 20
圖3-2 設計樣式導入流程圖 24
圖3-3 聚合關係 25
圖3-4 組合關係 25
圖3-5 Iterator樣式架構 26
圖3-6 Composite樣式架構 26
圖3-7 Visitor樣式架構 27
圖3-8 類別之間的生成關係 28
圖3-9 Abstract Factory樣式架構 28
圖3-10 Factory Method樣式架構 29
圖3-11 Builder樣式架構 30
圖3-12 Flyweight樣式架構 31
圖3-13 發訊者和收訊者為多對多關係 32
圖3-14 發訊者和收訊者為一對多關係 32
圖3-15 Mediator樣式架構 32
圖3-16 Chain of Responsibility樣式架構 33
圖3-17 物件狀態的改變影響到物件自身的操作內容 33
圖3-18 物件狀態的改變影響到所有與此物件相依的物件操作內容 34
圖3-19 State樣式架構 34
圖3-20 Observer樣式架構 35
圖3-21 Memento架構 35
圖3-22巢狀一般化架構 36
圖3-23 Bridge樣式架構 37
圖3-24 所有演算法和切換演算法的邏輯均置於同一類別中 38
圖3-25 Strategy樣式架構 38
圖3-26 利用繼承機制為物件加上額外功能範例之類別圖 39
圖3-27 Decorator樣式架構 39
圖3-28 所有子類別具有相同演算法架構範例之類別圖 40
圖3-29 Template Method樣式架構 40
圖3-30 Adapter樣式類別圖 41
圖4-1 系統使用案例圖 45
圖4-2 概念類別圖—設定會計科目 51
圖4-3 概念類別圖—維護傳票 51
圖4-4 概念類別圖—過帳 52
圖4-5 概念類別圖—編製日記帳 52
圖4-6 概念類別圖—編製試算表 53
圖4-7 概念類別圖—編製資產負債表 53
圖4-8 概念類別圖—編製損益表 54
圖4-9 系統循序圖—設定大分類會計科目 55
圖4-10 系統循序圖—設定小分類會計科目 55
圖4-11 系統循序圖—設定細項會計科目 56
圖4-12 系統循序圖—維護傳票 56
圖4-13 系統循序圖—過帳 57
圖4-14 系統循序圖—編製日記帳 57
圖4-15 系統循序圖—編製試算表 57
圖4-16 系統循序圖—編製資產負債表 58
圖4-17 系統循序圖—編製損益表 58
圖4-18 系統初步設計類別圖—新增、修改、刪除會計科目 59
圖4-19 系統初步設計類別圖—顯示已建檔會計科目清單 60
圖4-20 系統初步設計類別圖—新增、修改、刪除傳票 61
圖4-21 系統初步設計類別圖—查詢傳票 61
圖4-22 系統初步設計類別圖—過帳 62
圖4-23 系統初步設計類別圖—編製日常報表 62
圖4.24 系統初步設計類別圖—編製財務報表 63
圖4-25 系統設計類別圖—新增、修改、刪除會計科目 64
圖4-26 系統設計類別圖—顯示已建檔會計科目清單 65
圖4-27 系統設計類別圖—新增、修改、刪除傳票 66
圖4-28 系統設計類別圖—查詢傳票 67
圖4-29 系統設計類別圖—新增傳票畫面上文字輸入區和按鈕的互動 68
圖4-30 系統元件圖—主元件圖 69
圖4-31 系統元件圖—Account package內部元件圖 69
圖4-32 系統元件圖—MaintainAccount package內部元件圖 70
圖4-33 系統元件圖—QueryAccount package內部元件圖 70
圖4-34 系統元件圖—Voucher package內部元件圖 71
圖4-35 系統元件圖—MaintainVoucher package內部元件圖 71
圖4-36 系統元件圖—QueryVoucher package內部元件圖 71
圖4-37 系統元件圖—Mediator package內部元件圖 72
圖4-38 系統元件圖—Post package內部元件圖 72
圖4-39 系統元件圖—PostHandler package內部元件圖 72
圖4-40 系統元件圖—DailyReport package內部元件圖 73
圖4-41 系統元件圖—DailyReprotHandler package內部元件圖 73
圖4-42 系統元件圖—FinancialReport package內部元件圖 74
圖4-43 系統元件圖—FinancialReportHandler package內部元件圖 74
圖4-44 系統元件圖—Entity package內部元件圖 75
圖5-1 大分類設定畫面 76
圖5-2 小分類會計科目設定畫面 77
圖5-3 細項會計科目設定畫面 78
圖5-4 傳票新增畫面 79
圖5-5 傳票查詢、修改、刪除畫面 80
圖5-6 過帳畫面 81
圖5-7 日記帳編製畫面 82
圖5-8 試算表編製畫面 83
圖5-9 資產負債表編製畫面 84
圖5-10 損益表編製畫面 85
zh_TW
dc.format.extent 81684 bytes-
dc.format.extent 117076 bytes-
dc.format.extent 133989 bytes-
dc.format.extent 139842 bytes-
dc.format.extent 179103 bytes-
dc.format.extent 444899 bytes-
dc.format.extent 393744 bytes-
dc.format.extent 446956 bytes-
dc.format.extent 708042 bytes-
dc.format.extent 141564 bytes-
dc.format.extent 188578 bytes-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.language.iso en_US-
dc.source.uri (資料來源) http://thesis.lib.nccu.edu.tw/record/#G0090356019en_US
dc.subject (關鍵詞) 物件導向zh_TW
dc.subject (關鍵詞) 設計樣式zh_TW
dc.subject (關鍵詞) 軟體元件zh_TW
dc.subject (關鍵詞) Object-Orienteden_US
dc.subject (關鍵詞) Design Patternen_US
dc.subject (關鍵詞) Software Componenten_US
dc.title (題名) 應用設計樣式於元件式系統開發之研究--以會計總帳系統為例zh_TW
dc.type (資料類型) thesisen
dc.relation.reference (參考文獻) 中文部份zh_TW
dc.relation.reference (參考文獻) 1.楊智欽,民89,運用設計樣版於網頁式決策支援架構之探討—以資金轉撥計價應用為例,國立政治大學資訊管理研究所碩士論文。zh_TW
dc.relation.reference (參考文獻) 2.葉文崎,民90,元件式系統開發方法研究—以郵務應用為例,國立政治大學資訊管理研究所碩士論文。zh_TW
dc.relation.reference (參考文獻) 3.朱明強,民91,以企業樣版為基礎之需求分析架構,國立政治大學資訊管理研究所碩士論文。zh_TW
dc.relation.reference (參考文獻) 4.軟體產業服務團,民89,軟體元件定義與發展現況,企業軟體元件發展與應用—觀念篇(經濟部工業局主辦,中華名國資訊軟體協會—軟體產業服務團執行)。zh_TW
dc.relation.reference (參考文獻) 5.李于青譯,戶松豊和著,2002,Java2物件導向技術專題, Design Pattern、Framework、Multithread、Concurrent,台北,碩博文化股份有限公司。zh_TW
dc.relation.reference (參考文獻) 6.李于青譯,結城浩著,2002,Design Patterns於Java語言上的實習應用,台北,碩博文化股份有限公司。zh_TW
dc.relation.reference (參考文獻) 7.葉秉哲譯,2001,物件導向設計模式,可再利用物件導向軟體之要素,台北,普林帝斯霍爾國際出版有限公司(Gamma, E., Helm, R., Johnson, R. and Vlissides, J., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.)。zh_TW
dc.relation.reference (參考文獻) 英文部份zh_TW
dc.relation.reference (參考文獻) 1.Allen, P. and Frost, S., Component-Based Development For Enterprise Systems, Cambridge University Press, 1998.zh_TW
dc.relation.reference (參考文獻) 2.Alexander, C. Timeless Way of Building, New York: Oxford University Press, 1979.zh_TW
dc.relation.reference (參考文獻) 3.Alhir, S. S. UML In A Nutshell, O’Reilly, 1999.zh_TW
dc.relation.reference (參考文獻) 4.Beck, K. “Using a Pattern Language for Programming, Workshop on Specification and design”, ACM SIGPLAN Notices, p.16, 1988.zh_TW
dc.relation.reference (參考文獻) 5.Booch, G., Rumbaugh, J. and Jacobson, I., The Unified Modeling Language User Guide, Addison-Wesley, 1999.zh_TW
dc.relation.reference (參考文獻) 6.Brown, A., W., Editor, Component-Based Software Engineering, IEEE Computer Society, 1996.zh_TW
dc.relation.reference (參考文獻) 7.Brown, A., and Short, K., “On Components and Objects: The Foundations of Component Based Development”, proc. 5th Int’1 Symp. Assessment of Software Tools and Technologies, IEEE CS Press, 1997, pp.112-121.zh_TW
dc.relation.reference (參考文獻) 8.Coplien, J. Advanced C++ : Programming Styles and Idioms, Addison Wesley, 1992.zh_TW
dc.relation.reference (參考文獻) 9.Cunningham, W. “Panel on Design Methodology”, ACM SIGPLAN Notices, pp:94-95.,1993.zh_TW
dc.relation.reference (參考文獻) 10.Eriksson, H. E. and Penker, M. Business Modeling with UML –Business Patterns at Work, John Wiley & Son, Inc., 2000.zh_TW
dc.relation.reference (參考文獻) 11.Gamma, E. “Object-Oriented Software Development based on ET++:Design Patterns, Class Library, Tools”, PhD thesis, University of Zurich, 1991.zh_TW
dc.relation.reference (參考文獻) 12.Gamma, E., Helm, R., Johnson, R. and Vlissides, J., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.zh_TW
dc.relation.reference (參考文獻) 13.Herzum, P., and Sims, O., Business Component Factory, Willey Computer Publishing, 2000.zh_TW
dc.relation.reference (參考文獻) 14.IBM Online Document., IBM San Francisco Online Document, http://www.ibm.com, 2001.zh_TW
dc.relation.reference (參考文獻) 15.IEEE Standards Collection, Software Engineering, IEEE, 1993.zh_TW
dc.relation.reference (參考文獻) 16.Jacobson, I., Griss, M., and Jonsson, P., Software Reuse, Addison-Wesley, 1997.zh_TW
dc.relation.reference (參考文獻) 17.Jacobson, I., Booch, G., and Rumbaugh, J., The Unified Software Development Process, Addison-Wesley, 1999.zh_TW
dc.relation.reference (參考文獻) 18.James O. Colplien. Advanced C++ Programming Styles and Idioms. Addison-Wesley, Reading, MA, 1992.zh_TW
dc.relation.reference (參考文獻) 19.Larman, G. Applying UML and Patterns, 2nd edition, Prentice Hall PTR, 2002.zh_TW
dc.relation.reference (參考文獻) 20.Morton, S. The State of the Art of Research, The Information Systems Research, Poston: Harvard Business School Press, 1984, pp.13-41.zh_TW
dc.relation.reference (參考文獻) 21.Laitkorpi, M., and Jaaksi, A., “Extending the Object-Oriented Software Process with Component-Oriented Design”, JOOP, MARCH/APRIL, 1999, pp. 41-50.zh_TW
dc.relation.reference (參考文獻) 22.Object Management Group. OMG Unified Modeling Language Specification, www.omg.org, 2001.zh_TW
dc.relation.reference (參考文獻) 23.Phillippe, K., The Rational Unified Process An Introduction, 2nd edition, Addison-Wesley, 2000.zh_TW
dc.relation.reference (參考文獻) 24.Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W., Object-Oriented Modeling and Design. Prentice-Hall, 1991.zh_TW
dc.relation.reference (參考文獻) 25.Sprague R. H. and Carlson, E. D. Building Effective Decision Support Systems, Prentice-Hall, Englewood Cliffs, 1982.zh_TW
dc.relation.reference (參考文獻) 26.Szyperski, C., Component Software: Beyond Object-Oriented Programming, ACM Press, Addison-Wesley, 1997.zh_TW
dc.relation.reference (參考文獻) 27.Wendy, B., Michael, B., Mastering UML with Rational Rose 2002, Sybex, 2002.zh_TW