2020軟工-軟件案例分析


軟件案例分析

Q A
這個作業屬於哪個課程 2020春季計算機學院軟件工程(羅傑 任健)
這個作業的要求在哪里 軟件案例分析
我在這個課程的目標是 系統地學習軟件工程開發知識,掌握相關流程和技術,提升工程化開發的能力
這個作業在哪個具體方面幫助我實現目標 分析評測軟件,體會軟件工程的原則在實踐中的種種體現,幫助我們在之后的工作中中做得更好。

第一部分

調研,評測(軟件的bug,功能評測,黑箱測試,第8章用戶調研,12章軟件的用戶體驗)

​ 我選擇評測的軟件是CSDN app,官方對CSDN的介紹是:CSDN(China Software Developer Network 或 Chinese Software Developer Network,中國軟件開發者網絡),中文IT知識服務集團,業務有IT信息傳播、技術交流、教育培訓和專業技術人才服務。旗下有網絡社區、學習平台和交流平台。可以看出它是一個針對IT領域,功能比較綜合的學習類app。從應用介紹來看,它的主要功能包含以下幾個方面:

1.全新的技術交流社區-Blink等你加入。

2.技術難點精准定位-解決bug輕松無壓力。

3.熱點博文一鍵收藏-想看就看很方便。

4.高質量的IT資訊及時更新-讓你走在互聯網前端。

5.熬夜還在敲代碼-夜間模式呵護你。

1.使用10–30分鍾這個軟件的基本功能(請上傳使用軟件的照片)。

注冊登陸軟件及軟件界面:

2.描述使用這個產品的過程,解決了用戶的問題么?軟件在數據量/界面/功能/准確度上各有什么優缺點?用戶體驗方面有問題么?

  • 界面

    ​ 首先是CSDN的圖標,為了對比同類app的不同,我下載了以下軟件進行簡單的使用,當然主要體驗的還是CSDN,紅色大概是CSDN的特點之一,包括PC端的網頁頭部也是紅底白字的大寫的‘C’,很個性化。在以下幾種軟件中,我覺得CSDN的圖標看起來還是很簡約美觀的,有一種親切感(大概是因為使用的頻率比較高吧)

