国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí)

這篇具有很好參考價(jià)值的文章主要介紹了系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

10.1 軟件架構(gòu)演化和定義的關(guān)系

10.1.1 演化的重要性

軟件架構(gòu)的演化是為了適應(yīng)用戶(hù)需求、業(yè)務(wù)環(huán)境和運(yùn)行環(huán)境的變化,它涵蓋了軟件架構(gòu)的全生命周期,包括需求獲取、建模、文檔、實(shí)現(xiàn)和維護(hù)等階段。軟件架構(gòu)的演化的重要性體現(xiàn)在以下幾個(gè)方面:

  1. 保障軟件系統(tǒng)質(zhì)量:軟件架構(gòu)支撐整個(gè)軟件系統(tǒng),決定其性能、可靠性、安全性和易維護(hù)性等關(guān)鍵屬性。軟件架構(gòu)的演化可以確保軟件系統(tǒng)滿(mǎn)足用戶(hù)需求,并具備市場(chǎng)競(jìng)爭(zhēng)力和長(zhǎng)期生命周期。

  2. 管控復(fù)雜性和變化性:軟件架構(gòu)作為藍(lán)圖提供了對(duì)整體復(fù)雜性和變化性的管控途徑?;谲浖軜?gòu)進(jìn)行檢測(cè)和修改成本相對(duì)較低,能夠更好地刻畫(huà)軟件演化,觀(guān)察和控制演化中的影響效應(yīng)。

  3. 保證一致性和正確性:軟件架構(gòu)的演化可以保證軟件系統(tǒng)的一致性和正確性,并降低演化的成本。形式化、可視化表示提高了軟件的可構(gòu)造性,設(shè)計(jì)方案考慮未來(lái)可能出現(xiàn)的演化問(wèn)題和環(huán)境,描述組件間的耦合有助于系統(tǒng)的動(dòng)態(tài)調(diào)整。

總之,軟件架構(gòu)的演化是為了維持軟件架構(gòu)自身的有用性,并確保軟件系統(tǒng)滿(mǎn)足用戶(hù)需求、具備良好的質(zhì)量和功能屬性,同時(shí)降低復(fù)雜性和變化性對(duì)軟件演化帶來(lái)的影響。

10.1.2 演化和定義的關(guān)系

軟件架構(gòu)演化的關(guān)鍵要素包括組件、連接件和約束。組件是軟件架構(gòu)的基本要素,表示系統(tǒng)中的計(jì)算元素、數(shù)據(jù)存儲(chǔ)和重要模塊。

組件的演化涉及模塊的增加、刪除或修改。連接件表示組件之間的交互關(guān)系,大多數(shù)情況下,組件的演化會(huì)導(dǎo)致連接件的演化,包括交互消息的增加、刪除或改變。

約束是組件和連接件之間的拓?fù)潢P(guān)系和配置,它提供額外的數(shù)據(jù)支持,包括架構(gòu)的約束數(shù)據(jù)和參數(shù)。

約束的演化體現(xiàn)在仿真數(shù)據(jù)的增加、刪除或改變。組件、連接件和約束的演化可能會(huì)產(chǎn)生波及效應(yīng),并最終形成演化后的軟件架構(gòu)。

10.2 面向?qū)ο筌浖軜?gòu)演化過(guò)程

10.2.1 對(duì)象演化

順序圖中組件的實(shí)體為對(duì)象,而對(duì)象包含了屬性如接口、類(lèi)型和語(yǔ)義等。對(duì)象屬性的演化只影響對(duì)象自身,對(duì)描述對(duì)象之間交互過(guò)程的順序圖沒(méi)有影響。在架構(gòu)設(shè)計(jì)的動(dòng)態(tài)行為方面,只有添加對(duì)象(AO)和刪除對(duì)象(DO)會(huì)產(chǎn)生影響。AO表示在順序圖中添加一個(gè)新的對(duì)象,一般發(fā)生在系統(tǒng)需要實(shí)現(xiàn)新功能或提高架構(gòu)靈活性的情況下。DO表示刪除順序圖中的一個(gè)現(xiàn)有對(duì)象,一般發(fā)生在系統(tǒng)需要移除某功能或降低架構(gòu)復(fù)雜度的情況下。對(duì)于發(fā)生演化的對(duì)象,如果它與其他對(duì)象沒(méi)有交互關(guān)系,則可以認(rèn)為對(duì)系統(tǒng)沒(méi)有任何意義,因?yàn)檫@種演化不會(huì)影響架構(gòu)的正確性或時(shí)態(tài)屬性。因此,在對(duì)象演化發(fā)生時(shí),通常會(huì)伴隨相應(yīng)的消息演化,新增相應(yīng)的消息以完成交互,從而影響架構(gòu)的正確性或時(shí)態(tài)屬性。

10.2.2 消息演化

消息是順序圖的核心元素,包含了名稱(chēng)、源對(duì)象、目標(biāo)對(duì)象、時(shí)序等信息。這些信息與其他對(duì)象或消息相關(guān)聯(lián),會(huì)直接影響對(duì)象之間的交互,從而對(duì)架構(gòu)的正確性或時(shí)態(tài)屬性產(chǎn)生影響。消息的演化可以分為增加消息、刪除消息、交換消息順序、反轉(zhuǎn)消息、改變消息模塊等五種類(lèi)型。消息的演化會(huì)直接影響對(duì)象之間的交互行為,但不一定會(huì)違背約束。演化可分為與當(dāng)前約束無(wú)關(guān)、與約束直接關(guān)聯(lián)但不違背約束、與約束直接關(guān)聯(lián)并違背約束三種類(lèi)型。消息是順序圖的核心內(nèi)容,消息演化是順序圖演化的核心,對(duì)象的演化伴隨著消息演化。復(fù)合片段和約束也基于消息的存在,它們的演化受到消息演化的影響。在進(jìn)行其他演化分析研究的同時(shí),需要對(duì)相關(guān)的消息演化進(jìn)行分析。

