欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

軟件架構(gòu)是什么

admin
2023年3月6日 16:34 本文熱度 701

概述

本文從不同角度闡述什么是軟件架構(gòu),軟件架構(gòu)在做什么,在進(jìn)行軟件架構(gòu)設(shè)計(jì)時(shí)需要考慮哪些方面。


基本概念

  1. 軟件系統(tǒng)的架構(gòu)就是有它的構(gòu)建者所決定的,軟件架構(gòu)這項(xiàng)工作的實(shí)質(zhì)就是:如何將系統(tǒng)切分成組件,并安排好組件之間的排列關(guān)系,以及組件之間的相互通信的方式。

  2. 而設(shè)計(jì)軟件架構(gòu)的目的就是:為了在工作中更好的對(duì)這些組件進(jìn)行研發(fā)、部署、運(yùn)行及其維護(hù)。

  3. 設(shè)計(jì)良好的架構(gòu):可以讓系統(tǒng)更容易理解、易于修改、方便維護(hù)、并能輕松部署。

  4. 軟件架構(gòu)的終極目標(biāo):最大化程序員的生產(chǎn)力,同時(shí)最小化系統(tǒng)的總運(yùn)維成本。

開發(fā)

  1. 一個(gè)開發(fā)起來很困難的軟件系統(tǒng),不太可能有一個(gè)長(zhǎng)久的長(zhǎng)久、健康的生命周期。

  2. 系統(tǒng)架構(gòu)設(shè)計(jì)的作用,就是方便其團(tuán)隊(duì)對(duì)它進(jìn)行開發(fā)。

運(yùn)行

  1. 設(shè)計(jì)良好的系統(tǒng)架構(gòu)應(yīng)該可以使開發(fā)人員對(duì)系統(tǒng)的運(yùn)行一目了然。

  2. 架構(gòu)應(yīng)該起到揭示系統(tǒng)運(yùn)行過程的作用。

  3. 系統(tǒng)架構(gòu)應(yīng)該將系統(tǒng)中的用例,功能,以及必備行為,設(shè)置為對(duì)開發(fā)者可見的一級(jí)實(shí)體,簡(jiǎn)化他們對(duì)系統(tǒng)的理解。這將會(huì)對(duì)系統(tǒng)的開發(fā)與維護(hù),提供極大的幫助。

部署

  1. 在設(shè)計(jì)的早期就要考慮到部署問題,

  2. 為了讓開發(fā)成為有效的工作,軟件系統(tǒng)就必須是可部署的。

  3. 通常一個(gè)系統(tǒng)的部署成本越高,可用性就越低。所以,實(shí)現(xiàn)一鍵輕松部署應(yīng)該是設(shè)計(jì)軟件架構(gòu)的一個(gè)目標(biāo)。

維護(hù)

  1. 在軟件系統(tǒng)所有方面中,維護(hù)所需要的成本是最高的。需求的變更,新功能的添加,以及系統(tǒng)缺陷這些工作將會(huì)占去大部分人力資源。

  2. 系統(tǒng)維護(hù)的主要成本,包括兩個(gè)方面:

    1. 新增功能:確定新增功能或修復(fù)問題的最佳位置。

    2. 風(fēng)險(xiǎn)成本:在進(jìn)行系統(tǒng)代碼修改時(shí),可能衍生出新的問題。

  3. 通過優(yōu)良的架構(gòu)設(shè)計(jì),可以減少維護(hù)成本:

    1. 將系統(tǒng)切分成各個(gè)組件(模塊)。

    2. 使用穩(wěn)定的接口把各個(gè)組件之間進(jìn)行隔離。這樣讓各個(gè)組件之間保持正交性,各個(gè)組件之間解耦。

    3. 將未來需要添加新功能的添加方式明確出來,可以大大降低對(duì)系統(tǒng)其他部分造成的傷害的可能性。

  4. 如何提前考慮新功能的添加方式?

    1. 比如支持?jǐn)?shù)據(jù)庫(kù):可以編寫數(shù)據(jù)服務(wù)層,并設(shè)計(jì)成接口;當(dāng)需要支持新的數(shù)據(jù)庫(kù)時(shí),只需要按新的數(shù)據(jù)庫(kù)的驅(qū)動(dòng)實(shí)現(xiàn)接口,其他模塊或業(yè)務(wù)上層代碼保持不變。

  5. 保持可選項(xiàng):

    1. 讓軟件盡可能長(zhǎng)時(shí)間地保留盡可能多的可選項(xiàng)。

    2. 所有的軟件系統(tǒng),可以分解為:策略和細(xì)節(jié);策略:軟件中的業(yè)務(wù)核心,它是系統(tǒng)真正價(jià)值所在;細(xì)節(jié):是指操作該系統(tǒng)的人,其他系統(tǒng)與策略進(jìn)行交互,但又不影響策略本身的行為。

    3. 軟件架構(gòu)師的目標(biāo):創(chuàng)建一種系統(tǒng)形態(tài),以策略為基本元素,并讓細(xì)節(jié)與策略脫離關(guān)系,允許在具體決策過程中,推遲或延遲與細(xì)節(jié)相關(guān)的內(nèi)容。

    4. 比如:在開發(fā)早期,開發(fā)高層策略時(shí),應(yīng)該無須選擇數(shù)據(jù)庫(kù)系統(tǒng),不用確定使用的web服務(wù),不用確定是否使用REST接口。就是說:軟件的高層,與這些東西沒有關(guān)系。

  6. 設(shè)備無關(guān):

    1. 不同硬件上都能直接部署,而且得到的結(jié)果是相同的。

    2. 這個(gè)原則,對(duì)軟件開發(fā)和部署非常重要。


參考書籍

  • 《架構(gòu)整潔之道》


該文章在 2023/3/6 16:34:17 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved