前言
本文基於本人的工程實踐項目------文本情感分析,對其進行相應的用例建模和業務領域建模,以及數據建模,最終形成概念原型。該項目的重點是對情感相關信息進行分類,旨在將文本情感分為積極、中立和消極三種類別或者更細致的情感類。
1、需求分析
需求
就是對用戶期望的軟件行為的表述;獲取需求
就是需求分析師通過關注用戶的期望和需要,從而獲得用戶期望的軟件行為,然后對其進行表述的工作; 需求分析
是在獲取需求的基礎上進一步對軟件涉及的對象或實體的狀態、特征和行為進行准確描述或建模的工作。
軟件的具體需求主要分為三大方面:
功能性需求
:功能性需求即軟件必須完成哪些事,必須實現哪些功能,以及為了向其用戶提供有用的功能所需執行的動作。非功能性需求
:主要包括軟件使用時對性能方面的要求、運行環境要求等。設計約束
:設計約束也稱做設計限制條件,通常是對一些設計或實現方案的約束說明。
對文本情感分析系統進行需求分析:
文本情感分析就是通過各種方法和手段捕捉用戶內心情感方面的信息,並對此進行深度分析,得出用戶個人情感差異和內在需求,其在用戶挖掘、垃圾郵件過滅及輿情分析等多個領域具有重要的應用價值。本項目的各方面的主要需求如下:
(1)功能性需求:
- 用戶注冊和登錄:用戶通過注冊后進行登錄,登錄成功后可通過該系統完成相應的操作;
- 文本情感分析:用戶可以直接使用系統所暴露的情感分析接口向后台傳遞一個中文字符串,從而獲得一個文本的情感極性;
- 問題反饋:用戶判斷系統返回的情感分析結果有誤,點擊文本框下方的反饋錯誤按鈕,反饋鐠誤樣例;
(2)非功能性需求
- 運行環境:window、linux等平台均可正常使用;
- 並發性和實時性:可保證多個用戶正常使用該系統,且在期望時間內獲得相應返回。
2、用例建模
對該項目進行用例建模,首先得明確什么是用例、用例的基本要素以及用例建模的步驟。
a、用例的定義
- 用例的核心概念中首先它是一個業務過程,經過邏輯整理抽象出來的一個業務過程,這是用例的實質。什么是業務過程?在待開發軟件所處的業務領域內完成特定業務任務的一系列活動就是業務過程。
b、用例的基本要素
- 一個用例應該由業務領域內的某個參與者所觸發;
- 用例必須能為特定的參與者完成一個特定的業務任務;
- 一個用例必須終止於某個特定參與者,也就是特定參與者明確地或者隱含地得到了業務任務完成的結果。
c、用例建模的基本步驟
- 第一步,從需求表述中找出用例,往往是動名詞短語表示的抽象用例;
- 第二步,描述用例開始和結束的狀態,用TUCBW和TUCEW表示的高層用例;
- 第三步,對用例按照子系統或不同的方面進行分類,描述用例與用例、用例與參與者之間的上下文關系,並畫出用例圖;
- 第四步,進一步逐一分析用例與參與者的詳細交互過程,完成一個兩列的表格將參與者和待開發軟件系統之間從用例開始到用例結束的所有交互步驟都列舉出來擴展用例;
對文本情感分析系統進行用例建模:
(1)用例提取
用例一般是需求中與業務領域相關的動名詞和動名詞短語,驗證業務領域相關的動名詞或動名詞短語是不是用例的標准是滿足四個必要條件:
- a、是一個業務過程;
- b、是由某個參與者觸發開始;
- c、是顯式地或隱式地終止於某個參與者;
- d、是為某個參與者完成了有用的業務工作;
System:文本情感分析系統------用戶端
Actor:用戶
Use Case:
- UC1:注冊賬號
- UC2:登錄賬號
- UC3:輸入文本內容
- UC4:反饋錯誤樣例
System:文本情感分析系統------管理員端
Actor:管理員
Use Case:
- UC5:管理訓練用例
- UC6:選擇模型
- UC7:訓練模型
- UC8:處理錯誤樣例
- UC9:用戶信息管理
- UC10:返回文本分析結果
(2)文本情感分析系統用例圖

