<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一個(gè)產(chǎn)品上線3年后,會(huì)面臨什么問(wèn)題?

          共 4877字,需瀏覽 10分鐘

           ·

          2021-02-13 17:12



          這是Kevin的第 764 
          原創(chuàng),
          持續(xù)日更,做產(chǎn)品經(jīng)理的創(chuàng)業(yè)斜杠青年。



          今天可以算上是2020年的最后一篇原創(chuàng)了。


          現(xiàn)在春節(jié)21天數(shù)據(jù)產(chǎn)品經(jīng)理訓(xùn)練營(yíng)最后4個(gè)名額,點(diǎn)擊末尾可以報(bào)名。




          隨著PMTalk版本的不斷迭代,到現(xiàn)在我們已經(jīng)迭代到5.0了,上線了3年班,在這漫長(zhǎng)的時(shí)間里,一個(gè)產(chǎn)品會(huì)在研發(fā)中、產(chǎn)品設(shè)計(jì)有什么問(wèn)題呢?

          這里的問(wèn)題主要是包含三類

          1.技術(shù)人員不斷變換,代碼規(guī)范層次不齊

          無(wú)論是在大廠還是在小團(tuán)隊(duì),項(xiàng)目早期以快、業(yè)務(wù)實(shí)現(xiàn)為要求,比如高并發(fā)、數(shù)據(jù)倉(cāng)庫(kù)、風(fēng)控控制都不會(huì)接入。

          而互聯(lián)網(wǎng)團(tuán)隊(duì)的開(kāi)發(fā)人員、產(chǎn)品經(jīng)理一般在職時(shí)間1-2年會(huì)正常生命周期,在系統(tǒng)還沒(méi)有變現(xiàn)下、或探索期人員經(jīng)歷大量的變動(dòng)。

          所以代碼的可維護(hù)性就越來(lái)越差,比如在PMalk我們?cè)缙诓捎玫腏S、后續(xù)才使用react框架。

          在項(xiàng)目早期團(tuán)隊(duì)為了快,使用開(kāi)源系統(tǒng)做二次開(kāi)發(fā),但卻為后面的迭代、優(yōu)化埋下了定時(shí)炸彈。

          以至于現(xiàn)在的前端開(kāi)發(fā)同學(xué)找到我,經(jīng)常會(huì)說(shuō)需求可以先放下,我們優(yōu)先做重構(gòu)吧,現(xiàn)在的代碼看著太費(fèi)時(shí)間了,先別說(shuō)改。

          2.業(yè)務(wù)發(fā)展的不明確,產(chǎn)品結(jié)構(gòu)的混論

          在早期PMTalk還只是一個(gè)提問(wèn)發(fā)布的論壇,我們也沒(méi)有想到最終會(huì)做成一個(gè)視頻、兼職工作、體驗(yàn)報(bào)告于一體的互聯(lián)網(wǎng)社區(qū)。

          但其實(shí)中間我們至少花了半年的時(shí)間做新功能探索、業(yè)務(wù)的定型、以及數(shù)據(jù)驗(yàn)證。

          關(guān)注我的朋友應(yīng)該知道,我一直敲強(qiáng)調(diào)產(chǎn)品是業(yè)務(wù)的承載形態(tài),而業(yè)務(wù)沒(méi)有定型自然就會(huì)導(dǎo)致產(chǎn)品框架亂改。

          比如曾經(jīng)我們定位自己不做活動(dòng)報(bào)名系統(tǒng),只做第三方活動(dòng)跳轉(zhuǎn)。在產(chǎn)品框架上就只允許運(yùn)營(yíng)、用戶通過(guò)平臺(tái)跳轉(zhuǎn)到第三方進(jìn)行報(bào)名。

          后續(xù)因?yàn)榛顒?dòng)人數(shù)與用戶可控性等方面原因,自己做活動(dòng)報(bào)名系統(tǒng)就要求做用戶管理、活動(dòng)管理的升級(jí)。

          3.業(yè)務(wù)逐漸定型,產(chǎn)品規(guī)劃逐漸傾向于T型發(fā)展

          一個(gè)互聯(lián)網(wǎng)產(chǎn)品在3年以后,其實(shí)算得上“高齡”了。因此此時(shí)產(chǎn)品框架已經(jīng)形成了用戶主要使用的路徑,在此時(shí)的版本重構(gòu)上會(huì)要求嚴(yán)格保留前期核心功能,針對(duì)邊緣化優(yōu)



          在用戶體驗(yàn)要素里,就提到最底層、抽象的戰(zhàn)略層其實(shí)就是T型發(fā)展的依據(jù)。針對(duì)確定的業(yè)務(wù)不大改




          產(chǎn)品上線時(shí)間越久,越要高內(nèi)聚、低耦合



          回答開(kāi)篇提到的問(wèn)題:

          “如果一個(gè)產(chǎn)品上線了3年,需要解決什么問(wèn)題?”

          其方向就是不斷的內(nèi)聚核型功能做成通功能,將個(gè)性化的業(yè)務(wù)進(jìn)行邊緣化拆解,做成非通用的能力。

          同時(shí)一個(gè)產(chǎn)品正常運(yùn)營(yíng)3年,首先他的業(yè)務(wù)也在不斷發(fā)展、內(nèi)部員工也在增長(zhǎng),在高增長(zhǎng)的背后自然就會(huì)出現(xiàn)開(kāi)頭前面2類的問(wèn)題。

          互聯(lián)網(wǎng)產(chǎn)品也屬于軟件工程,在其高內(nèi)聚、低耦合是我們開(kāi)發(fā)過(guò)程中要求緊密遵守的。


          每個(gè)模塊相互聯(lián)系越緊密,則耦合性越高,模塊的獨(dú)立性就越差,反之同理;

          再舉個(gè)案例:

          一個(gè)項(xiàng)目中有20個(gè)方法調(diào)用良好,但是要修改了其中一個(gè),另外的19個(gè)都要進(jìn)行修改,這就是高耦合。如果修改了其中一個(gè),只需要再改2個(gè),則屬于低耦合。

          從這個(gè)案例可以看出,保持這樣的軟件方法可以大大減少時(shí)間成本。

          3年時(shí)間,產(chǎn)品不斷迭代,也會(huì)從一個(gè)小應(yīng)用演變到高級(jí)階段就是一個(gè)大工程,從頭到尾由一個(gè)人實(shí)現(xiàn)是不可能的,于是就要分工模塊化完成。

          比如PMTalk早期通過(guò)后端服務(wù)端渲染,現(xiàn)在變成了前后端分離就是逐步演變分工。

          即使是由一人完成的程序,內(nèi)部按照MVC模式的話,也會(huì)由subroutine來(lái)完成各項(xiàng)功能。于是,對(duì)于模塊化的開(kāi)發(fā),就有了這樣的要求:高內(nèi)聚低耦合。

          MVC 模式(Model-View-Controller)是軟件工程中的一種軟件架構(gòu)模式,把軟件系統(tǒng)分為三個(gè)基本部分:模型(Model)、視圖(View)和控制器(Controller)。




          軟件設(shè)計(jì)的耦合的8種狀態(tài)



          在這里我收集到了常用的耦合關(guān)系,包含數(shù)據(jù)、功能、業(yè)務(wù)等3個(gè)維度??梢砸源伺袛嗍欠駷轳詈?/span>



          1.無(wú)直接耦合

          指的是兩個(gè)模塊之間沒(méi)有直接關(guān)系,它們之間的聯(lián)系完全是通過(guò)主模塊的控制和調(diào)用來(lái)實(shí)現(xiàn)的。

          2.數(shù)據(jù)耦合: 

          指兩個(gè)模塊之間有函數(shù)調(diào)用關(guān)系,傳遞簡(jiǎn)單的數(shù)據(jù)值,相當(dāng)于高級(jí)語(yǔ)言的值傳遞;




          3 標(biāo)記耦合: 
          指兩個(gè)模塊之間傳遞是數(shù)據(jù)結(jié)構(gòu),如數(shù)組名、記錄名、文件名等這些名字即標(biāo)記,其實(shí)傳遞的是這個(gè)數(shù)據(jù)結(jié)構(gòu)的地址;

          4.控制耦合:
          指一個(gè)模塊調(diào)用另一個(gè)模塊時(shí),傳遞的是控制變量(如開(kāi)關(guān)、標(biāo)志等),被調(diào)模塊通過(guò)該變量的值有選擇地執(zhí)行塊內(nèi)一功能;

          5,外部耦合:
          一組模塊都訪問(wèn)同一全局簡(jiǎn)單變量,而且不通過(guò)參數(shù)表傳遞該全局變量的信息,則稱之為外部耦合,外部耦合和公共耦合很像,區(qū)別就是一個(gè)是簡(jiǎn)單變量,一個(gè)是復(fù)雜數(shù)據(jù)結(jié)構(gòu)。


          6.公共耦合: 
          指通過(guò)一個(gè)公共數(shù)據(jù)環(huán)境相互作用的那些模塊間的耦合。公共耦合的復(fù)雜程序隨耦合模塊的個(gè)數(shù)增加而增加。



          7 內(nèi)容耦合: 
          這是最高程度的耦合,也是最差的耦合。當(dāng)一個(gè)模塊直接使用另一個(gè)模塊的內(nèi)部數(shù)據(jù),或通過(guò)非正常入口而轉(zhuǎn)入另一個(gè)模塊內(nèi)部。



          或許在年夜前還能在保持原創(chuàng)做內(nèi)容,實(shí)際上已經(jīng)不是一種任務(wù)了。而是變成一了一種定時(shí)輸出。


          趁著春節(jié)假期,我們團(tuán)隊(duì)也在發(fā)布弱小版本,尤其是移動(dòng)端的小程序預(yù)計(jì)在春節(jié)也會(huì)上線。

          今天的分享就在這,預(yù)祝大家新年快樂(lè)!

          部分耦合參考:

          https://zhuanlan.zhihu.com/p/84419441

          春季30天數(shù)據(jù)產(chǎn)品經(jīng)理訓(xùn)練營(yíng)正在開(kāi)班,現(xiàn)在還有3個(gè)名額,點(diǎn)擊看課表和課程大綱



          我的新書(shū)




          購(gòu)買后公眾號(hào)回復(fù):迭代,進(jìn)入讀者群


          點(diǎn)擊加入我的社群??????





          推薦閱讀:

          2020年底福利|我整理的產(chǎn)品經(jīng)理PRD、原型資料下載

          做了半年短視頻,我總結(jié)了7條心得





          瀏覽 64
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  黄色网址中文字幕 | 成人影视导航 | 99视频在线精品免费观看2 | 夜夜爽夜夜干天天摸天天干 | 久久人妻免费视频 |