《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > AWorks的哲學(xué)思想

AWorks的哲學(xué)思想

2018-05-14

  一,、思維差異

  蘋果之所以成為全球最賺錢的公司,關(guān)鍵在于產(chǎn)品的性能超越了用戶的預(yù)期,且因?yàn)榇罅靠芍赜玫?a class="innerlink" href="http://wldgj.com/tags/核心領(lǐng)域知識(shí)" title="核心領(lǐng)域知識(shí)" target="_blank">核心領(lǐng)域知識(shí),綜合成本做到了極致。Yourdon和Constantine在《結(jié)構(gòu)化設(shè)計(jì)》一書中,,將經(jīng)濟(jì)學(xué)作為軟件設(shè)計(jì)的底層驅(qū)動(dòng)力,軟件設(shè)計(jì)應(yīng)該致力于降低整體成本。人們發(fā)現(xiàn)軟件的維護(hù)成本遠(yuǎn)遠(yuǎn)高于它的初始成本,,因?yàn)槔斫猬F(xiàn)有代碼需要花費(fèi)時(shí)間,,而且容易出錯(cuò)。同時(shí)改動(dòng)之后,,還要進(jìn)行測(cè)試和部署,。由于缺乏科學(xué)的軟件工程方法,不僅軟件難以重用,,而且擴(kuò)展和維護(hù)難度很大,,從而導(dǎo)致開發(fā)成本居高不下。

  更多的時(shí)候,,程序員不是在編碼,,而是在閱讀程序。由于閱讀程序需要從細(xì)節(jié)和概念上理解,,因此修改程序的投入會(huì)遠(yuǎn)遠(yuǎn)大于最初編程的投入,。基于這樣的共識(shí),,讓我們操心的一系列事情,,需要不斷地思考和總結(jié)使之可以重用,這就是方法論的源起,。

  通過財(cái)務(wù)數(shù)據(jù)分析,,由于早期決策失誤和缺乏科學(xué)的軟件工程方法,我們開發(fā)了一些周期長(zhǎng),、技術(shù)難度大且回報(bào)率極低的產(chǎn)品,,不僅軟件難以重用,而且擴(kuò)展和維護(hù)難度很大,,從而導(dǎo)致開發(fā)成本居高不下,。

  由此可見,從軟件開發(fā)來看,,軟件工程與計(jì)算機(jī)科學(xué)是完全不同的兩個(gè)領(lǐng)域的知識(shí),,其主要區(qū)別在于人,因?yàn)檐浖_發(fā)是以人為中心的過程,。如果考慮人的因素,,軟件工程更接近經(jīng)濟(jì)學(xué),而非計(jì)算機(jī)科學(xué),。顯然,,如果我們不改變思維方式,則很難開發(fā)出既好賣且成本低的產(chǎn)品,。

  二,、利潤(rùn)模型

  產(chǎn)品的BOM成本很低,而毛利又很高,,為何很多上市公司的年利潤(rùn)卻買不起一套房,?房子到底被誰(shuí)買走了,,這個(gè)問題值得我們反思!

  偉大企業(yè)除了愿景,、使命和價(jià)值觀之外,,其核心指標(biāo)就是利潤(rùn),,作為開發(fā)人員一個(gè)最大的痛苦就是很難精準(zhǔn)地開發(fā)好賣的產(chǎn)品,。因?yàn)楹芏嗥髽I(yè)普遍都不知道利潤(rùn)是如何來的?所以有必要建立一個(gè)利潤(rùn)模型,,即“利潤(rùn)=需求-設(shè)計(jì)”,。需求是致力于解決“產(chǎn)品如何好賣”的問題,設(shè)計(jì)是致力于解決“如何降低成本”的問題,。

  代碼的優(yōu)劣不僅直接決定了軟件的質(zhì)量,,還將直接影響軟件成本。軟件成本是由開發(fā)成本和維護(hù)成本組成的,,而維護(hù)成本卻遠(yuǎn)高于開發(fā)成本,,蠻力開發(fā)的現(xiàn)象比比皆是,大量來之不易的資金被無聲無息地吞沒,,整個(gè)社會(huì)的資源浪費(fèi)嚴(yán)重,。

  為何不將復(fù)雜的技術(shù)高度抽象呢?如果實(shí)現(xiàn)就能做到讓專業(yè)的人做專業(yè)的事,,AWorks就是在這樣的背景下誕生的,。由于其中融入了更多的軟件工程技術(shù)方法,因此就能做到將程序員徹底從非核心域中釋放出來聚焦于核心競(jìng)爭(zhēng)力,。

  三,、核心域和非核心域

  其實(shí)一個(gè)軟件系統(tǒng)封裝了若干領(lǐng)域的知識(shí),其中一個(gè)領(lǐng)域知識(shí)代表了系統(tǒng)的核心競(jìng)爭(zhēng)

  力,,這個(gè)領(lǐng)域被稱為“核心域”,,其它領(lǐng)域稱為“非核心域”。雖然更通俗的說法是“業(yè)務(wù)”和“技術(shù)”,,但使用“核心域”和“非核心域”更嚴(yán)謹(jǐn),。

  非核心域就是別人的領(lǐng)域,比如,,底層驅(qū)動(dòng),、操作系統(tǒng)和組件,即便你有一些優(yōu)勢(shì),,那

  也是暫時(shí)的,,競(jìng)爭(zhēng)對(duì)手也能通過其它渠道獲得。雖然非核心域的改進(jìn)是必要的,,但不充分,,還是要在核心域上深入挖掘,,讓競(jìng)爭(zhēng)對(duì)手無法輕易從第三方獲得。因?yàn)樵诤诵挠蛏仙钊胪诰?,達(dá)到基于核心域的復(fù)用,,這是獲得和保持競(jìng)爭(zhēng)力的根本手段。

  要達(dá)到基于核心域的復(fù)用,,有必要將核心域和非核心域分開考慮,。因?yàn)檫^早地將各個(gè)領(lǐng)

  域的知識(shí)混雜,會(huì)增加不必要的負(fù)擔(dān),,從而導(dǎo)致開發(fā)人員騰不出腦力思考核心域中更深刻的問題,。由于待解決的問題的規(guī)模一旦變大,而人腦的容量和運(yùn)算能力有限,,因此必須分而治之,,因?yàn)楹诵挠蚺c非核心域的知識(shí)都是獨(dú)立的。

  四,、共性與差異性

  如果沒有ARM公司的IP授權(quán)模式,,則在設(shè)計(jì)MCU時(shí)勢(shì)必消耗大量來之不易的財(cái)富。雖然ARM公司的規(guī)模相對(duì)來說不大,,但毫不影響ARM成為一個(gè)偉大的企業(yè),,其為人類做出的貢獻(xiàn)是有目共睹的。

  盡管如此,,沒有軟件的支持,,那么硬件就是一坨廢鐵。由于需求五花八門,,盡管人們也做出了巨大的努力,,期望最大限度地降低開發(fā)成本,似乎人們期望實(shí)現(xiàn)美好的心愿遙遙無期,,無法做到高度地重用人類通過艱苦努力積累的知識(shí),。由于商業(yè)利益的驅(qū)使,偉大企業(yè)的不偉大之處,,企圖將客戶綁在他們的戰(zhàn)車上,,讓競(jìng)爭(zhēng)對(duì)手絕望,大凡成功的企業(yè)無不如此,。

  有沒有破解的辦法呢,?那就是“共性與差異性分析”抽象工具。實(shí)際上,,不管是基于何種內(nèi)核的MCU,,也不管是哪家公司的OS,其設(shè)計(jì)原理是一樣,只是實(shí)現(xiàn)方法和實(shí)體(硬件和程序)不一樣,,但只要將其共性抽象為統(tǒng)一接口,,差異性用特殊的接口應(yīng)對(duì)即可。

  基于此,,我們不妨做一個(gè)大膽的假設(shè),。雖然PCF85063、RX8025T和DS1302來自不同的半導(dǎo)體的公司,,但其共性都是RTC實(shí)時(shí)日歷時(shí)鐘芯片,,即可高度抽象共用相同的驅(qū)動(dòng)接口,其差異性用特殊的驅(qū)動(dòng)接口應(yīng)對(duì),。雖然FreeRTOS或μC/OS-II或sysBIOS,、Linux,、Windows各不相同,,但它們都是OS,多線程,、信號(hào)量,、消息、郵箱,、隊(duì)列等是其特有的共性,,顯然QT和emWin同樣可以高度抽象為GUI框架。也就是說,,不管什么MCU,,也不管是否使用操作系統(tǒng),只要修改相應(yīng)的頭文件,,即可復(fù)用應(yīng)用代碼,。

  由此可見,無論選擇何種MCU和OS,,只要AWorks支持它,,就可以在目標(biāo)板上實(shí)現(xiàn)跨平臺(tái)運(yùn)行。因?yàn)闊o論何種OS,,它只是AWorks的一個(gè)組件,,針對(duì)不同的OS,AWorks都會(huì)提供相應(yīng)的適配器,,那么所有的組件都可以根據(jù)需要互換,。

  由于AWorks制定了統(tǒng)一的接口規(guī)范,并對(duì)各種MCU內(nèi)置的功能部件與外圍器件進(jìn)行了高度的抽象,,因此無論你選用的是ARM還是DSP,,以高度復(fù)用的軟件設(shè)計(jì)原則和只針對(duì)接口編程的思想為前提,則應(yīng)用軟件均可實(shí)現(xiàn)“一次編程、終生使用,、跨平臺(tái)”,,顯然AWorks給你帶來的最大價(jià)值就是不需要重新發(fā)明輪子。

  五. 生態(tài)系統(tǒng)

  如果僅有OS和應(yīng)用軟件框架就構(gòu)成了生態(tài)系統(tǒng),,這是遠(yuǎn)遠(yuǎn)不夠的,。在萬(wàn)物互聯(lián)的時(shí)代,一個(gè)完整的IoT系統(tǒng)還包括傳感器,、信號(hào)調(diào)理電路,、算法和接入云端的技術(shù),可以說異常復(fù)雜包羅萬(wàn)象,,這不是一個(gè)公司拿到需求就可以在幾個(gè)月之內(nèi)完成的,,需要長(zhǎng)時(shí)間的大量積累。

  ZLG在成立之初就做了長(zhǎng)期的布局,,我們并沒有將自己定位于芯片代理或設(shè)計(jì),,也沒有將自己定位于儀器制造,更沒有將自己定位于方案供應(yīng)商,,但隨著時(shí)間的推移和時(shí)代的發(fā)展,,經(jīng)過艱苦的努力自然而然地成為“工業(yè)互聯(lián)網(wǎng)生態(tài)系統(tǒng)”領(lǐng)導(dǎo)品牌。這不是刻意而為的,,而是通過長(zhǎng)期的奮斗順理成章的結(jié)果,。

  ZLG通過“芯片+AWorks”設(shè)計(jì)了高附加值的模塊、板卡和高端測(cè)量?jī)x器,,通過有線和無線通信接口接入ZWS(ZLG Web Services) IoT云端處理系統(tǒng),,,實(shí)現(xiàn)大數(shù)據(jù)處理,構(gòu)成工業(yè)互聯(lián)網(wǎng)生態(tài)系統(tǒng),。

  其商業(yè)模式既可以銷售硬件,,也可以銷售平臺(tái),還可以針對(duì)某個(gè)有針對(duì)性的行業(yè)提供系統(tǒng)服務(wù)于終端用戶,。與此同時(shí)ZLG將在全國(guó)50所大學(xué)建立工業(yè)互聯(lián)網(wǎng)生態(tài)系統(tǒng)聯(lián)合實(shí)驗(yàn)室,,通過產(chǎn)學(xué)研的模式培養(yǎng)人才服務(wù)于工業(yè)界,還可以通過天使投資打造ZLG系,,幫助更多的人取得更大的成功,,推動(dòng)“中國(guó)智造2025”計(jì)劃的高速發(fā)展。

  五. 專家與通才

  任何一個(gè)組織和系統(tǒng)的成功都離不開專家和通才的鼎力配合與奮斗,,這12年一路走來很不容易,,但欣慰的是AWorks生態(tài)系統(tǒng)的開發(fā),培養(yǎng)了一些專家和核心骨干人才,。我深深地體會(huì)到卓越人才的價(jià)值,,怎么形容都不為過,,所以今后我的主要工作就是尋找和發(fā)現(xiàn)卓越人才,為他們提供一個(gè)衣食無憂的,,可以靜下心創(chuàng)新的平臺(tái),,大家共同努力改變這世界某一小部分,歡迎自我推薦或讀者向我推薦有理想有抱負(fù)的人才,。如果你有心,,你一定能找到我。

  六,、叢書簡(jiǎn)介

  這套叢書命名為《嵌入式軟件工程方法與實(shí)踐叢書》,,其最新動(dòng)態(tài)詳見www.zlg.cn(周立功旗下企業(yè):廣州致遠(yuǎn)電子有限公司)和www.zlgmcu.com(廣州周立功單片機(jī)科技有限公司),全部以電子版的形式發(fā)布,。

  目前已經(jīng)完成《程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)》,、《面向AMetal框架與接口的編程》和《面向AWorks框架與接口的編程》(上),后續(xù)還將推出《面向AWPI框架和接口的編程》,、《面向AWUI框架和接口的編程》和《面向ZWS IoT框架和接口的編程》系列圖書,。

  周立功

  2018年5月3日


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。