公務員期刊網(wǎng) 論文中心 正文

軟件工程中的UML建模技術

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了軟件工程中的UML建模技術范文,希望能給你帶來靈感和參考,敬請閱讀。

軟件工程中的UML建模技術

【摘要】在軟件工程中,UML建模技術的應用十分廣泛,具有可視化、定義良好以及功能強大等優(yōu)點。基于此,筆者從UML建模技術的概念和優(yōu)勢入手,對軟件工程中UML建模技術的應用模式和應用流程進行了分析,主要介紹了用例圖、類圖、序列圖和協(xié)作圖在軟件工程中的應用,并將人才招聘系統(tǒng)作為研究對象,闡述了uml建模技術的實踐應用,以期為相關研究提供參考。

【關鍵詞】軟件工程;UML建模技術;需求分析

前言

在進行軟件的開發(fā)時,技術人員大都會通過面對對象描述的方法進行建模,該方法是將軟件系統(tǒng)的對象看做是構建模塊。在進行建模的過程中,UML建模技術可以創(chuàng)建系統(tǒng)的靜態(tài)結構以及動態(tài)行為,可以有效提高建模的效率和準確性。因此,對于軟件工程中的UML建模技術研究具有一定的現(xiàn)實意義與理論指導價值。

1.UML建模技術概述

UML是一種規(guī)范定義、文檔化或者可視化的最標準的建模語言,可以應用于軟件工程的各個階段。UML建模語言擁有統(tǒng)一的符號以及語義,可以將所有項目根植與一種建模語言中,并對這些項目中的所有概念進行明晰的表示與定義,在很大程度上擴大了系統(tǒng)的應用范圍,使UML建模技術的應用更為靈活。在UML中,主要包括圖、事物以及關系這三個基本構造。具體而言,UML建模技術在軟件工程中的應用主要有如下優(yōu)勢:第一,UML建模技術可以在系統(tǒng)模型中實現(xiàn)完全獨立,雖然UML建模技術會與其余建模工具進行配合應用,但是并不會與系統(tǒng)的開發(fā)過程不產(chǎn)生交集;第二,UML建模技術在軟件工程中的應用是面向對象的,打破了傳統(tǒng)建模語言的差異性,可以通過統(tǒng)一的模型元素進行方法與圖形的表述;第三,UML建模技術可以捕捉軟件系統(tǒng)中的靜態(tài)行為信息與動態(tài)行為信息,靜態(tài)行為信息主要是指軟件系統(tǒng)中對象,動態(tài)行為信息主要是從時間角度和狀態(tài)角度對對象通訊的定義;第四,UML建模技術的和具體的實現(xiàn)沒有關系,適用于所有語言平臺或者工具平臺,還能夠應用于具有代碼生成功能的交互式可視化建模工具,該工具可以為UML建模技術提供多種編程語言代碼和程序構筑模型[1]。

2.軟件工程中的UML建模技術應用模式

在軟件工程中,UML建模技術主要通過視圖的應用進行軟件開發(fā),UML建模技術一共可以提供八種圖,實現(xiàn)軟件系統(tǒng)開發(fā)的可視化以及模型化,以此獲取軟件系統(tǒng)的主要資料,從而明確軟件系統(tǒng)的架構與體系。本文主要對常用的四種圖進行分析:第一,用例圖。在UML建模技術中,用例圖是最基本的圖。在軟件工程中,需求分析階段的重點在于需求獲取,需求獲取的重點在于系統(tǒng)模型的構建,系統(tǒng)模型構建的最佳方法就是用例圖。用例圖可以構建的用例模型可以為系統(tǒng)軟件的開發(fā)奠定良好的基礎。第二,類圖。在UML建模技術中,類圖主要用于表示不同實體(包括人、數(shù)據(jù)或者事物等)間的相關關系。在軟件工程中,類圖能夠表示軟件系統(tǒng)的靜態(tài)結構,包括邏輯類圖和實現(xiàn)類圖這兩種。其中,邏輯類圖是指業(yè)務人員所說的事物種類,如保險-住房抵押-信貸-利率等;實現(xiàn)類圖是指程序員負責的實體,但是并不會通過相同的屬性進行描述,因為實現(xiàn)類圖會進行HashMap或者Vec-tor等事物的引用。第三,序列圖。在UML建模技術中,序列圖能夠主要用于具體用例流程的詳細定義,主要通過自描述進行用例流程的定義,還能夠表示用例流程中不同對象的不同調用關系。在實際的應用過程中,序列圖的繪制過程較為簡單,在橫跨圖的上部區(qū)域,不同的框代表每個類的對象,每個框中類的對象名稱和類的名稱使用空格/冒號/空格進行分隔,比如,MyReportGenerator:ReportGenera-tor。如果其中一個類對象向另一個類對象進行消息的發(fā)送,需要通過帶有指向接收性質的連線來實現(xiàn),技術人員需要將消息/方法的名稱標注于于連線上。如果發(fā)送的消息較為重要,技術人員需要繪制帶有指向發(fā)起性質的虛線,并將返回值標注于虛線上。第四,協(xié)作圖。在UML1.1版本的時候,協(xié)作圖被稱作Collabo-rationDiagram,翻譯為中文是協(xié)作圖;在UML2.0版本的時候,協(xié)作圖被稱作CommunicationDiagram,翻譯為中文是通訊圖。但不論哪一種翻譯方式,協(xié)作圖都可以看做是序列圖的全新表達方式。對于UML建模技術來說,序列圖注重前后順序,通過循環(huán)圖或者分支結構來表示,而協(xié)作圖則更為注重協(xié)同關系,協(xié)作圖不能通過圖像來表示[2]。

