備案號:遼ICP備19007957號-1
聆聽您的聲音:feedback@highmark.com.cn企業熱線:400-778-8318
Copyright ?2015- 海馬課堂網絡科技(大連)有限公司辦公地址:遼寧省大連市高新技術產業園區火炬路32A號創業大廈A座18層1801室
在沒有計劃的情況下,你不會想要做一個項目,軟件架構設計也不例外。通過使這個過程更有效,你可以妥善考慮所有需求,并讓利益相關者有機會提供他們的意見。通過使用技術視覺和謹慎的規劃過程,你可以在開始原型之前勾勒出你的軟件架構和設計。下面,我們闡述了墨爾本大學留學生設計軟件架構的5個步驟。

軟件架構設計利用編程知識來規劃軟件的高層設計,以便稍后添加細節,使軟件團隊能夠勾勒出整體情況并開始準備原型。
通過遵循軟件架構設計的技巧和最佳實踐,軟件開發人員可以思考他們的軟件特性,并確定如何設計軟件架構。
1.清楚地了解你的需求
你開始的每一個設計都會有功能性和非功能性需求。這些需求指導你的軟件架構,并允許你完成項目,使利益相關者滿意。
如果從一開始就沒有清楚地理解這些需求,你的團隊就有可能迷失方向,強調錯誤的需求而忽略其他需求,或者使用過多的內部資源。
通過視覺方式獲得更好的理解——按照以下步驟在智能圖表平臺上繪制出你的需求:
從高層次出發:首先以“直升機視角”勾勒出你的需求。思維導圖是做這件事的有效方式。
繪制你的功能性需求:你可以使用動詞來幫助你將名詞聚集在一起。例如,“查看”和“編輯”這樣的動詞可以將“賬戶”或“個人資料”連接到功能區域的思維導圖中。
考慮非功能性需求:在制作思維導圖時,你可以記下非功能性需求以備后用。像“性能”這樣的需求很重要,但可能太抽象了,無法放在思維導圖上。
你的需求應該用來塑造你的工作范圍并規劃你的項目。
2.開始思考每個組件
面對現實吧——你的功能需求對項目的強大影響,一旦你繪制了需求地圖,你的設計和技術選擇可能已經決定了。
在過早考慮實現方式之前,你需要找出哪些需求對你的設計或項目計劃構成重大挑戰。在某些假設或選擇下,一些需求實際上可能是不可能的。
從一個“完美的世界”開始:如果你能完美地創建它,你的設計會是什么樣子?
考慮并記錄你的需求的影響:與你的團隊開始一個工作草稿,并逐漸發展它。首先,你需要看看你的需求對你的設計意味著什么——例如,你的利益相關者愿望清單中的個別項目可能互相矛盾,或者與其他功能和非功能性需求沖突。
稍后再設計最終架構:很可能在這個過程中,你的架構規劃會發生變化,所以不要期望第一稿就像最終結果一樣。
3.將架構劃分為多個部分
自然地,隨著你決定如何實現你的設計,你的架構設計會進入規劃階段。將你的架構劃分為片段可以幫助你以一種能夠為用戶提供價值并適當規劃你的開發資源的方式制定這個計劃。
想象一下切蛋糕。大多數人是垂直切割蛋糕,穿過每一層。假設一整塊蛋糕有糖霜、餡料,以及兩到三層海綿蛋糕。垂直切片包含了一切。蛋糕也可以水平切割,分開各個層次。
同樣,如果每個片段都是用來規劃你的軟件架構的故事,那么就有了層次——垂直切割蛋糕會創建圍繞個別特性的故事,而水平切割則會顯示單個組件。你的項目需要水平和垂直思維。
敏捷專注于垂直切片,讓你的團隊能夠快速提供價值。這種方法可以讓客戶迅速了解產品進展,并讓開發團隊對每個特性背后的每一層都有反饋。一個垂直切片的軟件架構示例是電子商務網站的結賬流程。
在你的“結賬”垂直蛋糕切片中,你可以看到存儲結賬信息的數據層,中間層 API,以及購物者看到的頂層用戶界面。通過垂直切片,你可以決定要提供哪些功能,并選擇迭代的部分。
通過繪制你的軟件架構項目涉及的層次,你可以可視化整個項目以及每個層次如何影響其他層次。在規劃過程中,拿出個別的敏捷蛋糕片段,并繪制它們之間的連接。
4.原型
始終創建原型。原型允許您快速失敗并早期失敗——提供快速反饋,讓您發現您的概念驗證。這是驗證您的工作并檢查您的假設以確保它們有效和徹底的重要部分。
在創建原型時,請記住,最初的幾個迭代永遠不會完美,而最終的迭代也不會完全完美。原型的優勢之一是它不會被設定為成品,大多數人本能地進入原型過程中至少期望有些粗糙的地方。
充分利用原型階段。這并不能取代測試,但卻是您需要進行的測試的關鍵部分。
保持仔細的修訂記錄:當然,如果您不記錄從原型中學到的東西,那么您就有重復錯誤的風險。寫下所有內容——徹底記錄您的設計決策以及您沿途所做的更改。
確保單一真相來源:您不希望多個更改和不同版本讓您的進度受阻,因此建立一個專注于文檔的單一來源的強大版本控制。
繪制原型圖:您可以使用圖表來幫助您管理原型的變化并可視化每個版本之間的差異。
5.確定和量化非功能性需求
除了功能性需求之外,您還將考慮非功能性需求。這些需求與功能性需求一樣重要,因為它們定義了系統的特性。
非功能性需求通常是整個項目的高級質量需求,但并非總是如此。您的系統可能有非功能性需求,這些需求僅適用于軟件架構的一部分。因此,您必須準備好將利益相關者納入本地非功能性需求。例如,項目的特定垂直切片可能尤其引起客戶服務團隊的興趣,該團隊可能對這些非功能性需求有自己的期望。
然而,僅僅說您想要性能、可移植性或可擴展性是不夠的。非功能性需求還必須量化。沒有項目可以擁有絕對完美的性能:為了滿足其他需求,必須明確規定和限制“性能”。
由于您的非功能性需求在塑造您的設計方面發揮作用,您不能避免定義它們。以下是您可能要考慮的其他要求:
性能:您的整個系統以及單個切片或層的性能如何。
可擴展性:與您的需求一起,您的系統以及您的需求未來擴展的潛力如何。
可移植性:您的數據可移植性以及您的系統組件的潛在可移植性,如果適用或必要。
可擴展性:考慮到您的系統和公司未來的增長,您的系統如何適應以及適應所需的工作量。
合規性:另一個重要因素——并且對您的整體項目設計產生重大影響。
繪制您的非功能性需求圖可以幫助您的團隊了解您如何量化它們,同時將特定需求放置在相關的上下文中。盡管您現在不必擔心優化一切,但您確實需要考慮以后優化這些非功能性需求可能需要的工作量和資源。
海馬課堂留學生作業輔導
1.根據學生的輔導需求匹配背景相符的專業老師。
2.老師根據學生情況,1V1個性化備課,雙語教學,實時輔導。
3.講解相關知識點和解題思路,提供大型作業任務的解決方案,輔導計算機編程語言操作,教授學生高效完成PPT和演講稿。
閱讀原文:http://www.fuguojinrong.com/news/19275_62.html
版權作品,未經海馬課堂 highmarktutor.com 書面授權,嚴禁轉載,違者將被追究法律責任。
備案號:遼ICP備19007957號-1
聆聽您的聲音:feedback@highmark.com.cn企業熱線:400-778-8318
Copyright ?2015- 海馬課堂網絡科技(大連)有限公司辦公地址:遼寧省大連市高新技術產業園區火炬路32A號創業大廈A座18層1801室
hmkt088
露脸短发熟女人妻91| 亚洲色图成人动漫| C级无码| 日韩午夜一级| a视频天堂| 日夜夜噜噜| 日日夜夜毛片| 性爱大香蕉视频| 嗯啊舒服在线观看| 操逼八区| 呦呦导航二区| 日本口爆综合九九九| 丰满少妇啪啪插| 亚洲性网站xxx| 人妻区区区| 噜噜噜噜AV导航| free性开放小少妇| 四虎最新永久免费| WWW、天堂AV| 日韩一级黄色性爱| 一本道大香焦视频| 国产拳头av| 日韩图片无码av电影| 騒妇免费区| 亚洲无码久久久久7777| 色迷聚合在线| 91久久国产露脸精| 欧美人妻人人| 日本黄色一级无码网站| 国产精品9991区二区三区| 五月天色色www| 青青青娱琪琪琪琪| 我去色色网五月天| 亚洲a淫荡| 免费人妻乱一区| 91丨九色丨国产在线| 亚洲图片欧美在线影院| ay71.com| 国产中老年性爱视频在线观看| 大草莓视频干逼| 日A三级黄A片| 成色91| 久久一二三国产| 大屁股家政妇福利导航| 人兽搞,未成年发布| 国产成人91性爱视频网站| 一道本中文字幕手机在线| BBW欧美在线| 日韩有码久久免费激情片| 超碰超碰超人妻| 嘿嘿日综合网站| 日本黄色三级网站| 中国老熟妇HD| 中文字幕av在线路| 在线观看黄片网站| 97爽无码人妻AⅤ精品牛牛| 绯色Av一区| 激情人妻干| 久久人人夾| 91激情性爱| www.xxx.喷潮| 女同无码| 日日干夜夜骑| 97色色无码| 人人操97超碰| 日韩黄色在线观看图片大全| 三级黄色录像毛片| 黄色av99导航| 欧美黑人大战白人操逼视频| 亚洲无码视频小说| 后入丰满人妻| 久超碰草莓| 先锋天堂人妻| 黄色片又大又粗| 呦呦色免费视频网站| 一本大道东京热无码| 国产精品理论大宝| 日韩无码人妻天天操| 少妇无码丰满熟妞一区二同男| 伊人激情四射| 九月丁香| 人妻 熟女 少妇| 少妇 人妻 骚货| 亚洲熟妇女同一区| 伊人妻| 丁香五月综合蕉| 丁香五月婷婷啪啪啪| 东京热加勒比AV|