热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【UML】软件需求说明书

目录🦁 故事的开端一. 🦁 引言1.1编写目的1.2背景1.3定义1.4参考资料二. 🦁 任务概述2.1目标2.2用户的特点2.3假定和约束三. &#x

目录

  • 🦁 故事的开端
  • 一. 🦁 引言
    • 1.1编写目的
    • 1.2背景
    • 1.3定义
    • 1.4参考资料
  • 二. 🦁 任务概述
    • 2.1目标
    • 2.2用户的特点
    • 2.3假定和约束
  • 三. 🦁 需求规定
    • 3.1 功能性需求
      • 3.1.1系统用例图
      • 3.1.2用户登录用例
      • 3.1.3学员注册用例
      • 3.1.4 学员修改个人信息
      • 3.1.5学员修改密码
      • 3.1.6学员查看培训班信息
      • 3.1.7学员选课
      • 3.1.8学员缴费
      • 3.1.9学员查询成绩
      • 3.1.10维护课程信息
      • 3.1.11维护培训师信息
      • 3.1.12维护网站新闻
      • 3.1.13开设培训班
      • 3.1.14打印听课证
      • 3.1.15补办听课证
      • 3.1.16查看成绩
      • 3.1.17录入成绩
      • 3.1.18提交成绩
      • 3.1.19修改密码
      • 3.1.20指定培训师
      • 3.1.21确定开课时间
      • 3.1.22发布培训信息
      • 3.1.23发布新闻
      • 3.1.24修改新闻
      • 3.1.25编辑新闻
      • 3.1.26发送登录信息
      • 3.1.27删除课程
      • 3.1.28开设课程
    • 3.2非功能性需求
      • 3.2.2时间特性要求
    • 3.3输人输出要求
    • 3.4数据管理能力要求
    • 3.5故障处理要求
    • 3.6其他专门要求
  • 四. 🦁 运行环境规定
    • 4.1设备
    • 4.2支持软件
    • 4.3接口
    • 4.4控制
  • 五. 🦁 总结


🦁 故事的开端

在这里插入图片描述

该系统用于协助完成蓝翔培训机构的教学管理工作,用户有学员、培训师、管理员。
系统首页:显示培训机构的基本信息、新闻、及最新发布的培训信息。学员、培训师、管理员的登录入口均在系统首页。
蓝翔培训机构专注于IT技术培训,可以开设IT相关课程的培训班。每年该机构在春季、夏季、秋季开办3期培训,每期培训开设多门课程的多个培训班。根据市场情况,一门课程每期可以开出多个培训班,也可能不开班。培训班的开设每学期由管理员决定,并为每个培训班指定一位培训师。在确定培训班的开课时间及培训师后,管理员可以发布培训信息,学员可以开始选课。学员在培训机构缴费后,管理员应确认学员的选课信息,并为学员打印听课证。若学员以其他方式缴费,或听课证遗失,可由管理员补办。每期培训开课后,管理员关闭当期培训选课。
任何人均可通过系统注册成为学员。注册后,学员可以修改个人信息及登录密码。只有注册成为学员,才可以选课。学员可以通过系统查询可以选课的所有培训班信息并选课。学员还可以查询其参加的培训课程的成绩。
培训师的信息由管理员维护,并将登录信息发送给培训师。培训师在登录后可以修改登录密码。培训师可以查看和录入其指导的培训班学员成绩。在培训课程结束后要录入该培训班所有学员的成绩,成绩提交后不可修改。学员成绩由理论成绩和实践成绩组成,分别占40%和60%。
管理员需要维护课程信息,即该培训机构开设的课程,以及可以教授该课程的培训师。管理员可以根据需要将其设置为不再开设。开设过培训班的课程不能删除,若某门课程从未开设过培训班则可以删除。管理员还需维护网站新闻,包括新闻的编辑、修改、发布。系统主页显示最近发布的10条新闻。


一. 🦁 引言

1.1编写目的

这份需求规格说明书是需求分析阶段的产物。在经过与培训师、管理员以及学员充分的沟通后,我们收集到了该系统所要实现的功能与用户的习惯,以此形成的文档基本需求的方向。该说明文档明确分析开发软件所应该具备的功能、性能等。同时也能为以后项目的进度与规划,组织软件的开发与测试提供一定的帮助,整个软件开发和系统验收的主要依据。
本说明书的预期读者为学员、培训师、管理员、项目需求分析人员以及开发人员。

1.2背景


  • 开发软件名称:蓝翔培训机构教学管理系统
  • 项目任务提出者:培训机构负责人
  • 项目开发者:xxx xxx xxxx xxxx
  • 用户:学员、培训师、管理员
  • 实现该软件的计算机网络:Internet
  • 项目与其他软件:系统关系
  • 本项目采用C/S结构,客户端的程序是建立在windowXP系统及以上以数据库和VB为开发软件的应用程序。

