這個作業屬於哪個課程 | 軟件工程2021春軟件工程W班(FZU) |
---|---|
個人學號 | 221801435 |
作業要求 | 作業鏈接 |
作業目標 | 對csdn、SegmentFault和StackOverFlow的網頁端和app端做軟件評測 |
參考文獻 | 構建之法 |
作為一名軟件工程的學子,遇到bug簡直如同家常便飯,這時,不妨上網問問前輩們的意見,說不定他們有踩過我的坑,因此,問答網站成為我遇到bug時的首選之處。其中,國內最常見的程序員問答社區是csdn,csdn作為國內專業IT問答社區,其提供了文章發布、最新技術咨詢等功能,主要致力於為程序員提供一個交流的平台,旗下還包括了CSDN APP等一眾軟件;國外的程序問答網站則以Stack OverFlow為主,該網站自創立至今已有12年的歷史了,自2020年就有月獨立訪客1600萬;而Segment Fault思否,其產品原型參考自 StackOverflow,但經過一年多的發展,也已發展除了自己的風格特色,並具有問答、博客、活動等功能。借此次軟工實踐作業,我將具體測評一下這三個網站,看看它們都有哪些bug。
調研,評測
CSDN
作為一個技術問答網站,其調研測評工作自然主要以問題發布、問題解答與討論、問題瀏覽這幾個功能點展開。此外,因為CSDN除了網頁端之外,還有App端,因此,本次評測還將考慮網頁端和App端的同步是否完善。
體驗
功能一:問題瀏覽
一進入網站主頁,點擊網頁頁眉的“問答”按鈕,進入博客主頁,其頁面如下:
可以看到,問答主頁采用的三欄式布局:左邊一欄是排行榜、頻道、活動等跳轉按鈕,頻道里點開是對問題的具體分區,例如人工智能分區、服務器分區、java分區等;中間一欄是問題列表,其中,已有答案被采納的問題會用“方框”將“回答”部分標識出,這一個設計可以避免用戶去回答那些已有答案的問題,列表中能夠體現出問題的標題、問題的簡介、問題的標簽、問題的回答數量和總瀏覽量,用戶下拉頁面即可自動刷新問題;主頁的右邊一欄是我的回答相關信息,以及加急榜、采納榜等等。
點擊一個具體的問題,可以看到一個具體的問題包含了題目標題、題目簡介、題目標簽,題目簡介中可以插入圖片和代碼,如果是有懸賞的題目則會在旁邊標注懸賞金額。問題下方還有回答的板塊以及相關博文推薦板塊。
值得注意的是,問答板塊並沒有一個專門的搜索框,用戶無法通過關鍵字搜索自己想要了解的問題,而是只能通過主頁提供的篩選按鈕,按照酬金類型、排序方式和問題狀態對問題進行一個比較粗略的篩選。
功能二:問題發布
點擊主頁右邊欄的提問題按鈕,進入問題發布頁面:
可以看到,如果要發布一個問題,需要填寫問題的標題、問題的內容、問題的標簽和提問的方式。
問題的標題,支持相似問題的搜索,這一點設計的還是不錯的,可以讓用戶在發布問題前就能意識到其他人已經提出了類似的問題,以減少用戶再次發布類似問題的麻煩。
問題的內容不支持Markdown語法,且富文本框的功能內容較少,只有加粗、下划線、插入文本、插入代碼、插入有序/無序列表等基本功能,缺少了一些排版的要素,這樣會使得問題的所有內容都會靠右顯示,且無法調整字體大小、行間距(文本內容和列表與最左邊的間距不一樣,這讓強迫症用戶感到十分不適)。
問題的標簽由網站給出,不能自定義標簽;CSDN采用的是大標簽下包含小標簽的結構,有一個使用體驗不好的地方就是,有的大標簽下包含很多的小標簽,而有的大標簽下只包含幾個標簽,這就使得標簽選擇框的大小會不斷地變動,導致用戶在從小標簽數量比較少的大標簽切換回小標簽數量比較多的大標簽時,需要不斷地調整頁面,以觀察該大標簽下的所有的小標簽。此外,添加標簽也不支持復選,用戶要添加多個標簽只能重復添加一個標簽的過程。
添加代碼部分,編寫代碼時是沒有高亮顯示的,但是編輯完成之后在富文本框中有代碼高亮顯示。
最后發布的問題如下:
可以看到排版並不是很舒服,且圖片被壓縮了,只有點開之后才能查看高清版本。
且我發布的問題也已經被同步到移動端,但是不知道為什么,代碼沒有顯示全,且沒有展開按鈕:
功能三:問題解答與討論
點開一個具體的問題,如下頁面所示:
可以看到,有一部分問題是有“技術專家團”來進行回答的,這樣可以避免用戶發布問題太久而沒有人評論的尷尬處境(比如我截圖的這個問題,除了我和專家團以外就沒有別的用戶來回答了)。
我回答之后馬上就收到了回復,並且可以在評論底下進行討論:
同時移動端也同步更新了回復的內容:
這里我比較在意的是那個“技術專家評論”,瀏覽了幾個問題之后發現,“技術專家”的回答質量參差不齊,有一些並不能使答主感到滿意,所以我對這里的“技術專家”是否是真的技術專家保持一個懷疑的態度。
優缺點分析
優點:
- 主要功能比較齊全,例如問題的推薦、問題的分享(可以和App搭配使用)、問題的解答、問題的發布。
- 對回答問題有獎勵機制,用戶回答的積極性會比較高。
- 有專家技術團下場回答,避免了用戶的問題無人問津的情況。
缺點:
- 一些功能的細節不是很好,比如答題的富文本框支持的功能比較少,發布問題選擇類型時操作比較繁瑣。
- 問題的質量參差不齊,高技術力的問題和新手的問題會混在一起,且沒有提供篩選功能。
- 沒有按關鍵字篩選問題的選項。
- 專家技術團只能回答比較簡單的問題,和“專家”二字不相符。
產品改進建議
- 發布問題時希望能引入markdown語法,並且能夠支持內容間距的調整。
- 希望能夠按照技術水平篩選問題,這個主要是考慮到技術比較強的用戶可能並不想花太多時間在解決新手級的問題上,技術比較差的用戶不能解決高技術的問題。
- 希望在主頁提供一個按照關鍵字查詢、且專門用於問答的搜索框。
- 問題類型標簽那里可以改成復選而不是單選。
BUG
測試環境:
網頁端:Windows10 19042.985 操作系統版本; Google Chrome 90.0.4430.85(64位正式版本)
移動端:OPPO K7 Android 10; CSDN APP 版本 4.7.0
bug評分標准:
星級 | 描述 |
---|---|
★★★ | 系統功能性故障,如網頁崩潰;安全性漏洞,重要信息被泄露;用戶體驗很差,完全不能使用功能。 |
★★ | 系統功能部分正常,但也有部分沒有滿足用戶要求;信息丟失,但不泄露;用戶體驗較差,使用功能的步驟繁瑣,或者容易出錯而不能滿足用戶預期 |
★ | 系統功能正常;沒有信息丟失;用戶使用功能完善,但UI界面有問題 |
BUG1:問題主頁左側頻道欄目下滑不能上拉的問題
- 復現情況:穩定復現
- 問題描述:問題主頁的左側側邊欄和中間的問題列表綁定滑動,這就導致當用戶向下瀏覽一定數目的問題時,想要切換題目的頻道,需要將滾輪向上移動一定的距離,才能看到最開始的幾個頻道。
- 成因分析:左側側邊欄和中間的問題列表放在同一個div里,js做響應時沒有將這二者區分開來。
- 嚴重性:★
- 改進建議:將左側側邊欄的滑動和問題列表的滑動分開。
- issue反饋鏈接
BUG2: 發布問題時問題描述有字數限制,而修改問題時沒有
- 復現情況:穩定復現
- 問題描述:在發布問題頁面,填寫問題內容時,會要求“內容長度在30-65535范圍內”,而修改問題內容時卻沒有此要求,如果修改的問題內容長度小於30,雖然會提示修改成功,但問題內容並沒有發生改變。
- 成因分析:前端在修改問題表單提交時沒有做判斷,但是數據庫中有限制,所以更新的內容並沒有顯示出來。
- 嚴重性:★★
- 改進建議:在前端添加一下邏輯,如果長度小於30,則提示修改失敗,並告知用戶。
- issue反饋鏈接
BUG3: 問題描述里代碼顯示不全。
- 復現情況:穩定復現
- 問題描述:在App端,當代碼行數大於4行,且小於12行時,從4行以后的代碼顯示不出來,且沒有“展開”按鈕。
- 成因分析:假設app里用於顯示代碼的組件高度為X,出現展開按鈕的要求高度為Y,則X和Y不相等,且Y-X>0。
- 嚴重性:★
- 改進建議:調整顯示代碼組件高度,使其和展開按鈕出現的要求高度一致。
- issue反饋鏈接
BUG4: 與別人的討論並沒有記錄在“我的回答”里
- 復現情況:穩定復現
- 問題描述:在App端,用戶在某個問題下面評論了別的用戶的回答,但是這個評論並沒有記錄在我的回答里。如下圖所示,我在“我想培訓學JAVA再自學C# 這兩門課跨度大嗎”這個問題下評論了CSDN專家技術團的回答,但是這個記錄沒有顯示在“我的回答”內。
- 成因分析:系統只記錄回復了樓主的評論,並沒有考慮到評論之間的樹形結構。
- 嚴重性:★★ (用戶無法找到部分評論記錄,也就不能及時回答別人的回復)
- 改進建議:記錄用戶的評論信息,評論應該包括回復樓主的,以及回復其他人的評論。
- issue反饋鏈接
結論
總體來說,我對CSDN的評價是“一般”,具體評分標准如下:
描述 | 評分 | |
---|---|---|
核心功能 | 分析三個核心功能,功能設計和質量。 | 7(不支持問題的關鍵字搜索、發布問題不支持Markdown、評論歷史記錄功能不完善) |
細節 | 有什么為用戶考慮的細節? | 8(主頁滑動問題、標簽選擇不能復選) |
用戶體驗 | 當用戶完成功能時,不干擾用戶 | 8 |
輔助功能 | 一些輔助功能如皮膚等 | 10 |
差異化功能 | 這個軟件獨特的功能. 它對用戶的吸引力有多大? | 8(專家問答,可能會吸引一些人) |
軟件的效能 | 占用內存, 啟動速度, 內存泄漏情況 | 10 |
軟件的適應性 | 在聯網/斷網, 大小屏幕, 沒有鼠標的情況下都可以順暢操作. 和不同平台的軟件能流暢協作 | 10 |
成長性 | 記住用戶的選擇, 適應用戶的特點,用戶越用越方便 | 10(有用戶歷史記錄,且會根據用戶瀏覽內容推送問題) |
用戶有控制權 | 系統狀態有反饋,等待時間要合適。關鍵操作有確認提示,有明確的錯誤信息。 讓用戶方便地從錯誤中恢復工作, 快捷操作鍵可調整。 | 10 |
問答內容質量 | 7(內容混雜) | |
總分 | 88 |
SegmentFault思否
體驗完CSDN,我們再來看看作為國內Stack Over Flow的SegmentFault思否在問答環節上做的怎么樣吧。
體驗
功能一:問題瀏覽
進入網站,點擊上方的問答按鈕,就可以進入問答的題目主頁,如下圖所示。
具體來說有以下幾個特點:
- 頁面簡潔。思否的功能點顯然沒有CSDN那么多,因此頁面看上去會簡單不少,且思否只有中間欄和右邊欄。
- 問題列表和CSDN有點相似,都有標出問題的標題、問題的回答人數、瀏覽人數,並且將已被采納的問題用方框標識出來。不一樣的地方在於,思否用黃色背景標識出用戶感興趣的標簽的問題,這一點要比CSDN更人性化。
- 相比於CSDN的混合排版,周榜、月榜等和標簽的分類是分開顯示的。
- 用戶可以通過標簽篩選問題,在主頁只會顯示用戶感興趣的標簽,如果用戶想添加新的標簽,需要點擊“管理”按鈕,搜尋自己感興趣的標簽。即提供了標簽定制,且標簽的排版有橫向距離,不像CSDN那樣將所有的標簽都豎着排。
選擇一個具體的問題,進行查看:
可以看到,問題的描述主要也是有問題標題+問題內容構成,問題內容中有文字、有代碼、有圖片。
具體來說,有以下特點:
- 思否的圖片不會像CSDN那種壓縮的過於明顯,可以不點開圖片即可以查看大部分信息
- 問題內容的排版總體來說靠右,代碼、文本、圖片與右邊的間隔基本一致。
- 點贊、收藏、分享按鈕貼心的放在了頁面的左側,並且能夠隨着頁面滾動,個人認為這種設計比將按鈕放在問題內容下方會更好一點。
- 關鍵字和其余文本有明顯的顏色區分,而CSDN只是單純的將關鍵字加粗或者加下划線,其顏色還是黑色。
功能二:問題發布
點擊問答主頁問題列表右上方的按鈕,可以進入問題發布頁面:
相比於CSDN,其具有特點如下:
- 頁面簡單大氣,用於編寫的部分占了頁面的70%以上,點擊“全屏”按鈕,可以占到100%。
- 支持Markdown語法,且富文本框的功能更加全面。
- 提供了模板功能,可選開發實戰相關、編程問題相關以及工具軟件相關。相比於單純的提示,這種模板可以直接生成markdown內容,便於用戶使用。
- 添加標簽部分,也是和CSDN類似,大標簽下包含小標簽,雖然不支持復選,但是可以在同一個選擇框中,一次選擇多個小標簽,簡化了設置的操作流程。
最后,我發布了一個算法的問題,並盡可能地用到了富文本框的內容:
值得一提的是,按照官方的說法,問題內容中應該支持騰訊視頻、bilibili視頻、愛奇藝視頻、優酷視頻播放,但是,這里只有騰訊視頻、優酷視頻、blibli視頻是可以正常播放的。
功能三:問題解答與討論
值得注意的是,思否的問題質量會比CSDN高一些,我找了許久才找到一個比較簡單的問題。
我選擇的問題如下:
我回答的內容如下:
可以發現,用戶再發布回答之后可以隨時補充回答的內容,也可以刪除回答,這一點比CSDN做的更好一些。
也可以和別人討論問題:
優缺點分析
優點:
- 主要功能齊全,例如問題的解答、問題的發布、和推薦問題。
- 發布問題和回答問題都支持markdown語法,且提供實時預覽功能。
- 發布問題有審查機制,避免大量無效地問題進入社區,問題的質量有保障。
- 用戶可以自由的編輯自己已發布的回答,也可以刪除已發布的回答。
- 可以在問題內容中插入視頻(這一點很多問答網站沒有)
- 個性化做的比較好,例如可以編輯感興趣的標簽、感興趣的問題會用不同背景顯示等。
缺點:
- 發布問題時沒有提供相關問題的參考。
- 沒有提供專門的問題關鍵字搜索框。
- 只有聲望值這一個回答激勵,相比於CSDN回答激勵較少。
產品改進建議
- 希望參考CSDN,引入相關問題參考機制。
- 增加問題關鍵字搜索框。
- 當問題太過冷門,無人回答時,希望官方能邀請技術人員做出解答。
- 增加更多的回答激勵機制。
BUG
測試環境:
網頁端:Windows10 19042.985 操作系統版本; Google Chrome 90.0.4430.85(64位正式版本)
bug評分標准:
星級 | 描述 |
---|---|
★★★ | 系統功能性故障,如網頁崩潰;安全性漏洞,重要信息被泄露;用戶體驗很差,完全不能使用功能。 |
★★ | 系統功能部分正常,但也有部分沒有滿足用戶要求;信息丟失,但不泄露;用戶體驗較差,使用功能的步驟繁瑣,或者容易出錯而不能滿足用戶預期 |
★ | 系統功能正常;沒有信息丟失;用戶使用功能完善,但UI界面有問題 |
BUG1:問題內容中多條視頻無法播放
- 復現情況:穩定復現
- 問題描述:問題內容中視頻播放錯誤
在問題內容中插入多條視頻時,只有在第一次訪問問題內容時所有視頻顯示正常,第二次訪問時只有第一條視頻顯示正常
- 成因分析:前端代碼只考慮到插入一條視頻的情況,並沒有考慮到多條視頻
- 嚴重性:★★
- 改進建議:修改代碼,使其能夠處理多條視頻
- issue反饋地址
BUG2: 多次收藏到同一個文件夾,收藏數持續上漲
- 復現情況:穩定復現
- 問題描述:收藏一篇文章到同一收藏夾多次,其收藏數量會持續上漲,但是刷新之后只會顯示增加了一次收藏數量
- 成因分析:前端收藏數量的增加的邏輯沒寫好,應該要判斷下是否是新的收藏,新的收藏再加1
- 嚴重性:★
- 改進建議:前端添加判斷邏輯即可
結論
總體來說,我對Segment Fault 思否的評價是“好,不錯”,具體評分標准如下:
描述 | 評分 | |
---|---|---|
核心功能 | 分析三個核心功能,功能設計和質量。 | 9(不支持問題的關鍵字搜索,支持markdown語法、回答的發布、評論、瀏覽功能基本完善) |
細節 | 有什么為用戶考慮的細節? | 9(讓點贊、收藏、轉發按鈕和屏幕一起移動;感興趣的問題會用不同顏色背景標識) |
用戶體驗 | 當用戶完成功能時,不干擾用戶 | 10 |
輔助功能 | 一些輔助功能如皮膚等 | 8(無法自定義皮膚) |
差異化功能 | 這個軟件獨特的功能. 它對用戶的吸引力有多大? | 9(可以在回答中插入視頻) |
軟件的效能 | 占用內存, 啟動速度, 內存泄漏情況 | 10 |
軟件的適應性 | 在聯網/斷網, 大小屏幕, 沒有鼠標的情況下都可以順暢操作. 和不同平台的軟件能流暢協作 | 10 |
成長性 | 記住用戶的選擇, 適應用戶的特點,用戶越用越方便 | 10(會根據用戶瀏覽內容推送問題、用戶可以自定義感興趣的標簽) |
用戶有控制權 | 系統狀態有反饋,等待時間要合適。關鍵操作有確認提示,有明確的錯誤信息。 讓用戶方便地從錯誤中恢復工作, 快捷操作鍵可調整。 | 10(可以自由修改) |
問答內容質量 | 8(問題、評論質量經過審核,有保障) | |
總分 | 93 |
StackOverFlow
StackOverFlow作為CSDN和思否的老前輩,且是測評產品中唯一一個英文網站,我們看看其具體表現如何。
體驗
功能一:問題瀏覽
登錄StackOverFlow,進入問題主頁,問題列表如下:
可以看到主頁和前面介紹的兩個問答網站基本類似,左邊是標簽欄、用戶等非問題性信息,其中還提供了一部分工作推薦,可以說是很為程序員考慮了。中間的問題列表也和思否一樣(應該是思否借鑒了StackOverFlow),用黃色的背景標識出那些用戶可能感興趣的問題,同時也提供了一些不在用戶標簽范圍之內的問題。
選擇一個具體的問題查看:
整體來說比較清晰,問題的介紹里文字和代碼的間隔比較合理(這里又想diss一下csdn...),但是相比於思否來說,問題詳情頁面的信息密度比較大,比如主頁的左邊欄被保留了下來,問題詳情頁右邊還有工作的介紹。。。這樣可能使得用戶的注意力轉移到問題之外,不能全神貫注的理解題目。
功能二:問題發布
點擊問題列表右上方的“Ask A Question”按鈕,進入的頁面如下:
由此界面,我們可以得出:
-
在用戶第一次進入問題發布時,系統會提示用戶如何寫一個好問題;這種設計在csdn和思否中也有體現,csdn的建議放在問題編輯框的左邊,不是很起眼的位置;思否則直接用問題模板來代替提示,這種做法的好處是直觀,用戶可以直接在markdown文本上操作,確定對於問題內容組織的提示較少。
StackOverFlow的左側提示也分為編程類問題的提示和非編程類問題的提示,這種設計我認為是合理地,因為編程類問題的內容編寫和非編程類問題的內容編寫還是由比較大的差別,前者應該更注重代碼,而后者則以文字和圖片為主。
-
問題編輯框支持markdown語法,且用戶可以點擊文本框上方的按鈕,獲取語法提示
-
問題的標簽支持模糊查詢:
-
問題的標題支持相似問題搜索:
總體來說,StackOverFlow的問題發布界面集成了CSDN和思否的優點,還是十分地不錯的。但是相比於思否,StackOverFlow的Markdown預覽界面做的不是很好,且可供編輯的地方太小,用戶使用起來不方便。
最后,我發布的問題如下:
我的問題里沒有插入圖片,因為插入圖片功能需要reputation大於10才可以使用。reputation功能是StackOverFlow獨有的一個功能,代表了網站對於你的信任程度,只有reputation值大於某個閾值,你才能使用某個特定的功能,個人覺得這種機制對於新用戶不太友好,但是可以留下一定的老用戶(如果老用戶的reputation值很高甚至可以擁有和開發團隊一樣的功能權限)。
如果你的問題不夠“focused”,則系統會關閉這個問題,並要求你修改,以此來保證問題的質量:
功能三:問題解答與討論
我選擇的問題如下:
我的回答如下:
回答可以修改、可以刪除,同時還可以查看回答的修改記錄,如果對於修改不滿意,還可以roll back到之前的回答。
優缺點分析
優點:
- 主要功能齊全,例如問題的解答、問題的發布、和推薦問題。
- 發布問題和回答問題都支持markdown語法。
- 發布問題有審查機制,如果問題描述不夠清楚,則系統會關閉該問題並要求修改,這就保障了問題的內容質量。
- 用戶可以自由的編輯自己已發布的回答,也可以刪除已發布的回答,還可以roll back到之前的回答。
- 擁有找工作功能,這對於程序員來說十分友好。
- 發布問題時有提供相關問題參考。
- 回答問題有激勵機制,用戶回答的熱情比較高。
- 問題標簽支持模糊查詢。
缺點:
- 編輯問題的界面太擁擠,markdown的預覽效果不太好。
- 全英文界面對於國人不太友好。
產品改進建議
- 可以參考思否的編輯問題界面,將頁面的80%以上用於問題內容的編輯和markdown的預覽。
- 希望能對新用戶多開放一些需要reputation才能解鎖的功能。
BUG
測試環境:
網頁端:Windows10 19042.985 操作系統版本; Google Chrome 90.0.4430.85(64位正式版本)
bug評分標准:
星級 | 描述 |
---|---|
★★★ | 系統功能性故障,如網頁崩潰;安全性漏洞,重要信息被泄露;用戶體驗很差,完全不能使用功能。 |
★★ | 系統功能部分正常,但也有部分沒有滿足用戶要求;信息丟失,但不泄露;用戶體驗較差,使用功能的步驟繁瑣,或者容易出錯而不能滿足用戶預期 |
★ | 系統功能正常;沒有信息丟失;用戶使用功能完善,但UI界面有問題 |
BUG1:Accept all cookies
- 復現情況:不使用VPN時穩定復現
- 問題描述:在用戶第一次進入StackOverFlow的網頁時(沒有登錄的cookie),頁面左下方會提示接受所有的cookies,但是點擊accept沒有反應,該提示框並不會消失,而是遮擋界面,影響用戶使用。當使用VPN登錄時可以accept。
- 成因分析:考慮到使用VPN可以正常運行,預計是國內網絡環境問題導致。
- 嚴重性:★
- 改進建議:在國內架設服務器,並適配中國網絡環境。
結論
總體來說,我對StackOverFlow的評價是“非常推薦”,具體評分標准如下:
描述 | 評分 | |
---|---|---|
核心功能 | 分析三個核心功能,功能設計和質量。 | 10(基本功能完善,且提供了找工作的功能) |
細節 | 有什么為用戶考慮的細節? | 10(編輯問題時提示到位;感興趣的問題會用不同顏色背景標識) |
用戶體驗 | 當用戶完成功能時,不干擾用戶 | 10 |
輔助功能 | 一些輔助功能如皮膚等 | 9 |
差異化功能 | 這個軟件獨特的功能. 它對用戶的吸引力有多大? | 9 |
軟件的效能 | 占用內存, 啟動速度, 內存泄漏情況 | 10 |
軟件的適應性 | 在聯網/斷網, 大小屏幕, 沒有鼠標的情況下都可以順暢操作. 和不同平台的軟件能流暢協作 | 8(國內訪問速度慢,但是掛VPN可以解決) |
成長性 | 記住用戶的選擇, 適應用戶的特點,用戶越用越方便 | 10(會根據用戶瀏覽內容推送問題、用戶可以自定義感興趣的標簽) |
用戶有控制權 | 系統狀態有反饋,等待時間要合適。關鍵操作有確認提示,有明確的錯誤信息。 讓用戶方便地從錯誤中恢復工作, 快捷操作鍵可調整。 | 10(可以自由修改,且可以回滾) |
問答內容質量 | 10(問題、評論質量經過審核,有保障) | |
總分 | 96 |
分析
開發時間估計
如果只需實現問題的發布、問題的瀏覽、問題討論,那么,那么要解決的核心問題包括:
- 問題發布時,如何支持富文本框,如何使富文本框使用markdown語法,且支持實時預覽。(大概1個月到一個半月,只有專業UI沒有專業前端的情況下)
- 問題瀏覽時,如何推薦用戶感興趣的問題,如何在用戶感興趣的問題和不感興趣的問題之間做平衡。(大概半個月)
- 問題列表的刷新問題(類似於CSDN、StackOverFlow),或者問題列表用分頁實現(類似思否)。(大概半個月)
- 問題討論中,如何表達評論的樹形結構(即一個評論下面還有一個子評論)。(大概半個月)
- 用戶的個性化如何實現,包括用戶標簽、用戶瀏覽記錄、回答記錄、發布問題記錄。(大概半個月)
- 點贊、收藏、流量等細節補充。(大概半個月)
因此,在前后端並行開發,沒有上課、沒有課設的前提下,估計時間在三個半月到四個月。
同類產品對比排名
這三個產品中,StackOverFlow的優勢在於其社區規模和良好的社區氛圍,以及其強大的圍繞問答而展開的功能,其劣勢在於UI設計不夠美觀,這也跟其產品的年代有關(2008年的UI風格);Segment fault的優勢在於其簡潔明了的設計風格(其中問題編寫和評論編寫的頁面我認為是三個之中最好的),以及質量中上的問題內容,其劣勢在於社區人數是三個之中最少的,且知名度比較低;CSDN的優勢在於其龐大的用戶群體以及內容的覆蓋程度(每次百度搜索第一條就是csdn),但從其使用體驗來說,我認為是三個產品之中最差的。
從內容質量、社區氛圍、UI界面、使用體驗、用戶個性化來對這三者進行排序,可以得出:
功能 | 軟件排名 |
---|---|
內容質量 | StackOverFlow > 思否 > CSDN |
社區氛圍 | StackOverFlow > 思否 > CSDN |
UI界面 | 思否 > CSDN > StackOverFlow |
使用體驗 | 思否 > StackOverFlow > CSDN |
用戶個性化 | StackOverFlow > 思否 > CSDN |
軟件工程方面的建議
對於CSDN的建議
- 在問題發布模塊,增加Markdown語法支持,以及實時預覽。
- 對問題內容進行審核,保障問題質量。
- 增加用戶權限,使其可以對自己已經發布的評論和問題進行修改。
- 將問題主頁的標簽改為用戶自定義。
- 用更明顯的標識標出用戶感興趣的問題。
- 專家技術團應該要精而不要多。
對思否的建議
- 在問題發布頁面,增加相關問題匹配。
- 可以參考CSDN的專家技術團,對一些比較難的問題,請專業人士回答,這樣既可以提高知名度,也可以增加社區活躍度。
- 多做宣傳。
對StackOverFlow的建議
- 對界面進行優化,特別是Markdown的實時預覽,可以將上下分屏替換成左右分屏。
- 可以增加適當的按鈕樣式,而不是單純用文字作為跳轉按鈕。
BUG存在的原因分析
CSDN
首先是CSDN的問題內容長度bug,這是由於前端在表單提交時沒有做好驗證,但是不合法的內容並沒有被更新到數據庫,很明顯,這是由於前后端交流不夠充分導致的;其次是一些界面上的問題,比如左邊欄和問題列表同步滑動從而導致問題類別查看上的不方便,很顯然設計界面時沒有從用戶使用的角度考慮問題。
思否
視頻顯示問題,主要是測試人員沒有測試同時插入多條視頻的情況;收藏數量問題,也是測試人員沒有做好測試,且前端對於用戶的具體使用場景考慮的不夠充分。
StackOverFlow
網絡環境問題,主要是開發人員沒有考慮到我國國內環境和國際有些許不同。
建議和規划
市場概況
CSDN、思否和StackOverFlow,無疑都是面向IT技術人員的問答網站,從這個角度出發,則所有計算機相關行業工作者以及計算機相關專業的學生都可以算作這個市場的一份子,不論是工作時遇到技術上的難題還是學習過程中遇到解決不了的bug,他們都很有可能會在網上提問,進而使用IT問答網站的服務。
據國家運行監測協調局2021年1月21日發布的《2020年軟件和信息技術服務業統計公報》顯示,“2020年,我國軟件和信息技術服務業持續恢復,逐步擺脫新冠肺炎疫情負面影響...從業人數穩步增加”,“2020年末,全國軟件和信息技術服務業從業人數704.7萬人”。可以估計,國內的計算機從業人數大概在700萬左右,那么計算機軟件相關專業的大學生有多少呢?
據艾媒數據中心公開的數據顯示,“在過去的2019年,中國普通本科計算機類招生人數324599人。2018年,中國普通本科計算機類招生人數293560人。”,我們做個保守的估計,未來四年計算機相關專業每年的招生人數應該不會低於28萬人,則四年總共可以招收112萬人。
故國內與IT技術打交道的人數總共有812萬,這大約就是國內整個市場的用戶數量。
據官方統計數據,CSDN的月活躍人數有750萬,思否的服務人數有300萬+,則CSDN的潛在用戶數量為62萬,思否的潛在用戶數量為512萬。
而國際上,根據statista的統計數據,“ICT industry full-time employment worldwide in 2019, 2020 and 2023”分別為53.2、55.3、62百萬,即估計全球在2023年將會有6200萬的計算機相關從業者,而StackOverFlow的平均月訪問次數為100百萬,若假設每個人一天訪問10次,則月活人數大概有1000萬,那么潛在用戶就是5200萬人。
市場現狀
主要產品
現在市場上的IT問答網站主要分為兩類,一種是以StacKOverFlow為首的單純的問答網站,這類網站圍繞問題發布、問題瀏覽、問題討論為功能核心,主要為全球資深IT技術人員提供一個相互提問和交流的平台,其盈利方式主要以廣告為主(例如StackOverFlow有專門的一個job區,即為公司打廣告,招聘技術人員);另一種是以CSDN和Segment Fault思否為代表的,以技術博客作為主體、問答只是附屬功能的網站(這點在CSDN上體現的比較明顯,而思否正逐漸往這個方向靠攏),該類網站的問答功能雖然不如第一類網站那樣的完善,但依托其博客平台帶來的名氣和流量,這類網站還是在市場中占有一席之地,其主要面向人群為國內IT人士以及計算機相關專業的學生,其主要盈利方式包括廣告投放、付費觀看課程、會員機制等。
優劣勢分析
專門的問答網站的優勢在於其所有的功能設計都是圍繞“問答”這一過程展開,在之前的體驗過程中,StackOverFlow在功能上做到了最好,比如創建問題時的標簽的模糊匹配、問題瀏覽時的個性化推薦等,StackOverFlow比較有特色的地方在於reputation機制,該機制進一步增加了用戶答題成功的滿足感,提高了用戶粘性;除了功能上的優勢,專門的問答網站由於其功能的專一性,其用戶群體使用產品的目的也比較單純,進而用戶產出的問題和回答的質量會比較高,社區氛圍比較良好。其缺點在於缺乏盈利手段,只能通過廣告以及公司招聘合作的方式來賺錢,像Stack OverFlow這種大公司還能單純的依靠龐大的用戶基數收取不菲的廣告費用,其余的小公司只能另尋出路。
以技術博客為主體、問答為附屬功能的網站的優勢在於能夠依托博客平台帶來的名氣,吸引客戶到問答板塊提問和解答,並且可以增設收費課程、付費觀看等盈利手段,其缺點在於網站的內容太多太雜,不可能全部的精力投放到問題板塊上,以致於問題板塊的功能不如單純的問答網站。具體而言還要看公司如何把握博客與問答的關系,像CSDN是主要以博客為主,問答只是作為附屬,其功能完善程度和界面設計都不如Stack OverFlow和思否;而思否是以問答社區起家,后面才慢慢發展出博客板塊,相比於CSDN和Stack OverFlow,思否在博客和問答的把握上比較平衡,能夠在擁有不錯的問答體驗的同時,輸出優質的博文。
產品關系
總體來說,在國際上,Stack OverFlow處於毫無疑問的領頭羊位置,CSDN和思否在國際上知名度較低。在國內,這三個平台還處於競爭的狀態,雖然Stack Over Flow存在網絡連接、語言不和等問題,但其擁有較高的知名度,且廣受程序員的好評和推崇,Stack OverFlow在國內也有不俗的競爭力;CSDN雖然用戶體驗不好,但從數據上來看,是使用人數最多的問答網站;思否的問答功能、UI界面都設計的不錯,但因為較少宣傳,所以知名度會相對低一些,社區人數也比CSDN少,但因其客戶體驗良好,此后有可能會從CSDN吸引一些熱衷於問答的用戶。
市場與產品生態
在百度詞條上搜索CSDN、stackoverflow、segmentfault,我們可以得到其用戶的地域分布、年齡分布、性別分布和興趣分布,因這三者的結果相差不多,我就以StackOverFlow為例,其中,20-29歲的用戶占比74.14%,30-39歲的占比12.08%,地區大多分布在北京、廣東、上海等一線城市,且男性占比88.04%。在興趣愛好方面,出了軟件應用這一興趣以外,有100%的用戶對游戲感興趣、99.02%的用戶對教育培訓感興趣,98.99%的用戶對於影視音樂感興趣。
因此其核心用戶群應該是20-29歲,工作/生活在一線城市的男性,在20-29歲的群體中,可能大多數還是計算機軟件相關專業的大學生或者剛工作5-6年的計算機軟件從業人員,而在30-39歲的群體中,我們不妨假設其主要為具有10年以上編程經驗的高級軟件技術人員。因此,典型用戶將圍繞這些人展開。
屬性 | 特征 |
---|---|
學歷 | 高中畢業 |
年齡 | 21 |
專業 | 計算機類 |
愛好 | 玩游戲、打代碼、聽音樂 |
收入 | 無 |
表面需求 | 解決課程實踐中遇到的bug,或者不會的編程題目 |
潛在需求 | 拓展知識面,加深對專業知識的理解 |
屬性 | 特征 |
---|---|
學歷 | 本科畢業或研究生畢業 |
年齡 | 27 |
專業 | 計算機類 |
愛好 | 打代碼、看教學視頻 |
收入 | 10000元 |
表面需求 | 解決工作中遇到的實際編程問題或者工程問題 |
潛在需求 | 獲得職業發展上的幫助 |
屬性 | 特征 |
---|---|
學歷 | 研究生畢業或者博士畢業 |
年齡 | 35 |
專業 | 計算機類 |
愛好 | 打代碼,看新聞,了解技術前沿咨詢 |
收入 | 30000元 |
表面需求 | 回答問題,幫助他人解決困難 |
潛在需求 | 提高個人聲譽,打造個人技術品牌 |
二次構成特定用戶生態
從上面的數據們可以發現,產品的用戶群體中有很大一部分在對編程感興趣的同時,也對游戲、教育、影視、音樂感興趣。游戲、影視、音樂以休閑為主,構成二次用戶生態的可能性比較低,考慮問答+教育的二次構成,則IT問答網站的用戶和IT課程網站(例如傳智播客、尚學堂等)的用戶可能有一定的重疊之處,可能課程網站的部分學員在學習的過程中遇到問題會去問答網站提問,問答網站可以專門為課程網站的部分課程提供答疑區,並邀請技術專家解答,這樣即可以增加用戶流量,也可以活躍社區氛圍。
二次構成特定產品生態
考慮問答網站和課程網站相互合作,構成產品生態,例如CSDN旗下的“程序員學院”和問答板塊,相互配合,共享同一個用戶群體。
產品規划
在以上三個問答網站的基礎上,我想增加一個“錯題回顧”功能,在該功能里,系統會根據用戶歷史記錄,推送與用戶之前發布的問題相類似的問題,供用戶解答,如果用戶解答成功(被采納),則獲得額外的獎勵。
NABCD
- Need需求:高效地學習應該由兩部分構成,一個是知識的輸入,還有一個是知識的輸出。用戶發布問題,並得到解答,這是知識的輸入部分;只有當用戶能將自己的理解輸出,去幫助別人解答類似的問題,這才算將知識內化,才算是真正獲得了問題的“答案”。
- Approach方法:在原有網站的基礎上,增加一個“錯題回顧”模塊。
- Benefit好處:激勵用戶學習,滿足用戶的個性化需求,增加產品市場競爭力。
- Competitor競爭:“錯題回顧”只是完善了問答這一業務流程,並沒有增加新的競爭對象,主要競爭對象還是類似的其他IT問答網站。
- Delivery推廣:可以與公司合作進行推廣,具體可以參考Stack OverFlow的job板塊。
人員時間配置
人員配置:
六個人:一個UI,一個前端開發,一個后端開發,兩個算法設計,一個測試,項目經理負責提出並完善需求。
四個月:
第一個月,算法設計人員要搜集資料,重點關注如何根據用戶的歷史發布問題記錄,推薦與之相類似的問題;UI要熟悉網站其余部分的頁面設計風格,保證新的功能頁面和網站已有的頁面風格一致;前端開發和后端開發人員要研究網站現有代碼,並初步編寫新增代碼框架;測試人員做好測試計划。
第二個月,完成alpha版本,此時新增功能應該基本能正常使用,但還可能存在bug;測試人員開始白盒測試與黑盒測試。
第三個月,完成beta版本,修復bug,完善界面,改進推薦算法,測試人員開始集成測試。
第四個月,功能驗收,沒問題即可發布。
具體計划
第1周:市場調研,項目經理整理需求,生成需求文檔。開會,布置每個人的學習任務。
第2周:UI熟悉本網站已有的界面風格;前后端探討並繪制類圖、時序圖、交互圖、數據庫結構圖等;算法人員閱讀相關文獻。
第3周:UI開始繪制界面草圖,整理素材;前后端完成類圖、交互圖等繪制工作;算法人員確定算法方案。
第4周:UI提交最初步的界面設計;前后端提交報告;算法人員嘗試實現算法。開會,探討界面問題,確認需求,確認交互接口,布置alpha沖刺任務。
第5周:UI根據會議內容,完善界面;前端編寫頁面,后端開始寫接口;周末開會,探討進度;測試人員撰寫測試計划。
第6周:UI繼續完善;前后端繼續編寫;第一個版本的推送算法已經實現;周末開會探討進度;測試人員設計測試用例。
第7周:UI基本完成;后端基本完成,前端按照接口進行交互;后端和算法交互,將算法整合到后端代碼中;開始測試;周末開會探討進度;
第8周:alpha完成,可以發布測試版本;白盒測試和黑盒測試已完成,開始集成測試和功能測試。
第9周:完成測試報告;收集用戶反饋,開會,探討改進方案。
第10周:優化UI;前后端按照測試文檔和用戶反饋,修改代碼;算法人員繼續優化、改進算法;周末匯報進度。
第12周:優化UI;前后端按照測試文檔和用戶反饋,修改代碼;算法人員繼續優化、改進算法;周末匯報進度。
第13周:發布beta版本;集成測試和功能測試已完成;收集用戶反饋;
第14周:功能驗收;
第15周:微調整部分功能;
第16周:發布正式版本。