項目立項時,產品經理該了解和注意的事

15 評論 19616 瀏覽 124 收藏 11 分鐘

項目立項時,產品經理該了解和注意的事。還有關于項目開發、開發任務評估、技術選型,技術框架等常識。

1. 產品經理和包工頭

小奈:怎么了解開發實現功能的方式和難度?

大仁:上次不是寫了這篇,產品經理如何與開發溝通?

小奈:怎么準確分配需求給各個端的開發?

大仁:好吧,要了解的那么細,那我就深入講解下。

2. 項目:打地基+蓋房子

大仁:如果你奶奶問你,產品經理是做什么?小奈:額,就是負責產品設計、管理、協同開發、市場,推進項目落地的。

大仁:錯,如果項目開發是蓋房子,那么產品經理就是建筑設計師,項目經理就是包工頭,開發就是水泥工。

和蓋房子一樣,最重要的是打地基,地基決定了房子的高度,打地基就是技術架構選型,例如淘寶前期是php,后期由于業務發展,數據庫瓶頸,換成Java。

項目一般分為前后端,無論是什么前端項目,都需要后端支持,正常的開發人員配備,也是兩個后端對四個前端(web、pc、Android、ios)對4個產品。

3. 敏捷開發-小步快跑

項目開發模式

  • 瀑布開發:傳統的項目型軟件開發,流程、周期較長,常見于外包團隊;
  • 敏捷開發:互聯網的產品迭代,每周一個小迭代,mvp小步快跑,常見于互聯網創業項目。

小奈:瀑布開發,什么鬼來的?還是不懂啊。

大仁:假如說項目開發,是蓋房子的話,那么數據庫設計、架構搭建,就是打地基,地基不打,如何蓋房子?

大仁瀑布開發就是,給包工頭,包工頭按照設計圖,蓋了1年房子后,你終于去看蓋好的房子了,一看不是自己想要的,又叫包工頭,又開始項目二期;

敏捷開發,就是你要求挺多的、而且沒有最終確定的,然后包工頭,快速打了個地基,你每周過去看房子,蓋得怎么樣了,這樣子,蓋出來的房子,可以讓你比較滿意;

4. 項目立項-產品篇

項目立項時,產品經理要做些什么呢?

  • 大公司產品和項目經理分開;
  • 小公司產品兼任項目管理。

產品和項目是有差別的,產品無邊界(版本管),項目有邊界(可拆解成固定的開發任務、有驗收標準)。

  • 產品經理決定做什么,在立項時(第一個版本),需求分析基本完成,不會有大的改動,否則項目經理砍死你。
  • 兼任項目管理,要有任務開發時間表,一般用project/jira/excel來進行管理。

5. 開發任務如何量化?

大仁:好問題,其實開發的工作,是可以量化,標準化的,有個外包網站,它里面有個估價的功能,估價會按照標準(項目類型、模塊分類、功能點)進行評估,最后得出一個報價。

報價/工作量

大概需要耗費21-29w左右,假如一個開發工資1w,那就是需要4個開發(2個后端+2個前端),大概6個月時間,那么如果你把這個人物和需求關聯后,大概要做多久,應該可以衡量了吧。

6. 編程語言圖鑒

隨著互聯網的發展,技術不斷更新,日新月異,后端開發語言眾多,php、java、c#、python、golang,百花齊放,百家爭鳴。

Java: 20多年后端語言,sun公司的;c#:微軟的后端開發語言,為了對抗Java;

python:谷歌的,隨著人工智能一起變熱;

golang:號稱是后端里,最快的男人;

python和golang處于快速上升,Java常年霸主,堅如磐石;php、c#則隨著歷史,滾滾車輪,慢慢退出舞臺。(個人觀點,如有不對,請指正。)

PHP還是Java

小奈:PHP和Java的區別、優缺點,適用場景是什么?大仁:Java和php都是后端開發語言,Java適用于中大型企業級服務器開發,PHP適用于中小型服務器。

(1)上手難度比較

– php易學易懂,非技術的人,稍稍學習,可以上手,環境搭建用LAMP/WAMP一鍵安裝包,常見開發工具,phpstorm。– Java則要求理解,Java語法和核心架構(jar包)以及JVM,環境配置也較為麻煩,常用開發工具eclipse或Intellj Idea;