點進去CSDN的首頁,包含上方的搜索條,導航欄,中間的主要內容,還有下方的五個功能模塊;在整體頁面設計上還添加了夜間模式;有四種字體大小可以自己調整;首頁博文標題清晰,按照內容的不同分為Java,前端,Python,架構等多個導航欄,精准分類,讓用戶可以各取所需;在“學習”模塊(這大概是顏色最豐富的模塊)有熱門課程,直播課,電子書,面試題,霸王課幾種分類,價格和聽課人數數據標注清晰;在“Blink”模塊,有關注用戶的動態和推薦動態以及排行榜,頁面上方還設置有熱門話題(讓我有一種刷微博的感覺);在“消息”模塊主要是交流中心,關於點贊、評論、粉絲、系統消息提醒;“我的”模塊主要是用戶個人信息,發布動態、瀏覽數據等。整體來說我覺得CSDN的界面設計很清晰,配色也不會覺得突兀,讓人感覺很舒服。大多數軟件下方的模塊設置大概都是這樣,只是主題顏色有不同,包括知乎(藍色)、掘金(藍色)、開源中國(綠色)、極客時間(黃色)等,不斷敲鍵盤的小猴子大概是CSDN的吉祥物(?),每次加載界面都能看到他,但是敲太久了不免有點捉急,讓我覺得有點小驚喜的是小猴子在夜間模式和普通模式是有一點差異的,還挺可愛:

  • Blink交流社區

    ​ Blink社區包含各類用戶的動態,包括疑難問題求解、生活日常、技術分享等;看到喜歡的動態可以轉發點贊評論收藏,想看就看很方便;並且還有發布Blink的快捷鍵,可以添加話題、圖片、鏈接等,只有等級大於4的用戶才可以發布音頻和文檔,還有樹洞發布的功能,但是好像無法設置動態的分享范圍,要么匿名要么實名要么刪除,無法設置僅自己可見或是好友圈可見;Blink的上方有推薦排行榜,是按周按獲贊數來排名的,但是好像僅顯示2019和2020年的數據,並且2019年上半年的數據沒有顯示,私以為這個按周來排名或者按周索引的方式會不會粒度太小了點,同時很難和日期對應起來,要是添加月排行會不會更好呢?在這個排行榜上只有用戶名字和點贊數信息,沒有相應的標簽,想要通過排行榜來關注某位用戶還需要進一步了解。

    ​ 我轉發了原力菌的一則動態,一個小時內有三位用戶點贊,我點進去他們的主頁發現內容都比較干凈,沒有博客沒有帖子沒有Blink,粉絲數卻都上百,有點困惑...

  • 技術難點搜索解決

    ​ 這一部分的功能大概是我使用最多的,雖然之前都是在PC端搜索,一出來好多都是CSDN的相關博客。就我自己的使用體驗來說,CSDN的確是可以提供很多有效的解答困惑,消除bug的答案,有很多精品的帖子實用性很強,技術分享也很細致;除此之外,CSDN覆蓋問題十分廣泛,從軟件環境配置到各種語言的編譯bug,從學習筆記到各類項目的源碼分享,從職業道路的選擇到前沿技術的分析,可以說是包羅萬象,可以很好的解決用戶的問題。在首頁部分Java板塊有專門的Java頻道,訂閱需要充值,但是可以查看免費的Java日報,是日日更新的,我閱讀了幾則日報,感覺干貨滿滿,但是為什么只有Java板塊有呢,其他語言是不是也可以考慮開發專屬頻道?
    ​ 在搜索某個問題,比如“vs qt調用dll”,在博客板塊可以按相關性和按熱度分類,但是會出來一些不相關的博客;按熱度排序,大概就是按照訪問量排序?可以看出訪問量是遞減的,但是博客的評論數和點贊數似乎和排序沒有什么關系,不知道這個熱度在后台是否有訪問量、點贊數、收藏數、評論數的權重計算公式,如果有的話大概會更好;若是按照熱度分類,前幾名都是在很早之前的博客,vs的版本也有很大很大的變化,這樣的博客對現在的參考意義應該不會很大;可以按時間選擇所有時間、最近一周、最近三月、最近半年的博客,要想找到適合自己的問題的解決方案,要花費不少力氣;按相關性排序,點開會發現不少雷同的博客,在PC端也習慣了解決一個問題打開十幾個頁面...然后關掉大部分重復內容。

  • IT資訊

    IT資訊可以從首頁的推薦動態看到,我覺得資訊和技術分享應該是分開的,但是在首頁可以看到不同類型的博客是混雜在一起的,這大概對閑暇時間像刷微博一樣刷CSDN的用戶是比較有效的,用碎片時間獲取信息,但是對於目的明確只是想了解前沿技術發展現狀的用戶就不那么友好了。后來發現有一個"CSDN資訊"的官方賬號,從閱讀量和評論數來看似乎影響力並不大。在"我的"模塊還有論壇,主要是討論問題,解答疑惑的地方,可以根據自己的興趣確定上方的目錄欄,但是沒有針對各個板塊的搜索欄,在右上角有一個圖標點進去發現是"CSDN論壇-IT技術交流平台",搜索欄也不會出現搜索結果;也有可能這個板塊的使用人數不多,看發帖時間間隔平均上有三四天。

    ​ 這一點上我把CSDN和開源中國、IT之家做了比較。在開源中國的"綜合"模塊,上方可以選擇專門的“資訊”目錄以了解最新的IT動態、比如軟件更新、框架發布等,並且有分門別類的軟件和開源信息介紹;在IT之家也有很多有意思的最新資訊,側重點在系統、軟件更新方面,在技術分享上做的不精,有一點淺嘗輒止的感覺,更適合關注技術結果而不需要了解開發的用戶。開源中國在技術難點搜索解決上沒有CSDN上的全面,在IT資訊和開源項目方面做的很完善。IT之家有很多莫名其妙的東西,比如一些淘寶風的衣服鞋子零食推薦(緩緩打出一個問號)。

    CSDN:

開源中國:

IT之家:

  • 學習功能

    ​ 在學習模塊有各種語言各種研究領域的課程和電子書,基本上都需要付費或者vip,因為沒有上過這類課程,所以也不做評價。但是關於某些課程的標題,比如"八小時零基礎快速轉型AI","21天通關Python","6天入門Python",我覺得還是挺有挑戰性的。在面試題板塊嘗試做了幾套題,有錯題集的功能,但是對錯誤的客觀題只有答案沒有解析,並且嘗試了幾套題都沒有刷到主觀題;而且反復進去同一個公司同一個職位的面試題是大部分是相同的,只是順序不同;在客觀題題目有代碼時,沒有排版換行空格,看起來不那么方便;每次進去面試題都會有小猴子和幾句鼓勵的話,感覺首次進入出現就可以了?

    ​ 在這個方面,牛客做的更專業更豐富,是面向求職的,包含有公司真題,專項練習,錯題練習和面試寶典,社區還有面試分享、求職資訊、內推資源;面向用戶除了求職者還有HR,也與企業建立聯系。我覺得要是想在求職上有所收獲,牛客是一個很不錯的選擇。

    CSDN:

