測試報告$\alpha$

pytorch可視化編程網站VisualPytorch NAG \(\alpha\)版本發佈了!點擊網址訪問:VisualPytorchhtml

1、測試查蟲(bug detection)

測試貫穿了開發、集成、部署,甚至整個\(\alpha\) 階段,咱們遇到了各類各樣的bug,既有往屆學長遺留下來的,也有添加新功能過程當中遇到的。因爲時間問題,咱們對其中發現的一些問題進行了修復,剩下的問題咱們會在儘快修復並更新。如下是測試中發現的問題:前端

bug分類 solved Unsolved
界面 1. 前端表單回顯出現問題 1. 表單驗證時的圖片顯示異常
2. create_models中字體不一致,沒有利用上模板的字體,找不到是由於哪一個CSS沒導入引發的問題
3. 部分字體被方格遮擋,影響用戶體驗
工具使用 1. git使用不當形成的文件冗餘/減小
2. bootstrap自帶模態框的bug,同一頁面的多個模態框切換會出現沒法關閉模態框的狀況(已解決,將註冊/登陸模態框分離爲兩個不一樣的Button)
免費版jsplumb不支持模塊封裝的功能,使用jsplumbtoolkit能夠避免這一問題,準備在\(\beta\)階段開發
前端功能 1. model_details可能存在模型加載不出來的問題,機率較高(已解決,是因爲重複導入js引發的問題)
2. model_details網絡層元素有可能加載到模板外面(已解決,但因爲create_model.html裏模板大小的改變可能還會加載到外面)
3. 部分圖塊在移動鼠標後信息丟失
4. 預留了一些欄目待開發,點擊無響應
1. help.html中相比原來的版本少了一個模型構建實例的gif,由於缺乏相應的參數
2. 有時create_model.html裏的jsplumb元素點不動,沒法調整網絡層
3. 有時頁面跳轉會異常,出現signiture timeout狀況
後端功能 1.shape, layer_type, dampening, nesterov字段與實現與說明文檔不符
2. 前端沒有傳入默認參數,須要後端進行處理
傳入後端的內容缺乏creator信息
先後端接口 1. 採用先後端分離,單獨提出header以後,部分頁面引用重複/出錯
2. 先後端json格式未統一,json中缺失out字段
先後端分離且header單獨提出,並使用了文件夾分層,文件夾內外對header引用的相對地址不一致(目前的方法是在document.ready中修改屬性,但會致使瀏覽器console對資源引用報錯,沒法找到。對實際使用/觀感,均無影響)
往屆 1. 以前項目遺留的OPS字段未去除
2. 往屆項目生成與保存按鈕錯位

2、場景測試(scenario testing)

1. 典型用戶

屬性 描述
姓名 趙XX
年齡 22
職業 學生,deep learning初學者
重要性 這一類的用戶是本網站的主體用戶,咱們的項目主要就是爲了對於pytorch沒有基礎的新手菜鳥,因此這一類的用戶對咱們來說很是重要
所佔比例 60%~65%
知識層次 對深度學習有一個基本的認知,但不知道pytorch的具體使用方法
動機 但願經過本項目幫助學習深度學習和pytorch的使用
用戶要求 界面簡單直觀,生成的代碼簡潔明瞭,而且但願在關鍵的地方有相應的教程輔助
屬性 描述
姓名 錢XX
年齡 31
職業 相關領域從業者,deep learning初學者
重要性 也很重要,雖然所佔比例可能不如第一類典型用戶大,可是這一類的用戶若是底本項目很滿意的話,可能會成爲本項目的長期用戶
所佔比例 25%~30%
知識層次 長期在相關領域工做,對深度學習和pytorch都有了必定認識,可是不多本身動手開發
動機 這一類的用戶多是短時間內接到某一項目須要deep learning,但願經過本項目來學習或者直接用本項目來完成工做
用戶要求 除了界面、代碼、教程輔助這些部分以外,他還對所生成代碼的可移植性有必定的要求
屬性 描述
姓名 孫XX
年齡 38
職業 IT行業精英,deep learning精通者
重要性 有必定的重要性,這一類的用戶不會太多,他們可能會爲本項目提出改進意見,可是通常不會在本身的項目中真正的使用。可是若是能讓他們以爲方便實用,也有可能讓他們在一些小工程中應用本項目
所佔比例 5%~15%
知識層次 長期在這一領域工做,有豐富的深度學習的知識,精通pytorch,曾屢次開發基於pytorch的深度學習項目
動機 這一類的用戶多是短時間內接到某一項目須要deep learning,但願經過本項目來學習或者直接用本項目來完成工做
用戶要求 對生成的代碼有較高的要求,但願其能知足工程性的要求

2. 場景測試

典型用戶:趙XXgit

  • 場景描述:
    趙XX正在學習深度學習相關的課程,但願經過可視化編程對深度學習有一個直觀的映像。他登錄本網站第一件事就是查看幫助信息,瞭解各個模塊的功能和使用方法。但因爲對pytorch不夠熟悉,他不知道各個網絡層以及全局數據的參數應該怎麼選擇,在看了幫助文檔中對他所需參數的大體介紹後,他配置出了本身的模型,並生成了代碼,成功運行。chrome

  • 需求分析:編程

    用戶界面簡潔優雅,操做過程順滑(好比拖拽組件和模塊之間連線)
    因爲趙XX的深度學習基礎有限,須要在幫助文檔的輔助下才能配置好本身的模型。
    本網站也會提供一些經典的模型,讓初學者即便短期沒法完成本身模型的配置,也能夠引入經典模型來體驗本網站的用法。json

