Responsive image
博碩士論文 etd-0525123-221659 詳細資訊
Title page for etd-0525123-221659
論文名稱
Title
系統分析與設計:運用UML、Case Tool 改善軟體開發流程
Enhancing Systems Analysis and Design Processes with UML and Case Tool Integration: A Case Study
系所名稱
Department
畢業學年期
Year, semester
語文別
Language
學位類別
Degree
頁數
Number of pages
95
研究生
Author
指導教授
Advisor
召集委員
Convenor
口試委員
Advisory Committee
口試日期
Date of Exam
2023-05-12
繳交日期
Date of Submission
2023-06-25
關鍵字
Keywords
系統分析、物件導向、測試驅動開發、物件關聯對應、驅動模式架構、統一塑模語言、電腦輔助軟體工程
System analysis, Object oriented, Test-driven development, Object Relational Mapping,, Model-Driven Architecture, UML, computer-aided software engineering tool
統計
Statistics
本論文已被瀏覽 88 次,被下載 9
The thesis/dissertation has been browsed 88 times, has been downloaded 9 times.
中文摘要
軟體開發生命週期一直以來皆是軟體開發者所重視的項目,至今也有許多的文章不斷地探討且新的模型、架構不斷的推陳出新,為了讓軟體開發者有更好的開發與管理環境。本研究以軟體工程中的四大面向:生產率、可攜性、互動性及維護性作為衡量,探討如何在完善的設計流程下,來簡化開發時的步驟、提升整體開發效率並確保系統品質。在現行軟體開發中所面臨的問題分別有(1)開發時程過長。(2)程式碼無法有效管理。(3)測試情形難以掌控。為改善上述這些困難,本研究探討使用電腦輔助工具Case Tool輔助開發者,並將Case Tool所產生的結果做最大化的應用,在物件導向觀點分析整體的架構下,設計一套能夠依循脈絡且利於維護的流程,並能藉由建立模型的產出,簡化技術文件的製作,解決上述軟體開發中所面臨的三項困難。

在研究方法上,使用「物件導向流程設計」、「測試驅動開發 (TDD)」、「物件關聯對應 (ORM)」,物件導向流程設計搭配Case Tool輔助,成果有明確的步驟流程,改善開發者軟體品質控管及整體開發時程。依循物件導向流程設計所產生之脈絡清晰類別圖Case Tool 所產生程式碼,套用測試驅動開發理念,降低測試程式及後續程式版本更新需要驗證功能的所需測試時間,確保程式碼品質。在與資料庫溝通與串接中,搭配物件導向流程設計的類別圖與循序圖的產出類別,建立類別與資料庫之間的關聯性,採用物件關聯對應 (ORM) 改善以往使用 Case Tool 與資料庫的溝通過程,達到縮短建立資料庫操作及開發與資料庫相關功能的時間。