10.2.3 復(fù)合片段演化

復(fù)合片段是描述對(duì)象交互關(guān)系的控制流,與消息一起構(gòu)成順序圖的內(nèi)容。復(fù)合片段有不同的類(lèi)型,包括會(huì)產(chǎn)生分支的和不會(huì)產(chǎn)生分支的。復(fù)合片段的演化可以分為增加、刪除、改變類(lèi)型和改變條件四種類(lèi)型。增加復(fù)合片段會(huì)導(dǎo)致新的控制流分支,刪除復(fù)合片段與增加復(fù)合片段相反,改變類(lèi)型會(huì)改變交互流程,同時(shí)也可能涉及條件和內(nèi)部執(zhí)行序列的變化,改變條件會(huì)影響控制流的觸發(fā)事件。復(fù)合片段的演化會(huì)對(duì)架構(gòu)設(shè)計(jì)的正確性和時(shí)態(tài)屬性產(chǎn)生影響,因此需要進(jìn)行驗(yàn)證以確保演化后不會(huì)出現(xiàn)意外錯(cuò)誤。

10.2.4 約束演化

順序圖中的約束信息以文字形式存儲(chǔ)在對(duì)象或消息中,通常使用LTL來(lái)描述時(shí)態(tài)屬性約束。約束演化對(duì)應(yīng)著架構(gòu)配置的演化,主要來(lái)源于系統(tǒng)屬性的改變,而約束的改變往往伴隨著消息的改變。約束演化的信息并未存儲(chǔ)于定義的層次自動(dòng)機(jī)中,因?yàn)榧s束缺乏可視化描述的方式,沒(méi)有自動(dòng)機(jī)描述方式。約束演化可以直接添加或刪除約束信息。

  • AC(Add Constraint)直接添加新的約束信息,對(duì)架構(gòu)設(shè)計(jì)產(chǎn)生直接影響,需要檢查當(dāng)前設(shè)計(jì)是否滿(mǎn)足新添加的約束要求。
  • DC(Delete Constraint)直接移除某條約束信息,發(fā)生在去除不必要條件時(shí),一般情況下,架構(gòu)設(shè)計(jì)會(huì)滿(mǎn)足約束的演化。 如果對(duì)約束信息進(jìn)行修改,由于缺乏可視化描述,可以視為刪除原有約束并添加新的約束,不再另行列出

10.3 軟件架構(gòu)演化方式的分類(lèi)

目前,軟件架構(gòu)演化的分類(lèi)方法有多種。以下是三種比較典型的分類(lèi)方法:

  1. 基于實(shí)現(xiàn)方式和實(shí)施粒度分類(lèi):按照軟件架構(gòu)的實(shí)現(xiàn)方式和實(shí)施粒度進(jìn)行分類(lèi),包括基于過(guò)程和函數(shù)的演化、面向?qū)ο蟮难莼?、基于組件的演化和基于架構(gòu)的演化。

  2. 基于研究方法的分類(lèi):根據(jù)研究方法將軟件架構(gòu)演化方式分為四類(lèi)。第一類(lèi)是對(duì)演化的支持,例如代碼模塊化的準(zhǔn)則、可維護(hù)性的指示(如內(nèi)聚和耦合)、代碼重構(gòu)等。第二類(lèi)是版本和工程的管理工具,例如CVS和COCOMO。第三類(lèi)是架構(gòu)變換的形式方法,包括系統(tǒng)結(jié)構(gòu)和行為變換的模型,以及架構(gòu)演化的重現(xiàn)風(fēng)格等。第四類(lèi)是架構(gòu)演化的成本收益分析,用于決定如何增加系統(tǒng)的彈性。

  3. 靜態(tài)演化和動(dòng)態(tài)演化分類(lèi):按照軟件架構(gòu)的演化過(guò)程是否處于系統(tǒng)運(yùn)行時(shí)期進(jìn)行分類(lèi)。靜態(tài)演化發(fā)生在軟件架構(gòu)的設(shè)計(jì)、實(shí)現(xiàn)和維護(hù)過(guò)程中,軟件系統(tǒng)還未運(yùn)行或者處于運(yùn)行停止?fàn)顟B(tài)。動(dòng)態(tài)演化發(fā)生在軟件系統(tǒng)運(yùn)行過(guò)程中。

本章重點(diǎn)介紹軟件架構(gòu)的靜態(tài)演化和動(dòng)態(tài)演化。

10.3.1 軟件架構(gòu)演化時(shí)期

軟件架構(gòu)演化可以根據(jù)發(fā)生的時(shí)機(jī)和條件進(jìn)行分類(lèi):

  1. 設(shè)計(jì)時(shí)演化:發(fā)生在體系結(jié)構(gòu)模型和相關(guān)代碼編譯之前,修改時(shí)可以不考慮應(yīng)用程序的狀態(tài),但需要考慮系統(tǒng)的體系結(jié)構(gòu)。

  2. 運(yùn)行前演化:發(fā)生在執(zhí)行之前、編譯之后,由于應(yīng)用程序并未執(zhí)行,修改時(shí)可以不考慮應(yīng)用程序的狀態(tài),但需要考慮系統(tǒng)的體系結(jié)構(gòu),且系統(tǒng)需要具有添加和刪除組件的機(jī)制。

  3. 有限制運(yùn)行時(shí)演化:系統(tǒng)在設(shè)計(jì)時(shí)就規(guī)定了演化的具體條件,將系統(tǒng)置于“安全”模式下,演化只發(fā)生在某些特定約束滿(mǎn)足時(shí),可以進(jìn)行一些規(guī)定好的演化操作。

  4. 運(yùn)行時(shí)演化:系統(tǒng)的體系結(jié)構(gòu)在運(yùn)行時(shí)不能滿(mǎn)足要求時(shí)發(fā)生的軟件架構(gòu)演化,包括添加組件、刪除組件、升級(jí)替換組件、改變體系結(jié)構(gòu)的拓?fù)浣Y(jié)構(gòu)等。此時(shí)的演化是最難實(shí)現(xiàn)的。

