項目 | 內容 |
---|---|
課程連接 | 2020春季計算機學院軟件工程(羅傑、任健) |
做業要求 | 我的博客做業 |
課程目標 | 瞭解如何創造出一個足夠好的軟件 |
本博客的收穫 | 分析比較不一樣軟件的區別,提出本身的見解 |
我選擇的軟件是CSDN的手機APP。CIT社區CSDN (Chinese Software Developer Network) 創立於1999年,致力於爲中國軟件開發者提供知識傳播、在線學習、職業發展等全生命週期服務。當在編程時遇到問題百度時,CSDN確定會在頭幾個連接中出現。若是有空想向行業內的大佬學習時,CSDN也有很是多優秀的文章可供參考。目前相比全部相似網站,包括博客園或者簡書,CSDN擁有更高的在線活躍人數。同時配合一系列的周邊擴展型領域發展,能夠說CSDN是中國全部程序員交流學習的第一選擇。程序員
這個APP給人的直觀感覺應該是麻雀雖小,五臟俱全。彷佛設計中想把它打形成美團那樣的應用,把PC版已有功能結合本身可以想到的全部功能所有塞在20MB的小小空間內。但問題仍然是沒有任何一技之長,每一個功能都沒有作到盡善盡美。面試
從總體上而言這款應用知足了普通程序員用手機的通常要求。畢竟對於程序員而言手機是打發時間而不是工做的場所,將全部功能,包括博客、評論、問答、商城等作到沒有BUG,可以運行已是大致知足要求了,但仍沒法吸引核心用戶付費使用。首先廣告過多。當我想搜索和C語言有關的內容時,彈出頁面以下所示:算法
能夠看到下載、問答、電子書都混在一塊兒。而且沒有其餘軟件搜索引擎那樣的依照熱度或者日期排序等功能,整體上看上去很是的亂。同時置頂的都是水平很是差的文章,可見在搜索環節只是作出了功能,但沒有以用戶爲導向,而是以商業爲導向。編程
在對面試題的測試中,首先發現的是對錯題集的整理中只是簡單的給出了正確答案,而沒有給出相關的延伸資料或者內容。死記硬背的方式顯然不利於面試者的備考環節。安全
在看完面試題後使用錯題延伸功能,本覺得會有相關資料做爲參考,結果給我推薦了一推廣告網課。我選擇的是系統運維類的面試,其中對LINUX入門還能理解,但我搞不懂推薦給我JAVA和Kotlin是什麼緣由。彷佛設計的結構只是不加甄別的海量推選。架構
整體上而言CSDN APP解決了用戶在手機端瀏覽博客,進行學習交流的需求,同時也爲平臺的開發者提供了盈利的空間,爲每一個用戶創造了個性化的空間。功能已經齊全了,可是在細節上還有待打磨。APP的優勢包括很是充分完整的功能、較高的活躍用戶數以及很是海量的博客和數據。缺點在於相比其餘同類產品,例如簡書或者leetcode的手機APP而言,CSDN APP界面和排版很是的混亂,而且摻雜了過多的商業廣告元素,致使用戶的體驗感很是差。app
我對該產品的改進意見是在手機APP上簡化沒必要要搜索功能,例如在手機端的搜索中就不必加入下載文件這樣必須在PC端才須要的內容,同時手機端如此海量的網課也很是多餘,個人建議是保留幾類適合在手機端瀏覽的精品課程,刪除必須在PC端學習的課程。同時在排版上,我認爲CSDN APP能夠向stackoverflow或者leetcode app學習,在部分板塊中給出固定的格式要求,讓讀者和博客寫做者可以更加清晰地分享知識並交流。運維
整體上我對CSDN APP的評分爲c),具體量化評分以下圖所示:佈局
類別 | 描述 | 評分 (滿分 10 分, 良好 6 分, 及格 4 分,聊勝於無 1 分, 不好 -3 分) | |
---|---|---|---|
功能 | 核心功能 | 博客瀏覽,學習交流 | 8 |
細節 | 有什麼爲用戶考慮的細節? | 小細節並很少,主界面底部按鈕體現了細節 | 7 |
用戶體驗 | 當用戶完成功能時,不干擾用戶 (例如: 是否不斷彈出不相關廣告)。 | 大量廣告,體驗較差 | 8 |
輔助功能 | 一些輔助功能如皮膚等 | 沒法快速找到輔助功能 | 6 |
差別化功能 | 這個軟件獨特的功能. 它對用戶的吸引力有多大? | 活躍人數較多,相較同類APP有自然優點 | 9 |
軟件的效能 | 佔用內存, 啓動速度, 內存泄漏狀況 | 佔用內存較小,但啓動較慢,容易出現卡頓狀況 | 7 |
體驗 | 軟件的適應性 | PC端和移動端都能良好交互,適應性仍是不錯的 | 9 |
成長性 | 記住用戶的選擇, 適應用戶的特色,用戶越用越方便 | 自動推薦系統薄弱 | 7 |
用戶有控制權 | 系統狀態有反饋,等待時間要合適。關鍵操做有確認提示,有明確的錯誤信息。 讓用戶方便地從錯誤中恢復工做, 快捷操做鍵可調整。 | 退出操做爲例,並無任何提示,致使屢次誤退出 | 7 |
自選 | 自選評分項目 | 內容質量良莠不齊,差異較大 | 6 |
給出我使用CSDN APP的幾個BUG:
一、第一項應該不算BUG,但屬於重大的設計缺陷。在修改我的生日時不能直接輸入指定的日期,只能從目前日期倒回。在倒回時只能以月爲單位進行倒回,不能以年爲單位進行倒回。整體操做很是繁瑣,修改操做花費時間很是長。
學習
二、在瀏覽博客評論區的時候我發現全部博客評論區的連接都是以如下方式給出,沒有給出完整域名,同時在跳轉時也沒有知乎那樣的危險提示頁面。若是有不法分子在評論區放置一個釣魚網站很容易致使用戶中招。
我的認爲所需時間一定會在5個月以上。本APP雖然質量並不高,細節打磨也並無作到完善,可是APP功能很是繁多複雜,我的推算開發者須要解決的問題包括對於用戶我的應用需求的知足,對於博客內容的普遍整理以及分類,搜索引擎的創建,對於網課和視頻的支持,廣告的佈局,我的動態以及關注的發佈和創建以及付費用戶和非付費用戶的不一樣功能區別以及充值環節。其中不一樣的功能之間也存在着交互行爲,須要在開發完成以後進行大量DEBUG操做。同時CSDN數據量和日均用戶數很是的龐大,做爲大量編程者使用的論壇,CSDN的安全性也須要獲得郵箱的保障。而做爲計算機大學畢業生,我認爲在正式開發以前每一個人最少都須要3周時間從新學習對於大型APP開發的相關知識。所以5個月時間只是保守估計,我的認爲時間可能會更多。6我的的團隊之中若是沒有一個好的架構師,可能會由於大量的錯誤和漏洞致使軟件質量較低。
通過我的的調研,同類產品主要包括簡書APP,博客園APP以及leetcode APP。簡書APP相較於CSDN而言,內容更傾向於精品化,排版佈局也更加的優秀。但CSDN優點在於只聚焦於服務計算機類博客,而簡書覆蓋面則較廣,沒法成爲碼農們的第一首選。博客園APP與CSDN一樣專一服務於程序員,可是博客園體量明顯較小,缺乏論壇等配套服務,只聚焦於博客內容,而且在細節功能上不如CSDN APP,多爲學生在應用,缺乏大牛的支持。而leetcode做爲新興的APP,優點在於對於算法領域的專一化,但和CSDN相比問題較多,包括活躍人數的極度缺失以及APP功能仍然不夠完善。整體而言,這類APP更像是做爲網站的複製而存在,而不是致力於在手機端實現PC端所不具有的更多應用,所以整體使用質量都不過高。相較於其它APP而言,CSDN有着較大的體量以及很是高的活躍人數,所以我估計CSDN APP在同類產品中可以名列第一。
我認爲該應用能夠在準確性和易用性兩個方面提升。
我認爲我發現缺陷沒被修復的最主要緣由是軟件團隊對於細節處理的缺失致使缺陷產生。例如生日設定以及網頁連接的羅列,我認爲開發團隊的想法是隻須要快速實現這類功能就萬事大吉,將主要精力投入在博客以及付費板塊的開發中。與其花費更多時間打磨程序,不如開發更多花哨的功能吸引更多用戶。
據不可靠的數據統計,我國的程序員人數大約爲200萬人左右,可是與計算機相關聯的,包括各種理工科學生以及行業從業人數保守估計3700萬人左右。而2011年註冊人數官方宣佈爲600萬人,目前保守估計爲1000萬人左右。因而可知市場和潛在的用戶數量依然是很是龐大的。
內容請參照第二部分第二點的回答
屬性 | 學生 | IT從業者 |
---|---|---|
學歷 | 本科、專科及以上 | 大學、專科或社會機構畢業人士 |
年齡 | 20-25 | 23-40 |
專業 | 計算機類 | JAVA、PYTHON具體開發類 |
愛好 | 學習 | 提高技術實現跳槽和加薪 |
收入 | 我無 | 7000k+ |
表面需求 | 初步走入IT社會,學習他人經驗 | 解決工做中遇到的問題,尋求志同道合的朋友 |
潛在需求 | DEBUG,找到BUG緣由 | 獲取更優秀開發者的工做經驗,把握行業方向 |
配置:1位PM,2位美工,2位程序開發人員以及1位測試人員。
第1-2周:進行項目需求分析。由6人共同參與。因爲PC端已經實現了大量的功能,所以需求分析的關鍵在於哪些功能能夠被移植到移動端,哪些功能須要刪除。
第3-4周:進行UI設計。由PM和2位美工參與。第一個關鍵點,將內容從PC端移植到移動端後排版的分佈。第二個關鍵點是對於軟件提供的功能如何將它們合理地分佈在程序中。最後一個關鍵點是如何合理地植入廣告內容。
第5-10周:開始APP開發階段。由PM和2位程序開發人員參與。整體上分爲2個階段。第一個階段在於整個程序的整體架構,包括邏輯分塊,接口定義,評估各部分實現所需的人手和複雜度。第二個階段開始正式的編程。在寫代碼的同時也要對需求部分以及規劃部分作出及時反饋,報告沒法實現的部分,從新調整需求或者從新規劃。
第11-14周:測試階段。由PM,2位程序開發人員和測試人員參與。做爲功能繁多的程序,測試環節很是重要,所要花費時間也較多。主要進行DEMO測試和壓力測試。DEMO測試包括對於新增長模塊功能,以及老的模塊功能可用性測試。壓力測試經過人爲增長大量數據訪問,看看APP的博客訪問等功能會不會由於新增功能的緣由出現崩潰。
第15-16周:試運行階段。由1位美工,1位開發人員,1位測試人員以及PM參與。將APP版本小規模發佈,讓部分核心用戶搶先體驗產品。在進一步彙報BUG的同時結合用戶反饋對一些細節部分從新調整,並從新測試。