如何才能寫出好的軟體設計文件?
這個問題簡單來說,至少涉及兩個問題:
其一,首要的是軟體需求,或說使用者需求;
其二,軟體的功能和應用的邏輯和實現上。
進一步講,
首先,在需求上,你要理解透徹,包括使用者的業務需求、功能需求和非功能需求等。最起碼的,你得滿足業務需求。即便功能操作麻煩或不夠人性化,至少你沒跑偏,有改進空間,或說復工成本會低很多。
其次,文件要有很好的表現形式,客戶能理解,程式設計師能參考實施。也就是說,基於需求核心,你用瀑布模式下的UML,還是敏捷下的使用者故事,要確保設計文件的無“二意性”,留下合理或適當的可擴充套件性,最終都能確認下來,然後開搞。
再次,軟體的使用者體驗設計,傳統一般都會包括在非功能性設計中。現代性設計中,主要是UI/UE設計。一個軟體的流行度,或是認可度,最終都在此或死或生。換句話說,你軟體面向的群體或使用者,喜不喜歡用,願不願意用,習慣不慣用,如果你願意,都可以用數字來衡量其‘’生長指數‘’的,指數高的產品或軟體,你不成功都沒天理了
最後,再嘮叨點,很多軟體的設計,你要考慮到背景和發現前景,那就要從架構層面進行階段性良好設計,比如分散式、負載均衡、服務顆粒度等。當然,結合業務,這涉及更多後端軟體和企業級架構了,諸如大資料(Hadoop系列)、人工智慧(各種機器學習框架、Python框架等)、雲計算(阿里、騰訊、亞馬遜和百度等)、以及各種分散式支援(Ngix,Redis,Dubbo...等)。這就需要更多篇幅來講了……
一個好的軟體設計包括很多方面,這裡只簡單的說了一部分。
當然,成為一個好的軟體設計人員,需要有很多要學習的……
慢慢積累吧:積跬步至千里,匯娟滴成江海!
說的不少了,就寫這些吧,讀者自鑑~
如何才能寫出好的軟體設計文件?
這個問題簡單來說,至少涉及兩個問題:
其一,首要的是軟體需求,或說使用者需求;
其二,軟體的功能和應用的邏輯和實現上。
進一步講,
首先,在需求上,你要理解透徹,包括使用者的業務需求、功能需求和非功能需求等。最起碼的,你得滿足業務需求。即便功能操作麻煩或不夠人性化,至少你沒跑偏,有改進空間,或說復工成本會低很多。
其次,文件要有很好的表現形式,客戶能理解,程式設計師能參考實施。也就是說,基於需求核心,你用瀑布模式下的UML,還是敏捷下的使用者故事,要確保設計文件的無“二意性”,留下合理或適當的可擴充套件性,最終都能確認下來,然後開搞。
再次,軟體的使用者體驗設計,傳統一般都會包括在非功能性設計中。現代性設計中,主要是UI/UE設計。一個軟體的流行度,或是認可度,最終都在此或死或生。換句話說,你軟體面向的群體或使用者,喜不喜歡用,願不願意用,習慣不慣用,如果你願意,都可以用數字來衡量其‘’生長指數‘’的,指數高的產品或軟體,你不成功都沒天理了
最後,再嘮叨點,很多軟體的設計,你要考慮到背景和發現前景,那就要從架構層面進行階段性良好設計,比如分散式、負載均衡、服務顆粒度等。當然,結合業務,這涉及更多後端軟體和企業級架構了,諸如大資料(Hadoop系列)、人工智慧(各種機器學習框架、Python框架等)、雲計算(阿里、騰訊、亞馬遜和百度等)、以及各種分散式支援(Ngix,Redis,Dubbo...等)。這就需要更多篇幅來講了……
一個好的軟體設計包括很多方面,這裡只簡單的說了一部分。
當然,成為一個好的軟體設計人員,需要有很多要學習的……
慢慢積累吧:積跬步至千里,匯娟滴成江海!
說的不少了,就寫這些吧,讀者自鑑~