1.3定义


需求:指人对客观事务需要的表现,体现为愿望、意向和兴趣,因而成为行动的一种直接原因。


软件需求(IEEE软件工程标准词汇表):
(1)用户解决问题或达到目标所需的条件或能力。
(2)系统或系统部件要满足合同、标准、规范或者其他正式规定文档所需具有条 件或能力。
(3)对(1)或(2)中的一个条件或一种能力的一种文档化表述。

用例:
定义 1 用例是对一个活动者使用一个系统的一项功能时进行交互过程中的一个文字描述序列。
定义 2 用例是系统、子系统或类和外部的参与者交互的动作序列的说明,包括可选的动作序列和会出现异常的动作序列。

活动:表示某流程中的任务的执行,也可以表示某算法过程中语句的执行。


1.4参考资料


《软件需求工程》(第二版) 毋国庆,梁正平,袁梦霆,李勇华,编著
《面向对象程序分析与设计(UML)》(第2版·题库版)


二. 🦁 任务概述

2.1目标

开发意图:本软件的开发主要为了让培训机构的管理员脱离纸质对教学培训信息进行管理,提高管理员的工作效 率,并且能减轻管理员在管理整个培训系统时的负担以及加强对数据的管理。
应用目标:在本系统软件上,数据呈现的方式也会更加直观,有利于管理员对数据进行管理。管理员可以知道学员关于选课的全部信息,同时也能对培训班课程、教师信息、网站信息以及听课证进行管理。学员可以实现便捷的登录、注册以及选课。培训师可以对学生的成绩进行查看和录入。
作用范围:适用于管理员管理培训信息、学员在本培训机构上进行选课以及培训师进行对学员成绩查看和录入。
开发背景:应于教学培训机构的需求,便组织了项目开发者用于需求分析,并为以后实际软件开发奠定基础和经验。本软件由开发人员独立自主开发。

2.2用户的特点

本软件的主要用户的年龄区间在[10,35]。管理员、学员以及培训师为本软件的主体用户。学员年龄区间大多为[10,20],而管理员和培训师的年龄则集中在[20,35]。
培训师大多数为接受过高等教育的教师,有一定的培训教学能力,能够充当培训机构的授课主体,对授课之后的教学成果通过本软件进行录入。
管理员则是有丰富管理经验以及应变处理能力,对学员以及培训师的资料和信息进行适当的维护管理,并会每周定期对系统的各部分数据进行更新和处理,如开设培训班信息,听课证等。
学员作为本软件的核心客户,一般为在学习上有一定的额外课程需求。在每次培训班开启之后,学员们都可以通过本软件进行登陆、注册以及选课,完成初步的培训班教学。

2.3假定和约束

系统运行寿命的最小值:3年
开发期限:30天
经费限制:培训机构有关人员难以沟通
需求获取限制:难以及时与具体的培训师沟通
可靠性需求:需要支持高并发
开发人员:开发人员少,经验不足

三. 🦁 需求规定

3.1 功能性需求


3.1.1系统用例图

在这里插入图片描述

3.1.2用户登录用例

用例描述

用例名称:用户登录。
用例简述:该用例允许学员、培训师、管理员登录系统,以便进行后续操作。
参与者:学员、培训师、管理员。
前置条件:参与者已经打开系统首页,并有进入系统的需要。
后置条件:如果该用例成功结束,则什么信息也不会被修改。
主事件流如下:
(1)参与者点击“登录”,用例开始。
(2)系统显示“登录”界面。
(3)参与者输入账号和密码。
(4)系统判断账号和密码是否正确。如果数据库连接有问题,则执行异常事件流e。
(5)如果账号或密码不正确,系统提示错误,并返回执行(3);如果账号和密码都正确,则进入系统首页,用例结束。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.3学员注册用例

用例描述
用例名称:学员注册。
用例简述:该用例允许用户进行注册成为学员的操作。
参与者:所有用户。
前置条件:参与者已经打开系统首页,并有注册为学员的需要。
后置条件:如果该用例成功结束,则系统会生成新的学员账户。
主事件流如下:
(1)参与者点击“注册”,用例开始。
(2)系统显示“注册”界面。
(3)参与者输入密码和个人信息。
(4)系统判断密码与个人信息是否符合规范。
(5)如果不符合规范,系统提示错误信息,并返回执行(3);如果符合规范,则向数据库添加新学员信息,并返回账号。如果数据库连接有问题,则执行异常事件流e。
(6)显示注册成功和账号的提示,用例结束。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.4 学员修改个人信息