牛客:

  • 數據量

    ​ 一點開CSDN就有"成就1億技術人"的界面,大概用戶有一億?在這方面我沒有找到確切的數據,wiki上提到CSDN有1000萬用戶,在百度上提到2010年06月CSDN 注冊會員突破1500萬,按照CSDN的影響力和近十年互聯網行業的迅速發展,我覺得大概一億也不是沒有可能。但是活躍的用戶數和注冊用戶數差距應該還是比較大的,有些用戶有輸入有輸出,也有一部分用戶只是有時候搜索解決問題的,並不會寫博客或者轉贊評,注冊賬號也只是為了能夠不受限的閱讀博客。

3.對產品有什么改進意見?

使用了一兩個小時,沒有特別嚴重或者緊急的錯誤,但是有一些小bug:

  • 收藏夾數目有誤

    我發布了一則Blink動態,收藏后在收藏夾里可以瀏覽到,收藏夾數目也實現了+1,但是刪除Blink動態后,在收藏夾里無法再找到那則動態,收藏夾數目卻沒有變化:

  • 閱讀總時長有誤

    專注使用CSDN有快兩個小時,瀏覽博客的時間也比較長(並且不算上PC端的閱讀時間),但是在"我的"模塊閱讀總時間還是只有一分鍾:

  • 論壇搜索功能

    這是之前提到過的"CSDN論壇-IT技術交流平台",在搜索欄輸入數據沒有返回結果,並且不知道這個搜索功能是針對哪個方面的,帖子關鍵字?用戶?

  • 博客編輯

    在app上可以編輯博客,雖然我覺得寫博客在PC端更方便,但是這個功能肯定是有使用者的,我稍早時候在網頁編輯的博客還沒審核通過(八個小時都在待審核隊列),晚上在app端想修改權限為私密但是卻發現好像沒有辦法改變權限:

除此之外,我還想提出幾點小小的建議:

  • 審核增加查重功能

    ​ 在CSDN上只要有博主發了比較好的文章,就會有很多人復制粘貼並且只字不改不標明來處,從搜索引擎搜出來一堆相關文章但是點進去看才發現其實是同一篇文章,時間跨度可以從零幾年到二零年,不同標題不同作者,但內容卻完全一樣。經常會發現搜一個問題,進到CSDN里是:樓主解決了沒,樓主還在嗎?樓主只回復解決了三個字或者根本不回復。當然我相信肯定存在真誠交流、友善對話、版權意識清晰、有原則的用戶,並且這樣子的用戶是大多數。但是如果侵權泛濫,原創無法維護自己的權益,這樣長此以往會打擊很多創作者的積極性吧。在CSDN發布博客需要審核,在審核博客是否符合法律法規的時候也加上查重審核會不會更好呢,在查重率達到一定量時,要么必須在文中標清楚來源,要么只能將博客設置為私密。

  • 長代碼塊折疊

    ​ 在博客中常常會有引用源碼的情況,在使用的時候發現點擊代碼塊可以橫屏閱讀,這個功能真的很驚喜了,盡管是在手機比較窄的界面上也可以比較順利的閱讀代碼:

但是在某些博客中,引用的代碼過長,用戶可能希望先閱讀文字再決定要不要仔細分析源碼,這時候長代碼可能就會比較影響閱讀體驗,要是有代碼塊折疊功能大概會更好~

  • 博客搜索功能

    雖然我在CSDN只發布了一篇博客,但是似乎只有分類專欄,沒有博客關鍵字搜索功能,要是博客數量很多,管理和查找起來比較麻煩,搜索功能感覺是可以錦上添花的,包括在足跡和收藏里也是。

  • 增加舉報功能

    使用CSDNapp的時間不算長,但是在這期間就有用戶關注並且私信,私信內容肯定是不符合國家法律法規的,但是我卻只能在右上角屏蔽沒有辦法舉報,也沒有辦法刪除私信界面或是刪除管理粉絲(真是妖魔鬼怪哪都有),挺影響使用體驗的。要想CSDN能有社交性,並且是友善的交流,我覺得對用戶身份的審核和驗證還是挺必要的,因此感覺舉報功能比較重要。

