.NET企業架構設計
軟體的需求和質量
系統的最終目標有一系列需求描述,這些需求最終決定了系統的架構。需求又分為功能需求和非功能需求:
功能性需求是指系統需要做的事情,即系統需要為特定的任務和達到使用者的目的提供哪些功能。通常而言,一個功能包含輸入,行為和輸出。軟體需求必須“清晰,正確,避免二義,明確且可檢驗的”
非功能需求是指不屬於工方面的需求。一個常見的例子是使用(或不使用)某一特定版本的某框架,或是需要讓最終產品可以和指定的遺留系統配合使用。還有一些比如支援可訪問性,安全性,可靠性等。
一般而言,非功能需求表示對系統的一種限制,進而影響系統的質量。
架構師的職責:接收需求,拆分系統,確定並評估技術,編寫詳細說明書。
軟體的生命週期
軟體開發是一個用來處理複雜性,並保證程式得到預期結果的流程。軟體工程的目的是控制複雜性,而不是增加複雜性。為了達到這個目標,軟體專案的各個階段都需要用某種方法論來指導。
根據ISO/IEC 12207標準,軟體開發週期分為23個步驟,每個步驟包含一系列的活動和結果。步驟分為3種型別:主要步驟,支援型步驟和組織型步驟。如圖所示:
具體內容可以參考:ISO 12207
獲取(Acquisition)步驟包含引出需求,評估可用方法,協商和約定。
供應(Supply)是指供方提供系統,軟體產品或軟體服務的活動
開發(Development)步驟包括分析需求,設計系統,實現系統,測試與部署,這也成為了架構師大顯身手的地方。
運營(Operation)包括讓軟體可以在公司中使用,與現有系統整合,進行小規模試驗,及輔助使用者熟悉軟體等。
維護(Maintenance)步驟著眼於保持系統良好執行,包括修復Bug,提供新功能等。這其中有限活動也許也需要架構師的參與。
墨菲法則:
1. 為一個趕不上進度的軟體專案增加人手只能讓其更加落後於進度。
2. 程式的複雜性會一直增加,直到負責維護的程式設計師力不從心為止。
3. 若建築師按照程式設計師寫的程式那樣造房子,那麼史上出現的第一隻啄木鳥也許會毀掉整個文明。
相關文章
- .NET企業級系統架構設計架構
- 企業架構設計?架構
- MicrosoftNet企業級應用架構設計(中)ROS應用架構
- .NET應用架構設計—重新認識分層架構(現代企業級應用分層架構核心設計要素)應用架構
- 總結 - 設計模式,企業應用架構模式,架構模式設計模式應用架構
- 企業級大資料架構設計【2】大資料架構
- SOA架構實踐首先從企業級IT架構設計著手架構
- 企業架構 - 企業架構成熟度模型(EAMM)架構模型
- 如何搭建和設計企業組網的網路架構?架構
- .NET SAAS 架構與設計 -SqlSugar ORM架構SqlSugarORM
- 企業安全架構架構
- SOA實踐應先從企業級IT架構設計上著手架構
- 軟考論文之論企業整合架構設計及其應用架構
- Netty 原始碼分析系列(二)Netty 架構設計Netty原始碼架構
- 架構設計思想-微服務架構設計模式架構微服務設計模式
- 架構設計架構
- 幽默:企業技術架構 2.0架構
- 後現代企業架構 - hablutzel架構
- 企業低成本萬能架構架構
- 企業應用平臺架構架構
- 持續測試企業架構架構
- 企業架構思維導圖架構
- 遊戲架構 遊戲架構設計(8)遊戲架構
- 做SaaS的程式設計師們,是時候關注企業架構了程式設計師架構
- Spring Cloud Alibaba 多租戶 saas 設計的企業開發架構SpringCloud架構
- TOGAF企業架構與軟體架構的對應圖架構
- Netty-架構設計及入門程式-3Netty架構
- Nginx架構設計Nginx架構
- groupcache 架構設計PCA架構
- Tumblr 架構設計架構
- 架構與設計架構
- Kubernetes學習總結(2)——Kubernetes設計架構架構
- 企業網盤為企業搭建統一組織架構架構
- 架構設計之一——基礎架構架構
- 架構設計之架構的演變架構
- LAMMP架構的企業級應用架構
- 企業架構到底是什麼?架構
- 架構師修煉之道(二)——架構?設計?架構師?架構