一、 软件需求
1、用户注册功能。用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码完成注册;
2、用户完成注册后,界面提示设置密码,用户输入两次密码匹配后设置密码成功。密码6-10位,必须含大小写字母和数字。用户在登录状态下可修改密码,输入正确的原密码,再输入两次相同的新密码后修改密码成功;
3、密码设置成功后,跳转到选择界面,界面显示小学、初中和高中三个选项,用户点击其中之一后,提示用户输入需要生成的题目数量;
4、用户输入题目数量后,生成一张试卷(同一张卷子不能有相同题目,题目全部为选择题),界面显示第一题的题干和四个选项,用户选择四个选项中的一个后提交,界面显示第二题,...,直至最后一题;
5、最后一题提交后,界面显示分数,分数根据答对的百分比计算;
6、用户在分数界面可选择退出或继续做题。
二、 实现的功能
我的任务是实现1、2、3,并且在原有功能的基础上添加了两个新功能:找回密码、管理员模式。下面对这两个功能做一些简单的介绍:
【忘记密码】
- 这是在软件中很常见的功能,在未登录的情况下假如用户忘记密码了也能轻松找回,更加人性化;
- 具体操作为:在首页点击“忘记密码?去找回”后,会要求输入用户所绑定的手机号码(在注册部分的逻辑中同一手机号码不能绑定多个账户,如果手机号被绑定过会弹出提示),然后获取验证码,输入正确的验证码后即可重置用户密码,在输入两次密码匹配后重置密码成功。
图1 第一步:点击“忘记密码?去找回”
图2 第二步:输入手机号,点击获取验证码,输入验证码后点击确认
图3 收到的验证码
图4 第三步:输入两次新密码
图5 找回密码成功
【管理员模式】
- 学校的教务系统里老师和学生身份登录是不一样的功能,因为这是一个小初高数学学习软件,想到让老师登陆后可以查看用户的学习情况,但是由于时间有限,只能实现管理员账号登陆后可查看用户个人信息,没有实现查看做题情况;
- 管理员账号预存在了json中,其他注册的用户信息也保存在了这里;
- 具体操作为:管理员账号登陆后,输入想要查看的用户个人信息(用户名不可相同,若相同注册时会弹出提示),然后可以看到该用户绑定的手机号码、密码,可以点击修改密码后修改该用户的密码(管理员可设置任意密码,因为是管理员)。
图1 第一步:管理员账号登录
图2 第二步:输入想要查看的用户
图3 第三步:查看该用户信息
图4 第四步:若点击修改密码可修改用户密码
图5 提示修改密码成功
三、 图标解释
:返回上一级
:登录状态下退出账号
:登录状态下修改密码
四、 可完善的功能
- 用户做题时只能一直往下不能回到上一题;
- 获取验证码只能点击一次,不能倒计时后重新获取;
- 没有保存用户做题情况。
五、 心得体会
这次结对编程收获了很多,为了实现获取验证码功能注册了好多短信服务的账号,最后还是选择的阿里云的免费个人版;在存储用户个人信息中第一次用到了json。队友的出题逻辑写的很棒~