[软工顶级理解组] 功能规格说明书

项目 内容
班级:2020春季计算机学院软件工程(罗杰 任健) 博客园班级博客
作业:功能规格说明书 功能规格说明书

一、项目简介

  • 项目名称:北航教务助手

  • 项目内容:设计开发一款基于手机客户端的小工具,能够自动从北航教务获取课表、空教室、成绩等信息,以及课程中心的DDL等信息,并显示在客户端上。目前我们开发的是Android前端,基于Android SDK进行开发,能够让学生无需访问教务网站或北航小程序,就能方便、快捷地查询到自己想要的信息。

  • 项目开发者:软工顶级理解团队

  • 概念说明:

    概念 解释
    爬虫 使用自动化浏览器访问教务网站,实现登录、跳转、抓取等一系列过程的工具。未必会使用现在流行的爬虫框架。

二、典型用户

  • 北航普通学生

    用户信息 用户情况
    姓名 吉良吉影
    用户身份 北航一位普普通通的学生党
    用户动机 希望能有一个美观、迅速且无需手动导入的软件来查询课表、空教室、成绩等信息
    用户困难 教务系统需要电脑操作,且界面透露出过时的气息,手机端的北航小程序运行速度慢
    典型场景 通过手机查询自己的课表等信息
    用户比例 40%
  • 经常忘记DDL的冒失同学

    用户信息 用户情况
    姓名 广濑康一
    用户身份 经常忘记课程中心作业截止时间的同学
    用户动机 希望能有一款产品时刻查看、提醒自己作业DDL,且无需手动导入
    用户困难 课程中心没有手机相关的适配,且电脑端访问课程中心比较麻烦
    典型场景 通过手机端直接收到了作业DDL的截止信息,立马投入工作
    用户比例 40%
  • 对定制化有要求的同学

    用户信息 用户情况
    姓名 岸边露伴
    用户身份 对软件的自定义有一定偏好的同学
    用户动机 希望教务软件能够按照自己的需求进行一定的定制
    用户困难 北航小程序过于死板,市面上也没有相关软件
    典型场景 上课周将主界面设置为课表,考试周结束后将主界面自定义为成绩
    用户比例 20%

三、原型设计与交互步骤

在APP中,我们准备使用底部导航栏的形式。底部导航栏共有三个按钮,从左至右为“主页”、“教务功能汇总”、“个人中心”。其中主页用户可以自定义设置显示某一教务功能页面,如课表查询页面、成绩查询页面。我们默认设置主页为课表查询页面,用户可通过“个人中心”的“主页选择”入口重新选择主页功能。“教务功能汇总”界面提供了各个教务功能的入口,如课表查询、课程中心查询、空教室查询等。以下表格为我们的每个界面的原型设计。

页面 功能描述 UI原型
登录 1.在“账号”、“密码”框中输入统一认证的账号、密码,然后点击“登录”按钮,会跳转到首页。
自定义主页 1.在登录后,首先跳转到主页,主页默认显示本周课表。
2.主页可以自定义设计,即用户可以选择显示:课表页面、课程中心DDL页面或课程成绩页面。
个人中心 1.点击下方导航栏最右侧按钮,可以跳转到“个人中心”。
2. 最上方显示用户的姓名和自定义头像,点击“查看和编辑”跳转到“编辑用户信息”页面。
3.点击“主页设计”,跳转到“主页选择”页面,用户在“主页选择”页面可以自定义主页。
4.点击“帮助中心”,跳转到“帮助中心”页面(暂定,未进行设计,不计划在alpha实现),用户在帮助中心查看一些使用帮助。
5.点击“设置”,跳转到“设置”页面。
6.由于我们使用统一认证登录,所以没有提供“忘记密码”、“修改密码”之类的功能。
主页选择 1.用户在该页面可以自定义主页。
设置 1.目前主要功能为开启或关闭APP推送。由于我们准备提供课程中心DDL的推送服务,所以如果用户需要这一功能则必须开启“通知”功能。
教务功能汇总 1.点击下方导航栏中间按钮,跳转到“教务功能汇总”页面。
2.此页面,用户可以选择自己需要的功能,点击相应按钮,即可进入对应功能页面。
3.目前我们主要设计了如右图所示的五个功能,其中,“课程评价“功能目前暂未设计,我们规划在alpha阶段完成其他功能的情况下,再考虑这一功能的开发,或者将这一功能的开发放在beta阶段。
4.如果之后新增功能,目前规划是在这个界面实现功能入口,如查询校历、校车等。
课程中心 1.在教务功能汇总页面,点击”课程中心查询“,进入该页面。
2.页面中显示本学期用户所修课程,当用户点击某一特定课程时,同步课程中心显示该课程的作业、测验的DDL。
3.同时,我们计划提供课程中心DDL推送服务。用户可以在作业截止前半天收到我们的推送提醒。
空教室查询 1.在教务功能汇总页面,点击”空教室查询“,进入该页面。
2.在日期选择框选好日期,课程节数选择框选择好时间后,下方可以显示所选时段的空教室分布。
成绩查询 1.在教务功能汇总页面,点击”成绩查询“,进入该页面。
2.页面显示用户课程成绩,以及分数。
3.支持用户点击“搜索”进行特定课程的成绩查询。
课表查询 1.在教务功能汇总页面,点击”课表查询“,进入该页面。
2.点击最上方下拉框,可选择显示学期内其他周的课表。
3.由于我们采用爬虫从教务获取课表数据,所以更新可能不太及时,用户可以点击下方“update”手动进行课表更新。

四、功能描述验收标准

页面 功能介绍 验收标准
登录 支持用户的登录 1.输入统一认证账户、密码后,若正确,可以成功登录。
2.若账户不存在或密码错误,则返回错误信息。
个人中心 各种设置界面的导航页 1. 最上方显示用户的姓名和自定义头像
2.点击“查看和编辑”,跳转到“编辑用户信息”页面。
3.点击“主页设计”,跳转到“主页选择”页面
4.点击“帮助中心”,跳转到“帮助中心”页面
5.点击“设置”,跳转到“设置”页面。
主页选择 对主页显示的内容进行定制 1.主页可以自定义为课表页面、课程中心DDL页面或课程成绩页面。
设置 对APP的相关内容进行设置 1.目前主要功能为开启或关闭APP推送。由于我们准备提供课程中心DDL的推送服务,所以如果用户需要这一功能则必须开启“通知”功能。
教务功能汇总 跳转到相应的功能界面 1.点击相应按钮,可进入对应功能页面。
课程中心 显示课程中心相关的信息 1.当用户点击某一特定课程时,同步课程中心显示该课程的作业、测验的DDL。
2.用户可以在作业截止前半天收到DDL提醒推送。
空教室查询 显示空教室信息 1.在日期选择框选好日期,课程节数选择框选择好时间后,下方可以显示所选时段的空教室分布。
成绩查询 显示成绩信息 1.页面显示用户课程成绩,以及分数。
2.支持用户点击“搜索”进行特定课程的成绩查询。
课表查询 显示课表 1.在教务功能汇总页面,点击”课表查询“,进入该页面。
2.点击最上方下拉框,可选择显示学期内其他周的课表。
3.点击下方“update”,可以手动进行课表更新。

五、可能的副作用

  • 随着用户量的增大,因为服务器性能的限制,爬虫的效率必然会受到影响,转而影响所有同学的查询速度。
  • 用户将统一认证用户名和密码交付给我们的产品,可能不安全。
posted @ 2020-04-08 15:00  软工顶级理解组  阅读(...)  评论(...编辑  收藏