10.3.2 軟件架構(gòu)靜態(tài)演化

軟件架構(gòu)演化可以根據(jù)發(fā)生的時(shí)機(jī)和條件進(jìn)行分類(lèi)。首先是設(shè)計(jì)時(shí)演化,即在體系結(jié)構(gòu)模型和相關(guān)代碼編譯之前進(jìn)行修改。其次是運(yùn)行前演化,即在執(zhí)行之前、編譯之后進(jìn)行修改。然后是有限制運(yùn)行時(shí)演化,即系統(tǒng)在設(shè)計(jì)時(shí)就規(guī)定了演化的具體條件,只能在特定約束下進(jìn)行操作。最后是運(yùn)行時(shí)演化,即系統(tǒng)的體系結(jié)構(gòu)在運(yùn)行時(shí)無(wú)法滿(mǎn)足要求時(shí)進(jìn)行的演化,包括添加組件、刪除組件、升級(jí)替換組件等操作。

靜態(tài)演化過(guò)程可以看作經(jīng)過(guò)一系列原子演化操作的組合。原子演化操作是指基于UML模型表示的軟件架構(gòu)中在邏輯語(yǔ)義上最小的架構(gòu)修改操作。這些操作包括增加/刪除模塊間的依賴(lài)、增加/刪除模塊間的接口、增加/刪除模塊、拆分/聚合模塊等。每個(gè)原子演化操作都會(huì)對(duì)架構(gòu)產(chǎn)生影響,可能改變架構(gòu)的組織結(jié)構(gòu)和質(zhì)量屬性。不同的質(zhì)量屬性度量和評(píng)估會(huì)受到不同類(lèi)型的原子演化操作的影響。

在與可維護(hù)性相關(guān)的架構(gòu)演化操作中,模塊間的依賴(lài)關(guān)系、接口和模塊的增加/刪除會(huì)影響架構(gòu)的組織結(jié)構(gòu)和外部質(zhì)量屬性。而在與可靠性相關(guān)的架構(gòu)演化操作中,消息、交互對(duì)象、消息片段和用例執(zhí)行的增加/刪除/修改會(huì)影響交互場(chǎng)景的可靠程度。

正交軟件架構(gòu)是一種常用的靜態(tài)演化處理方式。通過(guò)對(duì)功能進(jìn)行分層和線(xiàn)索化,形成正交體系結(jié)構(gòu),使每個(gè)變動(dòng)只影響一條線(xiàn)索,提高了演化的效率。其演化過(guò)程包括需求變動(dòng)歸類(lèi)、架構(gòu)演化計(jì)劃制訂、組件的修改/增加/刪除以及更新組件之間的相互作用等步驟。最終形成演化后的軟件架構(gòu)作為系統(tǒng)更新的詳細(xì)設(shè)計(jì)方案和實(shí)現(xiàn)基礎(chǔ)。

10.3.3 軟件架構(gòu)動(dòng)態(tài)演化

動(dòng)態(tài)演化是指系統(tǒng)在運(yùn)行期間進(jìn)行的演化,需要在不停止系統(tǒng)功能的情況下完成,相比靜態(tài)演化更加困難。動(dòng)態(tài)演化的需求主要來(lái)自軟件內(nèi)部執(zhí)行導(dǎo)致的體系結(jié)構(gòu)改變和軟件系統(tǒng)外部請(qǐng)求的重配置。對(duì)于長(zhǎng)期運(yùn)行且具有特殊使命的系統(tǒng),動(dòng)態(tài)演化能夠減少更新費(fèi)用和風(fēng)險(xiǎn),并增強(qiáng)系統(tǒng)的自定義性和可擴(kuò)展性。

動(dòng)態(tài)演化包括軟件動(dòng)態(tài)性的等級(jí)和動(dòng)態(tài)演化的內(nèi)容。軟件動(dòng)態(tài)性分為交互動(dòng)態(tài)性、結(jié)構(gòu)動(dòng)態(tài)性和架構(gòu)動(dòng)態(tài)性。根據(jù)修改的內(nèi)容不同,軟件的動(dòng)態(tài)演化主要包括屬性改名、行為變化、拓?fù)浣Y(jié)構(gòu)改變和架構(gòu)風(fēng)格變化。目前實(shí)現(xiàn)軟件架構(gòu)動(dòng)態(tài)演化的技術(shù)主要有動(dòng)態(tài)軟件架構(gòu)(DSA)和動(dòng)態(tài)重配置(DR)。

動(dòng)態(tài)軟件架構(gòu)(DSA)的實(shí)現(xiàn)基本原理是通過(guò)運(yùn)行時(shí)刻的體系結(jié)構(gòu)對(duì)象來(lái)觸發(fā)系統(tǒng)自身的動(dòng)態(tài)調(diào)整,需要提供相關(guān)的監(jiān)控管理機(jī)制和保證演化操作原子性。DSA包括描述語(yǔ)言和演化工具的支持,例如π-ADL、Pilar、LIME等描述語(yǔ)言,以及反射機(jī)制、基于組件操作、π演算和外部體系結(jié)構(gòu)演化管理器等演化工具。

動(dòng)態(tài)軟件架構(gòu)的應(yīng)用實(shí)例PKUAS是一個(gè)支持Java EE規(guī)范的組件運(yùn)行支撐平臺(tái),采用微內(nèi)核架構(gòu),包括容器系統(tǒng)、公共服務(wù)、工具和微內(nèi)核等組件。PKUAS通過(guò)MBean接口對(duì)外提供管理相關(guān)的屬性和操作,滿(mǎn)足了動(dòng)態(tài)演化的需求。

