软件工程专业实训课作业——软件需求规格说明书。上网查资料,看模板,结合我们小组的选题。我完成了这个需求规格说明书。


1引言

    1. 编写目的

该文档是关于用户对于河北经贸大学学生选课系统的功能和性能的要求, 重点描述了选课 系统的功能需求

系统的主要目的是为了方便学校对教师信息、学生基本信息、课程信息、学生成绩录入、修改、查询,提高学校的工作效率。这一系统的开发成功,解决了手写速度慢、容易出错的现状。无论是在成绩管理、课程管理等方面都可以帮助学校最迅速最准确的完成所需的工作。无论是在适用性、灵活性和易操作性方面都显示出了它的强大功能。

通过这份软件产品需求分析报告详尽说明了该软件产品的需求规格,,从而对该软件产品进行准确的定义。

    1. 预期读者

本软件产品需求分析报告预期读者:

  • 教务处相关负责人
  • 开发人员;
  • 项目经理;
  • 文档编写人员。
    1. 产品范围

1.3.1

待开发软件系统:基于B/S结构的学生选课系统

1.3.2

学生选课系统作为一种现代化的教学技术,是一个学校不可缺少的一部分,学生选课系统就是为了管理好选课信息而设计的。学生选课系统的应用将使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时,准确,有效的查询和修改选课情况。系统的主要功能是为了方便学校对教师信息、学生基本信息、课程信息、学生成绩录入、修改、查询,提高学校的工作效率。

    1. 参考文献
  • 河北经贸大学选课系统项目定义;
  • 河北经贸大学选课系统系统分析模型;
  • 河北经贸大学选课系统用例描述;
  • 基于Struts框架的学生选课管理信息系统设计与实现;
  • 基于B_S模式的实验室排课选课系统的研究与开发;
  • 《软件工程概论》第二版 机械工业出版社 郑人杰 马素霞 殷人昆 编著

 

2综合描述

本项目是为某高校开发的学生选课系统。随着网络的发展, 学生选课系统作为目前高校必不可少的系统, 不但要脱离仅仅依赖用户手工的管理, 而且也要向网络方向发展。在计算机和网络高速发展的时代,使整个校园网甚至 Internet 上的用户都可访问本选课系统。现在高校采用的基本都是 B/S结构的学生选课系统。这样才能方便于高校的管理。本系统是基于BS结构开发的,采用SQL Server 作为后台的数据库,采用标准 MVC 三层架构(JSP —JavaBean—Servlet 三层架构)开发模式。这些组件可以进行交互、重用,提高了开发效率,是目前比较流行的方式。服务器端的数据库选择了 Microsoft SQL server。

因为上面的工具大都采用了可视化的编程界面,减少了很多的代码编写,因此使用以上工具建立起来的开发环境,可以在较短的时间内完成系统开发。在使用本系统时,用户不需安装任何的客户端软件,只要用户的机器上有浏览器就可以进行操作,所有的数据处理都是由服务器完成的。

    1. 产品的功能

(1)查看/修改教师信息(2)查看/修改学生信息(3)查看/修改课程信息(4)录入/修改成绩(5)查看成绩(6)选退课程(7)生成课表

2.2 用户类和特性

                  2.2.1学生

       学生角色主要是针对在校具有选课资格的大学生而设定,学生登陆并取得合法权限后,就可以使用学生模块,它主要包括:选课,退选课,查看成绩,查 看课表4项子功能。

2.2.2教师类

教师角色主要是针对在校具有管理课程资格的教师而设定的。教师登录成功后进如教师界面,教师的功能包括录入成绩,修改成绩

2.2.3管理人员类

管理人员是指系统功能的主要使用者,主要功能包括查看学生类和教师类用户信息, 管理学生类教师类用户信息,管理课程信息

2.3 运行环境

本系统采用B/S结构开发,硬件配置主要包括客户端硬件和服务器端硬件的选择。硬件的配置要求要根据用户对系统的稳定性要求、系统的容量、系统的吞吐量,以及用户维护水平来确定。

  • 硬件平台

客户端:普通PC

CPU:

内存:

分辨率:

服务器端

CPU:

内存

硬盘

  • 操作系统和版本

UNIX/Linux/Windows2000或以上版本

  • 支撑环境(例如:数据库等)和版本

数据库:Microsoft SQL Sever 2008

Jdk1.6及以上

    1. 设计和实现上的限制

1.必须使用的特定技术、工具、编程语言和数据库:

  MVC技术

JSP+Servlet+JavaBean

Microsoft SQL Server

2运行限制:

   支持运行环境即可,在Windows下基本没限制。

 

3系统功能需求

3.1 系统工作流程分析

1.教师登录选课系统时,查看教师个人信息、学生信息和课程信息;在考试结束后,教师可以录入学生相关课程的成绩,在成绩提交前,教师可修改成绩。一旦修改后,则无法修改。

2.连接外部排课系统导出学生推荐课表。