用例描述
用例名称:学员修改个人信息。
用例简述:该用例允许学员进行修改个人信息的操作。
参与者:学员。
前置条件:参与者已经成功登录系统,并且有修改个人信息的需要。
后置条件:如果该用例成功结束,则系统会修改参与者账号的个人信息。
主事件流如下:
(1)参与者点击“修改个人信息”,用例开始。
(2)系统显示“修改个人信息”界面。
(3)参与者输入新的个人信息。
(4)系统判断新的个人信息是否符合规范。
(5)如果不符合规范,系统提示错误信息,并返回执行(3);如果符合规范,则向数据库更新新的个人信息。如果数据库连接有问题,则执行异常事件流e。
(6)显示个人信息修改成功的提示,用例结束。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.5学员修改密码

用例描述
用例名称:学员修改密码。
用例简述:该用例允许学员进行修改密码的操作。
参与者:学员
前置条件:参与者已经成功登录系统,并且有修改密码的需要。
后置条件:如果该用例成功结束,则系统会修改参与者账号的密码。
主事件流如下:
(1)参与者点击“修改密码”,用例开始。
(2)系统显示“修改密码”界面。
(3)参与者输入原密码和两次新密码。
(4)系统判断原密码是否正确。如果数据库连接有问题,则执行异常事件流e。
(5)如果原密码错误,系统提示错误信息,并返回执行(3);如果原密码正确,系统判断两次输入的新密码是否一致并符合规范。
(6)如果不一致或不符合规范,系统提示错误信息,并返回执行(3);如果一致并符合规范,则向数据库更新新的密码。如果数据库连接有问题,则执行异常事件流e。
(7)显示密码修改成功的提示,用例结束。
备选事件流如下:
(3) 参与者放弃修改密码,选择“返回”。
(4) 系统显示首页。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.6学员查看培训班信息

用例描述
用例名称:学员查看培训班信息。
用例简述:该用例允许学员查看所以培训班信息。
参与者:学员。
前置条件:参与者已经成功登录系统,并且有查看培训班信息的需要。
后置条件:如果该用例成功结束,则什么信息也不会被修改。
主事件流如下:
(1)参与者点击“查看培训班信息”,用例开始。
(2)系统查询并列出所有培训班信息,供参与者查看。如果数据库连接有问题,则执行异常事件流e。
(3)如果选择退出操作,则本用例结束执行。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.7学员选课

用例描述
用例名称:学员选课。
用例简述:该用例允许学员选择培训班上课。
参与者:学员。
前置条件:参与者已经成功登录系统,并且有选课参加培训的需要。
后置条件:如果该用例成功结束,则系统会生成选课记录。
主事件流如下:
(1)参与者点击“选课”,用例开始。
(2)系统执行“学员查看培训班信息”用例。
(3)参与者选择培训班。
(4)系统向数据库添加选课记录。如果数据库连接有问题,则执行异常事件流e。
(5)显示选课成功的提示,用例结束。
备选事件流如下:
(3) 参与者放弃选课,选择“返回”。
(4) 系统显示首页。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图
在这里插入图片描述

3.1.8学员缴费

用例描述

用例名称:学员缴费。
用例简述:该用例允许学员对未缴费的选课记录进行缴费。
参与者:学员。
前置条件:参与者已经成功登录系统,有未缴费的选课记录,并且有缴费的需要。
后置条件:如果该用例成功结束,则系统会生成缴费记录。
主事件流如下:
(1)参与者点击“缴费”,用例开始。
(2)系统查询并列出参与者所有未缴费的选课记录,供参与者查看。如果数据库连接有问题,则执行异常事件流e。
(3)参与者选择缴费课程。
(4)系统向数据库添加缴费记录并更新选课记录缴费状态。如果数据库连接有问题,则执行异常事件流e。
(5)显示缴费成功的提示,用例结束。
备选事件流如下:
(3) 参与者放弃缴费,选择“返回”。
(4) 系统显示首页。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图
在这里插入图片描述

3.1.9学员查询成绩

用例描述
用例名称:学员查询成绩。
用例简述:该用例允许学员查询其参加的培训课程的成绩。
参与者:学员。
前置条件:参与者已经成功登录系统,有参加的培训课程,并且有查看成绩的需要。
后置条件:如果该用例成功结束,则什么信息也不会被修改。
主事件流如下:
(1)参与者点击“查询成绩”,用例开始。
(2)系统查询并列出参与者所有参加培训课程的成绩,供参与者查看。如果数据库连接有问题,则执行异常事件流e。
(3)如果选择退出操作,则本用例结束执行。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.10维护课程信息

用例描述
用例名称:维护课程信息。
用例简述:该用例允许管理员对课程信息进行管理。
参与者:管理员。
前置条件:管理员已经成功登录系统,有对课程信息管理的需要。
后置条件:如果该用例成功结束,则课程信息则会根据管理员的操作而改变 。
主事件流如下:
(1)参与者点击“维护课程信息”,用例开始。
(2)系统将列出所有课程信息,并有开设课程和删除课程的选项,管理员可以根据自己的需求进行对应的操作。如果数据库连接有问题,则执行异常事件流e。
(3)拓展点 1 :若选择开设课程操作,则执行“开设课程”用例。
(4)拓展点 2 :若选择删除课程操作,则执行“删除课程”用例。
(5)如果选择退出操作,则本用例结束执行。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.11维护培训师信息

