第四次作业

1.首先制作了需求调查问卷:

 

并将做好的调查问卷通过父母的朋友圈和弟弟妹妹的QQ空间传播,得到数据反馈。

2.四象限法需求分析:

优势:

  • 网站界面使用bootstrap框架开发,风格统一、颜色搭配合理、添加卡通形象,符合小学生用户群体;
  • 网站功能添加了用户等级和成就模块,使用者可以通过不断的练习来提升级别、并获得更高的成就,通过这样的方式吸引用户;
  • 历史记录成绩汇总,采用图表的形式,例如:柱状图、折线图等,直观、清晰、明了,方便老师及时获悉学生的学习情况;
  • 学习提升模块,意见反馈,帮助用户更快的找到学习中的问题,在练习中有所提高;
  • 网站内容丰富,形式新颖,在基础的小学生四则运算功能上进行了扩充;

劣势:

  • 用户体验还需完善,页面加载速度还需提升;
  • 网站版本的兼容性,bootstrap兼容版本IE 8.0+;
  • 算法还需优化;

3. 需求分解

4.工作总结

在项目开始阶段,我小组总共将项目分为三大部分:前端部分、逻辑处理部分和表达式处理部分。针对这三部分分别进行分工,同步进行。

   如下图为项目开始以来的进度。在项目初期主要为需求分析和设计阶段,此时,github上主要提交项为需求文档和设计文档,先由一名成员将文档初稿提交,然后组内成员根据需要进行修改和增添,针对一些功能,小组内部同样会进行线下讨论,然后将新功能更新至github,如此反复修改文档,直至最终完成初期的文档。

  在需求和设计文档完成后,成员根据自己的分工,分别进行相应的编码工作,这个阶段为实现阶段,实现阶段紧跟在设计阶段后。在此阶段,先由一名成员将项目进本框架传至github,然后每人clone一份项目,在这个项目基础上进行实现,每过一段时间,小组成员将自己完成的部分上传至github,由于编码阶段的文件通常是在本地调试或者测试完成后才上传,所以github上的代码文件更新频率比较低;此外,由于一些工作存在依赖关系,比如表达式生成算法需要应用到后台程序,不能单独上传gihub,所以不可能做到所有工作同时并行,这也就导致很难做到每项工作都及时上传;在编码阶段,每个组内成员都会创建一个自己的分支,用于在github上同步自己的工作,这是为了不破坏主分支,之后,只有自己分支实现的功能确定没问题后才会与主分支合并;综上,就形成了如下曲线,曲线后面的部分是编码阶段,在这期间,通常是在本地进行编码和测试,只有一个模块功能相对完善后才上传至github,通常是上传至自己的分支。可以预料到,在编码阶段的后期,github会有更多的更新。

 

  下图为每个阶段github上项目的更新次数,前面部分为需求和分析阶段,后面为编码的初期阶段。

 

  下图为github上项目的代码量变化,即代码量的增长速度。此图中,前面部分为需求和设计阶段,基本没有代码量,中间为项目开发的初期阶段,这里存在一个峰值,这代表短期内,项目代码大量增加,这部分是项目的基础部分,包括项目的基本框架和项目的基本功能,上传的代码为本地测试通过的代码。

 

   下图为项目的分支情况。在项目的初始阶段,即需求和设计阶段,只有一个主分支,之后的编码阶段每个成员都拥有一个分支,这个分支主要是用于,在不破坏主分支的情况下实现自己的那部分工作,在自己分支上的工作完成后,会与主分支进行合并。

 

  总之,项目进行到此时,已经完成了大部分工作,实现的功能包括登录注册、表达式生成、四则运算练习及考生等核心功能,接下来需要将每个成员的工作统一到一起,然后,继续扩展项目。在完成这个项目的过程中,存在的问题包括:由于每个成员的情况不同,不能找到一个每个人都熟悉的方法去实现项目,所以,项目开始后,决定实现一个web程序,但小组成员需要一段时间去熟悉开发环境和框架,这就导致项目开发效率比较低;这个问题需要组内成员合作解决,如在分配任务时,根据成员自身情况进行分配,以及由了解这个开发环境的人去帮助其他人进行学习。

posted @ 2016-10-09 13:49  Goliath  阅读(266)  评论(0编辑  收藏  举报