軟件工程需求分析中的圖們

基礎(chǔ)知識

對象(Class)

對象是指定義一類事務(wù),比如我們在教學(xué)系統(tǒng)中可以定義學(xué)生這樣一個事務(wù)醋闭。
事務(wù)會有自身的一些屬性鲤看,比如學(xué)生有姓名和學(xué)生ID镰绎。
事務(wù)也可以有一些對外界的操作葫掉,如學(xué)生在選課系統(tǒng)中應(yīng)當(dāng)可以去選課查詢跟狱,退選等俭厚。
和對象相對應(yīng)的是實例。舉個例子驶臊,學(xué)生張三挪挤,就是學(xué)生這樣一個對象的實例。

這個概念和對象類似关翎,是更傾向于coding的一個描述扛门。類的操作主要是

  • 操作數(shù)據(jù)
  • 執(zhí)行計算

類的關(guān)系主要有

  • 關(guān)聯(lián)關(guān)系
    • A類中有B類作為成員變量
    • 用 1-------0…n表示
  • 聚合關(guān)系
    • 整體和部分
    • 整體和部分可以分開
  • 組合關(guān)系
    • 整體和部分
    • 整體和部分不能分開
    • 類似學(xué)生和學(xué)生證,學(xué)生刪除后學(xué)生證無意義
  • 依賴關(guān)系
    • 某個類的方法使用另一個類的對象作為參數(shù)
  • 泛化關(guān)系
    • 表示類和類的繼承
    • 箭頭指向父類

類的種類

  • 實體類 (負責(zé)保存信息纵寝,擔(dān)當(dāng)數(shù)據(jù)庫的職責(zé))
    • 需要保存信息的就是實體類
  • 邊界類 (提供接口供操作)
    • 提供服務(wù)的就是邊界類
  • 控制類(在實體類和邊界類之間增加一部驗證论寨,提供兩個方面的接口,增加系統(tǒng)魯棒性)
    • 控制輸入合法性的
    • 可以合在邊界類中爽茴。
      舉個例子:學(xué)生提交信息葬凳,信息保存的類就是實體類,學(xué)生填信息的那個網(wǎng)頁就是邊界類室奏,檢查學(xué)生信息正確與否(比如年齡應(yīng)當(dāng)大于0)的就是控制類火焰。

用例

(其實這個應(yīng)該放在類之前講,但是用例你說你知道了胧沫,這里就粗略的過一下)
用例 -> 系統(tǒng)可見的功能單元昌简,即系統(tǒng)可以為用戶做的事情占业。
我們應(yīng)當(dāng)從系統(tǒng)的參與者中開始識別用例。