用例描述
用例名称:维护培训师信息。
用例简述:该用例允许管理员对课程信息进行管理。
参与者:管理员。
前置条件:管理员已经成功登录系统,有对培训师信息管理的需要。
后置条件:如果该用例成功结束,则培训师信息则会根据管理员的操作而改变 。
主事件流如下:
(1)参与者点击“维护培训师信息”,用例开始。
(2)系统将列出所有培训师信息和发送登录信息的选项,管理员可以根据自己的需求进行对应的操作。如果数据库连接有问题,则执行异常事件流e。
(3)拓展点 1 :若选择开设课程操作,则执行“发送登录信息”用例。
(4)如果选择退出操作,则本用例结束执行。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.12维护网站新闻

用例描述
用例名称:维护网站新闻。
用例简述:该用例允许管理员对网站新闻进行维护和管理。
参与者:管理员。
前置条件:管理员已经成功登录系统,有对维护网站新闻的需要。
后置条件:如果该用例成功结束,则网站新闻则会根据管理员的操作而改变 。
主事件流如下:
(1)参与者点击“维护网站新闻”,用例开始。
(2)系统将列出所有网站新闻,并有编辑新闻、修改新闻以及发布新闻的选项,管理员可以根据自己的需求进行对应的操作。如果数据库连接有问题,则执行异常事件流e。
(3)拓展点 1 :若选择编辑新闻操作,则执行“编辑新闻”用例。
(4)拓展点 2 :若选择修改新闻操作,则执行“修改新闻”用例。
(5)拓展点 3 :若选择发布新闻操作,则执行“发布新闻”用例。
(6)如果选择退出操作,则本用例结束执行。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.13开设培训班

用例描述
用例名称:开设培训班。
用例简述:该用例允许管理员对培训班信息进行维护和管理。
参与者:管理员。
前置条件:管理员已经成功登录系统,有对开设培训班的需要。
后置条件:如果该用例成功结束,则网站新闻则会根据管理员的操作而改变 。
主事件流如下:
(1)参与者点击“开设培训班”,用例开始。
(2)系统将列出所有的培训班,并有指定培训师、确定开课时间以及发布培训信息的选项,管理员可以根据自己的需求进行对应的操作。如果数据库连接有问题,则执行异常事件流e。
(3)拓展点 1 :若选择指定培训师操作,则执行“指定培训师”用例。
(4)拓展点 2 :若选择确定开课时间操作,则执行“确定开课时间”用例。
(5)拓展点 3 :若选择发布培训信息操作,则执行“发布培训信息”用例。
(6)如果选择退出操作,则本用例结束执行。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.14打印听课证

用例描述
用例名称:打印听课证。
用例简述:该用例允许管理员进行打印听课证的。
参与者:管理员。
前置条件:管理员已经成功登录系统,有对打印听课证的需要。
后置条件:如果该用例成功结束,则指定数量的听课证会被打印出来。
主事件流如下:
(1)参与者点击“打印听课证”,用例开始。
(2)系统将列出所有未办理听课证的学员,并有打印听课证的选项,管理员可以根据自己的需求进行对应的操作。如果数据库连接有问题,则执行异常事件流e1。
(3)执行打印听课证操作。若如打印失败,则执行异常事件流e2。
(4)如果选择退出操作,则本用例结束执行。
异常事件流e1如下:
e.1.1:提示参与者数据库连接不上。
e.1.2:系统自动关闭,用例结束。
异常事件流e2如下:
e.2.1:提示打印设备连接不上。
e.2.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.15补办听课证

用例描述
用例名称:补办听课证。
用例简述:该用例允许管理员进行补办听课证的。
参与者:管理员。
前置条件:管理员已经成功登录系统,有对补办听课证的需要。
后置条件:如果该用例成功结束,则指定数量的听课证会被打印出来。
主事件流如下:
(1)参与者点击“打印听课证”,用例开始。
(2)系统将列出所有需要补办听课证的学员,并有打印听课证的选项,管理员可以根据自己的需求进行对应的操作。如果数据库连接有问题,则执行异常事件流e1。
(3)执行打印听课证操作。若如打印失败,则执行异常事件流e2。
(4)如果选择退出操作,则本用例结束执行。
异常事件流e1如下:
e.1.1:提示参与者数据库连接不上。
e.1.2:系统自动关闭,用例结束。
异常事件流e2如下:
e.2.1:提示打印设备连接不上。
e.2.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.16查看成绩