3.学生登录选课系统时,可查看学生个人信息、课程信息和成绩信息;在课程总览,通过查询专业名称,了解各个专业四年所学课程;在选退课程界面,分别有选专业课、选选修课和退课。学生根据推荐课表选择专业课,根据课程总览选选修课。每个学生每学期最多选修8门课程,如果所选课程总数超过8门,则提示学生课程过多删除课程。选课结束后,如果上课时间冲突,则提示学生时间冲突;如果已超过课程容量,则提示学生课程已满。当课程全部排版好,生成个人课表。选课过程如图3-1

                                                     

                                                                               图3.1系统工作流程图

3.2 系统用例分析

                                                        图3.2系统用例图

 

3.3系统类图及实体类属性

3.3.1 类图

                                                                                图3.3.1 选课系统类图

3.3.2系统类属性

                                                                             图3.3.2 选课系统类属性图

3.4 用例描述

表3.4.1 “选课”用例描述

 

用例名

选课

用例编号

UC102

简要描述

学生通过该用例选修课程。

参与者

学生

涉众

学生:完成选课

教务处课程管理员:将学生添加到课程名单中。

相关用例

选专业课、选选修课

前置条件

学生正确登录到系统。

后置条件

系统生成个人课表。

基本事件流

  1. 学生选择课程
  2. 系统保存选课信息,显示选课成功消息(A-1)

备选事件流

A-1学生选课失败

  1. 系统显示选课失败信息,并提醒学生重新选课。

2.学生可以重新提交选课信息,也可以结束用例。

补充约束

业务规则

B-1 每个学生每学期最多选修8门课程,若所选课程超过8门,则提示学生课程过多删除课程。

B-2 若上课时间冲突,则提示学生时间冲突。

B-3如果已超过课程容量,则提示学生课程已满。

待解决问题

 

 

表3.4.2 “退课”用例描述

 

用例名

退课

用例编号

UC103

简要描述

学生通过该用例退选课程。

参与者

学生

涉众

学生:完成退选课程。

 

相关用例

选课、修改学生信息、修改课程信息

前置条件

学生完成选课。

后置条件

如果退课成功,该学生的课表将没有这门课程。

基本事件流

  1. 学生选择退选课程
  2. 系统保存退课信息,显示退课成功消息(A-1)。

备选事件流

A-1学生退课失败

  1. 系统显示退课失败信息,并提醒学生重新退课。
  2. 学生可以重新提交退课信息,也可以结束用例。

补充约束

业务规则

B-1 每个学生每学期最多选修8门课程,若所选课程超过8门,则提示学生课程过多退选课程。

B-2 若上课时间冲突,则提示学生时间冲突,退选课程。

B-3如果已超过课程容量,则提示学生课程已满,退选课程。

待解决问题

 

 

 

 

3.5 系统处理功能分析

3.5.1 选课用例顺序图

                         

3.5.2 退课用例顺序图

                         

其它非功能需求

4.1 界面需求

1页面内容:主题突出、操作方便、术语和行文格式统一、规范、明确。每一个

系统用户拥有事先分配好的用户名和密码,不同类型的用户只能访问各自工作领域内的相关页面。

2页面结构摆放合理,方便用户使用。

3技术环境:页面大小适中,控制字体和版面布局

4.2响应时间需求

无论何种用户登录,进行任何操作的时候,系统应该及时地进行反应,反应的时间在5秒以内。系统应该及时地进行反应,反应的时间在5秒以内。系统应能检测出各种非正常情况,如与设备的通信中断,无法连接数据库服务器等,以避免出现长时间等待甚至无响应。

4.3可靠性需求

本 系 统 是 在Internet上 进 行 管 理 的 , 主 要 的 系 统 数 据 都 要 通 过Internet在 客 户 机 和服务器之间进行传输,这样就很难保证系统信息不会遭到恶意的破坏,这就需要我 们要尽量的对数据进行加密保护。另一方面,本系统是一个管理系统,这就有管理员 和普通用户的区分,这也需要我们在系统中对不同人员的使用权限进行区分,不同的 使用人员所能访问的页面是不同的。这两方面就保证了系统的可靠性。

4.4开放性需求系统

应具有较强的灵活性,以适应将来功能扩展的需求。

4.5可扩展性需求

一个系统在被使用了一段时间后,使用者都会对系统提出很多的改进意见这就要求我们编写的系统要有很好的可扩 展性。本系统由于是采用B/S标准编写的,所有当用户提出改进意见后,编程人 员只需要在服务器端把相应的程序改写,就会改变系统中相应部分的功能。所以本系统有很好的可扩展性。

5.6系统安全需求

    格的权限管理功能,各功能模块需要相应的权限方能进入。系统需能够防止各类误 操作能造成的数据丢失,破坏。防止不法用户盗取重要信息 。

5 提交产品为

1.应用系统软件包;

2.数据库初始数据;

3.系统开发过程文档;

4.系统使用、维护说明文档。提交方式为U盘介质。

 

 

 

 

 

 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