(2)優劣勢比較

  • Java的優勢:從數學運算、數據庫訪問、技術架構上,優于php,所以對于跨平臺大型,的企業應用系統,Java幾乎已成為了唯一的選擇,阿里就是全線Java系列,水平也是國際前沿;Java的劣勢:Java架構、性能強大的背后,或者說代價,就是復雜性,尤其是在web框架,用Java開發一個web客服系統,可能需要9個月、看9本書,而php可能只需要2個月,3本書;
  • php的優勢:php吸收了Java、c和perl的有點,專注于互聯網web領域,很適用于快速開發、維護,中小型網站;
  • php的劣勢:php項目后期,隨著業務發展,對數據庫要求高,php這方面支持以及架構均弱于Java,還有php程序員較少,不像Java程序員的生態那么強盛。

(3)適用階段

創業初期:php,后端;中期:php、c++,cto+后端;

后期:java、c++,cto+架構師+后端。

其實,為什么多了個c++呢?

其實創業項目初期,它是一個小項目(后端+數據庫),隨著業務的發展,對數據庫要求高了,再后來就對架構有要求了。所以一個大的系統,可能由多個子系統組成,子系統可以是不同的語言開發,只要遵循協議(soap/websevice/restful),就可以并行,形成架構了,所以中期就會需要DBA, 后期就要架構師了。

Java-多年的大哥

2000伊始,Java由于其優秀的語言特性,被大家推舉為大哥。大哥寶座一坐23年了,期間php、ruby等試圖挑戰,其地位,但堅如磐石。

后端時代:那時候,還沒有前后端,只有后端。Java工程師寫完后端邏輯,隨便再把數據包在網頁,傳給瀏覽器,一人包辦。這里不得不介紹下,湯姆貓web服務器。

web服務器有哪些:

  • Tomcat:湯姆貓;
  • Weblogic:微波爐。

Java程序員每天的工作,就是把邏輯實現好,打包成一個war包,扔進web服務器,看下瀏覽器運行效果,正常的話,就下班回家了。

Java的編輯器

寫過Java的應該,都用過eclipse,現在用Idea的比較多了貌似。Java的集成開發環境,就長這樣了,其他語言的也差不多。左邊是項目文件,會有主入口文件,其它的包、類文件,中間是某個文件,的代碼編輯區。

類與對象Java是面向對象編程語言,類和對象,應該是編程初學,必知的??破障骂惡蛯ο?,假如貓a、b是對象的話,那么類是什么?

類就是動物,類是抽象化的,對象才是具體的。

?父類:動物

public class Animal{

}

子類:貓

public? class Cat extend Animal{

}

對象:a貓

Cat a = new Cat()

相關閱讀

講個故事,給你一份詳細的技術書

講個故事,給你一份詳細的技術書(2)

作為產品,你需要了解這些技術知識

數據產品經理該懂的python技術

 

作者:Jack,新零售數據PM,公眾號:產品經理的技術課堂

本文由 @Jack 原創發布于人人都是產品經理。未經許可,禁止轉載

題圖來自 Pexels,基于 CC0 協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 看上你的兩個圖啦,哈哈,收走

    來自北京 回復
  2. 想了解下目前后端有.net開發跟JAVA開發有什么優勢和劣勢?

    來自廣東 回復
    1. .net已經淘汰了,應該是老舊項目才用了

      來自廣東 回復
    2. 我也這么認為,但目前公司這邊還是用.net做開發,一直存在著一個服務器不穩定問題。我對這開發語言沒有過多研究,想了解下JAVA開發相比.net開發有什么優勢?

      來自廣東 回復
    3. 你知道生態么? Java可以是服務端開發 也可以用于安卓開發 Java和數據庫并發也更好 生態好 開發者眾多

      來自廣東 回復
  3. 大神,那個估價外包網址能發一份嗎?,謝謝

    回復
    1. 為免打廣告嫌疑,微信公眾號回復“外包網站”,可以獲得。

      來自廣東 回復
  4. 厲害?。⊥ㄋ滓锥?!

    回復
    1. 感謝認可

      來自廣東 回復
  5. 比喻很好,收藏了!

    來自廣東 回復
    1. 感謝認可,覺得不錯可以,轉發給更多人看喔。

      來自廣東 回復
  6. 麻煩問一下,外包估價的網站能說一下嘛,謝謝!

    來自湖北 回復
    1. 為免打廣告嫌疑,微信公眾號回復“外包網站”,可以獲得。

      來自廣東 回復
  7. 請問初期用php,后期用Java的話,是不是有兩種方式,1.全部重新用Java寫,2.部分子系統用Java?

    來自北京 回復
    1. 看系統的架構,一個大的系統,可以有很多子系統,一般是沒有架構師,重寫的情況比較多。

      來自廣東 回復