在线教育系统从需求分析

1 项目介绍

  项目名称为网络在线教育平台,项目后端使用spring cloud微服务框架,前端使用vue,分为后台管理和前台用户登录使用两部分,我们这里以后台管理部分进行相关分析。

2 用例建模

  A:基本步骤

  第一步: 从需求表述中找出用例,往往是动名词短语表示的抽象用例

  第二步:描述用例开始和结束状态,用TUCBW和TUCEW表示的高层用例

  第三步:对用例按照子系统或不同的方面进行分类,描述用例与用例,用例与参与者之间的上下文关系,并画出用例图

  第四步:进一步逐一分析用例与参与者的详细交互过程,完成一个两列的表格将参与者和待开发软件系统之间从用例开始到结束的所有步骤列举出来扩展用例

  B: 项目用例与参与者分析

  本项目采用权限管理方式进行后台维护,功能储存在acl_permission表中,通过设置用户角色来分配权限 ,我们可以给不同的用户分配不同的角色,也可以给不同的角色设置不同的权限,不同的角色下的权限是最大权限的子集,所以这里我们直接以最大权限做用例分析,主要功能有:

  1 对讲师的增删改查

  2 对课程分类增删改查

  3 对课程的增删改查

  4 对系统角色的增删改查

  5 对系统管理员的权限分配,增删改查

  6 对前台数据统计分析,查

  7 对前台订单购买数据,查

  8 系统注册,登录,注销

  9 对系统权限的增删改查

  C:完整的用例图如下

  

 

 

 3 业务领域建模

  A 业务建模其实是一个从多方面描述系统的综合。大约要划分为四个方向:

  1.是组织机构和人员模型。 也就是信息化手段应用后对组织、机构和人员的影响和变化。包括工作内容,职责,以及因此带来的制度规范的变化。

  2.是业务/处理模型,这里所谓的处理包含的是所有业务过程中的处理。例如把软件打包邮递出去,这个过程完全没有软件参与,但是它是整体工作流程中的一个环节。业务/处理模型,可以根据需要作层次化的细化,此处不再赘述。

  3.信息模型。信息模型至少包括了静态的信息形式化后的数据表示,数据规范,数据标准,数据字典、术语、元数据定义等等静态的东西。也包括了数据经过处理后变化的形式、比如显示在屏幕上,打印在报表上,存储在文件中,加载在XML内被传输给一个WebService理解,这种动态的转换和流动的模型。  在大多数MIS系统中,对静态数据的管理就足够解决业务模型中所针对的问题了。但在某些系统中,信息的变化意味着特殊的含义。比如银行系统中你账户上的金额,在这种情况下,就必须要技术手段,例如交易的完整性来保证数据变化和准确性,又例如一个监控系统从外部传感器获取的数据,这种数据的变化常常在业务中有着重要的含义,因此软件必须时刻关注这种数据状态的变化并作出反应,就是很重要的事情。。如此类推。

  4.环境模型。环境模型描述了软件系统所运行需要的环境。例如软件环境,OS,数据库,web服务器,也包括了软件的部署环境,部署安装方法。另外,不仅如此在某些软件中还要更加细致的描述环境环境。在这个时候,就必须把业务模型细化并和环境模型一起描述。例如3D软件中作一个宣染处理,总是要放在一个虚拟的场所中处理,每次处理既构成了一个渲染的处理步骤序列,也构成了用户未来观察3D软件制作出来的电影的每次效果观察。更广泛的对环境的描述,甚至还包括了行业规范,国家法规,技术标准等等一系列的东西。又或者是用户信息化素养,知识水平,意识等等,他们通常构成了软件应用环境的一部分,并进而影响到软件的功能,或者是那些隐形的约束。

 

 

   B 业务分析

  本案例中主要通过user,role,permissiion以及userrole,rolepermission两张中间表来控制权限,以及权限下对讲师,课程,课程分类等进行增删改查,我们可以按照实际需求将上面最大权限动态分配到角色上面,然后将角色分配给user(管理员)以达到权限管理的功能。

  主要实现功能是:

  对平台讲师的增删改查,

  对课程分类增删改查

  对课程增删改查(以阿里云点播将表进行一对多,多对多的关联设计,课程对章节,章节对video等)

  对权限管理

  对前台数据展示,分析

  C 部分UML图(以权限管理五张表以及课程表)

  

 

 

   

 

 

 4 数据模型

  user表

  

  role表

  

 

   permission表

  

 

   userrole中间表

  

  rolepermission中间表

 

 

   

 

   course表

  

 

   chapter表

  

  video表

  

 5 概念原型

  A  概念原型

  概念是人对能代表某种事物或者发展过程的特点及其意义所形成的思维结论,而概念原型是一种虚拟化的、理想化的软件产品形式。我们可以得到这样的公式:概念原型=用例+数据模型。

  B 项目中的概念原型

  此处只列出主要逻辑,本项目涉及到从权限管理到数据管理,概念原型需要结合具体的用例与数据模型去分析,就好像程序是由算法和数据结构两部分组成的。

  概念原型等于用例加数据模型,本项目涉及到用例可以是role的所有角色,我们这里列出主要部分,系统管理员,普通用户,角色管理员等等。

  涉及到的数据模型包括,用户,角色,权限,讲师和课程表等等。

  有权限的角色可以登录到系统,主要涉及到教师表的增删改查,课程表的增删改查,chapter,video表的增删改查,以及对前台数据的获取以及分析等等

 

   

posted @ 2020-12-15 18:04  下饭java学习者  阅读(1403)  评论(0)    收藏  举报