動(dòng)態(tài)重配置主要指在軟件部署之后對(duì)配置信息的修改,常見(jiàn)的模式包括主從模式、中央控制模式、客戶(hù)端/服務(wù)器模式和分布式控制模式。動(dòng)態(tài)重配置的難點(diǎn)包括約束定義困難、性能約束難以靜態(tài)衡量、管理所有方面困難以及維持系統(tǒng)完整性和重配置策略正確和安全性的挑戰(zhàn)。

10.4 軟件架構(gòu)演化原則

本節(jié)介紹了18種軟件架構(gòu)可持續(xù)演化原則以及相應(yīng)的度量方案,主要包括演化成本控制、進(jìn)度可控、風(fēng)險(xiǎn)可控、主體維持、系統(tǒng)總體結(jié)構(gòu)優(yōu)化、平滑演化、目標(biāo)一致、模塊獨(dú)立演化、影響可控、復(fù)雜性可控、有利于重構(gòu)、有利于重用、設(shè)計(jì)原則遵從性、適應(yīng)新技術(shù)、環(huán)境適應(yīng)性、標(biāo)準(zhǔn)依從性、質(zhì)量向好和適應(yīng)新需求原則。每個(gè)原則都有對(duì)應(yīng)的解釋和用途,以及度量方案來(lái)評(píng)估架構(gòu)演化的效果。這些度量方案能夠幫助評(píng)估架構(gòu)演化的成本、進(jìn)度、風(fēng)險(xiǎn)、結(jié)構(gòu)、穩(wěn)定性、獨(dú)立性、影響、復(fù)雜性、重構(gòu)性、重用性、設(shè)計(jì)原則遵從性、技術(shù)適應(yīng)性、環(huán)境適應(yīng)性、標(biāo)準(zhǔn)依從性、質(zhì)量改進(jìn)和新需求適應(yīng)性等方面。

10.5 軟件架構(gòu)演化評(píng)估方法

10.5.1 演化過(guò)程已知的評(píng)估

  1. 評(píng)估流程:
  • 將架構(gòu)度量應(yīng)用到演化過(guò)程中
  • 對(duì)演化前后的不同版本的架構(gòu)進(jìn)行度量,得到度量結(jié)果的差值和變化趨勢(shì)
  • 計(jì)算架構(gòu)間質(zhì)量屬性距離,對(duì)相關(guān)質(zhì)量屬性進(jìn)行評(píng)估
  1. 架構(gòu)演化中間版本度量:
  • 對(duì)可維護(hù)性和可靠性進(jìn)行度量,分析演化對(duì)外部質(zhì)量屬性的影響
  1. 架構(gòu)質(zhì)量屬性距離:
  • 用來(lái)評(píng)估相鄰版本架構(gòu)間質(zhì)量屬性的差異
  • 分為可維護(hù)性距離計(jì)算方法和可靠性距離計(jì)算方法
  • 應(yīng)針對(duì)同一架構(gòu)的不同演化版本進(jìn)行度量,以保障架構(gòu)能夠持續(xù)健康演化
  1. 架構(gòu)演化評(píng)估:
  • 基于度量的方法幫助分析架構(gòu)內(nèi)部結(jié)構(gòu)修改對(duì)外部質(zhì)量屬性的影響
  • 監(jiān)控演化過(guò)程中架構(gòu)質(zhì)量的變化
  • 評(píng)估不同版本架構(gòu)在質(zhì)量屬性上的差異,有利于架構(gòu)維護(hù)及故障定位等。

10.5.2演化過(guò)程未知的評(píng)估

  • 當(dāng)架構(gòu)演化過(guò)程未知時(shí),可以通過(guò)比較演化前后的度量結(jié)果來(lái)推測(cè)架構(gòu)的變化。
  • 使用基于度量的方法對(duì)演化前后的架構(gòu)進(jìn)行評(píng)估,得到質(zhì)量屬性的差異并計(jì)算它們之間的距離。
  • 分析架構(gòu)演化前后質(zhì)量屬性的變化和距離,推測(cè)可能發(fā)生的演化操作,并找出其影響因素。
  • 對(duì)每個(gè)演化操作分析其對(duì)質(zhì)量屬性的影響,并判斷是否符合預(yù)期。
  • 若演化操作符合預(yù)期,則說(shuō)明演化完成了任務(wù);否則需要進(jìn)一步演化來(lái)完善。
    系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6 大型網(wǎng)站系統(tǒng)架構(gòu)演化實(shí)例

10.6.1 第一階段:?jiǎn)误w架構(gòu)

大型網(wǎng)站是從小型網(wǎng)站發(fā)展而來(lái),網(wǎng)站架構(gòu)也是一樣,是逐步演化而來(lái)。小型網(wǎng)站最開(kāi)始只需要一臺(tái)服務(wù)器就夠了,應(yīng)用程序、數(shù)據(jù)庫(kù)、文件等所有資源都在一臺(tái)服務(wù)器上,隨著網(wǎng)站業(yè)務(wù)的發(fā)展,需要將應(yīng)用和數(shù)據(jù)分離至不同的服務(wù)器,并進(jìn)行進(jìn)一步優(yōu)化。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.2 第二階段:垂直架構(gòu)

隨著網(wǎng)站業(yè)務(wù)的發(fā)展,一臺(tái)服務(wù)器無(wú)法滿(mǎn)足需求,需要將應(yīng)用和數(shù)據(jù)分離至不同的服務(wù)器。應(yīng)用服務(wù)器需要更快更強(qiáng)大的處理器速度,數(shù)據(jù)庫(kù)服務(wù)器需要更快的磁盤(pán)和更大的內(nèi)存,文件服務(wù)器需要更大容量的硬盤(pán)。分離后,不同特性的服務(wù)器承擔(dān)不同的服務(wù)角色,網(wǎng)站的并發(fā)處理能力和數(shù)據(jù)存儲(chǔ)空間得到了改善。但隨著用戶(hù)逐漸增多,數(shù)據(jù)壓力太大導(dǎo)致訪(fǎng)問(wèn)延遲,需要進(jìn)一步優(yōu)化網(wǎng)站架構(gòu)。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.3 第三階段:使用緩存改善網(wǎng)站性能