3、業務領域建模
業務領域建模是開發團隊用於獲取業務領域知識的過程。領域模型
可以被看作是一個系統的概念模型,用於以可視化的形式描述系統中的各個實體及其之間的關系。領域模型記錄了一個系統中的關鍵概念和詞匯表,顯示出了系統中的主要實體之間的關系,並確定了它們的重要的方法和屬性。因此,對應於用例所描述的動態視圖,領域模型提供了一種對整個系統的結構化的視圖。領域模型的一個好處是描述並限制了系統邊界。
業務領域建模的基本步驟:
- 第一步,收集應用業務領域的信息。聚焦在功能需求層面,也考慮其他類型的需求和資料;
- 第二步,頭腦風暴。列出重要的應用業務領域概念,給出這些概念的屬性,以及這些概念之間的關系;
- 第三步,給這些應用業務領域概念分類。分別列出哪些是類、哪些屬性和屬性值、以及列出類之間的繼承關系、聚合關系和關聯關系;
- 第四步,將結果用 UML 類圖畫出來。
對文本情感分析系統進行業務領域建模:
(1)系統業務領域分析
根據以上步驟對文本情感分析系統進行分析,大致可分為五個類:
-
User:用戶可以登錄后輸入文本獲取分析結果、發現錯誤提供反饋;
-
Data:管理員可以選擇相應的訓練樣本,並通過場景的更換對其進行調整;
-
Model:管理員可以設置訓練模型、修改相應超參;
-
User_Manage:通過該類,用戶可實現注冊、登錄和修改信息等功能;
-
Adminstrator:管理員可以對用戶信息進行管理,同時對用戶提供的反饋進行相應處理。
(2)文本情感分析系統類圖

4、數據建模
數據建模是一種用於定義和分析數據的要求和其需要的相應支持的信息系統的過程,即是對現實世界各類數據的抽象組織,確定數據庫需管轄的范圍、數據的組織形式等直至轉化成現實的數據庫。 將經過系統分析后抽象出來的概念模型轉化為物理模型后,在工具建立數據庫實體以及各實體之間關系的過程。
對文本情感分析系統進行數據建模:
(1)Data類

(2)Model類

(3)Administrator類

(4)User類

(5)User_Manage類

5、概念原型工作流程
要分析該項目的概念原型,首先得明確什么是概念和概念原型。
a、概念
- 概念是人對能代表某種事物或發展過程的特點及意義所形成的思維結論。
b、概念原型
- 概念原型是一種虛擬的、理想化的軟件產品形式。
概念原型 = 用例 + 數據模型
文本情感分析系統中的概念原型工作流程:
從上述的用例建模、業務領域建模和數據建模可知,該系統的概念原型是:
-
用戶注冊、登錄后進入系統后,選擇輸入或批量上傳需要分析的文本,然后使用預訓練好的模型得到返回結果,若發現錯誤分類的用例可向管理員返回相應用例;
-
管理員管理用戶相關信息,在模型需要做出調整時改變相應的數據集、模型及相關的超參數。對於用戶反饋的錯誤用例進行處理,處理完成后返回用戶一個反饋。
總結
通過對工程實踐項目進行相應的需求分析,並對其進行相應的用例建模和業務領域建模,以及數據建模,最終形成概念原型,使我對項目流程的分析和設計有了更深的理解。由於項目還在設計階段,目前的需求分析以及部分流程可能設計的並不完善,仍需在實際項目中不斷提高對項目的理解和分析能力。
參考資料
【1】https://gitee.com/mengning997/se/blob/master/README.md#從分析到設計的基本方法