用例描述
用例名称:培训师查询成绩。
用例简述:该用例允许培训师查询其辅导的培训班学员的成绩。
参与者:培训师
前置条件:参与者已经成功登录系统,有培训的班级,并且有查看成绩的需要。
后置条件:如果该用例成功结束,则什么信息也不会被修改。
主事件流如下:
(1)参与者点击“查询成绩”,用例开始。
(2)系统查询并列出参与者所有参加培训课程的成绩,供参与者查看。如果数据库连接有问题,则执行异常事件流e。
(3)如果选择退出操作,则本用例结束执行。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.17录入成绩

用例描述
用例名称:录入成绩
用例简述:该用例允许用户进行录入成绩的操作
参与者:用户(培训师)
前置条件:参与者已经成功登录系统,并且有录入成绩的需要。
后置条件:如果该用例成功结束,则系统会录入该学生的成绩。
主事件流如下:
(1)参与者点击“录入成绩”,用例开始;
(2)系统显示“录入成绩”界面;
(3)参与者输入学生的理论成绩和实践成绩;
(4)系统根据理论成绩40%,实践成绩60%的占比录入系统。如果数据库连 接有问题,则执行异常事件流e2。
(5)若符合,则向数据库更新学生成绩,否则系统提示错误信息,并返回(3),如果数据库连接有问题,则执行异常事件流e。
(6)显示成绩录入成功的提示,用例结束。
备选事件流1:
(3) 用户放弃录入成绩选择“返回”;
(4) 系统显示系统主页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.18提交成绩

用例描述
用例名称:提交成绩
用例简述:该用例允许用户进行提交录入的成绩的操作
参与者:用户(培训师)
前置条件:参与者已经成功登录系统,并且有提交成绩的需要。
后置条件:如果该用例成功结束,则系统会提交成绩到系统,届时学员可以查看。
主事件流如下:
(1)参与者点击“提交成绩”,用例开始;
(2)系统显示“提交成绩”界面;
(3)参与者确认录入的成绩无误后,点击提交按钮;
(4)系统提交,同步到数据库。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(2)。
(6)若符合,则向数据库更新学员成绩,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示成绩提交成功的提示,用例结束。
备选事件流1:
(3) 用户放弃提交成绩选择“返回”;
(4) 系统显示系统编辑学员成绩页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.19修改密码

用例描述
用例名称:修改密码。
用例简述:该用例允许学员进行修改密码的操作。
参与者:培训师
前置条件:参与者已经成功登录系统,并且有修改密码的需要。
后置条件:如果该用例成功结束,则系统会修改参与者账号的密码。
主事件流如下:
(1)参与者点击“修改密码”,用例开始。
(2)系统显示“修改密码”界面。
(3)参与者输入原密码和两次新密码。
(4)系统判断原密码是否正确。如果数据库连接有问题,则执行异常事件流e。
(5)如果原密码错误,系统提示错误信息,并返回执行(3);如果原密码正确,系统判断两次输入的新密码是否一致并符合规范。
(6)如果不一致或不符合规范,系统提示错误信息,并返回执行(3);如果一致并符合规范,则向数据库更新新的密码。如果数据库连接有问题,则执行异常事件流e。
(7)显示密码修改成功的提示,用例结束。
备选事件流如下:
(3) 参与者放弃修改密码,选择“返回”。
(4) 系统显示首页。
异常事件流e如下:
e.1:提示参与者数据库连接不上。
e.2:系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.20指定培训师

用例描述
用例名称:指定培训师
用例简述:该用例允许用户给学院指定培训老师的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,并且有指定培训师的需要。
后置条件:如果该用例成功结束,则系统会为学员指定好培训师。
主事件流如下:
(1)参与者点击“指定培训师”,用例开始;
(2)系统显示“培训师”列表界面;
(3)参与者根据培训班的特点指定某一位培训师;
(4)系统判断该培训师是否空闲。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)如果正确,则赋予该培训师管理这个班级的权限,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示指定培训师成功的提示,用例结束。
备选事件流1:
(3) 用户放弃指定培训师选择“返回”;
(4) 系统显示系统登陆页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.21确定开课时间

用例描述
用例名称:确定开课时间
用例简述:该用例允许用户进行确定开课时间的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,已经确定好培训班,并且有确定开课时间的需要。
后置条件:如果该用例成功结束,则系统会确定好开课时间。
主事件流如下:
(1)参与者点击“设置开课时间”,用例开始;
(2)系统显示“设置开课时间”界面;
(3)参与者输入开课时间(年月日);
(4)系统判断输入日期是否规范。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)如果正确,则向数据库提交开课时间,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示开课时间设置成功的提示,用例结束。
备选事件流1:
(3)用户放弃设置开课时间选择“返回”;
(4)系统显示系统登陆页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.22发布培训信息

