Skip to content

设计文档

CloudMagician edited this page Jun 28, 2019 · 1 revision

2019 年软件工程课程设计设计文档

总体设计

选课系统是实现学生家长和教育机构个人教师. 以及教务管理员维护 信息的一个平台,整个选课系统分为三种权限,分别是学生家长、教育机构个人教师. 和管理员权限 不同权限的用户对应不同的模块功能,以下为选课系统的总体设计图和各功能模块说明

系统的总体设计分为登陆界面、主界面、注册窗口、评论窗口、课程窗口、新闻公告窗口、 视频播放窗口等,用户打开软件后会进入登陆界面,用户由登陆界面可以选择进入主界面或者 进行注册操作,进入主界面后可以进行其他的操作,并且在执行有些操作时会打开对应窗口

对于数据的处理,我们通过JDBC对服务器上的数据库进行相关操作,并且通过设置有关类,设置相应的响应函数调用对数据库操作的有关函数,以此来获取数据库内部数据或者对数据库进行操作,对于获取到的数据,在窗口加以显示。

对于通过窗口修改的数据,对数据库进行更新。

详细设计

用户系统包括的功能有:注册、信息修改、登录、查询课程信息、申请试听、付费、发布评论、查看试听申请、观看视频、阅读新闻、发表公告、设置课表、设置费用。

注册:

  1. 申请时,根据自身情况,用户先选择想要注册的类型,分为教育机构、个人教师和学生家长三类。
  2. 不同类型所填写的用户信息不同。
  3. 设置用户名和密码。
  4. 设置关联手机号和邮箱,以便找回密码
  5. 学生家长注册完毕可直接登录,教育机构和个人教师需系统审批后方可登录。

修改信息

  1. 系统读取用户已经填写过的信息,并显示。
  2. 系统保存用户所更改的信息。
  3. 显示提示信息“修改成功”。

登录

  1. 用户填写用户名和密码,点击登录
  2. 系统进行密码验证,根据用户权限,显示用户所能看到的信息。
  3. 用户不存在,返回登录页面,显示提示信息“用户名不存在”。
  4. 密码不正确,返回登录页面,显示提示信息“密码不正确”。

查询课程信息

  1. 学生家长用户输入关键字进行查询。
  2. 显示结果为符合条件的一个或多个教育机构链接或个人教师链接,链接跳转至相关介绍页面。
  3. 无符合条件的结果,返回“抱歉,未找到所需的结果”。  

申请试听

  1. 用户在课程介绍页面点击申请试听后,显示提示信息“已成功申请”。
  2. 用户可在相同页面取消试听申请。并显示提示信息“已取消申请”。  

付费

  1. 用户可在课程介绍页面点击购买课程进行购买,通过网上支付的手段进行交易。
  2. 保存已付费课程记录,可供查看明细。  

发表评论

  1. 用户可以贴图片、写文字、星级评价等4种方式对该课程或该机构做出评价。
  2. 用户可自行撤销或修改评价内容。  

查看试听申请

  1. 教育机构或个人教师接受申请后,系统删除该条保存的信息。
  2. 为防止恶意申请,允许教育机构或个人教师拒绝试听申请。  

设置课表

  1. 用户可以添加、删除、修改课表中时间、地点、任课教师、课程内容的信息。
  2. 系统保存成功后显示提示信息“修改成功”。  

设置费用

  1. 用户可以添加、删除、修改课程费用的信息。
  2. 系统保存修改后的信息并显示提示信息“修改成功”。  

发表公告

  1. 用户可以添加、删除、修改公告信息。公告信息可以为文字或图片。
  2. 系统保存修改后的信息并显示提示信息“修改成功”。

观看视频

  1. 可暂停、中止、快进、快退、继续播放操作。
  2. 视频链接无效时,显示“视频已过期”。

阅读新闻

  1. 点击页面上任一新闻链接可阅读新闻。
  2. 新闻链接无效时,显示“新闻已过期”。

权限审核

  1. 分页显示申请,数量可由系统管理员设定。
  2. 对列表中的申请进行审核,批准符合申请条件的申请,否定不符合申请条件的申请。
  3. 未审批的账户在登录时显示“正在审核中”字样。未通过申请的账户在登录时显示“未通过申请”字样。  

发布新闻

  1. 系统管理员增加一条新闻。
  2. 系统管理员删除一条新闻。
  3. 系统管理员改变新闻显示顺序。  

发布视频

  1. 系统管理员增加一个视频。
  2. 系统管理员删除一个视频。
  3. 系统管理员改变新闻显示顺序。  

编辑评论

  1. 系统管理员删除一条评论。
  2. 系统管理员修改任意一条评论内容。
  3. 系统管理员改变评论显示顺序。  

编辑公告

  1. 系统管理员删除一条公告。
  2. 系统管理员修改任意一条公告内容。
  3. 系统管理员改变公告显示顺序。

人工处理过程

管理员对系统信息进行管理,以保证所有用户看到的都是实时更新的内容,同时管理员还要对用户提交的申请及时审核。

数据库设计

  1. 账户

account(username, password, tel, email, user_type);

  1. 课程

course(course_id, course_name, time, place, content, teach_id, ge_recommend, price, course_field, homework);

  1. 课程评价

coursecomment(course_id, publisher, content, score, picture_id);

  1. 教育机构

eduorg(username, org_code, org_address, org_contact, org_introduction, edu_field, edu_age, qualified);

  1. 新闻

news(news_id, publisher, time, title, content, course_id);

  1. 家长

parent(user_name, child_name, child_birthday, child_gender, parent_name, parent_contact, course_field, course_cost, course_place);

  1. 图片

pictures(picture_id);

  1. 试听

previewapp(parent_id, course_id, agreement);

  1. 购买

purchase(parent_id, course_id, purchased);

  1. 系统管理员

sysadmin(user_name, page_item_count);

  1. 教师评价

teachcomment(teach_id, publisher, content, score, picture_id, course_id);

  1. 教师

teacher(user_name, tea_name, tea_gender, tea_birthday, tea_id_number, tea_contact, tea_introduction, edu_field, edu_year, edu_age, qualified);

  1. 视频

video(video_id, time, video_url, publisher);

ER 图