論文使用權限 Thesis access permission:校內校外完全公開 unrestricted
開放時間 Available:
校內 Campus: 已公開 available
校外 Off-campus: 已公開 available
論文名稱 Title |
應用 MDA 開發結合 BDD 自動化測試之研究 Integrating MDA with the BDD approach to facilitate information systems testing: A case study of X Company |
||
系所名稱 Department |
|||
畢業學年期 Year, semester |
語文別 Language |
||
學位類別 Degree |
頁數 Number of pages |
104 |
|
研究生 Author |
|||
指導教授 Advisor |
|||
召集委員 Convenor |
|||
口試委員 Advisory Committee |
|||
口試日期 Date of Exam |
2022-06-10 |
繳交日期 Date of Submission |
2022-06-29 |
關鍵字 Keywords |
模式驅動架構、行為驅動開發、合約式程式開發、使用者需求、自動化測試 Model-Driven Architecture, Behavior-Driven Development, Programming by Contract, User Requirements, Automated Testing |
||
統計 Statistics |
本論文已被瀏覽 400 次,被下載 84 次 The thesis/dissertation has been browsed 400 times, has been downloaded 84 times. |
中文摘要 |
在系統開發專案過程中,最關鍵的問題為使用者需求不明確,並且難以驗證與確認需求,若可以將需求分析文件轉成系統測試案例,讓使用者需求變成可驗證之實體,明確的建立使用者需求與系統之間的可驗證性與追溯性,有效解決實務中軟體開發專案所面臨的需求變更與需求不明確的問題,同時降低系統與需求不一致時的風險。 本研究運用設計科學研究法,提出一套應用模式驅動架構 (Model-Driven Architecture, MDA) 整合行為驅動開發 (Behavior-Driven Development, BDD) 的自動化測試方法論,研究如何將使用者需求標準化成為「使用者需求規格」,再從中轉換成「可執行的測試案例」,以便在需求分析時期即可產出系統測試與驗收之依據,滿足合約式程式開發 (Programming "By Contract") 之原則。 研究案例中更透過實際的個案展示系統測試階段的自動化測試過程,展示了執行系統測試案例的結果,來佐證系統功能可以滿足使用者需求,完美呈現系統測試 V 模型中驗證與確認需求的流程定義,讓使用者需求在系統開發流程中變得更加清晰明確。 |
Abstract |
In the process of system development projects, the most critical problem is that the user requirements are not clear, and it is difficult to verify and validate the requirements. If the requirements analysis document can be converted into a system test case, the user requirements can become a verifiable entities, and the verifiability and traceability between the user requirements and the system can be clearly established, which can effectively solve the problems of requirements changes and unclear requirements faced by software development projects in practice, and reduce the risk of system and requirements inconsistencies. This research uses the design science research method to propose a set of automated testing methodologies that apply Model-Driven Architecture (MDA) and integrate Behavior-Driven Development (BDD). to study how to standardize user requirements into "user requirements specifications", and then convert them into "executable test cases", so that the basis for system testing and acceptance can be produced during the requirements analysis period to meet the requirements of contract programming (Programming "By Contract"). In the study case, the automated test process of the system test stage is shown through the actual case, and the results of the system test case are shown to prove that the system function can meet the user's needs, and the process definition of verify and validate the requirements in the system test V model is presented, so that the user requirements become clearer and clearer in the system development process. |
目次 Table of Contents |
論文審定書 i 致謝 ii 摘要 iii Abstract iv 目錄 v 圖次 vii 表次 ix 第一章 緒論 1 第一節 研究背景與動機 1 第二節 研究目的與範圍 3 第二章 文獻探討 4 第一節 模式驅動架構 MDA 4 第二節 行為驅動開發 BDD 6 第三節 系統工程測試模型 V-Model 9 第四節 自動化測試工具 11 第三章 研究方法 14 第一節 設計科學研究法 14 第二節 研究流程與步驟 16 第四章 設計與發展解決方案 19 第一節 方法論之建構 19 第二節 需求塑模 (RM) 23 第三節 系統分析 (PIM) 31 第四節 系統測試 (System Testing) 37 第五章 展示與評估解決方案 42 第一節 個案簡介 42 第二節 需求塑模 (RM) 43 第三節 系統分析 (PIM) 61 第四節 系統測試 (System Testing) 72 第五節 評估研究個案 86 第六章 結論 88 第一節 學術貢獻 89 第二節 實務貢獻 90 第三節 研究限制與未來研究方向 91 參考文獻 92 |
參考文獻 References |
中文部分 行政院主計總處,政府機關「資訊系統委外開發」概況調查報告,2008,http://www.stat.gov.tw/public/Data/87311203471.pdf, [Retrieved 2022/03] 吳仁和,物件導向系統分析與設計-結合 MDA 與 UML,3th Edition,台北:智勝,2010。 楊尊一,Martraire, C.,高品質軟體文件|持續分享技術與知識,Living Documentation: Continuous Knowledge Sharing by Design,First Edition,台北:碁峰資訊,2020。 賴森堂,以 BDD 為基礎的軟體關鍵需求品質改善機制,前瞻科技與管理5卷1期,國立中央大學,2015,1-20頁 英文部份 Alexander, C., Notes on the Synthesis of Form, First Edition, Harvard University Press, October 1964 Favre, L., Model Driven Architecture for Reverse Engineering Tech- nologies: Strategic Directions and System Evolution, IGI Global, January 2010, pp. 15~30. Fowler, M., Domain Specific Language, May 2008, https://martinfowler.com/bliki/DomainSpecificLanguage.html, [Retrieved 2022/03] Kleppe, A., Warmer, J., and Bast, W., MDA Explained: The Model Driven Architecture : Practice and Promise, 1st Edition, Boston: Addison-Wesley Professional, 2003. North, D., Agile Specifications, BDD and Testing eXchange: How to sell BDD to the business, London, November 2009, https://skillsmatter.com/skillscasts/923-how-to-sell-bdd-to-the-business#video, [Retrieved 2022/04] North, D., Introducing BDD, Dan North & Associates, March 2006, https://dannorth.net/introducing-bdd/, [Retrieved 2022/02] Peffers, K., Tuunanen, T., Rothenberger, M. A., and Chatterjee, S., “A Design Science Research Methodology for Information Systems Research,” Journal of Management Information Systems, Vol. 24, No. 3, November 2007, pp. 45-77. Qameta Software, Allure Framework Documentation, August 2020, https://docs.qameta.io/allure/, [Retrieved 2021/06] Rook, P. E., Controlling software projects. IEEE Software Engineering Journal, 1, 1, January 1986, pp. 7-16. Rice, B., Jones, R., and Engel, J., behave Documentation Release 1.2.6, December 2020, https://behave.readthedocs.io/en/stable/index.html, [Retrieved 2021/07] Scott, K. and Rosenberg, D., Successful Robustness Analysis, March 2001, http://www.ddj.com/architect/184414712, [Retrieved 2022/02] Standish Group International, 2004 Third quarter research report. CHAOS demographics., 2004, http://blog.nalis.fr/public/pdf/q3-spotlight.pdf, [Retrieved 2022/04] Vaidya, N., Selenium remotewebdriver : Difference between webdriver and remotewebdriver, March 2020, https://www.browserstack.com/guide/difference-between-selenium-remotewebdriver-and-webdriver, [Retrieved 2022/01] |
電子全文 Fulltext |
本電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。 論文使用權限 Thesis access permission:校內校外完全公開 unrestricted 開放時間 Available: 校內 Campus: 已公開 available 校外 Off-campus: 已公開 available |
紙本論文 Printed copies |
紙本論文的公開資訊在102學年度以後相對較為完整。如果需要查詢101學年度以前的紙本論文公開資訊,請聯繫圖資處紙本論文服務櫃台。如有不便之處敬請見諒。 開放時間 available 已公開 available |
QR Code |