团队成员:
翁珊 |
201421123002 |
谢晓萍 | 201421123005 |
黄月梅 | 201421123006 |
徐晓珊 | 201421123007 |
庞伊凡 (组长) | 201421123011 |
赵娅汀 | 201421123012 |
需求分析:
软件的最终目的是用来解决用户的某些问题,需求分析就是要理解要解决的问题,真正明确用户需求。请发表一篇随笔,完成初步的需求分析:
(一)访问软件项目的真实用户(至少10个),确保软件真正体现用户的需求,为软件最终可用奠定基础。
我们采访了同班同学,这里列出几个具有代表性的观点:
1.拖延症问题。可以帮助同学安排日程,把碎片化的时间进行合理安排,把琐碎的事情记录下来以免忘记。
2.可以有语音输入功能,这样更加方便。(用户需求但是估计水平有限)
3.分时段设置,闹铃提醒功能。
4.提醒。学习上要做的事情太多,输入完整的时间,生成计划安排表。
总的生成个人日程安排,提醒,查询功能,核心是待办事项提醒。
(二)参考《软件需求规格说明书》国标规范文本,撰写对应项目的软件需求规格说明书。提供《需求规格说明书》的Git链接。
(三)NABCD 写作
N(Need需求):
学习时间是一种重要的学习资源,能否有效对时间进行合理计划与控制、安排与应用,直接关系到学生的学习效率和血液成就。在心理学领域,学习时间管理的相关研究表明:学习时间管理对提高学生学习成绩和工作效率,减轻心理压力和降低焦虑,提高学生的主观幸福感起到很大的作用。很多有效的学习方法都以时间管理和策略性学习为主要特征。大学生拥有大量自由支配时间,这就要求大学生要有良好的时间管理能力和意识。
A(Apporach方法)
做一个基于web的个人学习计划提醒系统。
开发环境采用的方法:采用数据库(Mysql)储存信息。后端开发采用Python的flask框架。(flask简介,高效,并且之前已经使用过该框架进行开发,开发成本较低。)前端开发主要采用html5+css+JavaScript来进行实现。准备采用开源的Bootstrap框架来进行一个分布式前端框架的设计。
项目中的一些方法:可以根据设定优先级提醒代办事项;设定选项,任务做完就可以标记;导入的方法添加课程表;搜索方法,可以搜索特定的日期时间等
B(好处)
个人学习计划提醒系统可以更加方便的提醒使用者急需处理的事情,拥有紧急程度排序,可以根据待办事项的紧急程度进行提醒;标记已完成或者未完成的任务;有自我评价,系统评价功能,可以对每天的任务完成情况做一个评价;可以导入课程表,查看当日课程表。总的来说,具有课程表,个人日程安排,具备提醒功能,事务紧急程度排序,日程安排查询,个人工作任务制定,查看任务状态,任务完成进度等功能。对于使用者来说是较为方便的。
C(Competitors竞争):
时间与计划管理的网站有 Google Calendar、歪批网。可以去看看它们做的很好的地方。
Google Calendar。按日、按周、按月或下一个四天查看日历;添加活动或可从其他日历程序导入活动;利用邮箱向他人发布自己的计划并可以邀请其参加,来宾亦可以恢复是否参加;可通过电子邮件、弹出式窗口或直接发送到手机的短信来获得通知,可创建多个日历并与大家分享。
当然我们不可能和谷歌存在竞争关系,它是我们学习的榜样。至于现实的竞争就存在于选择同一题目的别的小组的同学啦。但是暂时还不知道他们的项目实现成果,所以暂时无法比较。
D(推广)
先对班级内部进行宣传推广,让他们进行一些评价,然后再向年段,学院的一些协会干部推荐,通过他们再进一步扩大范围的推广,做推广文档,发布在一些社交网站,也可以通过一些同学转发到自己的社交圈,要相信这些社交软件的强大性!!
(四)团队协作,加强分工,需要描述每个成员的具体分工及占整个文档任务的工作量比例。
翁珊:与谢晓萍一起进行原型设计(考虑到他们负责前端,所以做原型设计会更加合适)。负责文档原型解说部分,包括功能需求以及用户界面的解说。项目中负责前端开发。
谢晓萍:与翁珊一起进行原型设计。负责文档原型解说部分,包括功能需求以及用户界面的解说。项目中负责前端开发。
黄月梅:主要负责采访同学,收集客户需求以及类图的制作。负责文档第二部分产品主要描述整理。项目中负责后端开发。
徐晓珊:协同负责性能需求与验收验证标准。博客的编写整理工作,将大家讨论结果在博客上体现出来。项目中负责数据库。
庞伊凡:主要负责性能需求与验收验证标准,以及负责对团队成员进行有关系统开发的整个蓝图概述。项目中负责后端开发。
赵娅汀:主要负责用户场景的收集与描述,以及引言部分,在团队成员进行原型设计的过程中给予了很多具有重要作用的意见。项目中负责测试。
这次大家分工合作,互相提意见,每个成员都积极参与,所以工作量都差不多。
原型设计:
原型设计能够在表现层将设计合成一个逻辑整体,用户能和你一起看到未来交互的软件蓝图、功能和效果,获得较真实的感受,在不断讨论的基础上完善未来的设计思想。因此,原型设计能起到有效沟通的作用,漂亮,直观的原型图更是让人赏心悦目。
这里我们使用的是:一款简洁高效的原型图设计工具mockplus
·登录界面
如果没有账号,可以点击Don’t have an account 注册账号
·主界面有报课任务表和事项表、日历等
(1)点击课程表,可以显示课程表信息
(2)点击事项,可以出现事项表的信息
(3)点击日期,如:周一,跳转到待办事项界面
(4)点击add进入事项添加界面,可以设置开始时间,结束时间以及事件紧急程度。可以设置是否提醒。提醒功能初步设想是通过发邮箱的方式实现的。
(5)右边个人评价栏可以下拉,点击个人评价可以跳转到个人评价界面
(6)点击人头像,跳转到用户信息界面
编码规范:
(一)代码风格规范:首先要坚持代码风格的原则:简明,易读,无二义性。
1.缩进:可以使用tab键或者4个空格。(初步决定是用tab,虽然tab键在不同的情况下会显示不同的长度,但是比较简便)
2.行宽:可为100字符。
3.括号:在复杂的条件表达式中,用括号清楚地表示逻辑优先级。
4.断行与空白的{ }行:每个“{”和“}”都独占一行。
5.分行:不把多行语句放在一行上。
6.命名:可以用匈牙利命名法来进行命名。
7.注释:需要适当的注释
(二)代码设计规范
1.函数:绝大部分功能都在函数中实现。关于函数最重要的原则:只做一件事但是要做好。
2.错误处理:要有合适的错误处理代码。