成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

開發(fā)一個業(yè)務(wù)邏輯復(fù)雜的系統(tǒng),應(yīng)該怎么樣設(shè)計才能使項目的擴展性更好?

NervosNetwork / 1572人閱讀

摘要:看到一篇好文章,收藏一下我在知乎關(guān)于開發(fā)一個業(yè)務(wù)邏輯復(fù)雜的系統(tǒng),應(yīng)該怎么樣設(shè)計才能使項目的擴展性更好做的回答。一個標準的工作流程包括業(yè)務(wù)建模,需求分析,分析設(shè)計,實施開發(fā),測試,部署,配置和變更管理,項目管理,環(huán)境。

  

看到一篇好文章,收藏一下

我在知乎關(guān)于《開發(fā)一個業(yè)務(wù)邏輯復(fù)雜的系統(tǒng),應(yīng)該怎么樣設(shè)計才能使項目的擴展性更好?》做的回答。

既然業(yè)務(wù)邏輯復(fù)雜,那意味著項目前期的業(yè)務(wù)建模、需求分析、分析設(shè)計極為重要,直接拋開這幾個階段進入技術(shù)實施開發(fā)階段,不管套用什么設(shè)計模式、架構(gòu)模式,系統(tǒng)的擴展性肯定難以保證。

項目的擴展性雖然最終體現(xiàn)為系統(tǒng)架構(gòu)、技術(shù)實現(xiàn)的擴展性,但系統(tǒng)擴展性的根源在于系統(tǒng)業(yè)務(wù)架構(gòu)及業(yè)務(wù)模型的擴展性。大家經(jīng)常罵xx系統(tǒng)爛、擴展性差,大都將原因歸結(jié)為技術(shù)實現(xiàn)爛,但總結(jié)那些成功的大型項目或產(chǎn)品的最佳實踐,原因都會有:某某是業(yè)務(wù)專家,對xx業(yè)務(wù)很熟悉,能夠銜接業(yè)務(wù)與技術(shù)。因此一個好的項目角色中,應(yīng)該有行業(yè)專家/領(lǐng)域?qū)<?、業(yè)務(wù)過程分析師、系統(tǒng)分析師、軟件架構(gòu)師等角色,從業(yè)務(wù)架構(gòu)、信息架構(gòu)、技術(shù)架構(gòu)保證系統(tǒng)的擴展性。

具體怎樣進行業(yè)務(wù)建模,搭建良好的業(yè)務(wù)架構(gòu)和業(yè)務(wù)模型,從而為技術(shù)架構(gòu)、信息架構(gòu)、技術(shù)實現(xiàn)奠定良好基礎(chǔ),有一些較為成熟的軟件開發(fā)過程可供參考。例如 RUP(Rational Unified Process,統(tǒng)一軟件開發(fā)過程)。一個標準的RUP工作流程包括:業(yè)務(wù)建模,需求分析,分析設(shè)計,實施開發(fā),測試,部署,配置和變更管理,項目管理,環(huán)境。當然RUP只是一個方法論,且過于龐大,大部分項目很難完整執(zhí)行其過程,需要根據(jù)實際情況進行裁剪,但其方法論對于復(fù)雜業(yè)務(wù)邏輯系統(tǒng)的建設(shè)具有指導(dǎo)意義。像互聯(lián)網(wǎng)產(chǎn)品設(shè)計中常用的用例分析技術(shù)就源于RUP。

因此對于題主描述的一個復(fù)雜系統(tǒng),標準的過程應(yīng)當在業(yè)務(wù)建模,需求分析,分析設(shè)計,實施開發(fā),測試,部署完整過程的分析設(shè)計(與開發(fā)語言無關(guān))或?qū)嵤╅_發(fā)(分析設(shè)計的成果映射為具體語言,例如Java、.NET等)階段才考慮設(shè)計模式、架構(gòu)模式的引入。設(shè)計模式的使用會經(jīng)歷僵化->固化->優(yōu)化的階段,類似禪修中“看山是山、看水是水”的三個階段,才能體會模式的運用之妙。

值得強調(diào)的是:如果是偏交易(例如支付、金融)的系統(tǒng),在考慮擴展性時候,一定要將信息架構(gòu)、信息模型的擴展性納入到考慮范圍,此類系統(tǒng)數(shù)據(jù)模型至關(guān)重要,也不可能頻繁變動。

上面描述方法的特別適用與傳統(tǒng)軟件、系統(tǒng)集成等需求偏穩(wěn)定的項目,對于互聯(lián)網(wǎng)偏創(chuàng)新性的項目就不一定完全適用了,此類項目的現(xiàn)實情況如下:業(yè)務(wù)模式不確定,會不停試錯,驗證模式;需求不停變化,要求能夠快速響應(yīng);全新的行業(yè),沒有行業(yè)專家,沒有行業(yè)標桿可借鑒(至多有跨界標桿可參考);此時候,類似精益創(chuàng)業(yè)、Scrum之類的敏捷開發(fā)模式更適合,但對于復(fù)雜的業(yè)務(wù)而言,業(yè)務(wù)建模->需求分析->分析設(shè)計的理念仍然值得參考借鑒。