用例描述
用例名称:发布培训信息
用例简述:该用例允许用户进行发布培训信息的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,确定好培训班和开课时间,并且有发布培训消息的需要。
后置条件:如果该用例成功结束,则系统会发布培训信息。
主事件流如下:
(1)参与者点击“发布培训信息”,用例开始;
(2)系统显示“发布培训信息”界面;
(3)参与者输入培训信息内容
(4)系统判断培训内容是否符合标准。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)若符合,则向数据库提交培训信息,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示培训信息发布成功的提示,用例结束。
备选事件流1:
(3) 用户放弃发布选择“返回”;
(4) 系统显示系统管理员页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.23发布新闻

用例描述
用例名称:发布新闻
用例简述:该用例允许用户进行发布新闻的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,编辑好新闻,并且确定无误后。
后置条件:如果该用例成功结束,则系统会发布新闻。
主事件流如下:
(1)参与者点击“发布新闻”,用例开始;
(2)系统显示“发布新闻”界面;
(3)参与者审核新闻内容,如果错误,则要求返回执行(3)。
(4)系统判断新闻内容是否符合标准。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)若符合,则向数据库提交新闻内容,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示新闻内容发布成功的提示,用例结束。
备选事件流1:
(3) 用户放弃发布选择“返回”;
(4) 系统显示系统管理员页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)

在这里插入图片描述

3.1.24修改新闻

用例描述
用例名称:修改新闻
用例简述:该用例允许用户进行修改新闻的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,并且有修改新闻内容的的需要
后置条件:如果该用例成功结束,则系统会修改新闻内容。
主事件流如下:
(1)参与者点击“修改新闻”,用例开始;
(2)系统显示“修改新闻”界面;
(3)参与者输入新的新闻内容
(4)系统判断新的新闻内容是否符合标准。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)若符合,则向数据库提交新的新闻内容,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示新闻修改成功的提示,用例结束。
备选事件流1:
(3) 用户放弃发布选择“返回”;
(4) 系统显示系统管理员页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.25编辑新闻

用例描述
用例名称:编辑新闻
用例简述:该用例允许用户进行编辑新闻的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,并且有编辑新闻的需要。
后置条件:如果该用例成功结束,则系统会保存新闻内容。
主事件流如下:
(1)参与者点击“编辑新闻”,用例开始;
(2)系统显示“编辑新闻”界面;
(3)参与者输入新闻内容
(4)系统判断新闻内容是否符合标准。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)若符合,则向数据库提交培训信息,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示新闻编辑成功的提示,用例结束。
备选事件流1:
(3) 用户放弃发布选择“返回”;
(4) 系统显示系统管理员页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.26发送登录信息

用例描述
用例名称:发送登录信息
用例简述:该用例允许用户进行发送登录信息的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,确定培训师的信息,并且有发送登录消息的需要。
后置条件:如果该用例成功结束,则系统会发送登录信息。
主事件流如下:
(1)参与者点击“发送登录信息”,用例开始;
(2)系统显示“发送登录信息”界面;
(3)系统自动生成登录信息;
(4)系统判断登录信息是否符合标准。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)若符合,则向培训师发送登录信息,否则系统提示错误信息,并返回(4),如果发送有问题,则执行异常事件流e。
(7)显示培训信息发布成功的提示,用例结束。
备选事件流1:
(3) 用户放弃发布选择“返回”;
(4) 系统显示系统管理员页面。
异常事件流e:
e1.提示参与者系统发送失败。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.27删除课程

用例描述
用例名称:删除课程
用例简述:该用例允许用户进行删除课程的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,并且有删除课程的需要。
后置条件:如果该用例成功结束,则系统会更新课程信息。
主事件流如下:
(1)参与者点击“删除课程”,用例开始;
(2)系统显示“删除课程”界面;
(3)参与者确定需要删除的课程内容
(4)系统判断删除课程内容是否符合标准。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)若符合,则向数据库提交删除课程信息,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示删除课程成功的提示,用例结束。
备选事件流1:
(3) 用户放弃发布选择“返回”;
(4) 系统显示系统管理员页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.1.28开设课程

用例描述
用例名称:开设课程
用例简述:该用例允许用户进行开设课程的操作
参与者:用户(管理员)
前置条件:参与者已经成功登录系统,并且有开设课程的需要。
后置条件:如果该用例成功结束,则系统会更新课程信息。
主事件流如下:
(1)参与者点击“开设课程”,用例开始;
(2)系统显示“开设课程”界面;
(3)参与者输入课程信息
(4)系统判断课程信息是否符合标准。如果数据库连接有问题,则执行异常事件流e2。
(5)如果错误,则要求返回执行(3)。
(6)若符合,则向数据库提交课程信息,否则系统提示错误信息,并返回(4),如果数据库连接有问题,则执行异常事件流e。
(7)显示开设课程成功的提示,用例结束。
备选事件流1:
(3) 用户放弃发布选择“返回”;
(4) 系统显示系统管理员页面。
异常事件流e:
e1.提示参与者数据库连接不上。
e2.系统自动关闭,用例结束。

