軟體架構設計的思想與模式

2023-01-18 17:45:03 字數 980 閱讀 1685

事實上架構設計是不可能獨立存在的,架構設計提供的是使用者需求的解決方案,所以一

個架構師對需求分析的要點和關注點需要有深刻的理解,否則是不可能有好的架構設計的。什麼是需求呢?產品為使用者在特定的背景中所必須滿足的約束就是產品的需求,需求的表達

一般是抽象的而且與技術無關的,這樣主要是避免對技術方案產生影響

軟體的質量問題往往表現為缺陷(bug),軟體缺陷的產生主要有兩個原因:軟體產品的

特點和開發過程。例如:

需求不夠明確,開發人員不太了解需求,不知道應該「做什麼」和「不做什麼」,常常

做不合需求的事情,這方面的問題最多。

由於競爭激烈,過早使用新技術也容易產生問題。

有的企業為了在時間上取勝,認為實現很新、很酷的功能比質量更重要,因此時間上安

排很緊,分析和設計的投入遠遠不夠,測試也不到位,這是產生軟體錯誤的主要原因之一。

除此以外,設計文件不清楚,文件本身就存在錯誤,溝通上存在問題,專案管理水平差,

都可能導致問題。

概括起來可以有七項原因:

專案期限的壓力。

產品的複雜度。

開發人員的疲勞、壓力或者受到干擾。

缺乏足夠的知識、技能和經驗。

不可解客戶的需求。

缺乏動力。

按出現問題的排位看,第二位是設計,第三位是編碼。如果從軟體開發各個階段造成缺陷的分布來看,編碼以後階段的錯誤也要比前兩個階段少。正是對這個問題的理解,作為架構設計人員來說,有必要對需求分析的思想和方法有透徹的理解。

如果還不太清楚要構建什麼產品就開始構建了,那專案出現問題幾乎是確定無疑的事情,但是,這並不等於需要完全理解需求以後才可以構建,也不意味著所有的需求都要寫成書面的形式,而是意味著只有注意需求,才可能向使用者提交有用和可用的產品。

需求的表達常常是抽象的,以一種與技術無關的方式表達,這樣做的目的是為了避免解決方案對技術產生影響,需求是對業務方面的說明,而不能有任何技術實現上的偏好,產品設計的角色是把需求翻譯成乙個計畫,按這個計畫就可以構建出乙個實體。

銷售管理系統軟體架構設計

一 系統功能模組 1.管理員資訊功能模組需求 可以新增新的使用者及密碼,也可以更改當前使用者密碼,並對不同的使用者設定不同的許可權。2.客戶資訊模組功能需求 可以新增新客戶的各種資訊,也可以進行刪除 修改和查詢 3.商品資訊模組功能需求 可以先進行大類,中類,小類的類別增刪查改,能夠新增新商品,最新...

微服務架構設計與最佳實踐

培訓班的通知 一 培訓收益 系統全面地了解和學習微服務架構的設計 雲計算與大資料基礎平台及原生雲應用開發方法等。通過此次課程培訓,可使學習者獲得如下收益 1.學習掌握微服務架構的概念與本質 2.使用springboot springcloud構建活動報名系統 3.使用netflixoss構建微服務支...

架構設計 生產者消費者模式

0 概述 今天打算來介紹一下 生產者 消費者模式 這玩意兒在很多開發領域都能派上用場。由於該模式很重要,打算分幾個帖子來介紹。今天這個帖子先來掃盲一把。如果你對這個模式已經比較了解,請跳過本掃盲帖,直接看下乙個帖子 關於該模式的具體應用 看到這裡,可能有同學心中犯嘀咕了 在四人幫 gof 的23種模...