網(wǎng)站訪(fǎng)問(wèn)的特點(diǎn)和現(xiàn)實(shí)世界的財(cái)富分配一樣,遵循二八定律。為了減少數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)壓力,提高整個(gè)網(wǎng)站的數(shù)據(jù)訪(fǎng)問(wèn)速度,改善數(shù)據(jù)庫(kù)的寫(xiě)入性能,可以將一小部分?jǐn)?shù)據(jù)緩存在內(nèi)存中,使用本地緩存和遠(yuǎn)程分布式緩存。本地緩存訪(fǎng)問(wèn)速度更快但受服務(wù)器內(nèi)存限制;遠(yuǎn)程分布式緩存可以做到不受內(nèi)存容量限制的緩存服務(wù)。然而,在網(wǎng)站訪(fǎng)問(wèn)高峰期,單一應(yīng)用服務(wù)器能夠處理的請(qǐng)求連接有限,成為整個(gè)網(wǎng)站的瓶頸。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.4 第四階段:使用服務(wù)集群改善網(wǎng)站并發(fā)處理能力

使用集群是網(wǎng)站解決高并發(fā)、海量數(shù)據(jù)問(wèn)題的常用手段。當(dāng)一臺(tái)服務(wù)器無(wú)法滿(mǎn)足網(wǎng)站持續(xù)增長(zhǎng)的業(yè)務(wù)需求時(shí),增加一臺(tái)服務(wù)器分擔(dān)原有服務(wù)器的訪(fǎng)問(wèn)及存儲(chǔ)壓力是更恰當(dāng)?shù)淖龇?。這種方式可以持續(xù)增加服務(wù)器不斷改善系統(tǒng)性能,實(shí)現(xiàn)系統(tǒng)的可伸縮性。應(yīng)用服務(wù)器實(shí)現(xiàn)集群是網(wǎng)站可伸縮架構(gòu)設(shè)計(jì)中較為簡(jiǎn)單成熟的一種。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.5 第五階段:數(shù)據(jù)庫(kù)讀寫(xiě)分離

通過(guò)使用緩存,網(wǎng)站可以減少對(duì)數(shù)據(jù)庫(kù)的讀操作,但仍有一部分讀操作和全部寫(xiě)操作需要訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)。當(dāng)網(wǎng)站用戶(hù)規(guī)模變大時(shí),數(shù)據(jù)庫(kù)可能成為瓶頸。為了改善數(shù)據(jù)庫(kù)負(fù)載壓力,可以利用主從熱備功能實(shí)現(xiàn)數(shù)據(jù)庫(kù)讀寫(xiě)分離。應(yīng)用服務(wù)器在寫(xiě)數(shù)據(jù)時(shí),訪(fǎng)問(wèn)主數(shù)據(jù)庫(kù),并通過(guò)主從復(fù)制機(jī)制將數(shù)據(jù)同步到從數(shù)據(jù)庫(kù)。這樣,在應(yīng)用服務(wù)器讀取數(shù)據(jù)時(shí),可以直接從從數(shù)據(jù)庫(kù)獲取。為了方便應(yīng)用程序訪(fǎng)問(wèn)讀寫(xiě)分離后的數(shù)據(jù)庫(kù),通常會(huì)在應(yīng)用服務(wù)器端使用專(zhuān)門(mén)的數(shù)據(jù)訪(fǎng)問(wèn)模塊,使數(shù)據(jù)庫(kù)讀寫(xiě)分離對(duì)應(yīng)用透明化。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.6 第六階段:使用反向代理和CDN加速網(wǎng)站響應(yīng)

隨著網(wǎng)站業(yè)務(wù)發(fā)展和不同地區(qū)的網(wǎng)絡(luò)環(huán)境復(fù)雜,網(wǎng)站訪(fǎng)問(wèn)速度越來(lái)越慢,影響用戶(hù)體驗(yàn)和流失率。為了提高網(wǎng)站訪(fǎng)問(wèn)速度,留住用戶(hù),可以使用CDN和反向代理兩種方式。CDN部署在網(wǎng)絡(luò)提供商機(jī)房,使用戶(hù)可以從距離自己最近的機(jī)房獲取數(shù)據(jù);反向代理部署在網(wǎng)站中心機(jī)房,當(dāng)用戶(hù)請(qǐng)求到達(dá)中心機(jī)房后,首先訪(fǎng)問(wèn)的服務(wù)器是反向代理服務(wù)器,如果緩存中有用戶(hù)請(qǐng)求的資源,就將其直接返回給用戶(hù)。使用CDN和反向代理的目的都是加快用戶(hù)訪(fǎng)問(wèn)速度并減輕服務(wù)器負(fù)載壓力。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.7 第七階段:使用分布式文件系統(tǒng)和分布式數(shù)據(jù)庫(kù)系統(tǒng)

對(duì)于大型網(wǎng)站持續(xù)增長(zhǎng)的業(yè)務(wù)需求,單一服務(wù)器無(wú)法滿(mǎn)足要求。通過(guò)數(shù)據(jù)庫(kù)讀寫(xiě)分離可以將一臺(tái)服務(wù)器拆分為兩臺(tái),但隨著業(yè)務(wù)增長(zhǎng),需要使用分布式數(shù)據(jù)庫(kù)和分布式文件系統(tǒng)。分布式數(shù)據(jù)庫(kù)是最后的選擇,通常在單表數(shù)據(jù)規(guī)模非常大時(shí)使用。網(wǎng)站更常用的數(shù)據(jù)庫(kù)拆分方式是業(yè)務(wù)分庫(kù),將不同業(yè)務(wù)的數(shù)據(jù)部署在不同的物理服務(wù)器上。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.8 第八階段:使用NoSQL和搜索引擎

隨著網(wǎng)站業(yè)務(wù)的復(fù)雜化,數(shù)據(jù)存儲(chǔ)和檢索需求也變得復(fù)雜。為了滿(mǎn)足這些需求,網(wǎng)站需要采用NoSQL和搜索引擎等非關(guān)系型數(shù)據(jù)庫(kù)技術(shù)。這些技術(shù)具有分布式特性和可伸縮性,能更好地支持網(wǎng)站的發(fā)展。通過(guò)一個(gè)統(tǒng)一的數(shù)據(jù)訪(fǎng)問(wèn)模塊,應(yīng)用服務(wù)器可以方便地訪(fǎng)問(wèn)各種數(shù)據(jù)源,減輕了應(yīng)用程序管理多個(gè)數(shù)據(jù)源的負(fù)擔(dān)。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.9 第九階段:業(yè)務(wù)拆分

為了應(yīng)對(duì)復(fù)雜的業(yè)務(wù)場(chǎng)景,大型網(wǎng)站采用分而治之的策略,將整個(gè)網(wǎng)站業(yè)務(wù)劃分為不同的產(chǎn)品線(xiàn)。例如,購(gòu)物交易網(wǎng)站會(huì)將首頁(yè)、商鋪、訂單、買(mǎi)家和賣(mài)家等功能劃分為不同的產(chǎn)品線(xiàn),并由不同的業(yè)務(wù)團(tuán)隊(duì)負(fù)責(zé)。
從技術(shù)上來(lái)說(shuō),根據(jù)產(chǎn)品線(xiàn)的劃分,將網(wǎng)站拆分為多個(gè)獨(dú)立部署的應(yīng)用程序。這些應(yīng)用程序可以通過(guò)超鏈接建立關(guān)聯(lián)(例如首頁(yè)上的導(dǎo)航鏈接指向不同的應(yīng)用程序地址),也可以通過(guò)消息隊(duì)列進(jìn)行數(shù)據(jù)分發(fā)。此外,這些應(yīng)用程序通常訪(fǎng)問(wèn)同一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng),以構(gòu)建一個(gè)關(guān)聯(lián)的完整系統(tǒng)。

系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.6.10 第十階段:分布式服務(wù)

隨著業(yè)務(wù)拆分越來(lái)越細(xì)致,存儲(chǔ)系統(tǒng)變得龐大,整個(gè)應(yīng)用系統(tǒng)的復(fù)雜度指數(shù)級(jí)增加,部署和維護(hù)變得更加困難。在大型網(wǎng)站中,由于每個(gè)應(yīng)用都要與所有數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行連接,導(dǎo)致數(shù)據(jù)庫(kù)連接資源不足,從而引發(fā)拒絕服務(wù)問(wèn)題。

為了解決這個(gè)問(wèn)題,可以將共享的業(yè)務(wù)操作單獨(dú)提取出來(lái),獨(dú)立部署。這些可復(fù)用的業(yè)務(wù)通過(guò)連接數(shù)據(jù)庫(kù)提供共享業(yè)務(wù)服務(wù),而應(yīng)用系統(tǒng)只需要管理用戶(hù)界面,并通過(guò)分布式服務(wù)調(diào)用共享業(yè)務(wù)服務(wù)來(lái)完成具體的業(yè)務(wù)操作。

通過(guò)這種架構(gòu),大型網(wǎng)站可以解決大部分技術(shù)問(wèn)題,包括跨數(shù)據(jù)中心的實(shí)時(shí)數(shù)據(jù)同步和與特定網(wǎng)站業(yè)務(wù)相關(guān)的問(wèn)題,可以通過(guò)組合改進(jìn)現(xiàn)有的技術(shù)架構(gòu)來(lái)解決。
系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí),# 《系統(tǒng)架構(gòu)設(shè)計(jì)師教程》,系統(tǒng)架構(gòu)

10.7 軟件架構(gòu)維護(hù)

軟件架構(gòu)是軟件開(kāi)發(fā)和維護(hù)過(guò)程中的重要組成部分,它連接了軟件需求和設(shè)計(jì)、實(shí)現(xiàn)之間的關(guān)系。軟件架構(gòu)的開(kāi)發(fā)和維護(hù)包括多個(gè)環(huán)節(jié),如導(dǎo)出架構(gòu)需求、架構(gòu)開(kāi)發(fā)、架構(gòu)文檔化、架構(gòu)分析、架構(gòu)實(shí)現(xiàn)和架構(gòu)維護(hù)。

軟件架構(gòu)的維護(hù)與演化是緊密關(guān)聯(lián)的,維護(hù)需要跟蹤和控制軟件架構(gòu)的演化過(guò)程,以確保其能夠滿(mǎn)足需求。架構(gòu)維護(hù)可以被看作是架構(gòu)演化的一部分。

在軟件架構(gòu)維護(hù)過(guò)程中,通常涉及架構(gòu)知識(shí)管理、架構(gòu)修改管理和架構(gòu)版本管理等內(nèi)容。這些內(nèi)容對(duì)于保障軟件架構(gòu)的質(zhì)量和演化過(guò)程的可控性至關(guān)重要。

10.7.1 軟件架構(gòu)知識(shí)管理

軟件架構(gòu)知識(shí)管理旨在記錄和評(píng)價(jià)架構(gòu)設(shè)計(jì)決策,以幫助維護(hù)和演化架構(gòu)。然而,目前存在一些問(wèn)題,包括缺乏整理策略、文檔化動(dòng)機(jī)不足以及知識(shí)分享不充分。

架構(gòu)知識(shí)的定義包括架構(gòu)設(shè)計(jì)和架構(gòu)設(shè)計(jì)決策,而架構(gòu)知識(shí)管理的目標(biāo)是捕捉架構(gòu)知識(shí)并提供設(shè)計(jì)依據(jù)以進(jìn)行記錄和評(píng)價(jià)。

架構(gòu)知識(shí)管理的需求在于提高架構(gòu)知識(shí)的可獲得性,并防止架構(gòu)知識(shí)的丟失和流失。