典型用戶:錢XXbootstrap

  • 場景描述:
    錢XX接到一個工程須要用到簡單的深度學習網絡,他久聞pytorch的大名,決定用它來搭建本身的網絡,但他此前沒有使用pytorch的經驗,這時他了解到本網站。經過相關的輔助信息,他輕鬆地在網站上搭建了本身所須要的網絡,而且成功地將這個網絡應用在了工程中。
  • 需求分析:
    與第一個場景的要求大體類似,可是這一場景因爲會應用到實際工程中,對代碼的可移植性有必定要求。

典型用戶:孫XX後端

  • 場景描述:
    孫XX是工做在這一領域的老江湖,他據說有一個可視化pytorch編程的網站,就想着進來體驗一下。進來網站以後,他發如今網站的界面優雅,拖拽組件和連線過程順滑,可是做爲一個專業人士,他仍是發現一些參數設置上的不合理,因而他在評論區留言,提供了改進的意見。在通過數次的改動以後,孫以爲這個網站已經達到本身的標準,開始長期在工做中使用這個網站瀏覽器

  • 需求分析:網絡

    設置評論交流區,一方面能夠接受大佬對本項目的意見,另外一方面也方便用戶之間關於本項目的交流。
    除了前面提到的要求,專業的從業人員對所生成代碼的要求更高

3、測試矩陣(test matrix)

測試瀏覽器 測試環境(瀏覽器版本) 組件拖拽 組件連線 參數輸入 點擊事件(組件按鈕、連接)下拉框 報錯狀況 生成代碼 主頁面 聯繫咱們頁面 訪問量統計頁面 代碼生成頁面 頁面切換
chrome 81.0.4044.122 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 幫助文檔跳轉其餘界面時有時url會出錯
火狐 75.0.0.7398 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上
ie 11.0.9600.16428 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上
edge 42.17134.1.0 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上
QQ 10.5.3 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上
UC 6.2.4094.1 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上
Opera 69.0.3653 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上
搜狗 8.6.3.32395 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上
獵豹 6.5.115.18480 正常 正常 正常 正常 正常 正常 正常 正常 正常 正常 同上

4、\(\alpha\) 出口條件(exit criteria)

1. 需求

ScreenClip

咱們在功能設計階段,定下了如下四個大的目標任務,能夠說是原始出口條件

  • 擴展更多的網絡層(如BN, ConvTranspose等)
  • 支持網絡封裝成基本模塊
  • 經典模型(如U-Net, ResNet, AlexNet, VGG-16等)
  • 更精美的可視化

但是在開發的過程當中,因爲須要對相關知識的學習,讀懂往屆的代碼,最終開發的時間僅有10天的時間。同時發現實現封裝的過程並不是像想象中那麼容易(免費版本的JSPlumb不支持這一功能),封裝沒法完成,天然基於封裝的經典模型就只能擱置,轉而去完成一些相對簡單的任務。因而出口的條件改變了:

  • 擴展更多的網絡層(如BN, ConvTranspose等)
  • 擴展更多的靜態參數(如損失函數、優化器等)
  • 更精美的可視化
  • 用戶登陸與模型保存
  • 幫助文檔的撰寫

2. 功能

頁面 功能交互描述 已完成 未完成 頁面展現
登陸界面 一、用戶的註冊功能 二、用戶的登陸功能 三、忘記密碼功能 1,2 3 ScreenClip
框架構建 一、構建已經有的經典框架 二、個性化構建本身的框架 三、可以保存爲本身的個性化構建 四、可以實現參數調整 2,3,4 1 ScreenClip
模型管理 一、模型的刪除功能 二、模型的查看 三、導出代碼 1,2,3
代碼生成 一、根據所選框架生成特定代碼 1 ScreenClip
問題反饋 一、能夠向後臺反饋存在的bug,可配圖可配文件 二、能夠看到以前反饋問題的應答 2 1 ScreenClip
共享空間 一、共享本身編輯的模型,並附上模型的說明 二、他人可進行評價、克隆模型 三、顯示模型的閱讀、點贊數據 1,2,3
用戶統計 一、統計網站ip的訪問次數,記錄用戶使用人數 1 ScreenClip
關於咱們 一、羅列有製做團隊的具體信息,能夠發郵件進行詢問 1 ScreenClip
幫助文檔 一、動圖展現操做方式 二、對模型參數的文檔 1,2 ScreenClip

3. \(\beta\)計劃

在接下來的版本中,咱們會更多地花時間去支持更多模型的搭建、豐富產品內容、提高用戶體驗。

包括\(\alpha\)階段但願實現而還沒有實現的:

  • 支持網絡封裝成基本模塊
  • 經典模型(如U-Net, ResNet, AlexNet, VGG-16等)

已經實現還能夠進一步改進的:

  • 更精美的可視化
  • 幫助文檔的撰寫

以及須要在將來實現的:

  • 模型的本地部署與在線運行
  • 集成tensorboard可視化
  • 模型分享與交流
  • 模型參數分析與可視化

\(\beta\)階段,咱們會繼續努力,爭取完成以上預約的目標,提供一個儘量實現的最好的產品。

相關文章
相關標籤/搜索