Fork me on GitHub

在线资源共享平台的需求分析和概念原型

实验目标

针对我的工程实践项目:基于Gin框架的在线资源共享平台,进行用例建模和业务领域建模,以及数据建模,最终形成概念原型。

需求分析

和需求相关的人员

  • 教师
  • 学生
  • 管理员

所需要的功能头脑风暴

登陆、注册、退出功能。
资源上传、下载。
提交作业,老师下载作业评分。统计作业。
搜索课程和资源。
浏览课程教学:浏览课程介绍、教学安排、考核方式等。
评论和讨论:对每一个资源可以评论。
友情链接:邮箱登陆、学校主页。

各个角色功能

教师

上传资源、下载资源、删除资源、评论资源、修改密码、添加作业、删除作业、下载作业、作业评分、作业统计:已提交作业名单、未提交作业名单

学生

注册、登陆:验证密码、找回密码、显示登陆错误; 浏览课程教学、上传课程资源、下载课程资源、修改密码、评论资源、下载作业、评论作业、查看作业评分

管理员

用户管理:添加用户、删除用户;资源管理:上传资源、下载资源、删除资源、审核资源

完整用例图

在分析好各个actor的需求功能之后理好各自的关系画好的用例图如下:

业务类图

绘制思路

  1. 收集应用业务领域的信息。聚焦在功能需求层面,也考虑其他类型的需求和资料;
  2. 头脑风暴。列出重要的应用业务领域概念,给出这些概念的属性,以及这些概念之间的关系;
  3. 给这些应用业务领域概念分类。分别列出哪些是类、哪些属性和属性值、以及列出类之间的继承关系、聚合关系和关联关系。
  4. 将结果用 UML 类图画出来。

具体类图如下

数据模型图

数据模型展示以ER图为例

形成说明:

关于访问者的角色有三类:学生、教师还有管理员。由于学生和教师都有自己的账号和id,还有登陆过程,所以将其中的共性抽象出来为一个用户类,然后把学生和教师类继承用户类。
面对学生的功能,主要是浏览课程,然后上课,看对应的资源,看完资源可以对资源进行评论,再老师发布作业之后下载对应的作业,把作业写完之后再上传到系统。
对于教师的功能就是编辑其上课的内容,如果其有相关的参考资料,就上传到系统,供学生下载学习使用,在线下上课之后就把对应的作业上传,待学生写完作业提交到系统之后,进行下载评分。在课后时间,如果有学生对学习资源有任何评论,教师可以去根据评论进行对应的回复。
经过功能的叙述,我们的功能可以把课程、课程作业、课程资源、课程资源的评论给抽象出来,单独建造一个类,然后把其属性赋值,弄好之后就如图。

概念原型

概念是人对能代表某种事物或发展过程的特点及意义所形成的思维结论。
概念原型是一种虚拟的、理想化的软件产品形式。
程序 = 算法 + 数据结构
概念原型 = 用例 + 数据模型
这里有24个用例(看第一个用例图)和9个数据模型

概念原型工作过程

管理员登陆之后:可以添加删除用户,这里的用户包括教师和学生,还能对资源进行管理,包括增加删除审核。
学生登陆之后:要登陆学习课程,下载课程作业之后下载作业,完成作业之后再上传其答案,最后学习课程参考资源,如果有另外对想法,可以对资源进行评论。
教师在登陆之后:提供课程资源,并发布作业,在作业发布之后的一段时间后,对作业进行打分。后续还能对资源进行评论回复。

posted @ 2020-12-05 16:56  柿子_5  阅读(502)  评论(0)    收藏  举报