然而,當(dāng)前的實(shí)踐存在問(wèn)題,如缺乏實(shí)用的整理策略、文檔化動(dòng)機(jī)不足和知識(shí)分享不足。這些問(wèn)題導(dǎo)致架構(gòu)知識(shí)無(wú)法在組織中得到充分的分享和應(yīng)用。

10.7.2 軟件架構(gòu)修改管理

在軟件架構(gòu)修改管理中,建立一個(gè)隔離區(qū)域 (RoQ) 是重要的做法。這保證了在 RoQ 中進(jìn)行的修改不會(huì)對(duì)其他部分產(chǎn)生影響。為此,需要確定修改規(guī)則、類(lèi)型和可能的影響范圍和副作用等。

10.7.3 軟件架構(gòu)版本管理

軟件架構(gòu)版本管理為架構(gòu)演化提供依據(jù),可以控制、使用和評(píng)價(jià)架構(gòu)的不同版本。例如,王映輝等人提出了一種基于組件-連接件模型的方法,通過(guò)鄰接矩陣和可達(dá)矩陣分析和量化了靜態(tài)演化中的波及效應(yīng),并計(jì)算了組件在架構(gòu)中的貢獻(xiàn)大小。他們還提出了動(dòng)態(tài)語(yǔ)義網(wǎng)絡(luò)模型,用于分析動(dòng)態(tài)演化中的收斂情況,并給出了描述演化過(guò)程的鄰接矩陣序列。這些方法為架構(gòu)演化的分析提供了框架。

10.7.4 軟件架構(gòu)可維護(hù)性度量實(shí)踐

首先,將組件圖導(dǎo)出為XML文件,并解析出評(píng)估所需的數(shù)據(jù)。然后,根據(jù)可維護(hù)性的六個(gè)子度量指標(biāo),計(jì)算每個(gè)組件的度量結(jié)果。其中包括圈復(fù)雜度、扇入扇出度、模塊間耦合度、模塊的響應(yīng)以及緊內(nèi)聚度和松內(nèi)聚度。最后,根據(jù)每個(gè)組件的度量結(jié)果計(jì)算出整個(gè)系統(tǒng)的度量結(jié)果。根據(jù)結(jié)果分析可知,圈復(fù)雜度、扇入扇出度、模塊間耦合度、模塊的響應(yīng)等指標(biāo)都與組件的關(guān)聯(lián)關(guān)系和依賴(lài)關(guān)系有關(guān)。同時(shí),高內(nèi)聚度和低耦合度是設(shè)計(jì)良好的架構(gòu)的目標(biāo)。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-801366.html