4.結論經過這么多工作,你一定有充分的理由給這個軟件下一個評價:

  • a) 非常不推薦

  • b) 不推薦

  • c) 一般

  • d) 好,不錯

  • e) 非常推薦

    綜合以上的比較評價,我會選擇c,CSDN的網頁版感覺已經足以滿足用戶的基本需求,定量測評如下:

類別 描述 評分 (滿分 10 分, 良好 6 分, 及格 4 分,聊勝於無 1 分, 很差 -3 分)
功能 核心功能 博客搜索、學習答疑交流功能完善;技術難點精准定位;技術交流社區比較成熟 10
細節 沒有很嚴重的問題,夜間模式和代碼橫屏比較加分;但是之前提到的一些小bug是減分項 6
用戶體驗 界面舒適,內容豐富,功能完善,沒有特別惱人的廣告;但是無法確保用戶質量管理粉絲比較減分 6
輔助功能 夜間模式很舒適;但是比如簽到、抽獎一類的,我不太能理解這些小功能的作用 7
差異化功能 定位在IT領域的交流社區和技術難點分析解疑,我覺得CSDN在同類app里還是有很強大的受眾和影響力的 8
軟件的效能 占用內存不多,還可以清理緩存,啟動速度較快 8
體驗 軟件的適應性 在斷網情況下無法使用(大部分app都如此吧),電腦、手機、ipad可以實現賬號信息互通 9
成長性 能夠記住用戶的選擇, 適應用戶的特定 7
用戶有控制權 關鍵操作有確認提示,有明確的錯誤信息。 讓用戶方便地從錯誤中恢復工作, 快捷操作鍵可調整。 6

第二部分

分析(參考8.6節對工作的估計,和14.1節軟件工程的質量)

在書上我們看到:

程序 = 算法 + 數據結構

軟件 = 程序 + 軟件工程(軟件服務還有數據,內容的因素)

軟件企業 = 軟件 + 商業模式

1.使用此服務的所有功能,估計這個軟件/網站/服務做到這個程度大約需要多少時間(團隊人數6人左右,計算機大學畢業生,並有專業UI支持)。(必答)

​ 計算機大學畢業生,並有專業UI支持,如果說是簡單的實現所有功能,並且完成測試部署上線,我覺得大概需要半年左右;首先計算機專業畢業也不一定有開發app的能力和經驗,前期可能需要學習相關知識以及軟件工程必備的理論,還有團隊磨合分工討論交流的時間成本;然后再開始正式開發,這個"開發"理解為"仿造"CSDN app,所有的需求已經比較明確,只是實現功能;開發測試需要迭代進行(由於軟件功能的復雜,測試和debug估計要花費不少時間精力),最后要到功能完善可以上線的程度,大概需要半年甚至更長。上線只是說明軟件完成了,還沒有商業模式的營銷和推廣,CSDN有現在的影響力和巨大的用戶群體是從1999年到現在一步步累積起來的,這二十年里也是見證了互聯網行業飛速的發展歷程,現在再做一個同類app要想達到CSDN的高度,擁有大規模受眾,感覺是挺有挑戰性的事情。

2.分析這個軟件目前的優劣(和類似軟件相比),這個產品的質量在同類產品中估計名列第幾?(必答)

優點

​ 1.軟件技術難點定位精准;技術交流社區比較成熟,功能豐富且完善。

​ 2.有穩定的使用群體和比較大的影響力。

​ 3.界面簡約美觀,某些小細節比較驚喜。

缺點

​ 1.博客重復率比較高,找到真正實用的信息需要一定時間。

​ 2.從技術交流社區的功能拓展開去,雖然有了網課或者面試題等的功能,但是沒有專門的app做得好,比如mooc,牛客等,要做到廣而精且不會讓用戶覺得混亂還是比較困難的。

​ 3.用戶質量沒有把關。

綜上,在IT領域技術交流社區和技術難點定位方面,我會把CSDN放在第一位,畢竟類似開源中國,IT之家,掘金、博客園等的涵蓋范圍相比CSDN還是稍窄,CSDN在IT領域也可以說是比較完善的先鋒者了;但是在IT學習和求職方面,我覺得CSDN的針對性沒有那么強,名次可能在4、5名。

3.從各方面的問題,推理出這個軟件團隊在軟件工程方面可以提高的一個重要方面(具體建議)。

​ 1.在測試的時候可以更細致,比如現在還是存在一些小bug。

​ 2.增強對博客質量和用戶的審核,在用戶體驗上還有很多可以優化的地方。