3.軟件工程中的UML建模技術應用流程

在軟件工程中,RationalRose能夠滿足現(xiàn)有全部建模環(huán)境的需求,在軟件開發(fā)過程中,支持開發(fā)人員、分析人員和系統(tǒng)工程師將需求以及系統(tǒng)的機構轉變?yōu)榇a,從而實現(xiàn)需求以及系統(tǒng)的可視化。一般來說,軟件開發(fā)過程包括需求分析、方案設計、方案實現(xiàn)、測試與配置等環(huán)節(jié)。

3.1需求分析環(huán)節(jié)

在軟件工程的需求分析階段,技術人員主要應用UML建模技術中的用例圖,了解系統(tǒng)的所有需求,并對需求進行相應的描述。對于用例圖而言,技術人員通過事件的應用實現(xiàn)用戶與系統(tǒng)間的交互作用,并在用例圖中表明用戶能夠實現(xiàn)的目標,還能夠將功能分析以及需求分析中包含的系統(tǒng)模塊,根據(jù)角色平均分配到不同用戶中,提高系統(tǒng)模型的清晰度。

3.2設計環(huán)節(jié)

在軟件工程的設計階段,技術人員需要全面考慮所有軟件開發(fā)技術的局限性,對需求分析階段的系統(tǒng)模型進行進一步的擴展與細化。設計階段的目標在于將系統(tǒng)模型轉變?yōu)榇a,對需求分析階段提取的系統(tǒng)屬性與操作進行細化,并添加更多的類處理,比如,用戶接口、設備、數(shù)據(jù)庫以及通信等。一般來說,軟件工程的設計階段包括兩個部分,其一,結構設計,又被稱作高層設計,主要任務是對包(即子系統(tǒng))進行定義,主要定義的內容為包與包之間的依賴性以及通信機制,進一步實現(xiàn)結構的清晰化與簡化,盡量減少各部分的依賴性,避免雙向依賴關系的構建;其二,詳細設計,這一部分主要是對包的細化,技術人員可以通過詳細設計了解所有類的清晰全面描述。設計階段中UML建模技術的應用包括類圖和序列圖這兩種。首先,類圖的應用,在軟件工程中,類圖屬于靜態(tài)視圖,可以通過以下兩種方式進行定義:通過問題域的概念進行定義、通過該類實際表示的內涵進行定義,技術人員需要根據(jù)系統(tǒng)需求分析以及系統(tǒng)用例進行類圖的構建;然后,序列圖的應用,在軟件工程中,序列圖屬于動態(tài)視圖,主要用于描述系統(tǒng)中各個對象的交互以及通訊,技術人員可以根據(jù)序列圖了解對象實現(xiàn)某種功能時,是如何進行序列消息的發(fā)送與接受。

3.3實現(xiàn)環(huán)節(jié)

在軟件工程中,實現(xiàn)環(huán)節(jié)就是指構造或者實現(xiàn)環(huán)節(jié),主要工作內容為類的編程。一般來說,技術人員會將C#語言作為軟件系統(tǒng)的開發(fā)環(huán)境,因為C#語言在邏輯試圖轉變?yōu)榇a部件這一映射過程中,有顯著的優(yōu)勢。在UML建模技術中,主要有以下幾種圖用于編碼過程:第一,類的規(guī)格說明,不同類的規(guī)格說明體現(xiàn)了不同的屬性與操作;第二,類圖,能夠顯示軟件系統(tǒng)中類的靜態(tài)結構以及類之間的關系;第三,狀態(tài)圖,能夠體現(xiàn)軟件系統(tǒng)中類的對象現(xiàn)有的狀態(tài)、需要處理的轉移和轉移需要觸發(fā)的操作;第四,動態(tài)圖,在編程過程中,動態(tài)圖主要包括順序圖、活動圖以及合作圖這三種,主要用于體現(xiàn)對象應用該類對象的過程;第五,用例圖及其規(guī)格說明,能夠體現(xiàn)出軟件系統(tǒng)的需求以及結果。

3.4測試與配置環(huán)節(jié)

當軟件工程的系統(tǒng)編碼全部完成之后,技術人員需要進行系統(tǒng)的全面測試,保障軟件工程的質量。具體而言,測試環(huán)節(jié)分為系統(tǒng)測試、單元測試、驗收測試以及集成測試這幾種。對于系統(tǒng)測試來說,技術人員可以應用UML建模技術的用例圖,測試開發(fā)的軟件系統(tǒng)是否充分滿足了用例圖描述的需求;對于單元測試來說,技術人員可以應用UML建模技術的類圖以及類的規(guī)格,對軟件系統(tǒng)中單獨的類或者成組的類進行測試;對于集成測試來說,技術人員可以應用UML建模就似乎的組件圖以及合作圖,測試軟件系統(tǒng)中各個組件的合作狀況[3]。