到了這里,關(guān)于系統(tǒng)架構(gòu)設(shè)計(jì)師教程(十)軟件可靠性基礎(chǔ)知識(shí)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀(guān)點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件架構(gòu)設(shè)計(jì)(7)

    系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件架構(gòu)設(shè)計(jì)(7)

    目錄 大型網(wǎng)站系統(tǒng)架構(gòu)演化 一、第一階段:?jiǎn)误w架構(gòu) 到 第二階段:垂直架構(gòu) 二、第三階段:使用緩存改善網(wǎng)站性能 ????????1、緩存與數(shù)據(jù)庫(kù)的數(shù)據(jù)一致性問(wèn)題 ? ? ? ? 2、緩存技術(shù)對(duì)比【MemCache與Redis】 ????????3、Redis分布式存儲(chǔ)方案 ????????4、Redis集群切片的

    2024年02月14日
    瀏覽(90)
  • 系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件架構(gòu)設(shè)計(jì)(6)

    系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件架構(gòu)設(shè)計(jì)(6)

    目錄 一、物聯(lián)網(wǎng)分層架構(gòu) 二、大數(shù)據(jù)分層架構(gòu) 三、基于服務(wù)的架構(gòu)(SOA) ? ? ? ? 1、SOA的特征 ? ? ? ? 2、服務(wù)構(gòu)件與傳統(tǒng)構(gòu)件的區(qū)別 四、Web Service(WEB服務(wù)) ? ? ? ? 1、Web Services 和 SOA的關(guān)系 五、REST(表述性狀態(tài)轉(zhuǎn)移) 六、ESB(企業(yè)服務(wù)總線(xiàn)) 七、微服務(wù) ? ? ? ? 1、微

    2024年02月14日
    瀏覽(1954)
  • 【新版】系統(tǒng)架構(gòu)設(shè)計(jì)師 - 軟件架構(gòu)設(shè)計(jì)<新版>

    【新版】系統(tǒng)架構(gòu)設(shè)計(jì)師 - 軟件架構(gòu)設(shè)計(jì)<新版>

    個(gè)人總結(jié),僅供參考,歡迎加好友一起討論 軟件架構(gòu)的概念(★★★) 基于架構(gòu)的軟件開(kāi)發(fā)(★★★★) 軟件架構(gòu)風(fēng)格(★★★★★) 特定領(lǐng)域軟件架構(gòu)(★★★) 軟件質(zhì)量屬性(★★★★★) 軟件架構(gòu)評(píng)估(★★★★★) 軟件產(chǎn)品線(xiàn)(★★★) 構(gòu)件與中間件技術(shù)(★

    2024年02月09日
    瀏覽(93)
  • 【新版】系統(tǒng)架構(gòu)設(shè)計(jì)師 - 軟件架構(gòu)設(shè)計(jì)<輕量級(jí)架構(gòu)>

    【新版】系統(tǒng)架構(gòu)設(shè)計(jì)師 - 軟件架構(gòu)設(shè)計(jì)<輕量級(jí)架構(gòu)>

    個(gè)人總結(jié),僅供參考,歡迎加好友一起討論 基本概念(★) SSH(★★) SSM(★★) 用戶(hù)界面的邏輯位于最頂層。表現(xiàn)層負(fù)責(zé)把用戶(hù)要求的業(yè)務(wù)邏輯處理結(jié)果以可視化的友好的方式返回給用戶(hù),并提供接受用戶(hù)命令的接口和表現(xiàn)層頁(yè)面控制邏輯的代碼。 業(yè)務(wù)邏輯層負(fù)責(zé)處理

    2024年02月09日
    瀏覽(66)
  • 系統(tǒng)架構(gòu)設(shè)計(jì)專(zhuān)業(yè)技能 · 軟件工程(一)【系統(tǒng)架構(gòu)設(shè)計(jì)師】

    系統(tǒng)架構(gòu)設(shè)計(jì)專(zhuān)業(yè)技能 · 軟件工程(一)【系統(tǒng)架構(gòu)設(shè)計(jì)師】

    系統(tǒng)架構(gòu)設(shè)計(jì)高級(jí)技能 · 軟件架構(gòu)概念、架構(gòu)風(fēng)格、ABSD、架構(gòu)復(fù)用、DSSA(一)【系統(tǒng)架構(gòu)設(shè)計(jì)師】 系統(tǒng)架構(gòu)設(shè)計(jì)高級(jí)技能 · 系統(tǒng)質(zhì)量屬性與架構(gòu)評(píng)估(二)【系統(tǒng)架構(gòu)設(shè)計(jì)師】 系統(tǒng)架構(gòu)設(shè)計(jì)高級(jí)技能 · 軟件可靠性分析與設(shè)計(jì)(三)【系統(tǒng)架構(gòu)設(shè)計(jì)師】 軟件開(kāi)發(fā)生命周期

    2024年02月13日
    瀏覽(99)
  • 【新版】系統(tǒng)架構(gòu)設(shè)計(jì)師 - 軟件架構(gòu)設(shè)計(jì)<SOA與微服務(wù)>

    【新版】系統(tǒng)架構(gòu)設(shè)計(jì)師 - 軟件架構(gòu)設(shè)計(jì)<SOA與微服務(wù)>

    個(gè)人總結(jié),僅供參考,歡迎加好友一起討論 面向服務(wù)SOA(★★★★) 微服務(wù)(★★★★) 在SOA模型中,所有的功能都定義成了獨(dú)立的服務(wù)。服務(wù)之間通過(guò)交互和協(xié)調(diào)完成業(yè)務(wù)的整體邏輯。所有的服務(wù)通過(guò)服務(wù)總線(xiàn)或流程管理器來(lái)連接。這種松散耦合的架構(gòu)使得各服務(wù)在交互

    2024年02月09日
    瀏覽(83)
  • 系統(tǒng)架構(gòu)設(shè)計(jì)專(zhuān)業(yè)技能 · 軟件工程之軟件測(cè)試與維護(hù)(六)【系統(tǒng)架構(gòu)設(shè)計(jì)師】

    系統(tǒng)架構(gòu)設(shè)計(jì)專(zhuān)業(yè)技能 · 軟件工程之軟件測(cè)試與維護(hù)(六)【系統(tǒng)架構(gòu)設(shè)計(jì)師】

    系統(tǒng)架構(gòu)設(shè)計(jì)專(zhuān)業(yè)技能 · 網(wǎng)絡(luò)規(guī)劃與設(shè)計(jì)(三)【系統(tǒng)架構(gòu)設(shè)計(jì)師】 系統(tǒng)架構(gòu)設(shè)計(jì)專(zhuān)業(yè)技能 · 系統(tǒng)安全分析與設(shè)計(jì)(四)【系統(tǒng)架構(gòu)設(shè)計(jì)師】 系統(tǒng)架構(gòu)設(shè)計(jì)高級(jí)技能 · 軟件架構(gòu)設(shè)計(jì)(一)【系統(tǒng)架構(gòu)設(shè)計(jì)師】 系統(tǒng)架構(gòu)設(shè)計(jì)高級(jí)技能 · 系統(tǒng)質(zhì)量屬性與架構(gòu)評(píng)估(二)【系統(tǒng)

    2024年02月13日
    瀏覽(31)
  • 系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件工程(4)

    系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件工程(4)

    目錄 一、軟件測(cè)試 ????????1、軟件測(cè)試類(lèi)型(動(dòng)態(tài)測(cè)試 / 靜態(tài)測(cè)試) ? ? ? ? ? ? ? ? 1.1 動(dòng)態(tài)測(cè)試【計(jì)算機(jī)運(yùn)行】? ????????????????1.2 靜態(tài)測(cè)試【人工監(jiān)測(cè)和計(jì)算機(jī)輔助分析】 ????????2、軟件測(cè)試階段 ????????3、軟件系統(tǒng)測(cè)試 二、遺留系統(tǒng)演化策略

    2024年02月13日
    瀏覽(90)
  • 系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件工程(2)

    系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件工程(2)

    目錄 一、需求工程? ? ? ? ? 1、需求工程階段劃分 ? ? ? ? 2、需求獲取 ? ? ? ? 3、需求分析? ? ? ? ? 4、需求定義(形成需求規(guī)格SRS) ????????5、需求確認(rèn)與驗(yàn)證 ? ? ? ? 6、需求跟蹤????????????????? ? ? ? ? 7、需求變更管理過(guò)程 ? ? ? ? 1、需求工程階

    2024年02月12日
    瀏覽(25)
  • 系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件工程(1)

    系統(tǒng)架構(gòu)設(shè)計(jì)師-軟件工程(1)

    目錄 一、軟件過(guò)程模型?????? ? ? ? ? 1、瀑布模型 ? ? ? ? 2、V模型【瀑布變種】 ? ? ? ? 3、原型模型 ? ? ? ? 4、螺旋模型【原型+瀑布】 ? ? ? ? 5、構(gòu)件組裝模型/基于構(gòu)件的開(kāi)發(fā)方法 ? ? ? ? 6、快速應(yīng)用開(kāi)發(fā)RAD【瀑布+構(gòu)件組裝】???????????????? ? ? ? ?

    2024年02月11日
    瀏覽(96)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包