zoukankan      html  css  js  c++  java
  • 现代软件工程 第7-9章 作业

    1.实践软件需求获取方式——张晓丽

    题目:对四则运算软件需求的获取方式进行实践,例如使用调查问卷访问相关关系人等。

            对于四则运算软件需求分析的获取方式,我们组主要采用了两种方式:线上咨询相关人和调查问卷

          (1)线上咨询相关人

           孙雪莹同学小姨家的孩子正在上小学六年级,她通过微信咨询了小姨一些关于孩子学习四则运算的情况,主要咨询了现在小学生学习四则运算中分数和乘除法的情况:

     

          我的一个初中同学在小学实习,我咨询了她一些关于小学生学习四则运算的情况,主要先问了他们学校学生练习题方式:

                            

          还有他们学校学生练习算术题的题型:

         (2)调查问卷

          通过线上咨询,我们组整理了一些问题,做成了一份调查问卷,问卷主要分为三个模块:老师、家长和小学生。通过对不同角色的问卷调查来完善四则运算软件的需求。

         我们通过问卷星网站来制作我们的问卷,问卷星™是一个专业的在线问卷调查、测评、投票平台,专注于为用户提供功能强大、人性化的在线设计问卷、采集数据、自定义报表、调查结果分析系列服务。问卷星具有快捷、易用、低成本的的特点。

         登录问卷星官网,创建一个调查问卷:

     

          填写问卷名称:

     

           填写问卷说明:

     

            添加问题:

     

             编辑问题:

     

             设置逻辑关联,当第19题选择A选项后,会跳转到第25题:

     

              逻辑关联完成:

     

              问卷生成效果:

             通过小组内的测试,问卷基本达到了我们预期的效果:

          现在问卷已经发布,可以通过网址https://sojump.com/jq/9935151.aspx可以进行访问,我们也通过二维码向周围的同学扩散,让更多认识的周围的小学教师,家长和小朋友参与到问卷调查中:

     

            现在问卷在运行状态,预计收集100份左右的答卷后回收答卷,并对结果进行分析。

          

           本次问卷总共回收143份答卷

    小学生四则运算需求分析问卷调查答卷分析

            本次问卷调查主要是面对的人群是小学老师、家长和小学生,针对小学老师和家长的问卷主要是统计功能方面的需求,针对小学生主要是统计界面的需求,通过在问卷星这个平台上的答卷回收,本次问卷总共回收143份答卷,下面是对主要功能点的需求分析结果统计:

            注:问卷星中多选题的百分比计算方法为:

            1、多选题选项百分比=该选项被选择次数÷有效答卷份数;

            2、含义为选择该选项的人次在所有填写人数中所占的比例。

              所以对于多选题百分比相加可能超过百分之一百。

              举例说明:有10个填写了一道多选题,其中6个人选择了A,5个人选择了B,3个人选择了C。 则选择A的比例是60%,选择B的是50%,选择C的是30%。3个百分比相加为140%。

     

            6、学生需要练习哪种类型的运算题?   [多选题] 

             23、您希望孩子在线上做什么类型的题?   [多选题]

           第6题和第23题分别为针对系统中的题型对老师和家长的问卷,通过饼状图可以直观得看出来四则混合运算和带真分数的四则运算的题型所占比重较大,所以我们设计的四则运算系统中首先可以选择题型,主要分为三类:简单算数题、四则混合运算和带真分数的四则运算。

          9、学生做错的题需要在错题本里显示之前的错误答案吗?   [单选题] 

            21、您觉得查看孩子做题情况的时候需要知道在错题本里显示之前的错误答案吗?   [单选题] 

          第9题和第21题是针对小学生对做过的错题是否需要显示错误答案,根据调查问卷的结果,本系统应设有查看测试记录的功能,用户能够通过登录本系统,查看做题的得分记录、用时等信息,通过对调查结果的分析可以看出来有必要显示错误答案。

          11、您希望系统设有学习模块吗?   [单选题] 

           25、您希望系统设有学习模块吗?   [单选题] 

            第11题和第25题是针对学习模块的设置的问题,通过对结果分析,大多数老师和家长认为有必要设置学习模块。

            12、您认为学习模块应该以什么方式展示?   [多选题] 

           26、您认为学习模块应该以什么方式展示?   [多选题] 

          第12题和第26题是针对学习模块展示方式的问题,大多数老师和家长认为学习模块设置成视频讲解和动态图片显示的形式对学生学习四则运算有帮助。因此我们的项目在设置的学习模块会根据实际情况,结合调查问卷,尽量使用视频讲解、动态图片的方式进行学习。

          15、您希望有出题功能吗?   [单选题]

     

    选项

    小计

    比例

    A、希望

    34

    100%

    B、不希望

    0

    0%

    本题有效填写人次

    34

     

     

         29、您希望有出题功能吗?   [单选题]

     

    选项

    小计

    比例

    A、希望

    53

    92.98%

    B、不希望

    4

    7.02%

    本题有效填写人次

    57

     

         通过对第15题和第29题分析,本系统应该设有出题功能,家长可以根据孩子的学习情况给孩子出题并监督孩子完成测试。因此,系统将设置出题模块,有相应的页面配合后台代码实现。

            33、你喜欢什么风格的主题页面:   [单选题] 

           36、你喜欢什么颜色的背景?   [单选题] 

            对小学生的问卷调查主要是针对系统UI设计的,考虑到小学生年龄还比较小,会喜欢一些小动物、小房子等这样的可爱一点的界面。结合调查问卷结果和小组讨论,我们决定使用偏蓝色的卡通风格作为页面设计的方向。

            通过对问卷调查的分析,我们的小学生四则运算系统除了基本模块要增加答题模块和学习模块,在答题模块中,当学生查看错题时要显示错误答案;在学习模块中,主要以视频讲解为主。

    2.需求功能分类——张功

    题目:采用四象限法将你小组的四则运算软件的需求功能进行分类。阐述其优势与不足。

      我们团队设计的四则运算软件的需求功能大概有如下内容:

          1、注册功能:用户能够通过本系统进行注册账号。

          2、登陆功能:用户能够通过本系统进行登陆账号。

          3、查看及修改个人信息功能:用户能够通过本系统进行查看个人信息,如有需要可对其进行修改。

          4、学习功能:用户能够通过本系统,进行基础运算的运算过程的学习或回顾。

          5、自主出题功能:用户能够通过本系统给自己出题进行测试,系统将计算出答案,并与用户实际答案进行比对,获得测试结果。

          6、测试功能:用户能够通过本系统进行四则运算测试,包括简单四则运算、混合四则运算、真分数四则运算等测试题。并在提交后获得测试的结果,包括正确答案,最终分数等信息。

          7、查看测试记录功能:用户能够通过登录本系统,查看做题的得分记录、用时等信息。

          8、回顾错题功能:用户能够通过登录本系统,查看之前测试的错题情况,并进行再测试。

      我们现在回顾一下四象限法的具体内容:四象限法则是一种时间管理的理论,把工作按照重要和紧急两个不同的程度进行了划分,基本上可以分为四个“象限”:既紧急又重要、重要但不紧急、紧急但不重要、既不紧急也不重要。这就是关于时间管理的“四象限法则”,如图所示。这种方法可以帮助人们将应有重点地把主要的精力和时间集中地放在处理那些重要但不紧急的工作上,这样可以做到未雨绸缪,防患于未然,从而有效地开展工作。分类的标准可以通过下图来形象地展示出来。

     图1 四象限法

      在软件工程进行需求分析的时候,四象限分析法可以帮助你清晰定位软件的功能特点和将来要进行研发的创新点,如图所示:

      现在我们进行功能分析:

    • 1、第一象限功能(必要、杀手):测试功能
    • 2、第二象限功能(辅助、外围):查看测试记录功能、回顾错题功能
    • 3、第三象限功能(辅助、外围):注册功能、登陆功能、查看及修改个人信息功能。
    • 4、第四象限功能(辅助、杀手):学习功能、自主出题功能

      通过四象限法分析功能的结果可以分析我们团队设计的软件的一些优点和不足。首先,来说一下不足。对于第一象限的功能,即测试功能,和其他团队相比没有太大的独特性,但由于它是最主要的功能,先将它放置在最主要实现的功能位置。但软件功能设计还是有很多亮眼之处的。比如第四象限中的学习功能和自主出题功能设计的十分人性化,是通过对部分用户需求进行调查之后对原有功能进行添加和修改之后重新设计的。低年级的学生可以通过学习功能对之前学习的运算知识进行回顾,便于之后的练习;学生也可通过给自己出题(也可由父母出题)来更加有针对性的对自身不足之处进行训练,对四则运算有更加深刻的理解。

    3.分解需求——原旭莹

    题目:尝试把四则运算软件需求进行分解,变为每个小组成员可执行的积压工作项,分配这些工作项到小组成员,并预算完成时间(以小时为单位)。并在完成后填入实际用时。

          经小组成员讨论,并结合个人能力,小组成员任务分配如下表1所示。

    表 1 小组成员任务分配

    成员

    任务

    孙雪莹

    (组长)主导团队运作、开发

    张晓丽

    需求分析、用户体验、开发

    张功

    数据库设计、界面设计、开发

    原旭莹

    界面设计、测试、开发

           任务的细化后的具体内容、预算完成时间及实际完成时间如下表2所示。

    表 2 项目任务完成时间

    任务

    任务细化

    预算完成时间(h)

    实际完成时间(h)

    需求分析

    跟小学生及学生家长、老师以调查问卷形式进行沟通,完成需求分析文档

    9.26-9.28(20h)

    9.26-10.6(30h)

    数据库设计

    要求设计合理,综合考虑多种情况

    9.28-9.29(8h)

    10.7(8h)

    界面设计

    要求界面风格、显示信息、鼠标与键盘一致化,以用户为中心,具有良好的用户体验

    9.29-9.30(8h)

    10.8(8h)

    编码、调试

    符合编码规范

    10.8-10.15(72h)

    10.8 -今

    测试

    尽可能多地找出系统与需求分析不符的地方并修改

    10.16-10.22(25h)

          由于需求分析需要问卷调查环节,为取得更加详尽具体的信息(老师、家长、学生对小学四则运算软件的需求信息),在调查取证中所用时间较长,因此超出预算时间,数据库设计和界面设计也因此延后,计划在后期编码测试中适当加快进度。

    4.总结github工作——孙雪莹

    题目:总结近5周以来的github上的工作情况,以图表方式分析你小组的工作情况、存在的问题及解决的方案。

           github上的Graphs可以便捷、形象化地展示出github上的工作情况。用来总结小组的工作情况再合适不过了~

          ①工作情况

          (1)network

           网状图可以看出,目前小组成员孙雪莹、张功、张晓丽,原旭莹都分别建立了自己的分支,并在各自的分支上进行工作,并有在github上的操作。参考第3-6章的博客制定的github使用规范,小组成员都按照规范各自建立分支后进行操作。之前说过因为小组的实际情况,我们采用的是功能团队的模式,每一步,大家都是共同参与的,只是每个人有不同的侧重点,这样在github上的上传就又每个人分别进行。晓丽负责项目需求分析,最近的工作比较频繁,目前小组的问卷调查基本结束,问卷回收后,进行问卷调查报告后,需求分析基本完善了,就可以合并到master主分支上了。张功负责前端正在自己的电脑上进行,所以只上传了数据库的设计文档。旭莹主要负责测试,所以目前还没有正式的测试报告,就建立自己的分支。我负责后台,还在编码中,暂时只上传了一部分。

         (2)Contributors

         

          这个图是对master的贡献度,包含merge操作。可以看出在十一放假期间是个操作低谷期,但也又少量的操作,可以看出小组成员放假期间也在以自己的形式进行着项目的工作。                   

           (3)Code Frequency

                  Code Frequency可以直观的看出commit和delete操作的比例,可以看出主要的操纵还是以commit为主,可以看出峰值在9月25号左右。在十一左右就停滞了,放假期间,大家进行的操作少可以理解。目前项目大家各司其职又共同协作,项目在稳步前进中,但效率还需要加强。

         

         ②存在问题及解决方案

         目前结合小组项目开发和github的使用情况提出以下几点问题:

         (1)目前小组成员各自的文档都在各自分支上,这样是利于分类了,利于查看各自的工作量。但是现在的问题是,没有合并到主分支,其他成员查看他人的文档不方便,而且也不便于大家互相知道对方的进度。解决方案:尽量每次操作之后,就提出一个pull request,这样让其他小组成员知道对方的项目进度,并且每次修改可以让大家共同审阅一下。

         (2)现在小组的需求分析基本完成。项目deadline只剩十天左右的时间了,项目的进度相对来说有些缓慢。目前前端的设计基本完成,需要抓紧在IDE中实现。数据库设计也基本实现,根据调查问卷的结果,要进行相应的修改。后台目前基本功能基本实现,现在也需要根据需求和数据库进行修改,并需要尽快与前端结合在一起。现在最大的问题就是进度照着预计的时间退后了许多。解决办法只能是压缩测试的时间,并且将测试放在平时进行,随时完成一部分,就需要及时进行测试,进行修改。

         总体来说小组成员的参与度还是不错的,每项工作,大家都是一起商量着进行的,这样每个人都参与到了项目当中,不足就是大家的编程水平还需要很大地提高,这个是个长期的工作,希望最后能做出一个满意的项目,也算是一种进步。

  • 相关阅读:
    SSH 远程执行任务
    redmine + git
    progit-cn
    bash keys
    性能优化挑战重重,鲲鹏 HPC 如何突破算力桎梏?
    基因组实现自动AI建模,华为云助力科研人员探索生命奥秘
    【华为云技术分享】从零搭建一个灰度发布环境
    全面拥抱 FastApi — 多应用程序项目结构规划
    【华为云技术分享】物体检测yolo3算法 学习笔记(1)
    【华为云技术分享】物体检测yolo3算法 学习笔记2
  • 原文地址:https://www.cnblogs.com/hahalovejava20160905/p/5941030.html
Copyright © 2011-2022 走看看