最后,最最重要的是:完美系統(tǒng)的架構(gòu)和擴展性是管理出來的、持續(xù)重構(gòu)出來的。正如各大城市馬路不停翻了再修、修了再翻的命運一樣,中國大部分公司后任會不停否定掉前任的架構(gòu)、系統(tǒng),推倒再來一遍,然后等新系統(tǒng)剛開發(fā)出來不久,尚未上線或上線運營一段時間后,再換一幫人繼續(xù)折騰,然后。。。

總結(jié)這么多年的經(jīng)歷,深刻體會到:再爛的系統(tǒng)和架構(gòu),如果能夠強化管理、持續(xù)積累、持續(xù)重構(gòu)、持續(xù)完善,都能夠有機會成為完美的系統(tǒng),完美的系統(tǒng)不在于其架構(gòu)的牛逼和完美,而在于:符合公司的業(yè)務(wù)模式,能夠完美支撐公司業(yè)務(wù)的高速發(fā)展和市場需求的快速響應(yīng)。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/11704.html

相關(guān)文章

  • 架構(gòu)師如何應(yīng)對復(fù)雜業(yè)務(wù)場景?領(lǐng)域建模實戰(zhàn)案例解析

    摘要:而只需要調(diào)用對象完成業(yè)務(wù)邏輯即可。領(lǐng)域建模的好處面向?qū)ο蠓庋b的相關(guān)操作都封裝在上,提高了內(nèi)聚性和可重用性。對于這樣簡單的場景,這個建模就差不多了。這就是模型的統(tǒng)一。其功能性及說明性急速增強,而復(fù)雜性卻隨之消失。 showImg(https://segmentfault.com/img/bV62vN?w=677&h=393); 你還在用面向?qū)ο蟮恼Z言寫面向過程的代碼嗎?你是否正在被復(fù)雜的...

    yexiaobai 評論0 收藏0
  • 架構(gòu)師如何應(yīng)對復(fù)雜業(yè)務(wù)場景?領(lǐng)域建模實戰(zhàn)案例解析

    摘要:而只需要調(diào)用對象完成業(yè)務(wù)邏輯即可。領(lǐng)域建模的好處面向?qū)ο蠓庋b的相關(guān)操作都封裝在上,提高了內(nèi)聚性和可重用性。對于這樣簡單的場景,這個建模就差不多了。這就是模型的統(tǒng)一。其功能性及說明性急速增強,而復(fù)雜性卻隨之消失。 showImg(https://segmentfault.com/img/bV62vN?w=677&h=393); 云棲君導(dǎo)讀:你還在用面向?qū)ο蟮恼Z言寫面向過程的代碼嗎?你是否...

    ad6623 評論0 收藏0
  • 移動端開發(fā):架構(gòu)那點事!

    摘要:移動精英開發(fā)社群的第期,也是圍繞架構(gòu)這個話題進行討論。本次我們希望結(jié)合實際開發(fā)中遇到的問題,來聊聊移動端的架構(gòu)設(shè)計。這樣的模式改進一些,可能會更適合移動端架構(gòu)。潘衛(wèi)杰之前我們公司移動端的大項目就是插座式開發(fā)的,批量出各個行業(yè)的。 此前,58 同城的技術(shù)委員會執(zhí)行主席沈劍在 OneAPM 的技術(shù)公開課上分享過一個主題,「好的架構(gòu)不是設(shè)計出來的,而是演技出來的」。因為對很多創(chuàng)業(yè)公司而言,隨...

    KnewOne 評論0 收藏0
  • 基于DevOps、微服務(wù)以及k8s高可用架構(gòu)探索與實現(xiàn)

    摘要:前言本文給大家分享的題目是基于微服務(wù)以及的高可用架構(gòu)探索與實現(xiàn)。比如說年大地震的時候我正好在東京,當時在做一個金融系統(tǒng)的相關(guān)工作。那次大地震導(dǎo)致很多很多的問題,雖然大地震不是在東京發(fā)生,但是還是給我們的系統(tǒng)造成了影響。 前言 本文給大家分享的題目是《基于DevOps、微服務(wù)以及K8S的高可用架構(gòu)探索與實現(xiàn)》。整個企業(yè)的高可用架構(gòu)面臨很多的挑戰(zhàn),面向微服務(wù)、容器化以及敏態(tài)交付,是我們現(xiàn)在...

    cnio 評論0 收藏0
  • 微服務(wù)架構(gòu):如何用十步解耦你系統(tǒng)?

    摘要:導(dǎo)言耦合性,是對模塊間關(guān)聯(lián)程度的度量。模塊間的耦合度是指模塊之間的依賴關(guān)系,包括控制關(guān)系調(diào)用關(guān)系數(shù)據(jù)傳遞關(guān)系。 導(dǎo)言: 耦合性,是對模塊間關(guān)聯(lián)程度的度量。耦合的強弱取決于模塊間接口的復(fù)雜性、調(diào)用模塊的方式以及通過界面?zhèn)魉蛿?shù)據(jù)的多少。模塊間的耦合度是指模塊之間的依賴關(guān)系,包括控制關(guān)系、調(diào)用關(guān)系、數(shù)據(jù)傳遞關(guān)系。模塊間聯(lián)系越多,其耦合性越強,同時表明其獨立性越差。軟件設(shè)計中通常用耦合度和內(nèi)聚...

    willin 評論0 收藏0

發(fā)表評論

0條評論

NervosNetwork

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<