用例也有三大關(guān)系(注意箭頭形狀和指向關(guān)系4渴辍谦疾!

  • include
    用例1 include 用例2 -> 用例1執(zhí)行過程會用到用例2(如要查詢信息就需要登錄系統(tǒng)

    image.png

  • extend
    用例1 extend 用例2 表示用例2在某些情況下會用到用例1(注意和上面相反,箭頭也是相反犬金。(比如如果輸入不合法提示錯誤

    image.png

  • 泛化
    抽象用例餐蔬,比如支付可以是現(xiàn)金支付,也可以是網(wǎng)銀支付佑附。參與者之間也可以有泛化(管理員有普通用戶的權(quán)限)


    image.png

幾種圖

首先我們要知道為啥要畫圖? -> 是為了更好的分析需求
那分析(畫圖)的順序是什么呢仗考?
-> 首先對用例建模(用例圖)-> 根據(jù)用例找出分析類 -> 然后使用用例實現(xiàn)建模(用時序圖表示用例的實現(xiàn)過程)音同,從而發(fā)現(xiàn)每個對象的方法 -> 根據(jù)之前的建模建立類圖 -> 如果用到數(shù)據(jù)存儲,應(yīng)當(dāng)建立E-R圖 -> 如果需要描述對象的狀態(tài)變化秃嗜,則需要狀態(tài)圖

用例圖

這里需要做的就是

  1. 確定用例有什么(按照上面說的用例的定義來確定权均,根據(jù)參與者)
  2. 找用例之間的關(guān)系(上面三種,注意箭頭形式和指向9恰叽赊!
  3. 根據(jù)參與者畫出用例圖。


    image.png

用例圖畫完我們?nèi)匀恍枰M行用例描述必搞。即說清楚這個用例要干什么必指。

主要包含,用例名恕洲,編號塔橡,前置條件,后置條件霜第,事件流葛家。

前置條件:這個用例需要滿足什么條件?(如查看信息需要檢查是否登陸)
后置條件:用例執(zhí)行完成怎么樣泌类?(如更新信息癞谒,如果更新成功就更新頁面,否則不變)
事件流:包含基本流和擴展流
-> 基本流:用例的執(zhí)行過程描述刃榨,如對登陸系統(tǒng)((1)系統(tǒng)提示用戶輸入用戶名和密碼弹砚。(2)用戶輸入自己的用戶名和密碼。(3)系統(tǒng)驗證用戶名和密碼枢希,用戶登錄系統(tǒng)成功)
-> 擴展流:可能會出錯的流程迅栅,如上面如果用戶名和密碼無效,系統(tǒng)提示錯誤信息晴玖,用戶可重新輸入或停止读存。

完成這一切之后为流,就要進行分析類的劃分。劃分見前面關(guān)于類的描述让簿【床欤基于那個概念很容易進行劃分。

時序圖

時序圖是什么尔当?
其定義了對象(類)之間交互關(guān)系的模型莲祸,并按照交互的時間順序來確定,上面我們畫出了用例圖和作出了用例說明椭迎,根據(jù)這個來畫出時序圖:
一個標(biāo)準的時序圖如下:

image.png

上面是上一步分析出的類(實體锐帜,邊界,控制)下面是執(zhí)行操作的時間流程(注意:一個用例畫一個這樣的時序圖)上面這個圖是針對打印這個操作的時序圖

類圖

這個主要是根據(jù)之前找到的類的種類畜号,根據(jù)上面提到的類之間的關(guān)系缴阎,畫出類圖。


image.png

這是一個典型的類圖(這部分考察不多简软,因為牽涉到數(shù)據(jù)庫的部分了蛮拔,如果你需要你再說)

E-R圖 (這個是數(shù)據(jù)庫中的概念,軟工一般不會考察)

狀態(tài)圖

狀態(tài)圖的核心是狀態(tài)的轉(zhuǎn)換痹升,即通過事件/動作建炫,從一個狀態(tài)轉(zhuǎn)變?yōu)榱硪粋€
狀態(tài)主要包含

  • 內(nèi)部動作(這個狀態(tài)會做什么)
  • 入口動作(做什么會進入這個狀態(tài))
  • 出口動作(做什么會離開這個狀態(tài))
    如:


    image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市疼蛾,隨后出現(xiàn)的幾起案子肛跌,更是在濱河造成了極大的恐慌,老刑警劉巖察郁,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件惋砂,死亡現(xiàn)場離奇詭異,居然都是意外死亡绳锅,警方通過查閱死者的電腦和手機西饵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鳞芙,“玉大人眷柔,你說我怎么就攤上這事≡” “怎么了驯嘱?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長喳坠。 經(jīng)常有香客問我鞠评,道長,這世上最難降的妖魔是什么壕鹉? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任剃幌,我火速辦了婚禮聋涨,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘负乡。我一直安慰自己牍白,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布抖棘。 她就那樣靜靜地躺著茂腥,像睡著了一般。 火紅的嫁衣襯著肌膚如雪切省。 梳的紋絲不亂的頭發(fā)上最岗,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音朝捆,去河邊找鬼般渡。 笑死,一個胖子當(dāng)著我的面吹牛右蹦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播歼捐,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼何陆,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了豹储?” 一聲冷哼從身側(cè)響起贷盲,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎剥扣,沒想到半個月后巩剖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡钠怯,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年佳魔,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片晦炊。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡鞠鲜,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出断国,到底是詐尸還是另有隱情贤姆,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布稳衬,位于F島的核電站霞捡,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏薄疚。R本人自食惡果不足惜碧信,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一赊琳、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧音婶,春花似錦慨畸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至碴卧,卻和暖如春弱卡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背住册。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工婶博, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人荧飞。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓凡人,卻偏偏與公主長得像,于是被迫代替她去往敵國和親叹阔。 傳聞我的和親對象是個殘疾皇子挠轴,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 【文章摘要】 面向?qū)ο蟮能浖y試摘 要: 如今,面向?qū)ο箝_發(fā)技術(shù)正大力地的推動著軟件產(chǎn)業(yè)的快速發(fā)展耳幢。在保證軟件產(chǎn)品...
    西邊人閱讀 3,116評論 0 2
  • 文/譯垚 原創(chuàng)短小說 我們對愛情有多少渴望岸晦?宛如一場醉在午間的春夢【υ澹——譯垚 歡迎您關(guān)注上一章節(jié)精彩領(lǐng)航:短小說|...
    譯垚閱讀 616評論 16 17
  • 你輕輕淺淺踏進我的生命启上,拂去寒冬,捎來春風(fēng)店印,從此萬物蘇醒冈在;江潮澎湃,晨霧翻涌按摘,河流山川花鳥魚蟲也奏響全世界最美的音...
    旅行攝影楊小蟹閱讀 1,871評論 38 47
  • 眾觀中國上下五千年讥邻,歷經(jīng)數(shù)個朝代,朝代更迭的邏輯及緣由通過一本書描寫而出院峡,整條歷史脈絡(luò)清晰讀完整本書覺得酣暢淋漓兴使,...
    水十一閱讀 952評論 0 5