​ 3.關注博客的時效性,搜索某一關鍵詞,時間跨度太大,是否可以考慮清理某些無用的博客。

4.你在第一部分發現的bug,為何軟件團隊不能在發布前修復?他們是不知道,還是有意不修復?你覺得是什么原因?可以從下面的可能性中選取幾個:

​ 我覺得CSDN對用戶的需求把握的很好,在第一階段發現的bug也不是重要且緊急的bug,我猜測大概只是因為沒有測試到,畢竟軟件是需要不斷迭代的,用戶反饋也是重要的一環,可以幫助軟件更完善。

第三部分

建議和規划(參考《構建之法》第8章功能的定位和優先級;第9章項目經理)

1.首先,市場有多大?潛在的用戶有多少?

​ CSDN主要是針對IT領域有技術需求的用戶,現在計算機編程能力也算比較普及比較重要,不只是計算機專業,幾乎所有工科專業都會涉及到各種各樣的技術問題,並且互聯網行業更新極快,需要不斷地學習,CSDN無疑是百科全書一樣的存在,拋開現有龐大的用戶數目來說,還有非工科專業的IT從業者以及每年不斷增加的用戶數目,所以市場是非常廣泛的。

2.目前市場上有什么樣的產品了,它們的優勢劣勢在哪里?和它直接競爭的產品在那里?

​ 目前市場上比較類似的產品有IT之家,開源中國,掘金,博客園,牛客等;他們的優勢在於專攻某一方面,比如之前提到的牛客對求職的針對性和專業性是CSDN比不上的,開源中國的新興資訊是CSDN所欠缺的,但是CSDN的綜合性和影響力也的確讓其他產品望塵莫及。考慮到CSDN功能的復雜以及技術交流分享社區的完善,似乎還沒有發現可以跟他正面剛的產品,但是作為目的性很強的用戶來說,要是想要專注某一方面,CSDN可能就不那么占優勢了。

3.作為新的項目經理,這個產品的核心用戶群是什么樣的人,典型用戶長什么樣?學歷,年齡,專業,愛好,收入,表面需求,潛在需求都是什么?

核心用戶我覺得可以分為學生和IT從業者。

學生:學歷主要應該分布在本科;年齡在18-25歲;專業包括但不限於計算機專業,大部分理工科應該都會學習編程,也就會涉及到CSDN;愛好(寫代碼?創造bug?);收入不固定;表面需求是學習新知識安裝軟件配置環境DEBUG等等,潛在需求是從輸入到輸出,在CSDN上分享自己的經驗,尋求共鳴。

IT從業者:學歷應該在本科或者專科以上,也或許是從培訓機構畢業的IT就業者;年齡在26及以上;專業不限,畢竟誰都有可能轉換自己的求職目標;愛好(創造世界?);收入穩定;表面需求應該也是解決問題,潛在需求是把握行業動態,讓自己處於時常更新的狀態。

4.如果你有錢可以招聘6個人,有4個月的時間,你作為項目經理,應該如何配置角色(開發,測試,美工等等)?描述你的團隊在16周期間每周都要做什么,才能在第16周如期發布軟件的改進版本,並取得預想中的成績。

​ 如果我是PM,我會配置兩位開發,兩位測試,兩位美工;

​ 在第1-2周PM需要組織用戶調查,明確用戶需求,了解比較競爭對手的產品,然后進行產品設計,分解任務,指定流程,這個階段可能需要PM組織,團隊里所有人都參與討論和交流。

​ 第三周開始以功能為主導的開發,若分前端后端,則需要確定接口;測試人員在這個時候也需要匹配開發人員的進度進行測試,及時反饋;美工人員開始依照功能具體設計界面。從這一周開始每天記錄進度,每周開會;進度記錄不需要很細致,文檔也要避免冗余,達到基本要求就好。開會需要總結反饋這一階段的問題,整個團隊需要互相了解進度,商討解決方案,及時調整流程。

​ 第三周到第十一周應該都需要維持這樣子的工作狀態,開發、測試、美工平行進行;在第十二周進行平台的初步部署和發布,先在小規模范圍內進行軟件試用,及時收集反饋、需求和調整bug。

​ 十三周到十五周進行工作迭代,由於第一輪開發時間比較緊急,可能在初次發布會有比較重要的bug待解決以及架構、功能的按需調整。

​ 第十六周進行軟件的部署、發布和維護,或許還需要一定程度的營銷,整個團隊都需要及時關注用戶反饋,進行產品的更新和優化。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM