团队作业2:分析与设计

一、需求分析(NABCD):
1.1调查问卷:

小学生是祖国的花朵,我们欲设计一款app来提升小学生的四则运算能力,为此我们先有一份调查问卷对用户人群(小学教师,学生,和家长)进行调查走访。以下为问卷截图:

1.2NABCD模型:
通过上面的问卷调查,我们用NABCD 模型进行了分析,分析如下:
1)N(Need,需求)
1.教师:总是自己出题麻烦,有时候想通过快捷的方式出测试的题目。纸质作业易丢失,批改麻烦。
而且学生较多,管理不方便。
2.学生:平常的纸质作业无法得到及时改正,无法及时发现错误,了解自己的不足。做纸质作业枯燥。
3.家长:希望可以通过客观的,便利的渠道了解孩子*期的学*情况,希望有什么方式能激发孩子的学*热情。
2)A(Appproach,方法)
为了解决上述不同人群的需求,我们打算设计一款专门针对小学生的四册运算app。通过vue+django实现。
Question1:老师出题的麻烦的问题
Solution:
1.软件给教师按年级提供题库,当然教师闲暇之时也可以自己出题,添加到题库中。
2.教师新建测试时除了可以手动输入问题外还可以通过选择年级,从题库中选择问题。

Question2:学生作业管理麻烦
Solution:
针对这个问题我们设计了“班级”的功能,教师可以新建班级(新建班级后会生成独立邀请码), 学生通过邀请码加入班级。教师可在班级发布测试,易于管理。

Question3:学生的学*质量无法得到及时反馈
Solution:
教师在班级发布测试后学生可点击进行答题,完成提交后,会自动的生成相应的分数,查看完成状 况。另设错题本,学生可将错题添加到错题本,日后复*使用。
Question4:家长不能方便了解孩子的学**况,希望能增加孩子学*热情
Solution:
1.增加"家长"这一用户类型,家长可绑定自己的孩子,了解孩子做最*完成测试的情况。
2.增加"学豆"功能,学生每次完成测试后,系统会自动根据测试的成绩发放学豆,学豆可以累加,老师 可定期根据学生学豆数,给予相应奖励。以次激发学生的学*热情。

3)B(Benefit,好处)
好处显而易见,设计这款app的目的,就是为了解决教师,学生,家长各自的问题,通过这款app便利了大家,使之能真正达到提高小学生四则运算能力,养成良好学**惯的目的。

4)C(Competition,竞争)
据我们了解,市面上大多的四则运算软件设计都较为简单,功能较为单一,无法起到真正的作用。就这次课设十几个小组来说,因为大家的题目都相同,相信竞争还是特别激烈的。

5)D(Delivery,推广)
1.初期现在部分学校进行试用。在用户使用的过程中,希望用户及时反馈不总,我们定会及时考虑,不断的完善app的功能。
2.app较为成熟之后,可向全国各小学进行推广。
通过分析,我们团队的方向已经基本确立,对以后的努力方向也有了一定的了解。

2.需求规格说明书:
根据前面的分析,我们进行了思考和讨论,对软件系统进行设计,编写如下需求规格说明书。

(包括软件用例图、用例规约;顺序图;类图)

编写的《需求规格说明书》的git地址:
https://gitee.com/pu1996/four_operation_app

二.原型界面:
1.原型磨刀地址:https://free.modao.cc/app/MECJqzO9m2PtwWPLqfshDLiptlkGtOJ
2.主要界面展示:
1)登录界面:

2)新建测试界面(教师可以新建测试,在闲暇时可以出题添加到题库中):

3)答题界面:

三.编码规范:
A.后端代码风格:
1)代码风格
·花括号“{}”不允许省略,即使只有一段代码。“{”,“}”独占一行
·缩进。4个空格的缩进(编辑器能完成),不要使用Tap
·if,while的“()”不能省略
·每行最大长度79,换行可以使用反斜杠,最好使用圆括号。换行点要在操作符的后边敲回车。
2)文档编排
·import模块时,按标准、三方和自己编写顺序依次排放,之间空一行。
·不要在一句import中多个库,比如import os, sys不推荐
·如果采用from XX import XX引用库,可以省略‘module.’,都是可能出现命名冲突,这时就要采用import XX。
·引入module命名时,除约定俗成*惯外,一律用Camel风格
3)常量、变量的命名
·常量——所有单词大写并用“_”分隔。
·局部变量——Camel风格。
4)参数的命名
·Camel风格
·要使用left和right来命名重载的二元操作符的参数——如果参数没有具体的含义。
·要使用value来命名重载的一元操作符的参数——如果参数没有具体的含义。
·不要在参数中使用数字编号。
5)注释
·对接口和复杂代码块必须进行注释。
·修改代码时保持注释同步。
·未完成的功能使用TODO标记。
·修改他人代码时要先注释对方代码,并写明修改原因,不允许随便删除他人代码。
·发布前移除无用注释。
B.前端代码风格:
1)Vue组件的命名需遵从以下原则:
·有意义的 : 不过于具体,也不过于抽象
简短 : 2 到 3 个单词
具有可读性 : 以便于沟通交流
·同时还需要注意:
必须符合 自定义元素规范 : 使用连字符 分隔单词,切勿使用保留字。
app- 前缀作为命名空间 : 如果非常通用的话可使用一个单词来命名,这样可以方便于其它项目里复用。
·组件是通过组件名来调用的。所以组件名必须简短、富有含义并且具有可读性。

2)基于模块开发
·始终基于模块的方式来构建 app,每一个子模块只做一件事情。
3)组件props原子化
·组件的每一个属性单独使用一个 props,并且使用函数或是原始类型的值。

4)javascrip基于ES6规范

四.小组分工
郭璞(组长):原型设计,需求规格说明书,编码规范,博客整理。
林欣悦:用例图,用例规约
黄可薇:访问用户,NABCD分析
陈国聪:顺序图,需求规格说明书
范宇航:类图,需求规格说明书

posted @ 2018-05-19 16:40  噗噗1996  阅读(207)  评论(0编辑  收藏  举报