活动图(不带泳道)
在这里插入图片描述

3.2非功能性需求

a.软件的输入精度:小数点后保留一位数字,但不限制输入特殊字符
b.输出数据的精度:小数点后保留一位有效数字
c.传输过程中的精度:小数点后保留一位有效数字

3.2.2时间特性要求

a.响应时间;1s
b.更新处理时间;0.5s
c.数据的转换和传送时间;0.5s
d.解题时间;1s
3.2.3灵活性
a.操作方式上的变化;可以进行键盘方式进行操作,也可以进行触屏方式进行操作。
b.运行环境的变化;适用于window8以及以上windows系统、linux系统等。
c.同其他软件的接口的变化;本软件不需要特定的硬件或者接口进行支撑
d.精度和有效时限的变化;可以根据客户的需求进行对应的精度和有效时限的变化。
e.计划的变化或改进:根据用户的需求不断对软件进行远程升级和更新。

3.3输人输出要求

A.输入
1.系统登录:学员、培训师以及管理员的账号和密码,要求和数据库中的存储数据一致。如下:
(1)数据名称:注册账号输入数据
(2)实际含义:用于注册,表示即将要注册的账号
(3)数据类型:String
(4)精度:无
(5)数据格式:阿拉伯数字以及26英文字母,不能包含特殊符号
(6)数据范围:1-6

(1)数据名称:注册密码输入数据
(2)实际含义:用于注册,表示即将要注册的账号的密码
(3)数据类型:String
(4)精度:无
(5)数据格式:阿拉伯数字以及26英文字母,不能包含特殊符号
(6)数据范围:8-16
2.学员进入系统,输入学员的账号进行查询成绩,输入的查询信息如下:
(1)数据名称:查询成绩输入数据
(2)实际含义:用于学员查询成绩。一般为学员的账号。
(3)数据类型:String
(4)精度:无
(5)数据格式:阿拉伯数字以及26英文字母,不能包含特殊符号
(6)数据范围:1-6
3.管理员输入课程信息,包括课程的名称以及内容。
(1)数据名称:课程名称以及内容
(2)实际含义:用于开设课程。
(3)数据类型:String
(4)精度:无
(5)数据格式:为任意字符
(6)数据范围:0-2048

3.系统用户的注册和添加:用户账号,密码等,由一定的字符限制
B.输出
1.对应于系统输出要查询的结果
2.用户输入信息不合法是会有信息框的提示
3.部分excel表以及结账报表的显示

3.4数据管理能力要求


Namenumbersizeincrease
账号信息15016kb200
培训班信息5032kb60
培训师信息7516kb50
学员成绩信息120064kb2000
新闻信息308kb40

3.5故障处理要求

软件故障:软件可能出现兼容性的问题,可以及时与开发端联系。如多人同时访问导致服务器过载,可以及时联系开发人员进行维护。
软件使用问题:软件如使用不当导致客户端设置异常,可以尝试点击软件的重置按钮。除此之外,还可以联系我们开发人员进行合适的处理

3.6其他专门要求

可维护性:在系统出现故障开始,需要数小时内进行系统的重新工作。
可靠性:系统需要可以负载同时上百人的服务器访问。
运行环境可换性:客户端除了在windows运行,还应该方便客户使用手机进行操作。

四. 🦁 运行环境规定

4.1设备

a.处理器:Intel Xeon E3-1100及以上,内存:16GB及以上。
b.外存:SATA硬盘 7200r/m 4TB * 2 。
c.网卡:Intel X540-2T及以上。

4.2支持软件

操作系统:Linux CentOS7。
数据库:MySQL8。
服务器:Tomcat9。
编译:Java JDK8。

4.3接口

数据通信协议:HTTP/HTTPS,TCP/IP。

4.4控制

运行
命令:java -jar xxx.jar
来源:bash

停止运行
命令
1.获得PID:ps aux|grep xxx.jar
2.停止运行:kill (1中获得的PID) PID
来源:bash

五. 🦁 总结

该实验是对软件需求分析这一门课一学期下来的一个总结,融合了每个组员的努力,希望大家喜欢。


