测试报告$\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\)阶段,咱们会继续努力,争取完成以上预约的目标,提供一个尽量实现的最好的产品。

相关文章
相关标签/搜索