码迷,mamicode.com
首页 > 其他好文 > 详细

分析与设计

时间:2018-05-20 18:14:04      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:崩溃   输入   view   中断   ber   首页   idt   分析   编码   

分工:

张敏201521122053:需求分析

陈志强201521122054:原型设计、类图

伊梦扬201521122067:用例图

王超超201521122056:用例规约

郑开添201521122045:顺序图、编码规范

一、需求分析

  小学生四则运算主要的用户范围包括老师、学生以及家长。系统可以给出不同层次的题目,便于满足不同阶段的学生,系统可以统计学生的答题正确率、时间、进步或者退步情况。同时,老师和家长可以实时了解学生的答题及算术情况,老师可以建立邀请学生加入,能够发布作业,考试,限时完成后,由系统统计,并向成绩优秀者发放奖励,这样能够分析全班学生学习状况,帮助老师及时改善自己的教学。家长注册登录账号之后,可以绑定自己孩子对应的信息(即向对应的学生发出申请,通过即可绑定),绑定之后,家长拥有权限查看学生作业以及考试完成情况。

1.1针对用户

  1.工作量大且任务繁重的小学生老师

  2.重视孩子教育的家长

  3.针对小学生的辅导班等教育机构

  4.自主学习的小学生

1.3 假定和约束

约束

描述

高级语言

该系统主要采用JAVA语言,运用SSM框架实现服务端。

可靠性需求

该系统主要针对于小学生的四则运算,题目及答案根据NumberSercives服务实现自动生成,需要注意的问题是答案和题目的匹配度,即正确率,要不然可能会给用户带来错误的暗示或答案。

并行操作

该系统的用户对象为小学教师、家长以及小学生,如果同时多个用户使用,极有可能造成服务器崩溃等问题。

 

 

假定方面:

  1所有针对用户会使用并且愿意使用该软件。

  2.开发团队都充分掌握开发系统所需的相关知识。

  3.开发时间充足。

依赖方面:

  1.小学生四则运算系统的运行依赖于服务器端的核心计算功能。

  2.小学生四则运算系统的用户信息依赖于教师的学生信息数据库。

  3.小学生四则运算系统的运行依赖于PC端的浏览器网页。

1.4.需求规定

1.4.1 对功能的规定

用户

优先级

用例名

用例概述

 

小学老师、家长、小学生

登陆

用户打开系统后,以输入学号和用户名进行登陆

进行测试

输入学号和用户名以后点击“分数”“整数”选择题目类型进行测试,题数为20

查看时间

用户在测试过程中同步计时开始

查看成绩

答题完成,按“确定”按钮结束答题,系统统计得分

再来一轮

本次答题结束,可选择再次进行测试

查看成绩情况

将用户所有答题成绩统计方便查看答题近况

 

查看错题本

将用户之前所做的错题进行总结,根据日期进行分类查看管理。

 

1.4.2 功能描述(概要)

学生

1. 注册账号、登陆账号;

2. 进行考试,查看成绩并获得积分或红包奖励;

3. 查看近期成绩,错题本,包括近期成绩表(可以查看错题并下载试题记录表)。

4. 修改个人信息

5.同意老师或家长邀请,加入班级或者与家长账号绑定。

老师

  1. 1.  注册登录账号;
  2. 2.  创建班级,并向学生发出邀请,邀请学生加入。

3. 在班级里查看学生列表,可进行增删改;

4. 查看整个班级学生成绩统计,包括错题集以及试题记录得下载;

5. 发布考试或作业,设置奖励,限时完成后,由系统发奖,也可设置人工发奖。

6. 修改个人信息。

家长

1.  注册登录账号;

2.  向自己孩子的账号发出申请,学生同意之后,进行绑定。

3. 可以查看自己孩子的学习情况,包括作业以及考试情况,

4. 修改个人信息。

 需求规格说明书地址:

https://github.com/Aero-ku/Four-Operation

二、原型设计

墨刀原型设计地址:

https://modao.cc/workspace/apps/p52296BDFBB1524133348417/preview

界面展示:

首页

技术分享图片

登录

技术分享图片

注册

技术分享图片

主页面

技术分享图片

三、用例图与用例规约

用例图

技术分享图片

 

用例规约

用例名称:加入班级

用例编号:UC01

主要参与者:学生

简要说明:学生登入四则运算系统后根据老师的验证码加入班级。

前置条件:学生必须经过系统登录确认,收到老师所给验证码。

后置条件:学生正确输入班级验证码,成功加入班级。

扩展点:查阅班级信息。

触发事件:学生成功输入班级验证码,点击“确认”加入班级开始该用例。

基本流:

  1. 学生输入验证码点击”确认“加入班级。
  2. 系统显示班级其他学生信息(姓名)。
  3. 学生自己查看自己信息是否有错。

备选流:

*a在输入验证码过程中若发生中断或学生输入的验证码有误,用例结束。

*b若在基本流第6步骤用时过长(超过50秒),系统自动返回初始界面,用例结束。