在研究方法展示的過程中,系統分析設計師利用物件導向架構設計跟Case Tool輔助,不僅簡化整體開發流程,且藉由 Case Tool 所繪製 UML 圖並轉換成技術文件與相對應的程式碼,改變原本軟體工程師開發的型態。延用Case Tool所產生類別,使用物件關聯對應,改善了Case Tool所對資料庫操作的不足之處,更縮短了後續開發時程。系統開發完成後的測試,在測試驅動開發的理念下,系統開發初期即可確認測試的方向與結果,且程式碼經由重構後的測試,更能提供程式碼的品質以利後續人員維護,上述流程使得開發人員更能專注於核心邏輯上的開發,思考塑模方法的邏輯論述,並簡化人開發人員撰寫文件及提升系統品質。
Abstract
The software development lifecycle has long been an important issue for software developers, and many articles have been written on the subject, with new models and frameworks being developed to provide a better development and management environment. This study looks at the four major aspects of software engineering: productivity, portability, interactivity and maintenance, and explores how a well-designed process can simplify the development process, improve overall development efficiency and promote system quality. The problems faced in the current software development are (1) long development time. (2) Code cannot be managed effectively. (3) Uncontrollable test conditions. In order to improve these difficulties, this study investigates the use of a computer-aided tool, Case Tool, to assist developers to use the application of the results generated by Case Tool effciently. The three difficulties in software development are addressed by the creation of a model output and the simplification of technical documentation.
The research methodology uses Object oriented analysis and design (OOAD), Test-driven development (TDD) and Object Relational Mapping (ORM), and OOAD is complemented by Case Tool, resulting in a clear step-by-step process that improves the developer's software quality control and overall development timeline. By following the object-oriented flow design to produce a clear mapping of categories and categories of code, the unit-driven testing concept is applied to reduce the testing time required for testing programs and subsequent program updates that require verification of functionality, ensuring code quality. In the communication and linkage with the database, the object-oriented flow design of the category diagram and the output categories of the sequence diagram are used to establish the correlation between the categories and the database, and the object-relative mapping (ORM) is used to improve the previous communication process between the Case Tool and the database, thus reducing the time required to establish the database operation and develop the functions related to the database.
During the demonstration of the research methodology, the system analysis designer used object-oriented architecture design and the Case Tool to simplify the overall development process and transform the UML diagrams drawn by the Case Tool into technical documents and code that would otherwise be developed by software engineers. The use of Case Tool to generate categories and object associations has improved the inadequacies of the Case Tool for database operations and shortened the development time. The above process allows developers to focus on the core logic of the development, think through the logic of the create method, simplify document and improve quality of the system.
目次 Table of Contents
論文審定書................................................................................................................................. i
致謝............................................................................................................................................ ii
摘要.......................................................................................................................................... iii
Abstract ..................................................................................................................................... iv
圖次........................................................................................................................................ viii
表次............................................................................................................................................ x
第一章 緒論............................................................................................................................ 1
第一節 研究背景與動機 ................................................................................................... 1
第二節 研究目的與範圍 ................................................................................................... 2
第二章 文獻探討.................................................................................................................... 3
第一節 物件導向分析設計方法論 ...................................................................................... 3
第二節 統一塑模語言 .......................................................................................................... 4
第三節 模式驅動架構 .......................................................................................................... 8
第五節 物件關聯對應 .......................................................................................................... 9
第六節 TDD 驅動測試開發 ............................................................................................... 11
第三章 研究方法.................................................................................................................. 13
第一節 設計科學研究法 .................................................................................................... 13
第二節 研究流程與步驟 .................................................................................................... 15
第四章 設計與發展解決方案................................................................................................. 18
第一節 CASE TOOL 工具設定 ....................................................................................... 20
第二節 需求分析 ................................................................................................................ 22
一、企業程序 .................................................................................................................... 22
二、需求塑模 .................................................................................................................... 22
三、使用個案塑模 ............................................................................................................ 23
第三節 互動行為塑模 ..................................................................................................... 26
第四節 物件結構塑模 ..................................................................................................... 27
第五節 模式驅動結構 ........................................................................................................ 30
第六節 物件關聯對應 ........................................................................................................ 32
第七節 測試驅動開發 ........................................................................................................ 35
第五章 展示與評估................................................................................................................. 38
第一節 案例展示 ................................................................................................................ 38
第二節 案例評估 ................................................................................................................ 77
第六章 討論與結論................................................................................................................. 79
參考文獻.................................................................................................................................. 82
參考文獻 References
中文部分

吳仁和,物件導向系統分析與設計──結合 MDA 與 UML, 第七版,台北:元照,
2022。

錢一一,Frederick P. Brooks, Jr., 人月神話:軟體專案管理之道(20週年紀念版)The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition 台北:經濟新潮社,2004

alphacamp,TDD 開發五步驟,帶你實戰 Test-Driven Development 範例,August 2019,
https://tw.alphacamp.co/blog/tdd-test-driven-development-example [Retrieved 2023/6]

英文部分
Saleem, Siddiqui., Learning Test-Driven Development, November 2021

JavaTpoint, UML Tutorial,
https://www.javatpoint.com/uml[Retrieved 2023/6]

Microsoft, Entity Framework overview, Sep 2022,
https://learn.microsoft.com/en-us/dotnet/framework/data/adonet/ef/overview[Retrieved 2023/6]

Faiza, Anwer, Shabib, Aftab, Usman, Waheed, Syed, and Shah, Muhammad Agile Software Development Models TDD,FDD, DSDM, and Crystal Methods: A Survey, Vol. 8, No. 2, March 2017

Terry, Halpin., Object-Role Modeling (ORM/NIAM), September 1998

Eriksson, HE., and Penker, M., Business modeling with UML, 2000

Gorkem, Giray., Closing the Gap Between Software Engineering Education and Industrial Needs, Mar 2019

Tse-Hsunl, Chen, Weiyi, Shang, and Zhen, et al., performance anti-patterns for applications developed using object-relational mapping , May 2014

D. Janzen, H. Saiedian, Test-driven development concepts, taxonomy, and future direction, September 2005

Assunção, Wesley, K.G., Vergilio , Silvia, R., Roberto, E., and Lopez-Herrejon, Automatic extraction of product line architecture and feature models from UML class diagram variants, October 2019

Hilken, Frank, Gogolla, and Martin, Verifying Linear Temporal Logic Properties in UML/OCL Class Diagrams Using Filmstripping, September 2016

Mamoru, Massago, Thelma, Elita and Colanzi., An assessment of tools for UML class diagram modeling: support to adaptation and integration with other tools, October 2019

Bilal, Karasneh, and Michel R.V. Chaudron, Extracting UML models from images, March, 27-28, 2013
電子全文 Fulltext
本電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
論文使用權限 Thesis access permission:校內校外完全公開 unrestricted
開放時間 Available:
校內 Campus: 已公開 available
校外 Off-campus: 已公開 available


紙本論文 Printed copies
紙本論文的公開資訊在102學年度以後相對較為完整。如果需要查詢101學年度以前的紙本論文公開資訊,請聯繫圖資處紙本論文服務櫃台。如有不便之處敬請見諒。
開放時間 available 已公開 available

QR Code