4.軟件工程中的UML建模技術的應用實例

本文主要將在線人才招聘系統(tǒng)的市場管理和信息管理作為實例分析對象,進行軟件工程中UML建模技術的應用研究。4.1人才招聘系統(tǒng)的登錄界面設計對于人才招聘系統(tǒng)軟件而言,登錄界面的設計可以提高系統(tǒng)的管理水平。在進行登錄界面的設計時,技術人員可以應用CustomLoginUI進行界面參數(shù)的傳遞,當用戶輸入登錄信息并點擊確定按鈕之后,系統(tǒng)可以自動進行“sendMessage”,并應用HTTP進行服務器請求,在接收到CustomLoginUI的合法回復之后,即為用戶登錄成功,可以應用人才招聘系統(tǒng)進行相應的操作。4.2人才招聘系統(tǒng)中用例圖的應用分析第一,人才招聘系統(tǒng)的管理人員會通過管理功能設定系統(tǒng)的基本信息,比如,招聘的崗位、崗位的任職要求和崗位的薪酬待遇等內容,招聘信息主要通過Web形式上傳到Internet上。第二,應聘人員通過CustomLoginUI界面進行人才招聘系統(tǒng)的登錄操作,當系統(tǒng)確認應聘人員的身份之后,即可登錄系統(tǒng)。應聘人員可以在招聘信息下面填寫個人信息,系統(tǒng)會將應聘人員的個人信息上傳到在線人才管理系統(tǒng)中,個人信息也會通過Web形式上傳到Internet上。第三,招聘人員可以在系統(tǒng)中查看應聘人員的個人信息,根據(jù)崗位的要求以及應聘人員的履歷,決定是否邀請應聘人員面試。需要邀請應聘人員時,招聘人員可以通過系統(tǒng)進行E-mail的發(fā)送。與此同時,管理人員需要將應聘人員的信息添加到人事檔案庫中,以數(shù)據(jù)文本的格式進行存儲。第四,當招聘工作完成之后,管理人員需要將人才招聘系統(tǒng)關閉。在關閉的過程中,管理人員的決策可以看作是抽象角色,通過“fromUseCaseView”表示。管理人員實施的操作主要包括招聘活動的啟動與停止、招聘信息的管理、人事檔案與招聘信息的導出等。4.3人才招聘系統(tǒng)中類圖的應用分析第一,類圖的選擇,技術人員需要根據(jù)人才資源系統(tǒng)的特點,通過同時得到類圖的方式,應用stereotypeobject-entity、control、boundary等方法,確保角色可以有效應用于對象的通訊過程中,還能夠保障序列圖和協(xié)作圖間的有效轉換。第二,組件設計,技術人員需要將上一個步驟得到的類圖進行實體映射,以此得到類圖表。具體的映射方法如下:首先,將人才招聘系統(tǒng)中的實體進行單獨的表的定義;然后,將實體表的繼承網(wǎng)絡結構刪除,確保不同層次的實例具備一致的屬性;最后,將人才招聘系統(tǒng)中的子類文件狀態(tài)配置于相應的表中,并在組件中建立數(shù)據(jù)庫,用于TaxDate等映射表的存儲。第三,組件圖的構建,技術人員需要通過控制類組件進行組件圖的構建,如果技術人員采用的編程語言為C++,可以將控制類組件存儲為(.h文件)或者(.ccp文件)。另外,對于源代碼文件,技術人員可以應用包進行源代碼的分組,并通過關聯(lián)進行序列圖的類信息顯示。當組件圖構建完成之后,技術人員需要將能夠執(zhí)行的主程序(即.exe文件)以及java語境鏈接庫加入到組件圖中,實現(xiàn)人才招聘系統(tǒng)的開發(fā)[4]。

5.結論

綜上所述,UML建模技術可以提高軟件開發(fā)的效率和有效性,值得推廣應用。通過對軟件工程中的UML建模技術分析可知,開發(fā)人員需要深入了解UML建模技術的各種視圖及應用特點,在軟件工程的各個階段正確應用視圖,充分發(fā)揮出UML建模技術的作用,提高軟件工程的質量。希望本文可以為技術人員進行軟件開發(fā)提供幫助。

參考文獻

[1]陳冠元.軟件工程中的UML建模技術[J].電子技術與軟件工程,2018(05):47.

[2]劉傳會.基于UML2.0順序圖的高可信實時軟件建模技術研究[A].中國航空學會、中國航空研究院,2017,8.

[3]夏志龍.使用UML和Event-B構建基于云平臺的應用軟件模型[D].江蘇科技大學,2016.

[4]于麗.基于UML的面向對象建模技術研究與應用[J].信息與電腦(理論版),2015(20):16-17.

作者:王蕊 單位:云南工程職業(yè)學院