成功场景:

  1. 加入班级:基本流
  2. 操作超时:基本流中第6步骤用时过长。

失败场景:

输入错误的验证码:基本流第1步骤中,学生输入错误验证码。

 

 

 

 

 

用例名称:创建班级

用例编号:UC02

主要参与者:老师

简要说明:老师登入四则运算系统后根据系统功能创建班级。

前置条件:老师必须经过系统登录确认。

后置条件:老师成功创建所需要的班级。

扩展点:查阅班级所有成员全部信息信息。

触发事件:老师成功登入四则运算系统,选择好班级规格后,点击”创建“开始该用例。

基本流:

  1. 老师成功登入四则运算系统。
  2. 老师在功能菜单选择”创建“操作。
  3. 老师选择班级规格(允许自定义,人数不能超过35)。
  4. 确认规格无误点击”确认“创建班级。

备选流:

*a在输入班级规格时超过了最大人数(35),用例结束。

成功场景:

  1. 创建成功:基本流。
  2. 取消创建:在基本流的某个步骤老师选择了”取消“操作。

失败场景:

输入错误的班级规格:基本流第3步骤中,老师输入错误班级规格。

 

 

 

 

 

用例名称:出题

用例编号:UC03

主要参与者:老师

简要说明:老师登入四则运算系统后针对班级学生情况出题。

前置条件:老师必须经过系统登录确认。

后置条件:老师成功出题。

扩展点:记录学生成绩并按照高低顺序排列。

触发事件:老师成功登入四则运算系统,选择好题型(单符号运算,多符号运算等)后,点击”出题“开始该用例。

基本流:

  1. 老师成功登入四则运算系统。
  2. 老师选择好题型,选择好题目数量。
  3. 老师在功能菜单选择”出题“操作。
  4. 出题成功后发布到班级中。
  5. 测试结束后,生成成绩单。

备选流:

*a出题过程中,任何一步骤中选择”取消“操作,结束该用例。

成功场景:

  1. 出题成功:基本流。
  2. 取消创建:在基本流的某个步骤老师选择了”取消“操作。

失败场景:

无。

 

 

 

 

用例名称:开始答题

用例编号:UC04

主要参与者:学生

简要说明:学生登入四则运算系统后作答老师出的考题。

前置条件:学生必须经过系统登录确认,成功加入老师的班级。

后置条件:加入老师的班级,完成老师出的考题。

扩展点:无。

触发事件:学生在主菜单中选择”开始答题“开始该用例。

基本流:

  1. 学生在主菜单中选择”开始答题“操作。
  2. 系统提示学生考试截止时间。
  3. 学生开始做题。
  4. 截止时间后学生提交答案。

备选流:

*a在基本流的任意步骤选择”取消“操作,用例结束。

*b在截止时间后还没提交答题,系统强制提交,用例结束。

成功场景:

1. 提交成功:基本流。

2. 取消做题:在基本流第3步骤中学生选择了”取消“操作。

3. 提交超时:在基本流第4步骤中学生做题超时。

失败场景:

无效答案:在基本流第4步骤中学生提交的是无效答案(结果全为一个数字)。

四、顺序图

技术分享图片

 

五、类图

   技术分享图片

 

六、编码规范

包名:

  全部小写。

类名:

  大驼峰式命名法单词首字母大写,如计算类为Calculation.java、题目类为Question.java、生成题目的类为CreateQuestion.java。

变量名:

  小驼峰式命名法:小写单词开头,后面单词首字母大写,如:int myStudentCount,定义数值固定的常量使用全大写、下划线分隔的方法。如定义每次测试奖励的最大数量:final int MAX_REWORD_PER_TEST = 100,变量名除了少数循环可以用i、x、y等简单字母以外,其他地方均要使用能表达变量作用的命名。例如遍历每个问题的部分代码如下:

for(int i=0;i<totalQuestion.size();i++)

{

for(Question perQuestion:totalQuestion)

{

    ......

}

}

 

空行:

  处理不相同的事之间要有空行。如package和import之间、函数和函数之间、单个复杂函数中根据不同步骤进行空行。

 

缩进:

使用4个空格。不使用Tab键,不同情况下可能Tab的缩进不同。

 

括号:

复杂操作加“()”小括号方便阅读。代码中的“{}”格式如下:

For(int i=0;i<10;i++)

{

    n=n+2;

}

HTML代码应将标签对称放齐(左右对称、上下对称)。如:

<div>

<a>abc</a>

</div>

 

换行:

不同类型变量的定义换行。即不能出现如下情况:

int questionNum; float score;

应该分两行定义。

过长的语句选取合适的地方换行。如该递归语句:

return addBracketsL(tnode, tnode.getLeftTreeNode())

                                          + tnode.getData()

                                          + addBracketsR(tnode, tnode.getRightTreeNode());

分析与设计

标签:崩溃   输入   view   中断   ber   首页   idt   分析   编码   

原文地址:https://www.cnblogs.com/Aero/p/9063603.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!