推荐阅读
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • 深入解析十大经典排序算法:动画演示、原理分析与代码实现
    本文深入探讨了十种经典的排序算法,不仅通过动画直观展示了每种算法的运行过程,还详细解析了其背后的原理与机制,并提供了相应的代码实现,帮助读者全面理解和掌握这些算法的核心要点。 ... [详细]
  • 分布式开源任务调度框架 TBSchedule 深度解析与应用实践
    本文深入解析了分布式开源任务调度框架 TBSchedule 的核心原理与应用场景,并通过实际案例详细介绍了其部署与使用方法。首先,从源码下载开始,详细阐述了 TBSchedule 的安装步骤和配置要点。接着,探讨了该框架在大规模分布式环境中的性能优化策略,以及如何通过灵活的任务调度机制提升系统效率。最后,结合具体实例,展示了 TBSchedule 在实际项目中的应用效果,为开发者提供了宝贵的实践经验。 ... [详细]
  • 本项目在Java Maven框架下,利用POI库实现了Excel数据的高效导入与导出功能。通过优化数据处理流程,提升了数据操作的性能和稳定性。项目已发布至GitHub,当前最新版本为0.0.5。该项目不仅适用于小型应用,也可扩展用于大型企业级系统,提供了灵活的数据管理解决方案。GitHub地址:https://github.com/83945105/holygrail,Maven坐标:`com.github.83945105:holygrail:0.0.5`。 ... [详细]
  • 浅析PHP中$_SERVER[
    在PHP后端开发中,`$_SERVER["HTTP_REFERER"]` 是一个非常有用的超级全局变量,它可以获取用户访问当前页面之前的URL。本文将详细介绍该变量的使用方法及其在不同场景下的应用,如页面跳转跟踪、安全验证和用户行为分析等。通过实例解析,帮助开发者更好地理解和利用这一功能。 ... [详细]
  • 在 Linux 系统中,`/proc` 目录实现了一种特殊的文件系统,称为 proc 文件系统。与传统的文件系统不同,proc 文件系统主要用于提供内核和进程信息的动态视图,通过文件和目录的形式呈现。这些信息包括系统状态、进程细节以及各种内核参数,为系统管理员和开发者提供了强大的诊断和调试工具。此外,proc 文件系统还支持实时读取和修改某些内核参数,增强了系统的灵活性和可配置性。 ... [详细]
  • 掌握DSP必备的56个核心问题,我已经将其收藏以备不时之需! ... [详细]
  • 本文介绍了如何利用Apache POI库高效读取Excel文件中的数据。通过实际测试,除了分数被转换为小数存储外,其他数据均能正确读取。若在使用过程中发现任何问题,请及时留言反馈,以便我们进行更新和改进。 ... [详细]
  • FastDFS Nginx 扩展模块的源代码解析与技术剖析
    FastDFS Nginx 扩展模块的源代码解析与技术剖析 ... [详细]
  • K3Cloud 平台字符串解密技术详解与应用
    在 K3Cloud 平台中,配置文件内的敏感信息如密码会被加密处理。通过深入研究,我们发现可以通过 Kingdee.BOS.Api 提供的接口对这些加密字符串进行解密。本文详细介绍了这一解密技术的具体实现方法及其应用场景,为开发者提供了宝贵的参考和实践指导。此外,还探讨了该技术在数据安全和系统管理中的重要性,以及如何在实际项目中高效地应用这些技术,确保系统的稳定性和安全性。 ... [详细]
  • HDU1176:免费馅饼问题的动态规划解法分析
    题目“免费馅饼”通过动态规划方法进行了解析。该问题的时间限制为 Java 2000ms 和其他语言 1000ms,内存限制为 Java 65536K 和其他语言 32768K。本文详细探讨了如何利用动态规划算法高效求解此问题,并对算法的时间复杂度和空间复杂度进行了深入分析。此外,还提供了具体的实现步骤和代码示例,帮助读者更好地理解和应用这一方法。 ... [详细]
  • 掌握Android UI设计:利用ZoomControls实现图片缩放功能
    本文介绍了如何在Android应用中通过使用ZoomControls组件来实现图片的缩放功能。ZoomControls提供了一种简单且直观的方式,让用户可以通过点击放大和缩小按钮来调整图片的显示大小。文章详细讲解了ZoomControls的基本用法、布局设置以及与ImageView的结合使用方法,适合初学者快速掌握Android UI设计中的这一重要功能。 ... [详细]
  • 在Bugku Web CTF实战演练中,通过细致的源代码检查,我们发现了一个隐藏的滑稽笑脸图标,进一步分析后成功找到了flag。此外,还探讨了如何利用计算器功能进行安全测试,提升了对Web漏洞的识别和利用技巧。 ... [详细]
  • 本文详细介绍了 Excel VBA 3.16 版本中的多种组合筛选技巧,帮助用户高效地处理复杂数据。通过丰富的示例和详细的代码解析,读者可以轻松掌握这些强大的数据筛选方法,提高日常工作中的数据处理效率。无论是初学者还是资深用户,都能从中受益匪浅。 ... [详细]
  • 通过在项目中引用 NuGet 包 `ExcelDataReader`,可以实现高效地读取和导入 Excel 文件中的数据。具体方法是在项目中执行 `Install-Package ExcelDataReader` 命令,然后通过定义一个 `LeadingIn` 方法并传入上传文件的路径来完成数据导入。该方法不仅简化了代码逻辑,还显著提升了数据处理的效率和可靠性。 ... [详细]
author-avatar
天气不再变化_207
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有