基于平臺(tái)的產(chǎn)品開(kāi)發(fā)戰(zhàn)略
2017-12-08
摘要:在2017年9月5日深圳舉行的“‘名家芯思維’之2017年物聯(lián)網(wǎng)核心技術(shù)和應(yīng)用國(guó)際研討會(huì)”上,,周立功先生做了題為“平臺(tái)即服務(wù)”的講演,。
引言
產(chǎn)品的BOM(物料清單)成本很低,,而毛利又很高,,為何四成上市公司的年利潤(rùn)卻不夠北上深廣的一套房?房子到底被誰(shuí)買走了,,這個(gè)問(wèn)題值得我們反思!
讓我們重新審視成本
包括開(kāi)發(fā)者在內(nèi)的很多管理者,,做產(chǎn)品算的只是BOM成本,,甚至連一個(gè)MCU相差一毛錢都嫌貴,卻不關(guān)注未知的成本,。每當(dāng)問(wèn)到產(chǎn)品什么時(shí)候上市時(shí),,普遍的回答都是“差不多了”,為何會(huì)出現(xiàn)這樣的問(wèn)題呢?而事實(shí)上,,那些未知的成本就是利潤(rùn)流失的根源(如圖1所示),。
圖 1 重新審視成本
利潤(rùn)從哪里來(lái)
早期創(chuàng)業(yè)時(shí),只要抓住一個(gè)機(jī)會(huì),,多參加展會(huì),,多做廣告,成功的概率就很大,。在互聯(lián)網(wǎng)時(shí)代,,突然發(fā)現(xiàn)入口多了,聚焦用戶的難度越來(lái)越大,。當(dāng)產(chǎn)品面臨競(jìng)爭(zhēng)時(shí),,你會(huì)發(fā)現(xiàn)“沒(méi)有最低只有更低”。而且現(xiàn)在已經(jīng)沒(méi)有互聯(lián)網(wǎng)公司了,,攜程變成了旅行社,,新浪變成了新媒體……,機(jī)會(huì)驅(qū)動(dòng),、粗放經(jīng)營(yíng)的時(shí)代已經(jīng)過(guò)去了,。
Apple之所以成為全球最賺錢的手機(jī)公司,關(guān)鍵在于產(chǎn)品的性能超越了用戶的預(yù)期,且因?yàn)榇罅靠芍赜玫暮诵念I(lǐng)域知識(shí),,綜合成本做到了極致,。Yourdon和Constantine在《結(jié)構(gòu)化設(shè)計(jì)》一書(shū)中,將經(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è)試和部署,。
更多的時(shí)候,,程序員不是在編碼,而是在閱讀程序,。由于閱讀程序需要從細(xì)節(jié)和概念上理解,,因此修改程序的投入會(huì)遠(yuǎn)遠(yuǎn)大于最初編程的投入?;谶@樣的共識(shí),,讓我們操心的一系列事情,需要不斷地思考和總結(jié),,使之形成可以重用的模式,,這就是方法論的起源。
顯然,,作為管理者必須深刻認(rèn)識(shí)利潤(rùn)模型,,即利潤(rùn)=需求-設(shè)計(jì)。需求是致力于解決“產(chǎn)品如何好賣”的問(wèn)題,,設(shè)計(jì)是致力于解決“如何降低成本”的問(wèn)題。由此可見(jiàn),,要么就是需求沒(méi)有抓準(zhǔn),,要么就是管理成本太高。
其中一個(gè)極其重要的措施需要逐年對(duì)缺乏創(chuàng)意的員工進(jìn)行末位淘汰,,其實(shí)企業(yè)中很多平庸的人就是吞沒(méi)利潤(rùn)的成本,。比如,很多開(kāi)發(fā)者只會(huì)抄DEMO,,卻不會(huì)根據(jù)實(shí)際的需求做出性價(jià)比更好的設(shè)計(jì),,即便這樣的具有10年工作經(jīng)驗(yàn)的人又有什么價(jià)值呢?
思維差異與收益
通過(guò)財(cái)務(wù)數(shù)據(jù)分析,由于早期決策失誤和缺乏科學(xué)的軟硬件工程方法,,我們開(kāi)發(fā)了一些周期長(zhǎng),、技術(shù)難度大且回報(bào)率極低的產(chǎn)品,不僅軟件難以重用,而且擴(kuò)展和維護(hù)難度很大,,從而導(dǎo)致開(kāi)發(fā)成本居高不下,。
雖然大多數(shù)開(kāi)發(fā)者都很勤奮,但其奮斗目標(biāo)不是企業(yè)和個(gè)人收益最大化,,而是以學(xué)習(xí)基礎(chǔ)技術(shù)為樂(lè)趣,,極少與市場(chǎng)人員和用戶交流,不注重提升個(gè)人挖掘用戶需求的創(chuàng)造力,,而是將精力用錯(cuò)了地方,,這是很多人一輩子也沒(méi)有認(rèn)識(shí)到的深刻問(wèn)題。只是表面地嘆息自己懷才不遇,,甚至將自己失敗的責(zé)任推給他人,。由此可見(jiàn),人與人之間的差別不在于知識(shí)和經(jīng)驗(yàn),,而是思維方面的差異決定了每個(gè)人的未來(lái),。
從軟硬件開(kāi)發(fā)來(lái)看,軟件工程,、電子工程與計(jì)算機(jī)科學(xué),、電子科學(xué)技術(shù)學(xué)是完全不同的兩個(gè)領(lǐng)域的知識(shí),其主要區(qū)別在于人,,因?yàn)檐浻布_(kāi)發(fā)是以人為中心的過(guò)程,。如果考慮人的因素,工程技術(shù)更接近經(jīng)濟(jì)學(xué)而非科學(xué),。顯然,,如果我們不改變思維方式,則很難開(kāi)發(fā)出既好賣且成本低的產(chǎn)品,。
圖 2 核心域與非核心域
核心域與非核心域
其實(shí)一個(gè)軟件系統(tǒng)封裝了若干領(lǐng)域的知識(shí),,其中一個(gè)領(lǐng)域知識(shí)代表了系統(tǒng)的核心競(jìng)爭(zhēng)力,這個(gè)領(lǐng)域被稱為“核心域”,,其它領(lǐng)域稱為“非核心域”,。雖然更通俗的說(shuō)法是“業(yè)務(wù)”和“技術(shù)”,但使用“核心域”和“非核心域”更嚴(yán)謹(jǐn)(如圖2),。
非核心域就是別人的領(lǐng)域,,比如,底層驅(qū)動(dòng),、操作系統(tǒng)和組件,,即便你有一些優(yōu)勢(shì),也是暫時(shí)的,,競(jìng)爭(zhēng)對(duì)手也能通過(guò)其它渠道獲得,。雖然非核心域的改進(jìn)是必要的,,但不充分,還是要在核心域上深入挖掘,,讓競(jìng)爭(zhēng)對(duì)手無(wú)法輕易從第三方獲得,。因?yàn)樵诤诵挠蛏仙钊胪诰颍_(dá)到基于核心域的復(fù)用,,這是獲得和保持競(jìng)爭(zhēng)力的根本手段,。
要達(dá)到基于核心域的復(fù)用,有必要將核心域和非核心域分開(kāi)考慮,。因?yàn)檫^(guò)早地將各個(gè)領(lǐng)域的知識(shí)混雜會(huì)增加不必要的負(fù)擔(dān),,從而導(dǎo)致開(kāi)發(fā)人員騰不出腦力思考核心域中更深刻的問(wèn)題。由于待解決的問(wèn)題的規(guī)模一旦變大,,而人腦的容量和運(yùn)算能力有限,,因此必須分而治之,因?yàn)楹诵挠蚺c非核心域的知識(shí)都是獨(dú)立的,。
圖 3 AWorks平臺(tái)
平臺(tái)制勝
代碼的優(yōu)劣不僅直接決定了軟件的質(zhì)量,,還將直接影響軟件成本。軟件成本是由開(kāi)發(fā)成本和維護(hù)成本組成的,,而維護(hù)成本卻遠(yuǎn)高于開(kāi)發(fā)成本,,蠻力開(kāi)發(fā)的現(xiàn)象比比皆是,大量來(lái)之不易的資金被無(wú)聲無(wú)息地吞沒(méi),,整個(gè)社會(huì)的資源浪費(fèi)嚴(yán)重,。
為何不將復(fù)雜的技術(shù)高度抽象呢?如果實(shí)現(xiàn)就能做到讓專業(yè)的人做專業(yè)的事,AWorks就是在這樣的背景下誕生的,。由于其中融入了更多的軟件工程技術(shù)方法,,因此就能做到將程序員徹底從非核心域中釋放出來(lái),聚焦于核心競(jìng)爭(zhēng)力,。
追求代碼復(fù)用和跨平臺(tái),,這是開(kāi)發(fā)者夢(mèng)寐以求的奮斗目標(biāo),但現(xiàn)實(shí)很殘酷,,幾乎無(wú)法成為現(xiàn)實(shí),。原因何在?MCU有M0、M4,、M7、ARM9,、A5,、A7、A8內(nèi)核,、DSP......有些項(xiàng)目不需要操作系統(tǒng),,有些項(xiàng)目可能選擇FreeRTOS或μC/OS-II或sysBIOS,另一些項(xiàng)目可能選擇Linux或Windows,因?yàn)椴煌陌雽?dǎo)體公司支持的平臺(tái)不一樣,。
基于此,,我們不妨做一個(gè)大膽的假設(shè)。雖然PCF85063,、RX8025T和DS1302來(lái)自不同的半導(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框架。也就是說(shuō),,不管什么MCU,,也不管是否使用操作系統(tǒng)(OS),只要修改相應(yīng)的頭文件,,即可復(fù)用應(yīng)用代碼,,這就是AWorks平臺(tái)的雛形(如圖3)。
由于AWorks制定了統(tǒng)一的接口規(guī)范,,并對(duì)各種微處理器內(nèi)置的功能部件與外圍器件進(jìn)行了高度的抽象,,因此無(wú)論你選用的是ARM還是DSP,通過(guò)“按需定制”的外設(shè)驅(qū)動(dòng)軟件和相關(guān)組件,,以高度復(fù)用的軟件設(shè)計(jì)原則和只針對(duì)接口編程的思想為前提,,則應(yīng)用軟件均可實(shí)現(xiàn)“一次編程、終生使用和跨平臺(tái)”,?;诖耍M(jìn)一步擴(kuò)大了AWorks使用范圍,,又發(fā)展出了代碼更小的AMetal,,AWorks能給你帶來(lái)的最大價(jià)值就是不需要重新發(fā)明輪子。
由此可見(jiàn),,無(wú)論你選擇什么芯片和任何OS,,比如,,Linux和其它任何RTOS,只要AWorks支持它,,就可以在目標(biāo)板上實(shí)現(xiàn)跨平臺(tái)運(yùn)行,。因?yàn)闊o(wú)論什么OS,它只是AWorks的一個(gè)組件,,針對(duì)不同的OS,,AWorks都會(huì)提供相應(yīng)的適配器,那么所有的組件都可以根據(jù)需要更換,。
結(jié)論
ZLG(廣州周立功單片機(jī)科技有限公司)之所以始終處于高速發(fā)展?fàn)顟B(tài),,首先是改變觀念和思維方式的突破,有了正確的思想和方法,,就知道從哪里入手了,,將優(yōu)秀人才聚焦需求分析,致力于解決“產(chǎn)品如何好賣”問(wèn)題,,通過(guò)技術(shù)創(chuàng)新致力于解決“如何降低成本”的問(wèn)題,,最終實(shí)現(xiàn)利潤(rùn)最大化。