个人作业-软件评测
作业基本信息
这个作业属于哪个课程 | 2021春软件工程实践 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 掌握并实践利用软件工程方法构建大规模高质量应用的技术,提升自身工程能力。 |
作业正文 | 正文 |
其他参考文献 | 《构建之法》 |
第一部分 调研,评测
CODE CHINA
体验
介绍:2020年9月11号,由csdn发布推出的一款全新的代码开源平台,是独立的第三方开源平台,继承gitlab最新版的部署方案,具有前端部署 Web 服务、GitLab-Shell、Gitaly 仓库存储服务分离的功能。
使用:首先先注册了code china的账号,进入了主页
然后点击右上角的新建按钮发现可建立一个空白项目或者仓库,那我们就来试着建立一下
这是项目建立好后的截图,可以看到和GitHub很多内容有异曲同工之妙比如克隆按钮还有新建按钮 新建文件等功能比起以往作业时要方便很多,在还没有提交前,项目里是没有内容的
然后笔者试着新建一个test文件,可以看出和GitHub desktop差不多的提交界面,不过支持在线编辑,在线提交
剩下的issue用来解决软件的bug,还有合并请求用来解决俩人共同协作的问题,Wiki用来编写软件的文档,分析功能就比较有意思,能够统计commit次数,还能统计语言分布,比github好用多了
然后就是个人主页,显示基本信息和自己所参与的项目仓库还有最近自己的操作
优点:比github之前用的快好多,具有的可视化操作更多,分析更详细,还有因为是中文所以功能更清楚详细
缺点:缺少个人特色,和同类型的中国自己的代码开源产品相比,缺少独特的竞争力
改进意见:可以设计点代码查重功能,提供题目搜索功能,可以大幅吸引用户使用
bug描述
bug严重性量化标准
严重星级 | 代表程度 |
---|---|
1星 | 不会影响操作体验,只是某个界面的显示错误,对用户数据和正常浏览基本没有阻碍 |
2星 | 此bug已经使某个按钮连接出问题,造成某个功能模块的丢失,表现为功能无法使用,点击无反应 |
3星 | 影响用户操作体验,对用户的安全性会有轻微危害 |
4星 | 不能忽视的错误,需要及时更改,否则会侵害用户的权益,网站需赔偿的类型 |
5星 | 不修复将造成用户大面积流失,严重危害用户自身权益或者将使服务器待机 用户的数据泄露等等 |
BUG1
bug发生时测试环境:360浏览器 13.1.1302.0,windows 10 19042.867
bug的可复现性:特定条件下
bug复现条件:在搜索栏点击后面的页数
bug复现步骤:在搜索想要内容的时候,点击开放中筛选,会出现获取最新评论错误的字样
bug具体情况描述:就上述步骤浏览信息的时候显示无法获取评论,普通浏览仓库是不会出现这样的情况的
。bug分析
成因分析:笔者认为这是因为评论系统与服务器逐渐爆满,能呈现的只有前几个仓库的评论,后面获取的最新评论会失败。
bug的严重性:两颗星
系统功能:系统阅读评论功能损坏
安全性:不危害系统安全和数据安全
用户体验:不好,使用户的评论不能第一时间展现,解决问题的时间延长了。
对于bug的预期及改进建议
bug预期:修复后,可以获取最新的评论你
改进建议:多扩容服务器,还有多注意其他功能是否也有无法展示最新发言的问题
综合评论
定性:一般
codechina是2020年9月20日推出的产品,找出一个bug容易的情况下可以感受出,此产品还未非常完善,还需要一直调整bug,如果说基础功能的话此产品已经达到了基本要求,但作为一款中国的本土化代码开源软件,需要在汉化部更中国化一点,大幅的中英夹杂容易让人摸不着头脑,对此软件减分,在细节部分达不到要求。作为一个被GitHub毒害,怨气十足人的来说,用户体验还是可圈可点的,起步不用git这种需要输入指令就能实现大部分要求,但是就像应用与软件工程课的话,我觉得推出个校园版又不是不可行,提供更多选择的端口或者给予更多的端口登入,因此综合评分我给CODECHINA 60分,能满足基本要求但有广阔的扩展空间
Github
体验
老朋友了哈,除了登不上其他都还好,话不都说,来使用一下github
在挂上了vpn后这洋东西终于可以用了,首先我们进入了个人主页界面
可以看到和codechina的界面非常像,同样是展示个人信息和仓库,然后接下来点击我的仓库
可以看出和codechina拥有差不多的界面,这是之前上传仓库,提到GitHub就不得不提他的可视化软件github desktop很多操作只能在desktop上实现,在github更多以浏览为主下面进入github的编辑界面
然后回去介绍下主界面可以建立分支还可以 pull request 就是把仓库pull回去一个很经典的操作 在主界面的右边可以发版本release号
然后就是setting功能,这里可以添加写作者,共同对这个库进行编辑,就不用进行pull requst操作
优点:就是没啥子bug,使用功能啥由于年份过久,前人的修改bug下,已经很少存在bug,同时是使用人最广的代码开源网站
缺点:上不去,经常抽风,需要可视化软件帮助
改进意见:希望能针对中国用户优化下服务器,可能会缺失一部分中国人群
bug描述
bug严重性量化标准
严重星级 | 代表程度 |
---|---|
1星 | 不会影响操作体验,只是某个界面的显示错误,对用户数据和正常浏览基本没有阻碍 |
2星 | 此bug已经使某个按钮连接出问题,造成某个功能模块的丢失,表现为功能无法使用,点击无反应 |
3星 | 影响用户操作体验,对用户的安全性会有轻微危害 |
4星 | 不能忽视的错误,需要及时更改,否则会侵害用户的权益,网站需赔偿的类型 |
5星 | 不修复将造成用户大面积流失,严重危害用户自身权益或者将使服务器待机 用户的数据泄露等等 |
BUG1
bug发生时测试环境:Windows 10 19042.867, Firefox 87.0
bug的可复现性:经常发生,而且具有分时性,在一天内分时点击240次,进不去的次数为163次
bug复现条件:特定时间特别是晚上和早上点击github
Bug复现步骤:打开火狐浏览器,点击GitHub网址会出现找不到网址的情况
bug具体情况描述:就是有时打得开有时打不开这个网址,而且在挂vpn的情况下依然有上不去的情况
bug分析
成因分析:由于中国有墙的存在,不过这个有时登的上去有时登不上还有其他原因一起造成
bug的严重性:四颗星
系统功能:基本是用不了,很拖累工作进程
安全性:不危害系统安全性
用户体验:极差,特别是要交作业的时候这么搞一下,心态直接炸裂
对于bug的预期及改进建议
bug预期:应该比较难修复吧,因为要考虑各国国情
改进建议:希望给中国网民更方便的路径连接,是否可以考虑镜像网站等操作
综合评论
定性:挺好的不错
由于面向全球,且作为git类的老大哥一样的存在,他自身的功能性bug凤毛麟角,且具备完善的代码开源流程,基本可以拿到基础的完整分,而且由于缺少bug,所以有极佳的用户体验,给各大企业提供了很多帮助,但是他的网络实在硬伤,在没有vpn的加持下,他就像一颗不稳定的定时炸弹,需要他的时候基本都是爆炸的,而且github基本需要搭配其他附属的产品使用,如git或者desktop一起使用,而且这些软件加赛概率不谈,github依然是提到代码开源平台的第一选择,而且还比CODECHINA多了许多的校园便利功能,加了不少分。
Gitee
体验
首先注册一个gitee账号
首先国际惯例进入主界面,可以发现gitee在个人主页的功能界面是下了苦功夫的,比起其他俩个多了星选集,还有贡献度划分以及所属的各个仓库,而且gitee分为高校版和企业版,强烈建议以后软工实践使用gitee
在主广场界面,我们可以看见推荐以及可以自由的创建自己想要的仓库,这一点都是前俩个没有的,而且有高汉化,对于中国用户非常良心,在广场中心,还有各个用户的评论。
点进其中一个仓库,可以看到大部分的功能和前俩个一样的,同时对大部分功能用了中文,右边第一个是仓库的基础和版本号,下面还有项目的五星属性图和成员
这个图里面藏有仓库更详尽的信息,以统计版本的时间轴为主,这边也自己新建一个仓库
可以看到在建立仓库的界面,gitee也有更加丰富更加简洁的功能,设定语言即有基础的模板
进入主界面可以看到gitee已经把基础的文件给我们弄好了,界面相对前面俩个更充满着生机
这是自己仓库管理的基本权限内容
优点:界面更丰富,功能更多,网络很流畅,总体感觉很棒
缺点:较少,除了bug还存留比github多,基本蛮好的
改进意见:希望能脱离传统的gitlab式pull request方法,开创新的方式,这样才能稳步提高
bug描述
bug严重性量化标准
严重星级 | 代表程度 |
---|---|
1星 | 不会影响操作体验,只是某个界面的显示错误,对用户数据和正常浏览基本没有阻碍 |
2星 | 此bug已经使某个按钮连接出问题,造成某个功能模块的丢失,表现为功能无法使用,点击无反应 |
3星 | 影响用户操作体验,对用户的安全性会有轻微危害 |
4星 | 不能忽视的错误,需要及时更改,否则会侵害用户的权益,网站需赔偿的类型 |
5星 | 不修复将造成用户大面积流失,严重危害用户自身权益或者将使服务器待机 用户的数据泄露等等 |
BUG1
bug发生时测试环境:Windows 10 19042.867, Firefox 87.0
bug的可复现性:特定复现
bug复现条件:仓库设置下的清空仓库操作
Bug复现步骤:打开火狐浏览器,点击仓库,然后带点击清空仓库,点击第一步验证通过后,点击火狐自带的匹配此网站,会直接跳过,而普通输入则会显示密码错误
bug具体情况描述:就是只要在firefox浏览器的情况下,只要匹配当前帐号就容易被别人进行操作,没有屏蔽浏览器的自匹配系统,会丢失重要数据,管理权限形同虚设
bug分析
成因分析:和火狐浏览器的安全性管理不和谐
bug的严重性:五颗星
系统功能:会被别人盗用系统功能
安全性:危害系统安全性
用户体验:极差,需要防范别人使用自己电脑,点一下可能努力就白费了,这需要密码的操作形同虚设
对于bug的预期及改进建议
bug预期:希望快点修复这个bug,不然有可能造成难以估计的损失
改进建议:建议屏蔽浏览器的匹配系统
综合评论
定性:非常推荐
作为本土化的老大哥,gitee的汉化不得不说是非常成功的,用户体验非常良好,而且整体的新版界面也非常舒服,加上附带的各种功能,让人可以说耳目一新,总体来说非常的方便,而且广场的社区推荐也很好,能够快速的浏览很多很著名的仓库,从而看看有很多启发,而且官方的程序员对反馈的bug重视程度远大于codechina,改进的速度都非常给力,用户体验很舒服,但不过用户的安全性方面反倒有了些纰漏,因此需要扣不少分数。不过鉴于对中国产品的鼓励,我会给这个产品90分,感觉他具有广阔的前景,非常看好它
采访
被采访的同学是隔壁软件工程s班的黄镔同学,得到过小黄衫
第二部分 分析
使用此服务的所有功能,估计这个软件/网站/服务做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI支持)。
CODECHINA是三个里面最简单的,依福大计算机学生的能力,做完应该要4个月,github和gitee应该会麻烦一点,五个月可以实现
分析这个软件目前的优劣(和类似软件相比),这个产品的质量在同类产品中估计名列第几?
CODECHINA的优势感觉好像不是很明显,明明是中国人的产品,却充斥着GitHub的影子,可以说很不纯,而且细小的bug也很多所以我认为在三个软件里,它是排在末尾的,质量堪忧,github作为老牌平台,其基本质量都非常强硬甚至很难在网上找到bug,而且使用用户也是三个中最多,不过上不去这个网站就没有什么用,排在第二名,最后一个gitee是我觉得最满意的,很多东西都有自己的特色,bug还相对较少,不过还是有很多进步空间的,我觉得gitee可以排做这些里面的第一名,感觉还是蛮好用的
从各方面的问题,推理出这个软件团队在软件工程方面可以提高的一个重要方面(具体建议)。
codechina我认为最应该改的是那个不三不四的语言系统,半英文半中文真的好难受,还有应该多添加自己的特色,不然谁会用你家的软件,然后关于github希望他能多优化下中国的网络系统,这样使用的人会爆炸性上涨,而且很多人也对GitHub有很深的感情,如果能修复这个网络问题,无疑是gitee一个巨大的劲敌,然后gitee的话我认为在这些竞争中属于比较有利的,建议的话,能够在开源模式上有所突破,使得脱离传统的git模式,使得他不止在中国有名,在国际上也打出自己的名号
你在第一部分发现的bug,为何软件团队不能在发布前修复?他们是不知道,还是有意不修复?你觉得是什么原因?可以从下面的可能性中选取几个:
我认为codechina的话由于发布时间较晚,所以修改的能力还有限,挺难发现bug,但对于github来说程序员早就知道,但限于中国国情,难以修改,而gitee的话,测试把关不严,敷衍了事,没有注意在特殊的配置或环境下测试。
第三部分 建议和规划
市场概况
首先市场有多大?
根据2020年中国开源报告显示,gitee代码仓库已经超过1500万,其中包含企业和校园版,且增长幅度俩倍有余
同样是中国开源报告,GitHub上在使用的活跃仓库有5600万个
其次直接的用户有多少?潜在的用户又有多少?
直接用户的话:根据上述图片,GitHub总开发者就有5600万个,活跃者1400万个,gitee也有600万
潜在用户:每年加入计算机工作的人和在校大学生20万人左右
市场现状
目前市场上有什么样的产品了?
代码开源平台有github gitee和codechina 轻量级的opensns和magichub oscchina
上述产品的定位、优势与劣势在哪里?
剩下的好几款产品都不成什么气候,定位都比较小众
GitHub的定位应该是面向国际的,面向全球,技术方面很过硬,是最出名的平台,优势在于里面的技术大牛很多,bug偏少,劣势在于没有设置小众化的偏向,而且对于中国网民不友好
Gitee的定位更多的偏向中国,主打中国自己的代码开源平台,功能丰富,界面好看,优势在于使用及其方便,而且企业版和校园版好评,汉化程度高,劣势在于局限国内,难以走出国际,且浏览器会出现某些问题、
Codechina由于刚出来没多久,想要瓜分剩下的中国市场,优势在于有csdn做支持,技术力庞大,缺点在于宣传不广,bug较多,现在难以吸引新人入社区
市场与产品生态
这个产品的核心用户群是什么样的人?典型用户是什么样的?学历,年龄,专业,爱好,收入,表面需求,潜在需求都是什么?
核心用户群是计算机软工类学生以及计算机软件企业
典型用户举例:
福州大学大三学生,年龄20,专业软件工程,爱好编程,收入在校,表面需求:软工实践任务使用github,潜在需求:提高合作开发能力
清华大学研究生,年龄27,专业电子信息,爱好赚钱,收入:年薪五十万,表面需求,公司合作开发,潜在需求:对安全性和数据库具有极高的要求
华南理工大学生,年龄25,专业计算机科学,爱好:前端开发,收入年薪30万,表面需求,毕业项目合作设计,潜在需求:合作开发程序的良好平台以及快捷的功能设计
产品的用户群体之间是否存在一定的关系?是否有利用其相互作用二次构成特定用户生态的可能性?
当然这是完全可能的,你看像第一个用户在毕业后可能就会像2 3用户进化,而2 3用户的在上班过程中的选择会受到他们例如用户1学生时代使用开源软件的影响,从而表现特定的用户生态
产品规划
你要在当前软件的基础上设计什么样的新功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用NABCD分析。
功能:计划在GitHub上增添一个高校使用的功能,主要能够快速阅读学生的各项指标,commit详情,还能够给学生评价,打分数
N:因为现在很多高校都在使用GitHub做课堂作业布置,添加这个功能会使老师作业批改方便很多
A:单独设立高校平台全球大学皆在此授课
B:节省老师和助教的时间达到效率的提高
C:与gitee高校版对标,不过相信gitee高校版的用户偏向于中国,而我们则面向全球
D:可以在名校宣传,比如有些来自大企业的人都来自名校,然后再校内进行宣传
如果你是项目经理,可以招聘6个人,并且有4个月的时间,你认为应该如何配置角色(开发,测试,美工等等) 才能在第16周如期发布软件的改进版本,并取得预想中的成绩
前端开发和美化:2人
后端开发:2人
测试bug:1人
项目经理:1人
请为你的团队设计16个周期每周的详细规划
第一周:使用gitee校园版
第二周:进行讨论,规划要设计的功能
第三周:学习git框架开发
第四周:进行Ui图标设计
第五周到第八周:alpha版本前后端设计
第九周:整合接口
第十周:测试并修改bug、
第十一周:试发步
第十二周:进行反馈bug并修改
第十三周到第十四周:进行beta版本设计进行前后端开发
第十五周:发布最新版本,并反馈
第十六周:修改bug,完善发布最终版